/var/www/html_us/wp-content/plugins/elementor/includes/controls/groups/border.php


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<?php
namespace Elementor;

if ( ! 
defined'ABSPATH' ) ) {
    exit; 
// Exit if accessed directly.
}

/**
 * Elementor border control.
 *
 * A base control for creating border control. Displays input fields to define
 * border type, border width and border color.
 *
 * @since 1.0.0
 */
class Group_Control_Border extends Group_Control_Base {

    
/**
     * Fields.
     *
     * Holds all the border control fields.
     *
     * @since 1.0.0
     * @access protected
     * @static
     *
     * @var array Border control fields.
     */
    
protected static $fields;

    
/**
     * Get border control type.
     *
     * Retrieve the control type, in this case `border`.
     *
     * @since 1.0.0
     * @access public
     * @static
     *
     * @return string Control type.
     */
    
public static function get_type() {
        return 
'border';
    }

    
/**
     * Init fields.
     *
     * Initialize border control fields.
     *
     * @since 1.2.2
     * @access protected
     *
     * @return array Control fields.
     */
    
protected function init_fields() {
        
$fields = [];

        
$fields['border'] = [
            
'label' => esc_html__'Border Type''elementor' ),
            
'type' => Controls_Manager::SELECT,
            
'options' => [
                
'' => esc_html__'Default''elementor' ),
                
'none' => esc_html__'None''elementor' ),
                
'solid' => esc_html__'Solid''elementor' ),
                
'double' => esc_html__'Double''elementor' ),
                
'dotted' => esc_html__'Dotted''elementor' ),
                
'dashed' => esc_html__'Dashed''elementor' ),
                
'groove' => esc_html__'Groove''elementor' ),
            ],
            
'selectors' => [
                
'{{SELECTOR}}' => 'border-style: {{VALUE}};',
            ],
        ];

        
$fields['width'] = [
            
'label' => esc_html__'Border Width''elementor' ),
            
'type' => Controls_Manager::DIMENSIONS,
            
'size_units' => [ 'px''em''rem''vw''custom' ],
            
'selectors' => [
                
'{{SELECTOR}}' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
            ],
            
'condition' => [
                
'border!' => [ '''none' ],
            ],
            
'responsive' => true,
        ];

        
$fields['color'] = [
            
'label' => esc_html__'Border Color''elementor' ),
            
'type' => Controls_Manager::COLOR,
            
'default' => '',
            
'selectors' => [
                
'{{SELECTOR}}' => 'border-color: {{VALUE}};',
            ],
            
'condition' => [
                
'border!' => [ '''none' ],
            ],
        ];

        return 
$fields;
    }

    
/**
     * Get default options.
     *
     * Retrieve the default options of the border control. Used to return the
     * default options while initializing the border control.
     *
     * @since 1.9.0
     * @access protected
     *
     * @return array Default border control options.
     */
    
protected function get_default_options() {
        return [
            
'popover' => false,
        ];
    }
}