2024-05-06 11:04:37 +07:00

79 lines
1.6 KiB
PHP

<?php
namespace ElementorPro\Modules\ThemeBuilder\Classes;
use Elementor\Control_Repeater;
use Elementor\Controls_Manager;
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
class Conditions_Repeater extends Control_Repeater {
const CONTROL_TYPE = 'conditions_repeater';
public function get_type() {
return self::CONTROL_TYPE;
}
protected function get_default_settings() {
return array_merge( parent::get_default_settings(), [
'render_type' => 'none',
'fields' => [
[
'name' => 'type',
'type' => Controls_Manager::SELECT,
'default' => 'include',
'options' => [
'include' => esc_html__( 'Include', 'elementor-pro' ),
'exclude' => esc_html__( 'Exclude', 'elementor-pro' ),
],
],
[
'name' => 'name',
'type' => Controls_Manager::SELECT,
'default' => 'general',
'groups' => [
[
'label' => esc_html__( 'General', 'elementor-pro' ),
'options' => [],
],
],
],
[
'name' => 'sub_name',
'type' => Controls_Manager::SELECT,
'options' => [
'' => esc_html__( 'All', 'elementor-pro' ),
],
'conditions' => [
'terms' => [
[
'name' => 'name',
'operator' => '!==',
'value' => '',
],
],
],
],
[
'name' => 'sub_id',
'type' => Controls_Manager::SELECT,
'options' => [
'' => esc_html__( 'All', 'elementor-pro' ),
],
'conditions' => [
'terms' => [
[
'name' => 'sub_name',
'operator' => '!==',
'value' => '',
],
],
],
],
],
] );
}
}