soflyy / oxygen-bugs-and-features

Bug Reports & Feature Requests for Oxygen
https://oxygenbuilder.com/
316 stars 31 forks source link

Oxy 4.7.1/4.8 PHP Warning 'Undefined array key "icon-color/icon-background-color /icon-padding/icon-size"' when saving template/post in Builder #3451

Open maltmann-muc opened 9 months ago

maltmann-muc commented 9 months ago

Environment: PHP 8.1, WP 6.4.1, Oxy 4.7.1 Situation: In Builder when saving template/post containing e.g. an icon with a class assigned having a state like :hover

File and Function: wp-content/plugins/oxygen/component-framework/component-init.php ct_generate_class_states_css()

Warning and Call Stack:

Warning:  Undefined array key "icon-color" in /.../wp-content/plugins/oxygen/component-framework/component-init.php on line 3023
Warning:  Undefined array key "icon-background-color" in /.../wp-content/plugins/oxygen/component-framework/component-init.php on line 3024
Warning:  Undefined array key "icon-padding" in /.../wp-content/plugins/oxygen/component-framework/component-init.php on line 3025
Warning:  Undefined array key "icon-size" in /.../wp-content/plugins/oxygen/component-framework/component-init.php on line 3026
Stack trace:
  1. {main}() /.../index.php:0
  2. require() /.../index.php:17
  3. require_once() /.../wp-blog-header.php:19
  4. do_action($hook_name = 'template_redirect') /.../wp-includes/template-loader.php:13
  5. WP_Hook->do_action($args = [0 => '']) /.../wp-includes/plugin.php:517
  6. WP_Hook->apply_filters($value = '', $args = [0 => '']) /.../wp-includes/class-wp-hook.php:348
  7. ct_save_components_tree_as_post('') /.../wp-includes/class-wp-hook.php:324
  8. oxygen_vsb_cache_universal_css() /.../wp-content/plugins/oxygen/component-framework/includes/ajax.php:273
  9. oxygen_vsb_get_classes_styles() /.../wp-content/plugins/oxygen/component-framework/includes/cache.php:19
 10. ct_generate_class_states_css($class = 'aaa-video-control', $state = 'hover', $options = ['icon-color' => '#ffffff'], $is_media = *uninitialized*, $is_selector = *uninitialized*) /.../wp-content/plugins/oxygen/component-framework/component-init.php:2872

Description: $options may or may not contain fields "icon-background-color", "icon-padding", "icon-size".

Bildschirmfoto 2023-11-19 um 10 17 23

Solution: Change $iconColor = oxygen_vsb_get_global_color_value($options['icon-color']); $iconBackgroundColor= oxygen_vsb_get_global_color_value($options['icon-background-color']); $iconPadding = $options['icon-padding']; $iconSize = $options['icon-size']; To $iconColor = oxygen_vsb_get_global_color_value($options['icon-color']??null); $iconBackgroundColor= oxygen_vsb_get_global_color_value($options['icon-background-color']??null); $iconPadding = $options['icon-padding']??null; $iconSize = $options['icon-size']??null;

maltmann-muc commented 8 months ago

Oxy 4.8 RC 1: Issue persists.

maltmann-muc commented 8 months ago

Oxy 4.8: Issue persists.

Kpudlo commented 7 months ago

Confirmed and reported internally via https://github.com/soflyy/oxygen/issues/5055

danner26 commented 3 months ago

Seeing this same issue on the latest prod build with 6.5.2