Premium Addons for Elementor - Version 3.7.8

Version Description

  • Tweak: Added Image Size option in Image Scroll widget.
  • Fixed: Slideshow is not working when Elementor lightbox is selected in Media Grid widget.
Download this release

Release Info

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

Code changes from version 3.7.7 to 3.7.8

admin/includes/version-control.php CHANGED
@@ -92,7 +92,7 @@ class Version_Control {
92
<tr class="pa-roll-row">
93
<th><?php echo __('Rollback Version', 'premium-addons-for-elementor'); ?></th>
94
<td>
95
- <div><?php echo sprintf( '<a target="_blank" href="%1$s" class="button pa-btn pa-rollback-button elementor-button-spinner">%2$s</a>', wp_nonce_url( admin_url( 'admin-post.php?action=premium_addons_rollback' ), 'premium_addons_rollback' ), __('Reinstall Version 3.7.6', 'premium-addons-for-elementor') ); ?></div>
96
<p class="pa-roll-desc">
97
<span><?php echo __('Warning: Please backup your database before making the rollback.', 'premium-addons-for-elementor'); ?></span>
98
</p>
92
<tr class="pa-roll-row">
93
<th><?php echo __('Rollback Version', 'premium-addons-for-elementor'); ?></th>
94
<td>
95
+ <div><?php echo sprintf( '<a target="_blank" href="%1$s" class="button pa-btn pa-rollback-button elementor-button-spinner">%2$s</a>', wp_nonce_url( admin_url( 'admin-post.php?action=premium_addons_rollback' ), 'premium_addons_rollback' ), __('Reinstall Version 3.7.7', 'premium-addons-for-elementor') ); ?></div>
96
<p class="pa-roll-desc">
97
<span><?php echo __('Warning: Please backup your database before making the rollback.', 'premium-addons-for-elementor'); ?></span>
98
</p>
assets/editor/css/style.css CHANGED
@@ -113,4 +113,7 @@
113
}
114
.elementor-control-raw-html.editor-pa-doc a {
115
color: #0f6aa7;
116
}
113
}
114
.elementor-control-raw-html.editor-pa-doc a {
115
color: #0f6aa7;
116
+ }
117
+ .elementor-control-raw-html .premium-notice-bold {
118
+ font-weight: bold;
119
}
assets/frontend/css/premium-addons.css CHANGED
@@ -3562,11 +3562,11 @@
3562
width: 100%;
3563
height: 100%;
3564
}
3565
- .premium-image-scroll-container .premium-image-scroll-horizontal .premium-image-scroll-image {
3566
max-width: none;
3567
height: 100%;
3568
}
3569
- .premium-image-scroll-container .premium-image-scroll-vertical .premium-image-scroll-image {
3570
width: 100%;
3571
max-width: 100%;
3572
height: auto;
@@ -3597,9 +3597,10 @@
3597
-ms-transform: translate(-50%, -50%);
3598
transform: translate(-50%, -50%);
3599
}
3600
- .premium-container-scroll-instant .premium-image-scroll-image {
3601
- -webkit-transition: all 0s ease-in-out !important;
3602
- transition: all 0s ease-in-out !important;
3603
}
3604
.premium-image-scroll-container .premium-image-scroll-overlay, .premium-image-scroll-container .premium-image-scroll-content {
3605
-webkit-transition: all 0.3s ease-in-out;
3562
width: 100%;
3563
height: 100%;
3564
}
3565
+ .premium-image-scroll-container .premium-image-scroll-horizontal img {
3566
max-width: none;
3567
height: 100%;
3568
}
3569
+ .premium-image-scroll-container .premium-image-scroll-vertical img {
3570
width: 100%;
3571
max-width: 100%;
3572
height: auto;
3597
-ms-transform: translate(-50%, -50%);
3598
transform: translate(-50%, -50%);
3599
}
3600
+ .premium-image-scroll-container img {
3601
+ -webkit-transition: transform 3s ease-in-out;
3602
+ -moz-transition-: transform 3s ease-in-out;
3603
+ transition: transform 3s ease-in-out;
3604
}
3605
.premium-image-scroll-container .premium-image-scroll-overlay, .premium-image-scroll-container .premium-image-scroll-content {
3606
-webkit-transition: all 0.3s ease-in-out;
assets/frontend/js/premium-addons.js CHANGED
@@ -762,7 +762,7 @@
762
".premium-image-scroll-vertical"
763
),
764
dataElement = scrollElement.data("settings"),
765
- imageScroll = scrollElement.find(".premium-image-scroll-image"),
766
direction = dataElement["direction"],
767
reverse = dataElement["reverse"],
768
transformOffset = null;
762
".premium-image-scroll-vertical"
763
),
764
dataElement = scrollElement.data("settings"),
765
+ imageScroll = scrollElement.find("img"),
766
direction = dataElement["direction"],
767
reverse = dataElement["reverse"],
768
transformOffset = null;
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.7.7
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.7.7');
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.7.6');
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.7.8
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.7.8');
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.7.7');
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.2.2
7
Requires PHP: 5.4
8
- Stable Tag: 3.7.7
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.7.7 =
179
180
- Fixed: Counter widget icon is not appearing on the preview page.
5
Requires at Least: 4.5
6
Tested Up To: 5.2.2
7
Requires PHP: 5.4
8
+ Stable Tag: 3.7.8
9
License: GPL v3.0
10
License URI: https://opensource.org/licenses/GPL-3.0
11
175
176
== Changelog ==
177
178
+ = 3.7.8 =
179
+
180
+ - Tweak: Added `Image Size` option in Image Scroll widget.
181
+ - Fixed: Slideshow is not working when `Elementor` lightbox is selected in Media Grid widget.
182
+
183
= 3.7.7 =
184
185
- Fixed: Counter widget icon is not appearing on the preview page.
widgets/premium-banner.php CHANGED
@@ -575,7 +575,6 @@ class Premium_Banner extends Widget_Base {
575
'label' => __( 'Title Background', 'premium-addons-for-elementor' ),
576
'type' => Controls_Manager::COLOR,
577
'default' => '#f2f2f2',
578
- 'label_block' => true,
579
'description' => __( 'Choose a background color for the title', 'premium-addons-for-elementor' ),
580
'condition' => [
581
'premium_banner_image_animation' => 'animation5'
575
'label' => __( 'Title Background', 'premium-addons-for-elementor' ),
576
'type' => Controls_Manager::COLOR,
577
'default' => '#f2f2f2',
578
'description' => __( 'Choose a background color for the title', 'premium-addons-for-elementor' ),
579
'condition' => [
580
'premium_banner_image_animation' => 'animation5'
widgets/premium-grid.php CHANGED
@@ -2092,7 +2092,8 @@ class Premium_Grid extends Widget_Base {
2092
2093
if( 'default' !== $lightbox_type ) {
2094
$this->add_render_attribute( $lightbox_key, [
2095
- 'data-elementor-open-lightbox' => $lightbox_type
2096
]);
2097
} else {
2098
$this->add_render_attribute( $lightbox_key, [
@@ -2248,6 +2249,8 @@ class Premium_Grid extends Widget_Base {
2248
2249
$is_video = $item['premium_gallery_video'];
2250
2251
if ( $is_video ) {
2252
2253
$this->add_render_attribute( $lightbox_key, [
@@ -2257,7 +2260,7 @@ class Premium_Grid extends Widget_Base {
2257
]
2258
]);
2259
2260
- if( $lightbox ) {
2261
2262
$lightbox_options = [
2263
'type' => 'video',
@@ -2297,7 +2300,8 @@ class Premium_Grid extends Widget_Base {
2297
2298
if( 'default' !== $lightbox_type ) {
2299
$this->add_render_attribute( $lightbox_key, [
2300
- 'data-elementor-open-lightbox' => $lightbox_type
2301
]);
2302
} else {
2303
$this->add_render_attribute( $lightbox_key, [
2092
2093
if( 'default' !== $lightbox_type ) {
2094
$this->add_render_attribute( $lightbox_key, [
2095
+ 'data-elementor-open-lightbox' => $lightbox_type,
2096
+ 'data-elementor-lightbox-slideshow' => $this->get_id()
2097
]);
2098
} else {
2099
$this->add_render_attribute( $lightbox_key, [
2249
2250
$is_video = $item['premium_gallery_video'];
2251
2252
+ $id = $this->get_id();
2253
+
2254
if ( $is_video ) {
2255
2256
$this->add_render_attribute( $lightbox_key, [
2260
]
2261
]);
2262
2263
+ if( 'yes' === $lightbox ) {
2264
2265
$lightbox_options = [
2266
'type' => 'video',
2300
2301
if( 'default' !== $lightbox_type ) {
2302
$this->add_render_attribute( $lightbox_key, [
2303
+ 'data-elementor-open-lightbox' => $lightbox_type,
2304
+ 'data-elementor-lightbox-slideshow' => $id
2305
]);
2306
} else {
2307
$this->add_render_attribute( $lightbox_key, [
widgets/premium-image-scroll.php CHANGED
@@ -15,6 +15,7 @@ use Elementor\Utils;
15
use Elementor\Control_Media;
16
use Elementor\Controls_Manager;
17
use Elementor\Group_Control_Border;
18
use Elementor\Group_Control_Css_Filter;
19
use Elementor\Group_Control_Box_Shadow;
20
@@ -80,6 +81,15 @@ class Premium_Image_Scroll extends Widget_Base {
80
]
81
);
82
83
$this->add_responsive_control('image_height',
84
[
85
'label' => __('Image Height', 'premium-addons-for-elementor'),
@@ -220,7 +230,7 @@ class Premium_Image_Scroll extends Widget_Base {
220
'trigger_type' => 'hover',
221
],
222
'selectors' => [
223
- '{{WRAPPER}} .premium-image-scroll-container .premium-image-scroll-image' => 'transition: all {{Value}}s; -webkit-transition: all {{Value}}s;',
224
]
225
]
226
);
@@ -320,7 +330,7 @@ class Premium_Image_Scroll extends Widget_Base {
320
],
321
],
322
'selectors' => [
323
- '{{WRAPPER}} .premium-image-scroll-image' => 'opacity: {{SIZE}};',
324
],
325
]
326
);
@@ -329,7 +339,7 @@ class Premium_Image_Scroll extends Widget_Base {
329
Group_Control_Css_Filter::get_type(),
330
[
331
'name' => 'css_filters',
332
- 'selector' => '{{WRAPPER}} .premium-image-scroll-container .premium-image-scroll-image',
333
]
334
);
335
@@ -353,7 +363,7 @@ class Premium_Image_Scroll extends Widget_Base {
353
],
354
],
355
'selectors' => [
356
- '{{WRAPPER}} .premium-image-scroll-section:hover .premium-image-scroll-image' => 'opacity: {{SIZE}};',
357
],
358
]
359
);
@@ -362,7 +372,7 @@ class Premium_Image_Scroll extends Widget_Base {
362
Group_Control_Css_Filter::get_type(),
363
[
364
'name' => 'css_filters_hover',
365
- 'selector' => '{{WRAPPER}} .premium-image-scroll-container .premium-image-scroll-image:hover',
366
]
367
);
368
@@ -461,8 +471,6 @@ class Premium_Image_Scroll extends Widget_Base {
461
462
$settings = $this->get_settings_for_display();
463
464
- $alt = esc_attr( Control_Media::get_image_alt( $settings['image'] ) );
465
-
466
$link_type = $settings['link_type'];
467
468
$link_url = ( 'url' == $link_type ) ? $settings['link']['url'] : get_permalink( $settings['existing_page'] );
@@ -502,13 +510,20 @@ class Premium_Image_Scroll extends Widget_Base {
502
503
$this->add_render_attribute( 'container', 'data-settings', wp_json_encode( $image_scroll ) );
504
505
- $this->add_render_attribute( 'direction_type', 'class', 'premium-image-scroll-'.$settings['direction_type'] );
506
507
- $this->add_render_attribute( 'image', 'class', 'premium-image-scroll-image' );
508
-
509
- $this->add_render_attribute( 'image', 'src', $settings['image']['url'] );
510
511
- $this->add_render_attribute( 'image', 'alt', $alt );
512
513
?>
514
<div class="premium-image-scroll-section">
@@ -527,8 +542,9 @@ class Premium_Image_Scroll extends Widget_Base {
527
<?php endif;
528
if( $settings['overlay'] == 'yes' ) : ?>
529
</div>
530
- <?php endif; ?>
531
- <img <?php echo $this->get_render_attribute_string('image'); ?>>
532
</div>
533
</div>
534
</div>
@@ -575,9 +591,23 @@ class Premium_Image_Scroll extends Widget_Base {
575
576
view.addRenderAttribute( 'direction_type', 'class', 'premium-image-scroll-' + direction );
577
578
- view.addRenderAttribute( 'image', 'class', 'premium-image-scroll-image' );
579
-
580
view.addRenderAttribute( 'image', 'src', settings.image.url );
581
582
#>
583
@@ -598,7 +628,9 @@ class Premium_Image_Scroll extends Widget_Base {
598
if( 'yes' == settings.overlay ) { #>
599
</div>
600
<# } #>
601
- <img {{{ view.getRenderAttributeString('image') }}}>
602
</div>
603
</div>
604
</div>
15
use Elementor\Control_Media;
16
use Elementor\Controls_Manager;
17
use Elementor\Group_Control_Border;
18
+ use Elementor\Group_Control_Image_Size;
19
use Elementor\Group_Control_Css_Filter;
20
use Elementor\Group_Control_Box_Shadow;
21
81
]
82
);
83
84
+ $this->add_group_control(
85
+ Group_Control_Image_Size::get_type(),
86
+ [
87
+ 'name' => 'thumbnail',
88
+ 'default' => 'full',
89
+ 'separator' => 'none',
90
+ ]
91
+ );
92
+
93
$this->add_responsive_control('image_height',
94
[
95
'label' => __('Image Height', 'premium-addons-for-elementor'),
230
'trigger_type' => 'hover',
231
],
232
'selectors' => [
233
+ '{{WRAPPER}} .premium-image-scroll-container img' => 'transition-duration: {{Value}}s',
234
]
235
]
236
);
330
],
331
],
332
'selectors' => [
333
+ '{{WRAPPER}} img' => 'opacity: {{SIZE}};',
334
],
335
]
336
);
339
Group_Control_Css_Filter::get_type(),
340
[
341
'name' => 'css_filters',
342
+ 'selector' => '{{WRAPPER}} .premium-image-scroll-container img',
343
]
344
);
345
363
],
364
],
365
'selectors' => [
366
+ '{{WRAPPER}} .premium-image-scroll-section:hover img' => 'opacity: {{SIZE}};',
367
],
368
]
369
);
372
Group_Control_Css_Filter::get_type(),
373
[
374
'name' => 'css_filters_hover',
375
+ 'selector' => '{{WRAPPER}} .premium-image-scroll-container img:hover',
376
]
377
);
378
471
472
$settings = $this->get_settings_for_display();
473
474
$link_type = $settings['link_type'];
475
476
$link_url = ( 'url' == $link_type ) ? $settings['link']['url'] : get_permalink( $settings['existing_page'] );
510
511
$this->add_render_attribute( 'container', 'data-settings', wp_json_encode( $image_scroll ) );
512
513
+ $this->add_render_attribute( 'direction_type', 'class', 'premium-image-scroll-' . $settings['direction_type'] );
514
515
+ $image_html = '';
516
+ if ( ! empty( $settings['image']['url'] ) ) {
517
+
518
+ $this->add_render_attribute( 'image', 'src', $settings['image']['url'] );
519
+
520
+ $this->add_render_attribute( 'image', 'alt', Control_Media::get_image_alt( $settings['image'] ) );
521
+
522
+ $this->add_render_attribute( 'image', 'title', Control_Media::get_image_title( $settings['image'] ) );
523
524
+ $image_html = Group_Control_Image_Size::get_attachment_image_html( $settings, 'thumbnail', 'image' );
525
+
526
+ }
527
528
?>
529
<div class="premium-image-scroll-section">
542
<?php endif;
543
if( $settings['overlay'] == 'yes' ) : ?>
544
</div>
545
+ <?php endif;
546
+ echo $image_html;
547
+ ?>
548
</div>
549
</div>
550
</div>
591
592
view.addRenderAttribute( 'direction_type', 'class', 'premium-image-scroll-' + direction );
593
594
view.addRenderAttribute( 'image', 'src', settings.image.url );
595
+
596
+ var imageHtml = '';
597
+ if ( settings.image.url ) {
598
+ var image = {
599
+ id: settings.image.id,
600
+ url: settings.image.url,
601
+ size: settings.thumbnail_size,
602
+ dimension: settings.thumbnail_custom_dimension,
603
+ model: view.getEditModel()
604
+ };
605
+
606
+ var image_url = elementor.imagesManager.getImageUrl( image );
607
+
608
+ imageHtml = '<img src="' + image_url + '"/>';
609
+
610
+ }
611
612
#>
613
628
if( 'yes' == settings.overlay ) { #>
629
</div>
630
<# } #>
631
+
632
+ {{{ imageHtml }}}
633
+
634
</div>
635
</div>
636
</div>