Edit File by line
/home/zeestwma/richards.../wp-conte.../plugins/elemento.../includes/base
File: controls-stack.php
*/
[2500] Fix | Delete
protected function _init( $data ) {
[2501] Fix | Delete
Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( __METHOD__, '2.9.0', 'init()' );
[2502] Fix | Delete
[2503] Fix | Delete
$this->init( $data );
[2504] Fix | Delete
}
[2505] Fix | Delete
[2506] Fix | Delete
/**
[2507] Fix | Delete
* Sanitize initial data.
[2508] Fix | Delete
*
[2509] Fix | Delete
* Performs settings cleaning and sanitization.
[2510] Fix | Delete
*
[2511] Fix | Delete
* @since 2.1.5
[2512] Fix | Delete
* @access private
[2513] Fix | Delete
*
[2514] Fix | Delete
* @param array $settings Settings to sanitize.
[2515] Fix | Delete
* @param array $controls Optional. An array of controls. Default is an
[2516] Fix | Delete
* empty array.
[2517] Fix | Delete
*
[2518] Fix | Delete
* @return array Sanitized settings.
[2519] Fix | Delete
*/
[2520] Fix | Delete
private function sanitize_settings( array $settings, array $controls = [] ) {
[2521] Fix | Delete
if ( ! $controls ) {
[2522] Fix | Delete
$controls = $this->get_controls();
[2523] Fix | Delete
}
[2524] Fix | Delete
[2525] Fix | Delete
foreach ( $controls as $control ) {
[2526] Fix | Delete
$control_obj = Plugin::$instance->controls_manager->get_control( $control['type'] );
[2527] Fix | Delete
[2528] Fix | Delete
if ( $control_obj instanceof Control_Repeater ) {
[2529] Fix | Delete
if ( empty( $settings[ $control['name'] ] ) ) {
[2530] Fix | Delete
continue;
[2531] Fix | Delete
}
[2532] Fix | Delete
[2533] Fix | Delete
foreach ( $settings[ $control['name'] ] as $index => $repeater_row_data ) {
[2534] Fix | Delete
$sanitized_row_data = $this->sanitize_settings( $repeater_row_data, $control['fields'] );
[2535] Fix | Delete
[2536] Fix | Delete
$settings[ $control['name'] ][ $index ] = $sanitized_row_data;
[2537] Fix | Delete
}
[2538] Fix | Delete
[2539] Fix | Delete
continue;
[2540] Fix | Delete
}
[2541] Fix | Delete
[2542] Fix | Delete
$is_dynamic = isset( $settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ] );
[2543] Fix | Delete
[2544] Fix | Delete
if ( ! $is_dynamic ) {
[2545] Fix | Delete
continue;
[2546] Fix | Delete
}
[2547] Fix | Delete
[2548] Fix | Delete
$value_to_check = $settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ];
[2549] Fix | Delete
[2550] Fix | Delete
$tag_text_data = Plugin::$instance->dynamic_tags->tag_text_to_tag_data( $value_to_check );
[2551] Fix | Delete
[2552] Fix | Delete
if ( ! Plugin::$instance->dynamic_tags->get_tag_info( $tag_text_data['name'] ) ) {
[2553] Fix | Delete
unset( $settings[ Manager::DYNAMIC_SETTING_KEY ][ $control['name'] ] );
[2554] Fix | Delete
}
[2555] Fix | Delete
}
[2556] Fix | Delete
[2557] Fix | Delete
return $settings;
[2558] Fix | Delete
}
[2559] Fix | Delete
[2560] Fix | Delete
/**
[2561] Fix | Delete
* Controls stack constructor.
[2562] Fix | Delete
*
[2563] Fix | Delete
* Initializing the control stack class using `$data`. The `$data` is required
[2564] Fix | Delete
* for a normal instance. It is optional only for internal `type instance`.
[2565] Fix | Delete
*
[2566] Fix | Delete
* @since 1.4.0
[2567] Fix | Delete
* @access public
[2568] Fix | Delete
*
[2569] Fix | Delete
* @param array $data Optional. Control stack data. Default is an empty array.
[2570] Fix | Delete
*/
[2571] Fix | Delete
public function __construct( array $data = [] ) {
[2572] Fix | Delete
if ( $data ) {
[2573] Fix | Delete
// TODO: This is for backwards compatibility starting from 2.9.0
[2574] Fix | Delete
// This if statement should be removed when the method is hard-deprecated.
[2575] Fix | Delete
if ( $this->has_own_method( '_init', self::class ) ) {
[2576] Fix | Delete
Plugin::$instance->modules_manager->get_modules( 'dev-tools' )->deprecation->deprecated_function( '_init', '2.9.0', __CLASS__ . '::init()' );
[2577] Fix | Delete
[2578] Fix | Delete
$this->_init( $data );
[2579] Fix | Delete
} else {
[2580] Fix | Delete
$this->init( $data );
[2581] Fix | Delete
}
[2582] Fix | Delete
}
[2583] Fix | Delete
}
[2584] Fix | Delete
}
[2585] Fix | Delete
[2586] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function