← All changes
|
modules/global-classes/utils/atomic-elements-utils.php
+7
-41
4.2.3
→
3.30.1
View file →
| @@ -1,61 +1,27 @@ | ||
| 1 | 1 | <?php |
| 2 | 2 | |
| 3 | 3 | namespace Elementor\Modules\GlobalClasses\Utils; |
| 4 | 4 | |
| 5 | -use Elementor\Modules\AtomicWidgets\Elements\Base\Atomic_Element_Base; | |
| 6 | -use Elementor\Modules\AtomicWidgets\Elements\Base\Atomic_Widget_Base; | |
| 7 | -use Elementor\Modules\AtomicWidgets\Utils\Utils as Atomic_Utils; | |
| 8 | -use Elementor\Modules\AtomicWidgets\PropTypeMigrations\Schema_Resolver; | |
| 5 | +use Elementor\Core\Base\Document; | |
| 6 | +use Elementor\Core\Utils\Collection; | |
| 7 | +use Elementor\Modules\AtomicWidgets\Elements\Atomic_Element_Base; | |
| 8 | +use Elementor\Modules\AtomicWidgets\Elements\Atomic_Widget_Base; | |
| 9 | 9 | use Elementor\Plugin; |
| 10 | 10 | |
| 11 | 11 | class Atomic_Elements_Utils { |
| 12 | 12 | |
| 13 | 13 | public static function is_classes_prop( $prop ) { |
| 14 | - // phpcs:ignore | |
| 15 | - return 'plain' === $prop::$KIND && 'classes' === $prop->get_key(); | |
| 14 | + return 'plain' === $prop::KIND && 'classes' === $prop->get_key(); | |
| 16 | 15 | } |
| 17 | 16 | |
| 18 | - public static function collect_class_ids_from_element_data( array $element_data ): array { | |
| 19 | - $element_type = self::get_element_type( $element_data ); | |
| 20 | - $element_instance = self::get_element_instance( $element_type ); | |
| 21 | - | |
| 22 | - if ( ! Atomic_Utils::is_atomic( $element_instance ) ) { | |
| 23 | - return []; | |
| 24 | - } | |
| 25 | - | |
| 26 | - $schema = Schema_Resolver::get_widget_schema( $element_type ); | |
| 27 | - $settings = $element_data['settings'] ?? []; | |
| 28 | - $class_ids = []; | |
| 29 | - | |
| 30 | - foreach ( $schema as $settings_key => $prop ) { | |
| 31 | - if ( ! self::is_classes_prop( $prop ) ) { | |
| 32 | - continue; | |
| 33 | - } | |
| 34 | - | |
| 35 | - $values = $settings[ $settings_key ]['value'] ?? []; | |
| 36 | - | |
| 37 | - if ( ! is_array( $values ) ) { | |
| 38 | - continue; | |
| 39 | - } | |
| 40 | - | |
| 41 | - foreach ( $values as $class_id ) { | |
| 42 | - if ( is_string( $class_id ) && '' !== $class_id ) { | |
| 43 | - $class_ids[] = $class_id; | |
| 44 | - } | |
| 45 | - } | |
| 46 | - } | |
| 47 | - | |
| 48 | - return $class_ids; | |
| 49 | - } | |
| 50 | - | |
| 51 | 17 | public static function get_element_type( $element ) { |
| 52 | 18 | return 'widget' === $element['elType'] ? $element['widgetType'] : $element['elType']; |
| 53 | 19 | } |
| 54 | 20 | |
| 55 | 21 | public static function get_element_instance( $element_type ) { |
| 56 | - $widget = Plugin::instance()->widgets_manager->get_widget_types( $element_type ); | |
| 57 | - $element = Plugin::instance()->elements_manager->get_element_types( $element_type ); | |
| 22 | + $widget = Plugin::$instance->widgets_manager->get_widget_types( $element_type ); | |
| 23 | + $element = Plugin::$instance->elements_manager->get_element_types( $element_type ); | |
| 58 | 24 | |
| 59 | 25 | return $widget ?? $element; |
| 60 | 26 | } |
| 61 | 27 | |