Premium Addons for Elementor - Version 3.1.4

Version Description

  • Tweak: Added Skype social link for Persons widget.
  • Tweak: Removed Auto redirection to settings page after plugin activation.
  • Tweak: Added Settings to plugin action links on Plugins page.
  • Fixed: Animations occur after slides transition in Carousel widget.
Download this release

Release Info

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

Code changes from version 3.1.3 to 3.1.4

admin/includes/notices.php CHANGED
@@ -254,7 +254,7 @@ class Premium_Admin_Notices {
254
  } else if ( '1' !== $scroll_notice ) {
255
  $optout_url = wp_nonce_url( add_query_arg( 'image_scroll', 'opt_out' ), 'opt_out' );
256
 
257
- $scroll_message = sprintf( __('<p style="display: flex; align-items: center; padding:10px 10px 10px 0;"><img src="%s" style="margin-right: 0.8em; width: 40px;"><span>NEW!&nbsp</span><strong><span>Image Scroll Widget for Elementor&nbsp</strong>is Now Available in Premium Addons PRO.&nbsp</span><a href="%s" target="_blank" style="flex-grow: 2;"> Check it out now.</a>', 'premium-addons-for-elementor' ), PREMIUM_ADDONS_URL .'admin/images/premium-addons-logo.png', $notice_url );
258
 
259
  $scroll_message .= sprintf(__('<a href="%s" style="text-decoration: none; margin-left: 1em; float:right; "><span class="dashicons dashicons-dismiss"></span></a></p>', 'premium-addons-for-elementor'), $optout_url );
260
 
254
  } else if ( '1' !== $scroll_notice ) {
255
  $optout_url = wp_nonce_url( add_query_arg( 'image_scroll', 'opt_out' ), 'opt_out' );
256
 
257
+ $scroll_message = sprintf( __('<p style="display: flex; align-items: center; padding:10px 10px 10px 0;"><img src="%s" style="margin-right: 0.8em; width: 40px;"><span>NEW!&nbsp</span><strong><span>Image Scroll Widget for Elementor&nbsp</strong>is Now Available in Premium Addons for Elementor.&nbsp</span><a href="%s" target="_blank" style="flex-grow: 2;"> Check it out now.</a>', 'premium-addons-for-elementor' ), PREMIUM_ADDONS_URL .'admin/images/premium-addons-logo.png', $notice_url );
258
 
259
  $scroll_message .= sprintf(__('<a href="%s" style="text-decoration: none; margin-left: 1em; float:right; "><span class="dashicons dashicons-dismiss"></span></a></p>', 'premium-addons-for-elementor'), $optout_url );
260
 
admin/settings/elements.php CHANGED
@@ -17,12 +17,33 @@ class PA_admin_settings {
17
  private $pa_get_settings;
18
 
19
  public function __construct() {
 
20
  add_action( 'admin_menu', array( $this,'pa_admin_menu') );
 
21
  add_action('admin_enqueue_scripts', array( $this, 'pa_admin_page_scripts' ) );
 
22
  add_action( 'wp_ajax_pa_save_admin_addons_settings', array( $this, 'pa_save_settings_with_ajax' ) );
 
23
  add_action('admin_enqueue_scripts',array( $this, 'localize_js_script' ) );
 
 
 
24
  }
25
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
26
  public function localize_js_script(){
27
  wp_localize_script(
28
  'pa-admin-js',
17
  private $pa_get_settings;
18
 
19
  public function __construct() {
20
+
21
  add_action( 'admin_menu', array( $this,'pa_admin_menu') );
22
+
23
  add_action('admin_enqueue_scripts', array( $this, 'pa_admin_page_scripts' ) );
24
+
25
  add_action( 'wp_ajax_pa_save_admin_addons_settings', array( $this, 'pa_save_settings_with_ajax' ) );
26
+
27
  add_action('admin_enqueue_scripts',array( $this, 'localize_js_script' ) );
28
+
29
+ add_filter( 'plugin_action_links_' . PREMIUM_ADDONS_BASENAME, array( $this, 'plugin_settings_page' ) );
30
+
31
  }
32
 
33
+ /*
34
+ * Creates `Settings` action link
35
+ * @since 1.0.0
36
+ * @return void
37
+ */
38
+ public function plugin_settings_page( $links ) {
39
+
40
+ $settings_link = sprintf( '<a href="%1$s">%2$s</a>', admin_url( 'admin.php?page=' . $this->page_slug ), __( 'Settings', 'premium-addons-for-elementor' ) );
41
+
42
+ array_unshift( $links, $settings_link );
43
+
44
+ return $links;
45
+ }
46
+
47
  public function localize_js_script(){
48
  wp_localize_script(
49
  'pa-admin-js',
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 3.1.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 3.1.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
@@ -858,6 +858,9 @@
858
  .premium-carousel-wrapper a.slick-arrow:hover {
859
  box-shadow: none !important;
860
  }
 
 
 
861
  .premium-carousel-wrapper a.carousel-arrow,
862
  .premium-fb-rev-container a.carousel-arrow,
863
  .premium-blog-wrap a.carousel-arrow {
858
  .premium-carousel-wrapper a.slick-arrow:hover {
859
  box-shadow: none !important;
860
  }
861
+ .premium-carousel-wrapper .premium-carousel-content-hidden {
862
+ visibility: hidden;
863
+ }
864
  .premium-carousel-wrapper a.carousel-arrow,
865
  .premium-fb-rev-container a.carousel-arrow,
866
  .premium-blog-wrap a.carousel-arrow {
assets/js/premium-addons.js CHANGED
@@ -339,20 +339,21 @@
339
  slideToAnimate +
340
  "']"
341
  );
342
- $inViewPort.addClass($inViewPort.data("animation"));
 
343
  }
344
  } else {
345
  for (var i = slidesScrolled + currentSlide; i >= 0; i--) {
346
  $inViewPort = $(
347
  "#" + $currentParent + " [data-slick-index='" + i + "']"
348
  );
349
- $inViewPort.addClass($inViewPort.data("animation"));
350
  }
351
  }
352
  });
353
  $(this).on("beforeChange", function(event, slick, currentSlide) {
354
  $inViewPort = $("[data-slick-index='" + currentSlide + "']");
355
- $inViewPort.siblings().removeClass($inViewPort.data("animation"));
356
  });
357
  if (carouselSettings["vertical"]) {
358
  var maxHeight = -1;
339
  slideToAnimate +
340
  "']"
341
  );
342
+
343
+ $inViewPort.find('p, h1, h2, h3, h4, h5, h6, span, a, img, i, button').addClass($inViewPort.data("animation")).removeClass("premium-carousel-content-hidden");
344
  }
345
  } else {
346
  for (var i = slidesScrolled + currentSlide; i >= 0; i--) {
347
  $inViewPort = $(
348
  "#" + $currentParent + " [data-slick-index='" + i + "']"
349
  );
350
+ $inViewPort.find('p, h1, h2,h3,h4,h5,h6,span, img, i, button').addClass($inViewPort.data("animation")).removeClass("premium-carousel-content-hidden");
351
  }
352
  }
353
  });
