Premium Addons for Elementor - Version 2.9.4

Version Description

  • Tweak: Added Loop and Mute options for Vimeo type videos in Premium Video Box widget.
  • Fixed: Vimeo videos error message in Premium Video Box widget.
Download this release

Release Info

Developer leap13
Plugin Icon 128x128 Premium Addons for Elementor
Version 2.9.4
Comparing to
See all releases

Code changes from version 2.9.3 to 2.9.4

admin/settings/version-control.php CHANGED
@@ -79,7 +79,7 @@ class PA_Version_Control {
79
<tr class="pa-roll-row">
80
<th>Rollback Version</th>
81
<td>
82
- <div><?php echo sprintf( '<a target="_blank" href="%s" class="button pa-btn pa-rollback-button elementor-button-spinner">Reinstall Version 2.9.2</a>', wp_nonce_url( admin_url( 'admin-post.php?action=premium_addons_rollback' ), 'premium_addons_rollback' ) ); ?> </div>
83
<p class="pa-roll-desc"><span>Warning: Please backup your database before making the rollback.</span></p>
84
</td>
85
</tr>
79
<tr class="pa-roll-row">
80
<th>Rollback Version</th>
81
<td>
82
+ <div><?php echo sprintf( '<a target="_blank" href="%s" class="button pa-btn pa-rollback-button elementor-button-spinner">Reinstall Version 2.9.3</a>', wp_nonce_url( admin_url( 'admin-post.php?action=premium_addons_rollback' ), 'premium_addons_rollback' ) ); ?> </div>
83
<p class="pa-roll-desc"><span>Warning: Please backup your database before making the rollback.</span></p>
84
</td>
85
</tr>
assets/css/premium-addons.css CHANGED
@@ -1237,7 +1237,7 @@ button.premium-modal-box-modal-close {
1237
}
1238
/* prevent Scroll on body */
1239
.premium-modal-open {
1240
- overflow: hidden;
1241
/* height: 100vh;*/
1242
}
1243
@media (min-width:768px) {
1237
}
1238
/* prevent Scroll on body */
1239
.premium-modal-open {
1240
+ /* overflow: hidden;*/
1241
/* height: 100vh;*/
1242
}
1243
@media (min-width:768px) {
elementor-helper.php → includes/elementor-helper.php RENAMED
@@ -1,85 +1,85 @@
1
- <?php
2
- namespace Elementor;
3
-
4
-
5
- if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
6
-
7
-
8
- /**
9
- * premium_Templat_Tags class defines all the query of options of select box
10
- *
11
- * Setting up the helper assets of the premium widgets
12
- *
13
- * @since 1.0
14
- */
15
-
16
- class premium_Template_Tags {
17
-
18
- /**
19
- * Instance of this class
20
- * @since 1.0
21
- */
22
-
23
- protected static $instance;
24
-
25
-
26
- /**
27
- * $options is option field of select
28
- *
29
- * @access protected
30
- *
31
- * @since 1.0
32
- */
33
- protected $options;
34
-
35
- /**
36
- * set instance of this class
37
- */
38
-
39
- public static function getInstance() {
40
- if( !static::$instance ) {
41
- static::$instance = new self;
42
- }
43
- return static::$instance;
44
- }
45
-
46
-
47
- public function get_all_post() {
48
-
49
- $post_types = get_post_types();
50
- $post_type_not__in = array('attachment', 'revision', 'nav_menu_item', 'custom_css', 'customize_changeset', 'elementor_library', 'post');
51
-
52
- foreach ( $post_type_not__in as $post_type_not ) {
53
- unset( $post_types[$post_type_not] );
54
- }
55
- $post_type = array_values( $post_types );
56
-
57
-
58
- $all_posts = get_posts( array(
59
- 'posts_per_page' => -1,
60
- 'post_type' => 'page',
61
- )
62
- );
63
- if( !empty( $all_posts ) && !is_wp_error( $all_posts ) ) {
64
- foreach ( $all_posts as $post ) {
65
- $this->options[ $post->ID ] = strlen( $post->post_title ) > 20 ? substr( $post->post_title, 0, 20 ).'...' : $post->post_title;
66
- }
67
- }
68
- return $this->options;
69
- }
70
-
71
- public function get_elementor_page_list(){
72
- $pagelist = get_posts(array(
73
- 'post_type' => 'elementor_library',
74
- 'showposts' => 999,
75
- ));
76
-
77
- if ( ! empty( $pagelist ) && ! is_wp_error( $pagelist ) ){
78
- foreach ( $pagelist as $post ) {
79
- $options[ $post->ID ] = __( $post->post_title, 'premium-addons-for-elementor' );
80
- }
81
- update_option( 'temp_count', $options );
82
- return $options;
83
- }
84
- }
85
- }
1
+ <?php
2
+ namespace Elementor;
3
+
4
+
5
+ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
6
+
7
+
8
+ /**
9
+ * premium_Templat_Tags class defines all the query of options of select box
10
+ *
11
+ * Setting up the helper assets of the premium widgets
12
+ *
13
+ * @since 1.0
14
+ */
15
+
16
+ class premium_Template_Tags {
17
+
18
+ /**
19
+ * Instance of this class
20
+ * @since 1.0
21
+ */
22
+
23
+ protected static $instance;
24
+
25
+
26
+ /**
27
+ * $options is option field of select
28
+ *
29
+ * @access protected
30
+ *
31
+ * @since 1.0
32
+ */
33
+ protected $options;
34
+
35
+ /**
36
+ * set instance of this class
37
+ */
38
+
39
+ public static function getInstance() {
40
+ if( !static::$instance ) {
41
+ static::$instance = new self;
42
+ }
43
+ return static::$instance;
44
+ }
45
+
46
+
47
+ public function get_all_post() {
48
+
49
+ $post_types = get_post_types();
50
+ $post_type_not__in = array('attachment', 'revision', 'nav_menu_item', 'custom_css', 'customize_changeset', 'elementor_library', 'post');
51
+
52
+ foreach ( $post_type_not__in as $post_type_not ) {
53
+ unset( $post_types[$post_type_not] );
54
+ }
55
+ $post_type = array_values( $post_types );
56
+
57
+
58
+ $all_posts = get_posts( array(
59
+ 'posts_per_page' => -1,
60
+ 'post_type' => 'page',
61
+ )
62
+ );
63
+ if( !empty( $all_posts ) && !is_wp_error( $all_posts ) ) {
64
+ foreach ( $all_posts as $post ) {
65
+ $this->options[ $post->ID ] = strlen( $post->post_title ) > 20 ? substr( $post->post_title, 0, 20 ).'...' : $post->post_title;
66
+ }
67
+ }
68
+ return $this->options;
69
+ }
70
+
71
+ public function get_elementor_page_list(){
72
+ $pagelist = get_posts(array(
73
+ 'post_type' => 'elementor_library',
74
+ 'showposts' => 999,
75
+ ));
76
+
77
+ if ( ! empty( $pagelist ) && ! is_wp_error( $pagelist ) ){
78
+ foreach ( $pagelist as $post ) {
79
+ $options[ $post->ID ] = __( $post->post_title, 'premium-addons-for-elementor' );
80
+ }
81
+ update_option( 'temp_count', $options );
82
+ return $options;
83
+ }
84
+ }
85
+ }
premium-addons-for-elementor.php CHANGED
@@ -3,7 +3,7 @@
3
Plugin Name: Premium Addons for Elementor
4
Description: Premium Addons Plugin Includes 21+ premium widgets for Elementor Page Builder.
5
Plugin URI: https://premiumaddons.com
6
- Version: 2.9.3
7
Author: Leap13
8
Author URI: http://leap13.com/
9
Text Domain: premium-addons-for-elementor
@@ -21,13 +21,13 @@ if (! function_exists('add_action')) {
21
22
if ( ! defined('ABSPATH') ) exit; // No access of directly access
23
24
-
25
- define('PREMIUM_ADDONS_VERSION', '2.9.3');
26
define('PREMIUM_ADDONS_URL', plugins_url('/', __FILE__));
27
define('PREMIUM_ADDONS_PATH', plugin_dir_path(__FILE__));
28
define('PREMIUM_ADDONS_FILE', __FILE__);
29
define('PREMIUM_ADDONS_BASENAME', plugin_basename(__FILE__));
30
- define('PREMIUM_ADDONS_STABLE_VERSION', '2.9.2');
31
32
if( ! class_exists('Premium_Addons_Elementor') ) {
33
/*
@@ -115,10 +115,9 @@ if( ! class_exists('Premium_Addons_Elementor') ) {
115
}
116
117
require_once (PREMIUM_ADDONS_PATH . 'includes/helper-functions.php');
118
require_once (PREMIUM_ADDONS_PATH . 'admin/settings/gomaps.php');
119
require_once (PREMIUM_ADDONS_PATH . 'admin/settings/elements.php');
120
- require_once (PREMIUM_ADDONS_PATH . 'elementor-helper.php');
121
-
122
}
123
124
/**
3
Plugin Name: Premium Addons for Elementor
4
Description: Premium Addons Plugin Includes 21+ premium widgets for Elementor Page Builder.
5
Plugin URI: https://premiumaddons.com
6
+ Version: 2.9.4
7
Author: Leap13
8
Author URI: http://leap13.com/
9
Text Domain: premium-addons-for-elementor
21
22
if ( ! defined('ABSPATH') ) exit; // No access of directly access
23
24
+ // Define Constants
25
+ define('PREMIUM_ADDONS_VERSION', '2.9.4');
26
define('PREMIUM_ADDONS_URL', plugins_url('/', __FILE__));
27
define('PREMIUM_ADDONS_PATH', plugin_dir_path(__FILE__));
28
define('PREMIUM_ADDONS_FILE', __FILE__);
29
define('PREMIUM_ADDONS_BASENAME', plugin_basename(__FILE__));
30
+ define('PREMIUM_ADDONS_STABLE_VERSION', '2.9.3');
31
32
if( ! class_exists('Premium_Addons_Elementor') ) {
33
/*
115
}
116
117
require_once (PREMIUM_ADDONS_PATH . 'includes/helper-functions.php');
118
+ require_once (PREMIUM_ADDONS_PATH . 'includes/elementor-helper.php');
119
require_once (PREMIUM_ADDONS_PATH . 'admin/settings/gomaps.php');
120
require_once (PREMIUM_ADDONS_PATH . 'admin/settings/elements.php');
121
}
122
123
/**
readme.txt CHANGED
@@ -5,7 +5,7 @@ Donate link: http://premiumaddons.com
5
Requires at least: 4.5
6
Tested up to: 5.0.2
7
Requires PHP: 5.4
8
- Stable tag: 2.9.3
9
License: GPL v3.0
10
License URI: https://opensource.org/licenses/GPL-3.0
11
@@ -137,6 +137,11 @@ Premium Addons for Elementor is 100% Ads Free, Ads can only be detected from You
137
138
== Changelog ==
139
140
= 2.9.3 =
141
142
- Tweak: Unnecessary `esc_html()` function removed.
5
Requires at least: 4.5
6
Tested up to: 5.0.2
7
Requires PHP: 5.4
8
+ Stable tag: 2.9.4
9
License: GPL v3.0
10
License URI: https://opensource.org/licenses/GPL-3.0
11
137
138
== Changelog ==
139
140
+ = 2.9.4 =
141
+
142
+ - Tweak: Added `Loop` and `Mute` options for Vimeo type videos in Premium Video Box widget.
143
+ - Fixed: Vimeo videos error message in Premium Video Box widget.
144
+
145
= 2.9.3 =
146
147
- Tweak: Unnecessary `esc_html()` function removed.
widgets/premium-videobox.php CHANGED
@@ -144,10 +144,7 @@ class Premium_Videobox extends Widget_Base {
144
[
145
'label' => esc_html__('Mute', 'premium-addons-for-elementor'),
146
'type' => Controls_Manager::SWITCHER,
147
- 'description' => esc_html__('This will play the video muted'),
148
- 'condition' => [
149
- 'premium_video_box_video_type!' => 'vimeo',
150
- ]
151
]
152
);
153
@@ -156,9 +153,6 @@ class Premium_Videobox extends Widget_Base {
156
[
157
'label' => esc_html__('Loop', 'premium-addons-for-elementor'),
158
'type' => Controls_Manager::SWITCHER,
159
- 'condition' => [
160
- 'premium_video_box_video_type!' => 'vimeo',
161
- ]
162
]
163
);
164
@@ -582,7 +576,7 @@ class Premium_Videobox extends Widget_Base {
582
583
$options = '?rel=';
584
$options .= 'yes' == $related ? '1' : '0';
585
- $options .= '&mute=';
586
$options .= 'yes' == $mute ? '1' : '0';
587
$options .= '&loop=';
588
$options .= 'yes' == $loop ? '1' : '0';
@@ -600,7 +594,6 @@ class Premium_Videobox extends Widget_Base {
600
$video_params .= 'loop ';
601
}
602
603
-
604
?>
605
606
<div class="premium-video-box-container" id="premium-video-box-container-<?php echo esc_attr( $this->get_id() ); ?>" data-type='<?php echo $video_type; ?>'>
@@ -615,10 +608,10 @@ class Premium_Videobox extends Widget_Base {
615
<?php endif; ?>
616
<?php } elseif ( $video_type === 'vimeo'){ ?>
617
<?php if ( $video_url_type === 'id' && !empty( $video_id ) ) : ?>
618
- <iframe src="https://player.vimeo.com/video/<?php echo $video_id; ?>" frameborder="0" title="Medicine" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="" class="fluidvids-item" data-fluidvids="loaded">
619
</iframe>
620
<?php elseif ( $video_url_type === 'embed' && !empty( $video_embed ) ) : ?>
621
- <iframe src="<?php echo $video_embed; ?>?byline=0&portrait=0" frameborder="0" top="0" webkitallowfullscreen mozallowfullscreen allowfullscreen>
622
</iframe>
623
<?php endif; ?>
624
<?php } elseif ( $video_type === 'self'){ ?>
144
[
145
'label' => esc_html__('Mute', 'premium-addons-for-elementor'),
146
'type' => Controls_Manager::SWITCHER,
147
+ 'description' => esc_html__('This will play the video muted')
148
]
149
);
150
153
[
154
'label' => esc_html__('Loop', 'premium-addons-for-elementor'),
155
'type' => Controls_Manager::SWITCHER,
156
]
157
);
158
576
577
$options = '?rel=';
578
$options .= 'yes' == $related ? '1' : '0';
579
+ $options .= 'youtube' == $video_type ? '&mute=' : '&muted=';
580
$options .= 'yes' == $mute ? '1' : '0';
581
$options .= '&loop=';
582
$options .= 'yes' == $loop ? '1' : '0';
594
$video_params .= 'loop ';
595
}
596
597
?>
598
599
<div class="premium-video-box-container" id="premium-video-box-container-<?php echo esc_attr( $this->get_id() ); ?>" data-type='<?php echo $video_type; ?>'>
608
<?php endif; ?>
609
<?php } elseif ( $video_type === 'vimeo'){ ?>
610
<?php if ( $video_url_type === 'id' && !empty( $video_id ) ) : ?>
611
+ <iframe src="https://player.vimeo.com/video/<?php echo $video_id . $options; ?>" frameborder="0" webkitallowfullscreen="" mozallowfullscreen="" allowfullscreen="">
612
</iframe>
613
<?php elseif ( $video_url_type === 'embed' && !empty( $video_embed ) ) : ?>
614
+ <iframe src="<?php echo $video_embed . $options; ?>" frameborder="0" top="0" webkitallowfullscreen mozallowfullscreen allowfullscreen>
615
</iframe>
616
<?php endif; ?>
617
<?php } elseif ( $video_type === 'self'){ ?>