Premium Addons for Elementor - Version 3.9.2

Version Description

  • Tweak: Prevent rendering carousel item if no template is selected.
  • Fixed: Carousel stop issue after v3.9.1.
Download this release

Release Info

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

Code changes from version 3.9.1 to 3.9.2

assets/frontend/js/premium-addons.js CHANGED
@@ -444,7 +444,7 @@
444
 
445
  if (isEdit) {
446
  carouselElement.find(".item-wrapper").each(function(index, slide) {
447
- var templateID = $(slide).data("template");
448
 
449
  if (undefined !== templateID) {
450
  $.ajax({
@@ -535,8 +535,15 @@
535
  var $slides = carouselElement.find( ".premium-carousel-template" );
536
 
537
  $slides.find( ".animated" ).each( function( index, elem ) {
538
- var settings = $( elem ).data( "settings" ),
539
- animation = settings._animation || settings.animation;
 
 
 
 
 
 
 
540
 
541
  $( elem ).removeClass( "animated " + animation ).addClass( "elementor-invisible" );
542
  });
@@ -548,6 +555,9 @@
548
 
549
  var settings = $( elem ).data( "settings" );
550
 
 
 
 
551
  if ( ! settings._animation && ! settings.animation )
552
  return;
553
 
444
 
445
  if (isEdit) {
446
  carouselElement.find(".item-wrapper").each(function(index, slide) {
447
+ var templateID = $( slide ).data( "template" );
448
 
449
  if (undefined !== templateID) {
450
  $.ajax({
535
  var $slides = carouselElement.find( ".premium-carousel-template" );
536
 
537
  $slides.find( ".animated" ).each( function( index, elem ) {
538
+ var settings = $( elem ).data( "settings" );
539
+
540
+ if( ! settings )
541
+ return;
542
+
543
+ if ( ! settings._animation && ! settings.animation )
544
+ return;
545
+
546
+ var animation = settings._animation || settings.animation;
547
 
548
  $( elem ).removeClass( "animated " + animation ).addClass( "elementor-invisible" );
549
  });
555
 
556
  var settings = $( elem ).data( "settings" );
557
 
558
+ if( ! settings )
559
+ return;
560
+
561
  if ( ! settings._animation && ! settings.animation )
562
  return;
563
 
premium-addons-for-elementor.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Premium Addons for Elementor
4
  Description: Premium Addons Plugin Includes 22+ premium widgets for Elementor Page Builder.
5
  Plugin URI: https://premiumaddons.com
6
- Version: 3.9.1
7
  Author: Leap13
8
  Author URI: https://leap13.com/
9
  Text Domain: premium-addons-for-elementor
@@ -14,12 +14,12 @@ License: GNU General Public License v3.0
14
  if ( ! defined('ABSPATH') ) exit; // No access of directly access
15
 
16
  // Define Constants
17
- define('PREMIUM_ADDONS_VERSION', '3.9.1');
18
  define('PREMIUM_ADDONS_URL', plugins_url( '/', __FILE__ ) );
19
  define('PREMIUM_ADDONS_PATH', plugin_dir_path( __FILE__ ) );
20
  define('PREMIUM_ADDONS_FILE', __FILE__);
21
  define('PREMIUM_ADDONS_BASENAME', plugin_basename( PREMIUM_ADDONS_FILE ) );
22
- define('PREMIUM_ADDONS_STABLE_VERSION', '3.9.0');
23
 
24
  if( ! class_exists('Premium_Addons_Elementor') ) {
25
 
3
  Plugin Name: Premium Addons for Elementor
4
  Description: Premium Addons Plugin Includes 22+ premium widgets for Elementor Page Builder.
5
  Plugin URI: https://premiumaddons.com
6
+ Version: 3.9.2
7
  Author: Leap13
8
  Author URI: https://leap13.com/
9
  Text Domain: premium-addons-for-elementor
14
  if ( ! defined('ABSPATH') ) exit; // No access of directly access
15
 
16
  // Define Constants
17
+ define('PREMIUM_ADDONS_VERSION', '3.9.2');
18
  define('PREMIUM_ADDONS_URL', plugins_url( '/', __FILE__ ) );
19
  define('PREMIUM_ADDONS_PATH', plugin_dir_path( __FILE__ ) );
20
  define('PREMIUM_ADDONS_FILE', __FILE__);
21
  define('PREMIUM_ADDONS_BASENAME', plugin_basename( PREMIUM_ADDONS_FILE ) );
22
+ define('PREMIUM_ADDONS_STABLE_VERSION', '3.9.1');
23
 
24
  if( ! class_exists('Premium_Addons_Elementor') ) {
25
 
readme.txt CHANGED
@@ -5,7 +5,7 @@ Donate Link: https://premiumaddons.com/?utm_source=wp-repo&utm_medium=link&utm_c
5
  Requires at Least: 4.5
6
  Tested Up To: 5.3
7
  Requires PHP: 5.4
8
- Stable Tag: 3.9.1
9
  License: GPL v3.0
10
  License URI: https://opensource.org/licenses/GPL-3.0
11
 
@@ -175,6 +175,11 @@ Premium Addons for Elementor is 100% Ads Free, Ads can only be detected from You
175
 
176
  == Changelog ==
177
 
 
 
 
 
 
178
  = 3.9.1 =
179
 
180
  - Tweak: Premium Carousel widget now fully compatible with `Entrance Animations` for the inner elements.
5
  Requires at Least: 4.5
6
  Tested Up To: 5.3
7
  Requires PHP: 5.4
8
+ Stable Tag: 3.9.2
9
  License: GPL v3.0
10
  License URI: https://opensource.org/licenses/GPL-3.0
11
 
175
 
176
  == Changelog ==
177
 
178
+ = 3.9.2 =
179
+
180
+ - Tweak: Prevent rendering carousel item if no template is selected.
181
+ - Fixed: Carousel stop issue after v3.9.1.
182
+
183
  = 3.9.1 =
184
 
185
  - Tweak: Premium Carousel widget now fully compatible with `Entrance Animations` for the inner elements.
widgets/premium-carousel.php CHANGED
@@ -1072,11 +1072,13 @@ class Premium_Carousel extends Widget_Base {
1072
  <div id="premium-carousel-<?php echo esc_attr( $this->get_id() ); ?>" class="premium-carousel-inner">
1073
  <?php
1074
  foreach( $templates as $template_title ) :
 
1075
  ?>
1076
  <div class="premium-carousel-template item-wrapper">
1077
  <?php echo $this->getTemplateInstance()->get_template_content( $template_title ); ?>
1078
  </div>
1079
- <?php endforeach; ?>
 
1080
  </div>
1081
  </div>
1082
  <?php
@@ -1344,9 +1346,12 @@ class Premium_Carousel extends Widget_Base {
1344
 
1345
  <div {{{ view.getRenderAttributeString('carousel') }}}>
1346
  <div {{{ view.getRenderAttributeString('carousel-inner') }}}>
1347
- <# _.each( templates, function( templateID ) { #>
 
 
1348
  <div class="item-wrapper" data-template="{{templateID}}"></div>
1349
- <# } ); #>
 
1350
  </div>
1351
  </div>
1352
 
1072
  <div id="premium-carousel-<?php echo esc_attr( $this->get_id() ); ?>" class="premium-carousel-inner">
1073
  <?php
1074
  foreach( $templates as $template_title ) :
1075
+ if( ! empty( $template_title ) ) :
1076
  ?>
1077
  <div class="premium-carousel-template item-wrapper">
1078
  <?php echo $this->getTemplateInstance()->get_template_content( $template_title ); ?>
1079
  </div>
1080
+ <?php endif;
1081
+ endforeach; ?>
1082
  </div>
1083
  </div>
1084
  <?php
1346
 
1347
  <div {{{ view.getRenderAttributeString('carousel') }}}>
1348
  <div {{{ view.getRenderAttributeString('carousel-inner') }}}>
1349
+ <# _.each( templates, function( templateID ) {
1350
+ if( templateID ) {
1351
+ #>
1352
  <div class="item-wrapper" data-template="{{templateID}}"></div>
1353
+ <# }
1354
+ } ); #>
1355
  </div>
1356
  </div>
1357