Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93
/home/sportsfe.../httpdocs/clone/wp-conte.../themes/Divi/includes/builder/module/settings/migratio...
File: ContactFormItemOptionsSerialization.php
<?php
[0] Fix | Delete
/**
[1] Fix | Delete
* Migration for the ContactFormItem module which fixes quote serialization for checkbox, radio and select field options.
[2] Fix | Delete
*
[3] Fix | Delete
* @since 3.10
[4] Fix | Delete
*/
[5] Fix | Delete
class ET_Builder_Module_Settings_Migration_ContactFormItemOptionsSerialization extends ET_Builder_Module_Settings_Migration {
[6] Fix | Delete
public function get_modules() {
[7] Fix | Delete
return array( 'et_pb_contact_field' );
[8] Fix | Delete
}
[9] Fix | Delete
[10] Fix | Delete
public function get_fields() {
[11] Fix | Delete
return array(
[12] Fix | Delete
'checkbox_options' => array(
[13] Fix | Delete
'affected_fields' => array(
[14] Fix | Delete
'checkbox_options' => $this->get_modules(),
[15] Fix | Delete
),
[16] Fix | Delete
),
[17] Fix | Delete
'radio_options' => array(
[18] Fix | Delete
'affected_fields' => array(
[19] Fix | Delete
'radio_options' => $this->get_modules(),
[20] Fix | Delete
),
[21] Fix | Delete
),
[22] Fix | Delete
'select_options' => array(
[23] Fix | Delete
'affected_fields' => array(
[24] Fix | Delete
'select_options' => $this->get_modules(),
[25] Fix | Delete
),
[26] Fix | Delete
),
[27] Fix | Delete
);
[28] Fix | Delete
}
[29] Fix | Delete
[30] Fix | Delete
public function migrate( $field_name, $current_value, $module_slug, $saved_value, $saved_field_name, $attrs, $content, $module_address ) {
[31] Fix | Delete
if ( json_decode( $saved_value ) ) {
[32] Fix | Delete
return $saved_value;
[33] Fix | Delete
}
[34] Fix | Delete
[35] Fix | Delete
$pattern = '/
[36] Fix | Delete
\{
[37] Fix | Delete
("value":")(.*?)(",)
[38] Fix | Delete
(
[39] Fix | Delete
"checked":.,?
[40] Fix | Delete
.*?
[41] Fix | Delete
)
[42] Fix | Delete
\}
[43] Fix | Delete
/ix';
[44] Fix | Delete
[45] Fix | Delete
$saved_value = preg_replace_callback( $pattern, array( $this, 'escape_quotes' ), $saved_value );
[46] Fix | Delete
[47] Fix | Delete
return $saved_value;
[48] Fix | Delete
}
[49] Fix | Delete
[50] Fix | Delete
public function escape_quotes( $matches ) {
[51] Fix | Delete
return '{' . $matches[1] . preg_replace('/(?<!\\\\)"/', '\\"', $matches[2] ) . $matches[3] . $matches[4] . '}';
[52] Fix | Delete
}
[53] Fix | Delete
}
[54] Fix | Delete
[55] Fix | Delete
return new ET_Builder_Module_Settings_Migration_ContactFormItemOptionsSerialization();
[56] Fix | Delete
[57] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function