Edit File by line
/home/zeestwma/ceyloniy.../wp-conte.../plugins/wpforms-.../src/Integrat.../Elemento...
File: WidgetModern.php
'containerBorderWidth',
[500] Fix | Delete
[
[501] Fix | Delete
'label' => esc_html__( 'Border Size (px)', 'wpforms-lite' ),
[502] Fix | Delete
'type' => Controls_Manager::NUMBER,
[503] Fix | Delete
'default' => CSSVars::ROOT_VARS['container-border-width'],
[504] Fix | Delete
'min' => '0',
[505] Fix | Delete
'condition' => [
[506] Fix | Delete
'containerBorderStyle!' => 'none',
[507] Fix | Delete
],
[508] Fix | Delete
]
[509] Fix | Delete
);
[510] Fix | Delete
[511] Fix | Delete
$this->add_control(
[512] Fix | Delete
'containerBorderRadius',
[513] Fix | Delete
[
[514] Fix | Delete
'label' => esc_html__( 'Border Radius (px)', 'wpforms-lite' ),
[515] Fix | Delete
'type' => Controls_Manager::NUMBER,
[516] Fix | Delete
'min' => '0',
[517] Fix | Delete
'default' => '3',
[518] Fix | Delete
]
[519] Fix | Delete
);
[520] Fix | Delete
[521] Fix | Delete
$this->add_control(
[522] Fix | Delete
'containerShadowSize',
[523] Fix | Delete
[
[524] Fix | Delete
'label' => esc_html__( 'Shadow', 'wpforms-lite' ),
[525] Fix | Delete
'type' => Controls_Manager::SELECT,
[526] Fix | Delete
'options' => [
[527] Fix | Delete
'none' => esc_html__( 'None', 'wpforms-lite' ),
[528] Fix | Delete
'small' => esc_html__( 'Small', 'wpforms-lite' ),
[529] Fix | Delete
'medium' => esc_html__( 'Medium', 'wpforms-lite' ),
[530] Fix | Delete
'large' => esc_html__( 'Large', 'wpforms-lite' ),
[531] Fix | Delete
],
[532] Fix | Delete
'default' => CSSVars::CONTAINER_SHADOW_SIZE['none']['box-shadow'],
[533] Fix | Delete
]
[534] Fix | Delete
);
[535] Fix | Delete
[536] Fix | Delete
$this->add_control(
[537] Fix | Delete
'containerBorderColor',
[538] Fix | Delete
[
[539] Fix | Delete
'label' => esc_html__( 'Border', 'wpforms-lite' ),
[540] Fix | Delete
'type' => Controls_Manager::COLOR,
[541] Fix | Delete
'default' => CSSVars::ROOT_VARS['container-border-color'],
[542] Fix | Delete
'condition' => [
[543] Fix | Delete
'containerBorderStyle!' => 'none',
[544] Fix | Delete
],
[545] Fix | Delete
]
[546] Fix | Delete
);
[547] Fix | Delete
[548] Fix | Delete
$this->end_controls_section();
[549] Fix | Delete
}
[550] Fix | Delete
[551] Fix | Delete
/**
[552] Fix | Delete
* Register widget controls for the "Background Style" section.
[553] Fix | Delete
*
[554] Fix | Delete
* @since 1.9.6
[555] Fix | Delete
*/
[556] Fix | Delete
private function add_background_style_controls(): void {
[557] Fix | Delete
[558] Fix | Delete
$this->start_controls_section(
[559] Fix | Delete
'background_styles',
[560] Fix | Delete
[
[561] Fix | Delete
'label' => esc_html__( 'Background Styles', 'wpforms-lite' ),
[562] Fix | Delete
'tab' => Controls_Manager::TAB_STYLE,
[563] Fix | Delete
]
[564] Fix | Delete
);
[565] Fix | Delete
[566] Fix | Delete
$this->add_control(
[567] Fix | Delete
'backgroundImage',
[568] Fix | Delete
[
[569] Fix | Delete
'label' => esc_html__( 'Image', 'wpforms-lite' ),
[570] Fix | Delete
'type' => Controls_Manager::SELECT,
[571] Fix | Delete
'options' => [
[572] Fix | Delete
'none' => esc_html__( 'None', 'wpforms-lite' ),
[573] Fix | Delete
'library' => esc_html__( 'Media Library', 'wpforms-lite' ),
[574] Fix | Delete
'stock' => esc_html__( 'Stock Photo', 'wpforms-lite' ),
[575] Fix | Delete
],
[576] Fix | Delete
'default' => 'none',
[577] Fix | Delete
]
[578] Fix | Delete
);
[579] Fix | Delete
[580] Fix | Delete
$this->add_control(
[581] Fix | Delete
'backgroundPosition',
[582] Fix | Delete
[
[583] Fix | Delete
'label' => esc_html__( 'Position', 'wpforms-lite' ),
[584] Fix | Delete
'type' => Controls_Manager::SELECT,
[585] Fix | Delete
'options' => [
[586] Fix | Delete
'top left' => esc_html__( 'Top Left', 'wpforms-lite' ),
[587] Fix | Delete
'top center' => esc_html__( 'Top Center', 'wpforms-lite' ),
[588] Fix | Delete
'top right' => esc_html__( 'Top Right', 'wpforms-lite' ),
[589] Fix | Delete
'center left' => esc_html__( 'Center Left', 'wpforms-lite' ),
[590] Fix | Delete
'center center' => esc_html__( 'Center Center', 'wpforms-lite' ),
[591] Fix | Delete
'center right' => esc_html__( 'Center Right', 'wpforms-lite' ),
[592] Fix | Delete
'bottom left' => esc_html__( 'Bottom Left', 'wpforms-lite' ),
[593] Fix | Delete
'bottom center' => esc_html__( 'Bottom Center', 'wpforms-lite' ),
[594] Fix | Delete
'bottom right' => esc_html__( 'Bottom Right', 'wpforms-lite' ),
[595] Fix | Delete
],
[596] Fix | Delete
'default' => CSSVars::ROOT_VARS['background-position'],
[597] Fix | Delete
'condition' => [
[598] Fix | Delete
'backgroundImage!' => 'none',
[599] Fix | Delete
],
[600] Fix | Delete
]
[601] Fix | Delete
);
[602] Fix | Delete
[603] Fix | Delete
$this->add_control(
[604] Fix | Delete
'backgroundRepeat',
[605] Fix | Delete
[
[606] Fix | Delete
'label' => esc_html__( 'Repeat', 'wpforms-lite' ),
[607] Fix | Delete
'type' => Controls_Manager::SELECT,
[608] Fix | Delete
'options' => [
[609] Fix | Delete
'no-repeat' => esc_html__( 'No Repeat', 'wpforms-lite' ),
[610] Fix | Delete
'repeat' => esc_html__( 'Tile', 'wpforms-lite' ),
[611] Fix | Delete
'repeat-x' => esc_html__( 'Repeat X', 'wpforms-lite' ),
[612] Fix | Delete
'repeat-y' => esc_html__( 'Repeat Y', 'wpforms-lite' ),
[613] Fix | Delete
],
[614] Fix | Delete
'default' => CSSVars::ROOT_VARS['background-repeat'],
[615] Fix | Delete
'condition' => [
[616] Fix | Delete
'backgroundImage!' => 'none',
[617] Fix | Delete
],
[618] Fix | Delete
]
[619] Fix | Delete
);
[620] Fix | Delete
[621] Fix | Delete
$this->add_control(
[622] Fix | Delete
'backgroundSize',
[623] Fix | Delete
[
[624] Fix | Delete
'label' => esc_html__( 'Size', 'wpforms-lite' ),
[625] Fix | Delete
'type' => Controls_Manager::SELECT,
[626] Fix | Delete
'options' => [
[627] Fix | Delete
'dimensions' => esc_html__( 'Dimensions', 'wpforms-lite' ),
[628] Fix | Delete
'cover' => esc_html__( 'Cover', 'wpforms-lite' ),
[629] Fix | Delete
],
[630] Fix | Delete
'default' => CSSVars::ROOT_VARS['background-size'],
[631] Fix | Delete
'condition' => [
[632] Fix | Delete
'backgroundImage!' => 'none',
[633] Fix | Delete
],
[634] Fix | Delete
]
[635] Fix | Delete
);
[636] Fix | Delete
[637] Fix | Delete
$this->add_control(
[638] Fix | Delete
'backgroundSizeMode',
[639] Fix | Delete
[
[640] Fix | Delete
'type' => Controls_Manager::HIDDEN,
[641] Fix | Delete
'default' => CSSVars::ROOT_VARS['background-size'],
[642] Fix | Delete
]
[643] Fix | Delete
);
[644] Fix | Delete
[645] Fix | Delete
$this->add_control(
[646] Fix | Delete
'backgroundWidth',
[647] Fix | Delete
[
[648] Fix | Delete
'label' => esc_html__( 'Width (px)', 'wpforms-lite' ),
[649] Fix | Delete
'type' => Controls_Manager::NUMBER,
[650] Fix | Delete
'default' => '100',
[651] Fix | Delete
'min' => '0',
[652] Fix | Delete
'condition' => [
[653] Fix | Delete
'backgroundImage!' => 'none',
[654] Fix | Delete
'backgroundSize' => 'dimensions',
[655] Fix | Delete
],
[656] Fix | Delete
]
[657] Fix | Delete
);
[658] Fix | Delete
[659] Fix | Delete
$this->add_control(
[660] Fix | Delete
'backgroundHeight',
[661] Fix | Delete
[
[662] Fix | Delete
'label' => esc_html__( 'Height (px)', 'wpforms-lite' ),
[663] Fix | Delete
'type' => Controls_Manager::NUMBER,
[664] Fix | Delete
'default' => '100',
[665] Fix | Delete
'min' => '0',
[666] Fix | Delete
'condition' => [
[667] Fix | Delete
'backgroundImage!' => 'none',
[668] Fix | Delete
'backgroundSize' => 'dimensions',
[669] Fix | Delete
],
[670] Fix | Delete
]
[671] Fix | Delete
);
[672] Fix | Delete
[673] Fix | Delete
$this->add_control(
[674] Fix | Delete
'backgroundUrl',
[675] Fix | Delete
[
[676] Fix | Delete
'label' => esc_html__( 'Choose Image', 'wpforms-lite' ),
[677] Fix | Delete
'type' => Controls_Manager::MEDIA,
[678] Fix | Delete
'default' => [
[679] Fix | Delete
'url' => CSSVars::ROOT_VARS['background-url'],
[680] Fix | Delete
],
[681] Fix | Delete
'ai' => [
[682] Fix | Delete
'active' => false,
[683] Fix | Delete
],
[684] Fix | Delete
'separator' => 'after',
[685] Fix | Delete
'condition' => [
[686] Fix | Delete
'backgroundImage!' => 'none',
[687] Fix | Delete
],
[688] Fix | Delete
]
[689] Fix | Delete
);
[690] Fix | Delete
[691] Fix | Delete
$this->add_control(
[692] Fix | Delete
'backgroundColor',
[693] Fix | Delete
[
[694] Fix | Delete
'label' => esc_html__( 'Background', 'wpforms-lite' ),
[695] Fix | Delete
'type' => Controls_Manager::COLOR,
[696] Fix | Delete
'default' => CSSVars::ROOT_VARS['background-color'],
[697] Fix | Delete
]
[698] Fix | Delete
);
[699] Fix | Delete
[700] Fix | Delete
$this->end_controls_section();
[701] Fix | Delete
}
[702] Fix | Delete
[703] Fix | Delete
/**
[704] Fix | Delete
* Register widget controls for the "Other Styles" section.
[705] Fix | Delete
*
[706] Fix | Delete
* @since 1.9.6
[707] Fix | Delete
*/
[708] Fix | Delete
private function add_other_style_controls(): void {
[709] Fix | Delete
[710] Fix | Delete
$this->start_controls_section(
[711] Fix | Delete
'other_styles',
[712] Fix | Delete
[
[713] Fix | Delete
'label' => esc_html__( 'Other Styles', 'wpforms-lite' ),
[714] Fix | Delete
'tab' => Controls_Manager::TAB_STYLE,
[715] Fix | Delete
]
[716] Fix | Delete
);
[717] Fix | Delete
[718] Fix | Delete
$this->add_control(
[719] Fix | Delete
'pageBreakColor',
[720] Fix | Delete
[
[721] Fix | Delete
'label' => esc_html__( 'Page Break', 'wpforms-lite' ),
[722] Fix | Delete
'type' => Controls_Manager::COLOR,
[723] Fix | Delete
'default' => CSSVars::ROOT_VARS['page-break-color'],
[724] Fix | Delete
]
[725] Fix | Delete
);
[726] Fix | Delete
[727] Fix | Delete
$this->end_controls_section();
[728] Fix | Delete
}
[729] Fix | Delete
[730] Fix | Delete
/**
[731] Fix | Delete
* Register widget controls for the "Advanced" section.
[732] Fix | Delete
*
[733] Fix | Delete
* Adds controls to the "Button Styles" section of the Widget Style settings.
[734] Fix | Delete
*
[735] Fix | Delete
* @since 1.8.3
[736] Fix | Delete
*/
[737] Fix | Delete
private function add_advanced_style_controls(): void {
[738] Fix | Delete
[739] Fix | Delete
$this->start_controls_section(
[740] Fix | Delete
'advanced',
[741] Fix | Delete
[
[742] Fix | Delete
'label' => esc_html__( 'Advanced', 'wpforms-lite' ),
[743] Fix | Delete
'tab' => Controls_Manager::TAB_STYLE,
[744] Fix | Delete
]
[745] Fix | Delete
);
[746] Fix | Delete
[747] Fix | Delete
$this->add_control(
[748] Fix | Delete
'className',
[749] Fix | Delete
[
[750] Fix | Delete
'label' => esc_html__( 'Additional Classes', 'wpforms-lite' ),
[751] Fix | Delete
'type' => Controls_Manager::TEXT,
[752] Fix | Delete
'description' => esc_html__( 'Separate multiple classes with spaces.', 'wpforms-lite' ),
[753] Fix | Delete
'ai' => [
[754] Fix | Delete
'active' => false,
[755] Fix | Delete
],
[756] Fix | Delete
'prefix_class' => '', // Prevents re-rendering of the widget.
[757] Fix | Delete
]
[758] Fix | Delete
);
[759] Fix | Delete
if ( $this->is_admin() ) {
[760] Fix | Delete
$this->add_control(
[761] Fix | Delete
'ACDivider',
[762] Fix | Delete
[
[763] Fix | Delete
'type' => Controls_Manager::DIVIDER,
[764] Fix | Delete
]
[765] Fix | Delete
);
[766] Fix | Delete
[767] Fix | Delete
$this->add_control(
[768] Fix | Delete
'copyPasteJsonValue',
[769] Fix | Delete
[
[770] Fix | Delete
'label' => esc_html__( 'Copy / Paste Style Settings', 'wpforms-lite' ),
[771] Fix | Delete
'type' => Controls_Manager::TEXTAREA,
[772] Fix | Delete
'description' => esc_html__( 'If you\'ve copied style settings from another form, you can paste them here to add the same styling to this form. Any current style settings will be overwritten.', 'wpforms-lite' ),
[773] Fix | Delete
'ai' => [
[774] Fix | Delete
'active' => false,
[775] Fix | Delete
],
[776] Fix | Delete
]
[777] Fix | Delete
);
[778] Fix | Delete
[779] Fix | Delete
$this->add_control(
[780] Fix | Delete
'CPDivider',
[781] Fix | Delete
[
[782] Fix | Delete
'type' => Controls_Manager::DIVIDER,
[783] Fix | Delete
]
[784] Fix | Delete
);
[785] Fix | Delete
}
[786] Fix | Delete
[787] Fix | Delete
$this->end_controls_section();
[788] Fix | Delete
}
[789] Fix | Delete
[790] Fix | Delete
/**
[791] Fix | Delete
* Render widget output on the frontend.
[792] Fix | Delete
*
[793] Fix | Delete
* @since 1.8.3
[794] Fix | Delete
*/
[795] Fix | Delete
protected function render_frontend() {
[796] Fix | Delete
[797] Fix | Delete
if ( empty( $this->css_vars_obj ) ) {
[798] Fix | Delete
return;
[799] Fix | Delete
}
[800] Fix | Delete
[801] Fix | Delete
$widget_id = $this->get_id();
[802] Fix | Delete
$attr = $this->get_settings_for_display();
[803] Fix | Delete
$css_vars = $this->css_vars_obj->get_customized_css_vars( $attr );
[804] Fix | Delete
$custom_classes = ! empty( $attr['className'] ) ? trim( $attr['className'] ) : '';
[805] Fix | Delete
[806] Fix | Delete
if ( ! empty( $css_vars ) ) {
[807] Fix | Delete
[808] Fix | Delete
$style_id = 'wpforms-css-vars-elementor-widget-' . $widget_id;
[809] Fix | Delete
[810] Fix | Delete
/**
[811] Fix | Delete
* Filter the CSS selector for output CSS variables for styling the form in Elementor widget.
[812] Fix | Delete
*
[813] Fix | Delete
* @since 1.8.3
[814] Fix | Delete
*
[815] Fix | Delete
* @param string $selector The CSS selector for output CSS variables for styling the Elementor Widget.
[816] Fix | Delete
* @param array $attr Attributes passed by Elementor Widget.
[817] Fix | Delete
* @param array $css_vars CSS variables data.
[818] Fix | Delete
*/
[819] Fix | Delete
$vars_selector = apply_filters(
[820] Fix | Delete
'wpforms_integrations_elementor_widget_modern_output_css_vars_selector',
[821] Fix | Delete
".elementor-widget-wpforms.elementor-element-{$widget_id}",
[822] Fix | Delete
$attr,
[823] Fix | Delete
$css_vars
[824] Fix | Delete
);
[825] Fix | Delete
[826] Fix | Delete
$this->css_vars_obj->output_selector_vars( $vars_selector, $css_vars, $style_id );
[827] Fix | Delete
}
[828] Fix | Delete
[829] Fix | Delete
// Add custom classes.
[830] Fix | Delete
if ( $custom_classes ) {
[831] Fix | Delete
$this->add_render_attribute(
[832] Fix | Delete
'_wrapper',
[833] Fix | Delete
[
[834] Fix | Delete
'class' => [
[835] Fix | Delete
$custom_classes,
[836] Fix | Delete
],
[837] Fix | Delete
]
[838] Fix | Delete
);
[839] Fix | Delete
}
[840] Fix | Delete
[841] Fix | Delete
// Render selected form.
[842] Fix | Delete
$this->render_form();
[843] Fix | Delete
}
[844] Fix | Delete
[845] Fix | Delete
/**
[846] Fix | Delete
* Get settings for display.
[847] Fix | Delete
*
[848] Fix | Delete
* @since 1.8.3
[849] Fix | Delete
*
[850] Fix | Delete
* @param string|null $setting_key Optional. The key of the requested setting. Default is null.
[851] Fix | Delete
*
[852] Fix | Delete
* @return mixed The settings.
[853] Fix | Delete
*/
[854] Fix | Delete
public function get_settings_for_display( $setting_key = null ) {
[855] Fix | Delete
[856] Fix | Delete
$settings = parent::get_settings_for_display( $setting_key );
[857] Fix | Delete
[858] Fix | Delete
if ( ! empty( $setting_key ) ) {
[859] Fix | Delete
return $settings;
[860] Fix | Delete
}
[861] Fix | Delete
[862] Fix | Delete
$settings = $this->remove_empty_settings( $settings );
[863] Fix | Delete
$settings = $this->apply_dimension_settings( $settings );
[864] Fix | Delete
$settings = $this->apply_complex_settings( $settings );
[865] Fix | Delete
[866] Fix | Delete
if ( isset( $settings['__globals__'] ) ) {
[867] Fix | Delete
$settings = $this->check_global_styles( $settings );
[868] Fix | Delete
}
[869] Fix | Delete
[870] Fix | Delete
return $settings;
[871] Fix | Delete
}
[872] Fix | Delete
[873] Fix | Delete
/**
[874] Fix | Delete
* Remove empty settings.
[875] Fix | Delete
*
[876] Fix | Delete
* @since 1.9.6
[877] Fix | Delete
*
[878] Fix | Delete
* @param mixed $settings Widget settings.
[879] Fix | Delete
*
[880] Fix | Delete
* @return mixed Updated settings.
[881] Fix | Delete
*/
[882] Fix | Delete
private function remove_empty_settings( $settings ) {
[883] Fix | Delete
[884] Fix | Delete
if ( ! is_array( $settings ) ) {
[885] Fix | Delete
return $settings;
[886] Fix | Delete
}
[887] Fix | Delete
[888] Fix | Delete
return array_filter(
[889] Fix | Delete
$settings,
[890] Fix | Delete
static function ( $value ) {
[891] Fix | Delete
[892] Fix | Delete
return ! empty( $value );
[893] Fix | Delete
}
[894] Fix | Delete
);
[895] Fix | Delete
}
[896] Fix | Delete
[897] Fix | Delete
/**
[898] Fix | Delete
* Apply complex settings values.
[899] Fix | Delete
*
[900] Fix | Delete
* @since 1.9.6
[901] Fix | Delete
*
[902] Fix | Delete
* @param mixed $settings Widget settings.
[903] Fix | Delete
*
[904] Fix | Delete
* @return mixed Updated settings.
[905] Fix | Delete
*/
[906] Fix | Delete
private function apply_complex_settings( $settings ) {
[907] Fix | Delete
[908] Fix | Delete
if ( isset( $settings['backgroundUrl'] ) && is_array( $settings['backgroundUrl'] ) ) {
[909] Fix | Delete
$image_url = $settings['backgroundUrl']['url'] ?? '';
[910] Fix | Delete
$settings['backgroundUrl'] = 'url( ' . $image_url . ' )';
[911] Fix | Delete
}
[912] Fix | Delete
[913] Fix | Delete
if ( isset( $settings['backgroundSize'] ) && $settings['backgroundSize'] === 'dimensions' ) {
[914] Fix | Delete
$bg_width = $settings['backgroundWidth'] ?? CSSVars::ROOT_VARS['background-width'];
[915] Fix | Delete
$bg_height = $settings['backgroundHeight'] ?? CSSVars::ROOT_VARS['background-height'];
[916] Fix | Delete
[917] Fix | Delete
$settings['backgroundSize'] = "{$bg_width} {$bg_height}";
[918] Fix | Delete
}
[919] Fix | Delete
[920] Fix | Delete
return $settings;
[921] Fix | Delete
}
[922] Fix | Delete
[923] Fix | Delete
/**
[924] Fix | Delete
* Apply dimension settings with pixel units.
[925] Fix | Delete
*
[926] Fix | Delete
* @since 1.9.6
[927] Fix | Delete
*
[928] Fix | Delete
* @param mixed $settings Widget settings.
[929] Fix | Delete
*
[930] Fix | Delete
* @return mixed Updated settings with dimension values.
[931] Fix | Delete
*/
[932] Fix | Delete
private function apply_dimension_settings( $settings ) {
[933] Fix | Delete
[934] Fix | Delete
$dimension_properties = [
[935] Fix | Delete
'fieldBorderRadius' => 'field-border-radius',
[936] Fix | Delete
'fieldBorderSize' => 'field-border-size',
[937] Fix | Delete
'buttonBorderRadius' => 'button-border-radius',
[938] Fix | Delete
'buttonBorderSize' => 'button-border-size',
[939] Fix | Delete
'containerPadding' => 'container-padding',
[940] Fix | Delete
'containerBorderWidth' => 'container-border-width',
[941] Fix | Delete
'containerBorderRadius' => 'container-border-radius',
[942] Fix | Delete
'backgroundWidth' => 'background-width',
[943] Fix | Delete
'backgroundHeight' => 'background-height',
[944] Fix | Delete
];
[945] Fix | Delete
[946] Fix | Delete
foreach ( $dimension_properties as $property => $root_var ) {
[947] Fix | Delete
if ( ! isset( $settings[ $property ] ) ) {
[948] Fix | Delete
$settings[ $property ] = CSSVars::ROOT_VARS[ $root_var ];
[949] Fix | Delete
[950] Fix | Delete
continue;
[951] Fix | Delete
}
[952] Fix | Delete
[953] Fix | Delete
$value = (string) $settings[ $property ];
[954] Fix | Delete
[955] Fix | Delete
if ( $value !== '' && substr( $value, -2 ) !== 'px' ) {
[956] Fix | Delete
$settings[ $property ] = $value . 'px';
[957] Fix | Delete
}
[958] Fix | Delete
}
[959] Fix | Delete
[960] Fix | Delete
return $settings;
[961] Fix | Delete
}
[962] Fix | Delete
[963] Fix | Delete
/**
[964] Fix | Delete
* Check if global styles are used in colors controls and update its values with the real ones.
[965] Fix | Delete
*
[966] Fix | Delete
* @since 1.8.3
[967] Fix | Delete
*
[968] Fix | Delete
* @param mixed $settings Widget settings.
[969] Fix | Delete
*
[970] Fix | Delete
* @return mixed Updated settings.
[971] Fix | Delete
*/
[972] Fix | Delete
private function check_global_styles( $settings ) {
[973] Fix | Delete
[974] Fix | Delete
$global_settings = $settings['__globals__'] ?? [];
[975] Fix | Delete
$kit = Plugin::$instance->kits_manager->get_active_kit_for_frontend();
[976] Fix | Delete
$system_colors = $kit->get_settings_for_display( 'system_colors' );
[977] Fix | Delete
$custom_colors = $kit->get_settings_for_display( 'custom_colors' );
[978] Fix | Delete
$global_colors = array_merge( $system_colors, $custom_colors );
[979] Fix | Delete
[980] Fix | Delete
foreach ( $global_settings as $key => $value ) {
[981] Fix | Delete
if ( empty( $value ) ) {
[982] Fix | Delete
continue;
[983] Fix | Delete
}
[984] Fix | Delete
[985] Fix | Delete
$color_id = str_replace( 'globals/colors?id=', '', $value );
[986] Fix | Delete
[987] Fix | Delete
foreach ( $global_colors as $color ) {
[988] Fix | Delete
if ( $color['_id'] === $color_id ) {
[989] Fix | Delete
$settings[ $key ] = $color['color'];
[990] Fix | Delete
}
[991] Fix | Delete
}
[992] Fix | Delete
}
[993] Fix | Delete
[994] Fix | Delete
return $settings;
[995] Fix | Delete
}
[996] Fix | Delete
[997] Fix | Delete
/**
[998] Fix | Delete
* Check if the user is an admin.
[999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function