79 lines
1.6 KiB
PHP
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' => '',
|
|
],
|
|
],
|
|
],
|
|
],
|
|
],
|
|
] );
|
|
}
|
|
}
|