PluginProbe ʕ •ᴥ•ʔ
Shortcodes and extra features for Phlox theme / trunk
Shortcodes and extra features for Phlox theme vtrunk
2.17.21 2.17.20 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.0.6 1.0.9 1.1.0 1.3.0 1.3.1 1.3.10 1.3.14 1.3.2 1.3.3 1.3.6 1.4.0 1.4.1 1.4.2 1.5.0 1.5.2 1.6.0 1.6.2 1.6.4 1.7.0 1.7.2 2.10.0 2.10.1 2.10.3 2.10.5 2.10.7 2.10.8 2.10.9 2.11.0 2.11.1 2.11.2 2.12.0 2.14.0 2.15.0 2.15.2 2.15.4 2.15.5 2.15.6 2.15.7 2.15.8 2.15.9 2.16.0 2.16.1 2.16.2 2.16.3 2.16.4 2.17.0 2.17.1 2.17.12 2.17.13 2.17.14 2.17.15 2.17.16 2.17.2 2.17.3 2.17.4 2.17.5 2.17.6 2.17.8 2.17.9 2.4.12 2.4.13 2.4.14 2.4.16 2.4.18 2.4.19 2.4.9 2.5.0 2.5.1 2.5.10 2.5.11 2.5.12 2.5.13 2.5.14 2.5.15 2.5.16 2.5.17 2.5.19 2.5.2 2.5.20 2.5.3 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.10 2.6.12 2.6.13 2.6.14 2.6.15 2.6.16 2.6.17 2.6.19 2.6.2 2.6.20 2.6.4 2.6.5 2.6.7 2.7.0 2.7.1 2.7.10 2.7.11 2.7.12 2.7.13 2.7.14 2.7.2 2.7.3 2.7.4 2.7.5 2.7.6 2.7.7 2.7.8 2.7.9 2.8.0 2.8.1 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.9 2.9.0 2.9.12 2.9.14 2.9.15 2.9.16 2.9.17 2.9.18 2.9.19 2.9.2 2.9.20 2.9.21 2.9.22 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7 2.9.8
auxin-elements / includes / elementor / controls / media-select.php
auxin-elements / includes / elementor / controls Last commit date
featured-color.php 3 years ago icon-select.php 3 years ago media-select.php 3 years ago query.php 6 years ago visual-select.php 3 years ago
media-select.php
135 lines
1 <?php
2 namespace Auxin\Plugin\CoreElements\Elementor\Controls;
3
4 use Elementor\Plugin;
5 use Elementor\Base_Data_Control;
6
7 if ( ! defined( 'ABSPATH' ) ) {
8 exit; // Exit if accessed directly.
9 }
10
11 /**
12 * Auxin advanced media select control.
13 *
14 * A base control for creating media select control. Displays radio buttons styled as
15 * groups of buttons with icons for each option.
16 *
17 * @since 1.0.0
18 */
19 class Control_Media_Select extends Base_Data_Control {
20
21
22 /**
23 * Get select control type.
24 *
25 * Retrieve the control type, in this case `select`.
26 *
27 * @since 1.0.0
28 * @access public
29 *
30 * @return string Control type.
31 */
32 public function get_type() {
33 return 'aux-media';
34 }
35
36 /**
37 * Get media control default values.
38 *
39 * Retrieve the default value of the media control. Used to return the default
40 * values while initializing the media control.
41 *
42 * @since 1.0.0
43 * @access public
44 *
45 * @return array Control default value.
46 */
47 public function get_default_value() {
48 return [
49 'url' => '',
50 'id' => ''
51 ];
52 }
53
54 /**
55 * Enqueue media control scripts and styles.
56 *
57 * Used to register and enqueue custom scripts and styles used by the media
58 * control.
59 *
60 * @since 1.0.0
61 * @access public
62 */
63 public function enqueue() {
64
65 $suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
66 wp_enqueue_media();
67
68 wp_enqueue_style(
69 'media',
70 admin_url( '/css/media' . $suffix . '.css' ),
71 [],
72 AUXELS_VERSION
73 );
74
75 wp_enqueue_style( 'auxin-elementor-editor' );
76 wp_enqueue_script( 'auxin-elementor-editor' );
77
78 }
79
80 /**
81 * Render media control output in the editor.
82 *
83 * Used to generate the control HTML in the editor using Underscore JS
84 * template. The variables for the class are available using `data` JS
85 * object.
86 *
87 * @since 1.0.0
88 * @access public
89 */
90 public function content_template() {
91 ?>
92 <div class="elementor-control-field">
93 <label class="elementor-control-title">{{{ data.label }}}</label>
94 <div class="elementor-control-input-wrapper">
95 <div class="aux-elementor-control-media elementor-control-tag-area elementor-control-preview-area" data-media-type="{{ data.media_filter }}">
96 <div class="aux-elementor-control-media-upload-button">
97 <i class="fa fa-plus-circle" aria-hidden="true"></i>
98 </div>
99 <div class="aux-elementor-control-media-attachment-area">
100 <div class="aux-elementor-control-media-attachment"></div>
101 <div class="aux-elementor-control-media-delete"><?php echo esc_html__( 'Delete', 'auxin-elements' ); ?></div>
102 </div>
103 </div>
104 </div>
105 <# if ( data.description ) { #>
106 <div class="elementor-control-field-description">{{{ data.description }}}</div>
107 <# } #>
108 <input type="hidden" data-setting="{{ data.name }}" />
109 </div>
110 <?php
111 }
112
113 /**
114 * Get media control default settings.
115 *
116 * Retrieve the default settings of the media control. Used to return the default
117 * settings while initializing the media control.
118 *
119 * @since 1.0.0
120 * @access protected
121 *
122 * @return array Control default settings.
123 */
124 protected function get_default_settings() {
125 return [
126 'label_block' => true,
127 'media_filter' => 'image',
128 'dynamic' => array(
129 'returnType' => 'object'
130 )
131 ];
132 }
133
134 }
135