PluginProbe ʕ •ᴥ•ʔ
Shortcodes and extra features for Phlox theme / 2.17.4
Shortcodes and extra features for Phlox theme v2.17.4
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 / widgets / audio.php
auxin-elements / includes / elementor / widgets Last commit date
theme-elements 1 year ago accordion.php 1 year ago audio.php 4 years ago before-after.php 3 years ago button.php 1 year ago carousel-navigation.php 4 years ago circle-chart.php 1 year ago contact-box.php 4 years ago contact-form.php 1 year ago custom-list.php 1 year ago divider.php 4 years ago gallery.php 1 year ago gmap.php 4 years ago heading-modern.php 1 year ago icon.php 1 year ago image.php 1 year ago mailchimp.php 1 year ago modern-button.php 1 year ago products-grid.php 1 year ago quote.php 1 year ago recent-comments.php 1 year ago recent-posts-grid-carousel.php 1 year ago recent-posts-land-style.php 1 year ago recent-posts-masonry.php 1 year ago recent-posts-tiles-carousel.php 1 year ago recent-posts-tiles.php 1 year ago recent-posts-timeline.php 1 year ago recent-products.php 1 year ago responsive-table.php 1 year ago search.php 4 years ago staff.php 1 year ago svg.php 1 year ago tabs.php 1 year ago testimonial.php 1 year ago text.php 1 year ago touch-slider.php 1 year ago video.php 4 years ago
audio.php
201 lines
1 <?php
2 namespace Auxin\Plugin\CoreElements\Elementor\Elements;
3
4 use Elementor\Plugin;
5 use Elementor\Widget_Base;
6 use Elementor\Controls_Manager;
7
8
9 if ( ! defined( 'ABSPATH' ) ) {
10 exit; // Exit if accessed directly.
11 }
12
13 /**
14 * Elementor 'Audio' widget.
15 *
16 * Elementor widget that displays an 'Audio' with lightbox.
17 *
18 * @since 1.0.0
19 */
20 class Audio extends Widget_Base {
21
22 /**
23 * Get widget name.
24 *
25 * Retrieve 'Audio' widget name.
26 *
27 * @since 1.0.0
28 * @access public
29 *
30 * @return string Widget name.
31 */
32 public function get_name() {
33 return 'aux_audio';
34 }
35
36 /**
37 * Get widget title.
38 *
39 * Retrieve 'Audio' widget title.
40 *
41 * @since 1.0.0
42 * @access public
43 *
44 * @return string Widget title.
45 */
46 public function get_title() {
47 return __('Audio Player', 'auxin-elements' );
48 }
49
50 /**
51 * Get widget icon.
52 *
53 * Retrieve 'Audio' widget icon.
54 *
55 * @since 1.0.0
56 * @access public
57 *
58 * @return string Widget icon.
59 */
60 public function get_icon() {
61 return 'eicon-play auxin-badge';
62 }
63
64 /**
65 * Get widget categories.
66 *
67 * Retrieve 'Audio' widget icon.
68 *
69 * @since 1.0.0
70 * @access public
71 *
72 * @return string Widget icon.
73 */
74 public function get_categories() {
75 return array( 'auxin-core' );
76 }
77
78 /**
79 * Register 'Audio' widget controls.
80 *
81 * Adds different input fields to allow the user to change and customize the widget settings.
82 *
83 * @since 1.0.0
84 * @access protected
85 */
86 protected function register_controls() {
87
88 /*-----------------------------------------------------------------------------------*/
89 /* audio_section
90 /*-----------------------------------------------------------------------------------*/
91
92 $this->start_controls_section(
93 'audio_section',
94 array(
95 'label' => __('Audio', 'auxin-elements' ),
96 )
97 );
98
99 $this->add_control(
100 'src',
101 array(
102 'label' => __('Audio file(MP3 or ogg)','auxin-elements' ),
103 'type' => 'aux-media',
104 'media_filter' => 'audio',
105 )
106 );
107
108 $this->add_control(
109 'autoplay',
110 array(
111 'label' => __('AutoPlay','auxin-elements' ),
112 'description' => __('Play the audio file automatically.','auxin-elements' ),
113 'type' => Controls_Manager::SWITCHER,
114 'label_on' => __( 'On', 'auxin-elements' ),
115 'label_off' => __( 'Off', 'auxin-elements' ),
116 'return_value' => 'yes',
117 'default' => 'no'
118 )
119 );
120
121 $this->add_control(
122 'loop',
123 array(
124 'label' => __('Repeat the audio','auxin-elements' ),
125 'type' => Controls_Manager::SWITCHER,
126 'label_on' => __( 'On', 'auxin-elements' ),
127 'label_off' => __( 'Off', 'auxin-elements' ),
128 'return_value' => 'yes',
129 'default' => 'yes'
130 )
131 );
132
133 $this->end_controls_section();
134
135 /*-----------------------------------------------------------------------------------*/
136 /* skin_section
137 /*-----------------------------------------------------------------------------------*/
138
139 $this->start_controls_section(
140 'skin_section',
141 array(
142 'label' => __('Skin', 'auxin-elements' ),
143 'tab' => Controls_Manager::TAB_STYLE,
144 )
145 );
146
147 $this->add_control(
148 'skin',
149 array(
150 'label' => __('Skin','auxin-elements' ),
151 'description' => __('The skin of audio element.','auxin-elements' ),
152 'type' => 'aux-visual-select',
153 'options' => array(
154 'default' => array(
155 'label' => __('Theme Default', 'auxin-elements'),
156 'image' => AUXIN_URL . 'images/visual-select/default2.svg'
157 ),
158 'dark' => array(
159 'label' => __('Dark', 'auxin-elements'),
160 'image' => AUXIN_URL . 'images/visual-select/audio-player-dark.svg'
161 ),
162 'light' => array(
163 'label' => __('Light', 'auxin-elements'),
164 'image' => AUXIN_URL . 'images/visual-select/audio-player-light.svg'
165 )
166 ),
167 'default' => 'dark'
168 )
169 );
170
171 $this->end_controls_section();
172 }
173
174 /**
175 * Render image box widget output on the frontend.
176 *
177 * Written in PHP and used to generate the final HTML.
178 *
179 * @since 1.0.0
180 * @access protected
181 */
182 protected function render() {
183
184 $settings = $this->get_settings_for_display();
185
186
187 $args = array(
188 'src' => $settings['src']['id'],
189 'loop' => $settings['loop'],
190 'autoplay' => $settings['autoplay'],
191
192 'skin' => $settings['skin'],
193 );
194
195 // get the shortcode base blog page
196 echo auxin_widget_audio_callback( $args );
197
198 }
199
200 }
201