354
  $(this).on("beforeChange", function(event, slick, currentSlide) {
355
  $inViewPort = $("[data-slick-index='" + currentSlide + "']");
356
+ $inViewPort.siblings().find('p, h1, h2, h3, h4, h5,h6, span, a, img, i, button').removeClass($inViewPort.data("animation")).addClass("premium-carousel-content-hidden");
357
  });
358
  if (carouselSettings["vertical"]) {
359
  var maxHeight = -1;
premium-addons-for-elementor.php CHANGED
@@ -1,9 +1,9 @@
1
  <?php
2
  /*
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: 3.1.3
7
  Author: Leap13
8
  Author URI: http://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.1.3');
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(__FILE__));
22
- define('PREMIUM_ADDONS_STABLE_VERSION', '3.1.2');
23
 
24
  if( ! class_exists('Premium_Addons_Elementor') ) {
25
  /*
@@ -39,10 +39,6 @@ if( ! class_exists('Premium_Addons_Elementor') ) {
39
 
40
  add_action('plugins_loaded', array( $this, 'premium_addons_elementor_setup') );
41
 
42
- register_activation_hook(__FILE__, array( $this, 'pa_activation') );
43
-
44
- add_action('admin_init', array( $this, 'pa_redirection' ) );
45
-
46
  add_action('elementor/init', array( $this, 'create_premium_category') );
47
 
48
  add_action( 'init', array( $this, 'init_addons' ), -999 );
@@ -51,29 +47,6 @@ if( ! class_exists('Premium_Addons_Elementor') ) {
51
 
52
  }
53
 
54
- public function pa_activation() {
55
- add_option('pa_activation_redirect', true);
56
- }
57
-
58
- /*
59
- * Redirects to Premium Widgets Settings settings after activation
60
- * @since 1.0.0
61
- * @return void
62
- */
63
- public function pa_redirection() {
64
-
65
- if ( get_option('pa_activation_redirect', false ) ) {
66
-
67
- delete_option('pa_activation_redirect');
68
-
69
- if ( ! is_network_admin() ) {
70
-
71
- wp_redirect("admin.php?page=premium-addons");
72
-
73
- }
74
- }
75
- }
76
-
77
  /**
78
  * Installs translation text domain and checks if Elementor is installed
79
  * @since 1.0.0
1
  <?php
2
  /*
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.1.4
7
  Author: Leap13
8
  Author URI: http://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.1.4');
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.1.3');
23
 
24
  if( ! class_exists('Premium_Addons_Elementor') ) {
25
  /*
39
 
40
  add_action('plugins_loaded', array( $this, 'premium_addons_elementor_setup') );
41
 
 
 
 
 
42
  add_action('elementor/init', array( $this, 'create_premium_category') );
43
 
44
  add_action( 'init', array( $this, 'init_addons' ), -999 );
47
 
48
  }
49
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
  /**
51
  * Installs translation text domain and checks if Elementor is installed
52
  * @since 1.0.0
readme.txt CHANGED
@@ -1,11 +1,11 @@
1
  === Premium Addons for Elementor ===
2
  Contributors: leap13
3
- Tags: Elementor, Elementor Page Builder, Elements, Elementor Addons, Add-ons, page builder
4
  Donate link: http://premiumaddons.com
5
  Requires at least: 4.5
6
  Tested up to: 5.1
7
  Requires PHP: 5.4
8
- Stable tag: 3.1.3
9
  License: GPL v3.0
10
  License URI: https://opensource.org/licenses/GPL-3.0
11
 
@@ -139,6 +139,13 @@ Premium Addons for Elementor is 100% Ads Free, Ads can only be detected from You
139
 
140
  == Changelog ==
141
 
 
 
 
 
 
 
 
142
  = 3.1.3 =
143
 
144
  - New: Added Image Scroll widget.
1
  === Premium Addons for Elementor ===
2
  Contributors: leap13
3
+ Tags: Elementor, Elementor Page Builder, Elements, Elementor Addons, Add-ons, page builder, widgets, Elementor widgets
4
  Donate link: http://premiumaddons.com
5
  Requires at least: 4.5
6
  Tested up to: 5.1
7
  Requires PHP: 5.4
8
+ Stable tag: 3.1.4
9
  License: GPL v3.0
10
  License URI: https://opensource.org/licenses/GPL-3.0
11
 
139
 
140
  == Changelog ==
141
 
142
+ = 3.1.4 =
143
+
144
+ - Tweak: Added `Skype` social link for Persons widget.
145
+ - Tweak: Removed Auto redirection to settings page after plugin activation.
146
+ - Tweak: Added `Settings` to plugin action links on `Plugins` page.
147
+ - Fixed: Animations occur after slides transition in Carousel widget.
148
+
149
  = 3.1.3 =
150
 
151
  - New: Added Image Scroll widget.
widgets/premium-person.php CHANGED
@@ -292,6 +292,16 @@ class Premium_Person extends Widget_Base {
292
  ]
293
  );
294
 
 
 
 
 
 
 
 
 
 
 
295
  /*Person Pinterest*/
296
  $this->add_control('premium_person_pinterest',
297
  [
@@ -595,6 +605,7 @@ class Premium_Person extends Widget_Base {
595
  <?php if( !empty( $settings['premium_person_youtube'] ) ) : ?><li class="premium-person-list-item premium-person-youtube"><a href="<?php echo $settings['premium_person_youtube']; ?>" target="_blank"><i class="fa fa-youtube"></i></a></li><?php endif; ?>
596
 
597
  <?php if( !empty( $settings['premium_person_instagram'] ) ) : ?><li class="premium-person-list-item premium-person-instagram"><a href="<?php echo $settings['premium_person_instagram']; ?>" target="_blank"><i class="fa fa-instagram"></i></a></li><?php endif; ?>
 
598
  <?php if( !empty( $settings['premium_person_pinterest'] ) ) : ?><li class="premium-person-list-item premium-person-pinterest"><a href="<?php echo $settings['premium_person_pinterest']; ?>" target="_blank"><i class="fa fa-pinterest"></i></a></li><?php endif; ?>
599
  <?php if( !empty( $settings['premium_person_dribbble'] ) ) : ?><li class="premium-person-list-item premium-person-dribbble"><a href="<?php echo $settings['premium_person_dribbble']; ?>" target="_blank"><i class="fa fa-dribbble"></i></a></li><?php endif; ?>
600
  <?php if( !empty( $settings['premium_person_behance'] ) ) : ?><li class="premium-person-list-item premium-person-behance"><a href="<?php echo $settings['premium_person_behance']; ?>" target="_blank"><i class="fa fa-behance"></i></a></li><?php endif; ?>
@@ -674,6 +685,10 @@ class Premium_Person extends Widget_Base {
674
  <li class="premium-person-list-item premium-person-instagram"><a href="{{ settings.premium_person_instagram }}" target="_blank"><i class="fa fa-instagram"></i></a></li>
675
  <# } #>
676
 
 
 
 
 
677
  <# if( '' != settings.premium_person_pinterest ) { #>
678
  <li class="premium-person-list-item premium-person-pinterest"><a href="{{ settings.premium_person_pinterest }}" target="_blank"><i class="fa fa-pinterest"></i></a></li>
679
  <# } #>
292
  ]
293
  );
294
 
295
+ /*Person Skype*/
296
+ $this->add_control('premium_person_skype',
297
+ [
298
+ 'label' => __('Skype', 'premium-addons-for-elementor'),
299
+ 'type' => Controls_Manager::TEXT,
300
+ 'dynamic' => [ 'active' => true ],
301
+ 'label_block' => true,
302
+ ]
303
+ );
304
+
305
  /*Person Pinterest*/
306
  $this->add_control('premium_person_pinterest',
307
  [
605
  <?php if( !empty( $settings['premium_person_youtube'] ) ) : ?><li class="premium-person-list-item premium-person-youtube"><a href="<?php echo $settings['premium_person_youtube']; ?>" target="_blank"><i class="fa fa-youtube"></i></a></li><?php endif; ?>
606
 
607
  <?php if( !empty( $settings['premium_person_instagram'] ) ) : ?><li class="premium-person-list-item premium-person-instagram"><a href="<?php echo $settings['premium_person_instagram']; ?>" target="_blank"><i class="fa fa-instagram"></i></a></li><?php endif; ?>
608
+ <?php if( !empty( $settings['premium_person_skype'] ) ) : ?><li class="premium-person-list-item premium-person-skype"><a href="<?php echo $settings['premium_person_skype']; ?>" target="_blank"><i class="fa fa-skype"></i></a></li><?php endif; ?>
609
  <?php if( !empty( $settings['premium_person_pinterest'] ) ) : ?><li class="premium-person-list-item premium-person-pinterest"><a href="<?php echo $settings['premium_person_pinterest']; ?>" target="_blank"><i class="fa fa-pinterest"></i></a></li><?php endif; ?>
610
  <?php if( !empty( $settings['premium_person_dribbble'] ) ) : ?><li class="premium-person-list-item premium-person-dribbble"><a href="<?php echo $settings['premium_person_dribbble']; ?>" target="_blank"><i class="fa fa-dribbble"></i></a></li><?php endif; ?>
611
  <?php if( !empty( $settings['premium_person_behance'] ) ) : ?><li class="premium-person-list-item premium-person-behance"><a href="<?php echo $settings['premium_person_behance']; ?>" target="_blank"><i class="fa fa-behance"></i></a></li><?php endif; ?>
685
  <li class="premium-person-list-item premium-person-instagram"><a href="{{ settings.premium_person_instagram }}" target="_blank"><i class="fa fa-instagram"></i></a></li>
686
  <# } #>
687
 
688
+ <# if( '' != settings.premium_person_skype) { #>
689
+ <li class="premium-person-list-item premium-person-skype"><a href="{{ settings.premium_person_skype }}" target="_blank"><i class="fa fa-skype"></i></a></li>
690
+ <# } #>
691
+
692
  <# if( '' != settings.premium_person_pinterest ) { #>
693
  <li class="premium-person-list-item premium-person-pinterest"><a href="{{ settings.premium_person_pinterest }}" target="_blank"><i class="fa fa-pinterest"></i></a></li>
694
  <# } #>