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'){ ?>