Version Description
- Tweak: Added
Image Size
option for featured image in Blog widget. - Tweak: Added
Tooltips
option for Feature List in Pricing Table widget. - Tweak: Select between Image/Icon in Image Separator widget.
- Tweak: Added responsive controls for
Gutter
option in Image Separator widget.
Download this release
Release Info
Developer | leap13 |
Plugin | Premium Addons for Elementor |
Version | 3.9.9 |
Comparing to | |
See all releases |
Code changes from version 3.9.8 to 3.9.9
- assets/frontend/css/premium-addons.css +32 -0
- premium-addons-for-elementor.php +3 -3
- readme.txt +8 -1
- widgets/premium-blog.php +20 -2
- widgets/premium-image-separator.php +213 -64
- widgets/premium-modalbox.php +15 -15
- widgets/premium-pricing-table.php +140 -17
assets/frontend/css/premium-addons.css
CHANGED
@@ -963,6 +963,13 @@ a.premium-image-separator-link:hover, a.premium-image-separator-link:visited, a.
|
|
963 |
.premium-image-separator-container .img-responsive {
|
964 |
display: inline-block;
|
965 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
966 |
/**************** Premium Modal Box ****************/
|
967 |
/***************************************************/
|
968 |
.premium-modal-box-button-selector, .premium-modal-box-modal-lower-close {
|
@@ -2491,6 +2498,31 @@ ul.premium-person-social-list {
|
|
2491 |
-ms-flex-align: center;
|
2492 |
align-items: center;
|
2493 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2494 |
.premium-pricing-slashed-price-value {
|
2495 |
display: inline-block;
|
2496 |
font-size: 20px;
|
963 |
.premium-image-separator-container .img-responsive {
|
964 |
display: inline-block;
|
965 |
}
|
966 |
+
.premium-image-separator-container i {
|
967 |
+
padding: 0.1em;
|
968 |
+
-webkit-transition: all 0.3s ease-in-out;
|
969 |
+
-moz-transition: all 0.3s ease-in-out;
|
970 |
+
-ms-transition: all 0.3s ease-in-out;
|
971 |
+
transition: all 0.3s ease-in-out;
|
972 |
+
}
|
973 |
/**************** Premium Modal Box ****************/
|
974 |
/***************************************************/
|
975 |
.premium-modal-box-button-selector, .premium-modal-box-modal-lower-close {
|
2498 |
-ms-flex-align: center;
|
2499 |
align-items: center;
|
2500 |
}
|
2501 |
+
.premium-pricing-list .premium-pricing-list-span {
|
2502 |
+
position: relative;
|
2503 |
+
}
|
2504 |
+
.premium-pricing-list .list-item-tooltip {
|
2505 |
+
border-bottom: 1px dotted;
|
2506 |
+
}
|
2507 |
+
.premium-pricing-list .premium-pricing-list-tooltip {
|
2508 |
+
position: absolute;
|
2509 |
+
top: calc(100% + 1px);
|
2510 |
+
left: 0;
|
2511 |
+
visibility: hidden;
|
2512 |
+
padding: 15px 20px;
|
2513 |
+
border-radius: 5px;
|
2514 |
+
min-width: 200px;
|
2515 |
+
overflow: hidden;
|
2516 |
+
text-align: left;
|
2517 |
+
font-size: .8rem;
|
2518 |
+
color: #fff;
|
2519 |
+
background-color: #aaa;
|
2520 |
+
}
|
2521 |
+
.premium-pricing-list-span:hover .premium-pricing-list-tooltip {
|
2522 |
+
z-index: 99;
|
2523 |
+
visibility: visible;
|
2524 |
+
opacity: 1;
|
2525 |
+
}
|
2526 |
.premium-pricing-slashed-price-value {
|
2527 |
display: inline-block;
|
2528 |
font-size: 20px;
|
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.
|
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.
|
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.
|
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.9
|
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.9');
|
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.8');
|
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.
|
9 |
License: GPL v3.0
|
10 |
License URI: https://opensource.org/licenses/GPL-3.0
|
11 |
|
@@ -175,6 +175,13 @@ Premium Addons for Elementor is 100% Ads Free, Ads can only be detected from You
|
|
175 |
|
176 |
== Changelog ==
|
177 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
178 |
= 3.9.8 =
|
179 |
|
180 |
- Tweak: Added `Margin` option for title, description and button in Banner widget.
|
5 |
Requires at Least: 4.5
|
6 |
Tested Up To: 5.3
|
7 |
Requires PHP: 5.4
|
8 |
+
Stable Tag: 3.9.9
|
9 |
License: GPL v3.0
|
10 |
License URI: https://opensource.org/licenses/GPL-3.0
|
11 |
|
175 |
|
176 |
== Changelog ==
|
177 |
|
178 |
+
= 3.9.9 =
|
179 |
+
|
180 |
+
- Tweak: Added `Image Size` option for featured image in Blog widget.
|
181 |
+
- Tweak: Added `Tooltips` option for Feature List in Pricing Table widget.
|
182 |
+
- Tweak: Select between Image/Icon in Image Separator widget.
|
183 |
+
- Tweak: Added responsive controls for `Gutter` option in Image Separator widget.
|
184 |
+
|
185 |
= 3.9.8 =
|
186 |
|
187 |
- Tweak: Added `Margin` option for title, description and button in Banner widget.
|
widgets/premium-blog.php
CHANGED
@@ -5,6 +5,7 @@ namespace PremiumAddons\Widgets;
|
|
5 |
use PremiumAddons\Helper_Functions;
|
6 |
use Elementor\Widget_Base;
|
7 |
use Elementor\Controls_Manager;
|
|
|
8 |
use Elementor\Scheme_Color;
|
9 |
use Elementor\Scheme_Typography;
|
10 |
use Elementor\Group_Control_Border;
|
@@ -65,10 +66,18 @@ class Premium_Blog extends Widget_Base {
|
|
65 |
|
66 |
$this->start_controls_section('premium_blog_general_settings',
|
67 |
[
|
68 |
-
'label' => __('Image', 'premium-addons-for-elementor'),
|
69 |
]
|
70 |
);
|
71 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
72 |
$this->add_control('premium_blog_hover_image_effect',
|
73 |
[
|
74 |
'label' => __('Hover Effect', 'premium-addons-for-elementor'),
|
@@ -1780,10 +1789,19 @@ class Premium_Blog extends Widget_Base {
|
|
1780 |
|
1781 |
$skin = $settings['premium_blog_skin'];
|
1782 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1783 |
if( 'classic' !== $skin ): ?>
|
1784 |
<a href="<?php the_permalink(); ?>" target="<?php echo esc_attr( $target ); ?>">
|
1785 |
<?php endif;
|
1786 |
-
|
1787 |
if( 'classic' !== $skin ): ?>
|
1788 |
</a>
|
1789 |
<?php endif;
|
5 |
use PremiumAddons\Helper_Functions;
|
6 |
use Elementor\Widget_Base;
|
7 |
use Elementor\Controls_Manager;
|
8 |
+
use Elementor\Group_Control_Image_Size;
|
9 |
use Elementor\Scheme_Color;
|
10 |
use Elementor\Scheme_Typography;
|
11 |
use Elementor\Group_Control_Border;
|
66 |
|
67 |
$this->start_controls_section('premium_blog_general_settings',
|
68 |
[
|
69 |
+
'label' => __('Featured Image', 'premium-addons-for-elementor'),
|
70 |
]
|
71 |
);
|
72 |
|
73 |
+
$this->add_group_control(
|
74 |
+
Group_Control_Image_Size::get_type(),
|
75 |
+
[
|
76 |
+
'name' => 'featured_image',
|
77 |
+
'default' => 'full'
|
78 |
+
]
|
79 |
+
);
|
80 |
+
|
81 |
$this->add_control('premium_blog_hover_image_effect',
|
82 |
[
|
83 |
'label' => __('Hover Effect', 'premium-addons-for-elementor'),
|
1789 |
|
1790 |
$skin = $settings['premium_blog_skin'];
|
1791 |
|
1792 |
+
$settings['featured_image'] = [
|
1793 |
+
'id' => get_post_thumbnail_id(),
|
1794 |
+
];
|
1795 |
+
|
1796 |
+
$thumbnail_html = Group_Control_Image_Size::get_attachment_image_html( $settings, 'featured_image' );
|
1797 |
+
|
1798 |
+
if( empty( $thumbnail_html ) )
|
1799 |
+
return;
|
1800 |
+
|
1801 |
if( 'classic' !== $skin ): ?>
|
1802 |
<a href="<?php the_permalink(); ?>" target="<?php echo esc_attr( $target ); ?>">
|
1803 |
<?php endif;
|
1804 |
+
echo $thumbnail_html;
|
1805 |
if( 'classic' !== $skin ): ?>
|
1806 |
</a>
|
1807 |
<?php endif;
|
widgets/premium-image-separator.php
CHANGED
@@ -9,7 +9,10 @@ use Elementor\Widget_Base;
|
|
9 |
use Elementor\Utils;
|
10 |
use Elementor\Control_Media;
|
11 |
use Elementor\Controls_Manager;
|
|
|
|
|
12 |
use Elementor\Group_Control_Css_Filter;
|
|
|
13 |
|
14 |
if ( ! defined( 'ABSPATH' ) ) exit; // If this file is called directly, abort.
|
15 |
|
@@ -57,59 +60,90 @@ class Premium_Image_Separator extends Widget_Base {
|
|
57 |
]
|
58 |
);
|
59 |
|
60 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
$this->add_control('premium_image_separator_image',
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
73 |
|
74 |
-
/*Separator Image Size*/
|
75 |
$this->add_responsive_control('premium_image_separator_image_size',
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
|
|
|
|
|
|
|
|
|
|
83 |
],
|
84 |
-
'
|
85 |
-
'
|
86 |
-
|
87 |
-
'max' => 800,
|
88 |
-
],
|
89 |
],
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
|
|
|
|
|
|
95 |
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
'
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
]
|
108 |
-
);
|
109 |
|
110 |
$this->add_control('premium_image_separator_image_align',
|
111 |
[
|
112 |
-
'label' => __('
|
113 |
'type' => Controls_Manager::CHOOSE,
|
114 |
'options' => [
|
115 |
'left' => [
|
@@ -228,7 +262,7 @@ class Premium_Image_Separator extends Widget_Base {
|
|
228 |
/*Start Style Section*/
|
229 |
$this->start_controls_section('premium_image_separator_style',
|
230 |
[
|
231 |
-
'label' => __('
|
232 |
'tab' => Controls_Manager::TAB_STYLE,
|
233 |
]
|
234 |
);
|
@@ -237,11 +271,117 @@ class Premium_Image_Separator extends Widget_Base {
|
|
237 |
Group_Control_Css_Filter::get_type(),
|
238 |
[
|
239 |
'name' => 'css_filters',
|
240 |
-
|
|
|
|
|
|
|
241 |
]
|
242 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
243 |
|
244 |
-
/*End Style Section*/
|
245 |
$this->end_controls_section();
|
246 |
|
247 |
}
|
@@ -254,16 +394,20 @@ class Premium_Image_Separator extends Widget_Base {
|
|
254 |
|
255 |
$link_url = ( 'url' == $link_type ) ? $settings['premium_image_separator_image_link'] : get_permalink( $settings['premium_image_separator_existing_page'] );
|
256 |
|
257 |
-
|
|
|
258 |
?>
|
259 |
|
260 |
<div class="premium-image-separator-container">
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
|
|
|
|
|
|
267 |
</div>
|
268 |
<?php
|
269 |
}
|
@@ -273,8 +417,6 @@ class Premium_Image_Separator extends Widget_Base {
|
|
273 |
<#
|
274 |
var linkType = settings.premium_image_separator_link_type,
|
275 |
|
276 |
-
imgUrl = settings.premium_image_separator_image.url,
|
277 |
-
|
278 |
linkSwitch = settings.premium_image_separator_link_switcher,
|
279 |
|
280 |
linkTarget = settings.premium_image_separator_link_target,
|
@@ -282,17 +424,24 @@ class Premium_Image_Separator extends Widget_Base {
|
|
282 |
linkTitle = settings.premium_image_separator_image_link_text,
|
283 |
|
284 |
linkUrl = ( 'url' == linkType ) ? settings.premium_image_separator_image_link : settings.premium_image_separator_existing_page;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
285 |
#>
|
286 |
|
287 |
<div class="premium-image-separator-container">
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
|
|
|
|
292 |
<a class="premium-image-separator-link" href="{{ linkUrl }}" target="_{{ linkTarget }}" title="{{ linkTitle }}"></a>
|
293 |
-
|
294 |
-
<# }
|
295 |
-
#>
|
296 |
</div>
|
297 |
|
298 |
<?php
|
9 |
use Elementor\Utils;
|
10 |
use Elementor\Control_Media;
|
11 |
use Elementor\Controls_Manager;
|
12 |
+
use Elementor\Scheme_Color;
|
13 |
+
use Elementor\Icons_Manager;
|
14 |
use Elementor\Group_Control_Css_Filter;
|
15 |
+
use Elementor\Group_Control_Text_Shadow;
|
16 |
|
17 |
if ( ! defined( 'ABSPATH' ) ) exit; // If this file is called directly, abort.
|
18 |
|
60 |
]
|
61 |
);
|
62 |
|
63 |
+
$this->add_control('separator_type',
|
64 |
+
[
|
65 |
+
'label' => __( 'Separator Type', 'premium-addons-for-elementor' ),
|
66 |
+
'type' => Controls_Manager::SELECT,
|
67 |
+
'options' => [
|
68 |
+
'image' => __( 'Image', 'premium-addons-for-elementor'),
|
69 |
+
'icon' => __('Icon', 'premium-addons-for-elementor')
|
70 |
+
],
|
71 |
+
'default' => 'image'
|
72 |
+
]
|
73 |
+
);
|
74 |
+
|
75 |
$this->add_control('premium_image_separator_image',
|
76 |
+
[
|
77 |
+
'label' => __('Image', 'premium-addons-for-elementor'),
|
78 |
+
'description' => __('Choose the separator image', 'premium-addons-for-elementor' ),
|
79 |
+
'type' => Controls_Manager::MEDIA,
|
80 |
+
'dynamic' => [ 'active' => true ],
|
81 |
+
'default' => [
|
82 |
+
'url' => Utils::get_placeholder_image_src(),
|
83 |
+
],
|
84 |
+
'label_block' => true,
|
85 |
+
'condition' => [
|
86 |
+
'separator_type' => 'image'
|
87 |
+
]
|
88 |
+
]
|
89 |
+
);
|
90 |
+
|
91 |
+
$this->add_control('separator_icon',
|
92 |
+
[
|
93 |
+
'label' => __( 'Select an Icon', 'premium-addons-for-elementor' ),
|
94 |
+
'type' => Controls_Manager::ICONS,
|
95 |
+
'default' => [
|
96 |
+
'value' => 'fas fa-grip-lines',
|
97 |
+
'library' => 'fa-solid',
|
98 |
+
],
|
99 |
+
'condition' => [
|
100 |
+
'separator_type' => 'icon'
|
101 |
+
]
|
102 |
+
]
|
103 |
+
);
|
104 |
|
|
|
105 |
$this->add_responsive_control('premium_image_separator_image_size',
|
106 |
+
[
|
107 |
+
'label' => __('Size', 'premium-addons-for-elementor'),
|
108 |
+
'type' => Controls_Manager::SLIDER,
|
109 |
+
'size_units' => ['px', 'em', '%'],
|
110 |
+
'default' => [
|
111 |
+
'unit' => 'px',
|
112 |
+
'size' => 200,
|
113 |
+
],
|
114 |
+
'range' => [
|
115 |
+
'px' => [
|
116 |
+
'min' => 1,
|
117 |
+
'max' => 800,
|
118 |
],
|
119 |
+
'em' => [
|
120 |
+
'min' => 1,
|
121 |
+
'max' => 30,
|
|
|
|
|
122 |
],
|
123 |
+
],
|
124 |
+
'selectors' => [
|
125 |
+
'{{WRAPPER}} .premium-image-separator-container img' => 'width: {{SIZE}}{{UNIT}}',
|
126 |
+
'{{WRAPPER}} .premium-image-separator-container i' => 'font-size: {{SIZE}}{{UNIT}}',
|
127 |
+
'{{WRAPPER}} .premium-image-separator-container svg' => 'width: {{SIZE}}{{UNIT}}; height: {{SIZE}}{{UNIT}}'
|
128 |
+
]
|
129 |
+
]
|
130 |
+
);
|
131 |
|
132 |
+
$this->add_responsive_control('premium_image_separator_image_gutter',
|
133 |
+
[
|
134 |
+
'label' => __('Gutter (%)', 'premium-addons-for-elementor'),
|
135 |
+
'type' => Controls_Manager::NUMBER,
|
136 |
+
'default' => -50,
|
137 |
+
'description' => __('-50% is default. Increase to push the image outside or decrease to pull the image inside.','premium-addons-for-elementor'),
|
138 |
+
'selectors' => [
|
139 |
+
'{{WRAPPER}} .premium-image-separator-container' => 'transform: translateY( {{VALUE}}% );'
|
140 |
+
]
|
141 |
+
]
|
142 |
+
);
|
|
|
|
|
143 |
|
144 |
$this->add_control('premium_image_separator_image_align',
|
145 |
[
|
146 |
+
'label' => __('Alignment', 'premium-addons-for-elementor'),
|
147 |
'type' => Controls_Manager::CHOOSE,
|
148 |
'options' => [
|
149 |
'left' => [
|
262 |
/*Start Style Section*/
|
263 |
$this->start_controls_section('premium_image_separator_style',
|
264 |
[
|
265 |
+
'label' => __('Separator', 'premium-addons-for-elementor'),
|
266 |
'tab' => Controls_Manager::TAB_STYLE,
|
267 |
]
|
268 |
);
|
271 |
Group_Control_Css_Filter::get_type(),
|
272 |
[
|
273 |
'name' => 'css_filters',
|
274 |
+
'selector' => '{{WRAPPER}} .premium-image-separator-container img',
|
275 |
+
'condition' => [
|
276 |
+
'separator_type' => 'image'
|
277 |
+
]
|
278 |
]
|
279 |
+
);
|
280 |
+
|
281 |
+
$this->add_control('icon_color',
|
282 |
+
[
|
283 |
+
'label' => __( 'Color', 'premium-addons-for-elementor' ),
|
284 |
+
'type' => Controls_Manager::COLOR,
|
285 |
+
'scheme' => [
|
286 |
+
'type' => Scheme_Color::get_type(),
|
287 |
+
'value' => Scheme_Color::COLOR_1,
|
288 |
+
],
|
289 |
+
'selectors' => [
|
290 |
+
'{{WRAPPER}} .premium-image-separator-container i' => 'color: {{VALUE}}'
|
291 |
+
],
|
292 |
+
'condition' => [
|
293 |
+
'separator_type' => 'icon'
|
294 |
+
]
|
295 |
+
]
|
296 |
+
);
|
297 |
+
|
298 |
+
$this->add_control('icon_hover_color',
|
299 |
+
[
|
300 |
+
'label' => __( 'Hover Color', 'premium-addons-for-elementor' ),
|
301 |
+
'type' => Controls_Manager::COLOR,
|
302 |
+
'scheme' => [
|
303 |
+
'type' => Scheme_Color::get_type(),
|
304 |
+
'value' => Scheme_Color::COLOR_1,
|
305 |
+
],
|
306 |
+
'selectors' => [
|
307 |
+
'{{WRAPPER}} .premium-image-separator-container i:hover' => 'color: {{VALUE}}'
|
308 |
+
],
|
309 |
+
'condition' => [
|
310 |
+
'separator_type' => 'icon'
|
311 |
+
]
|
312 |
+
]
|
313 |
+
);
|
314 |
+
|
315 |
+
$this->add_control('icon_background_color',
|
316 |
+
[
|
317 |
+
'label' => __( 'Background Color', 'premium-addons-for-elementor' ),
|
318 |
+
'type' => Controls_Manager::COLOR,
|
319 |
+
'scheme' => [
|
320 |
+
'type' => Scheme_Color::get_type(),
|
321 |
+
'value' => Scheme_Color::COLOR_2,
|
322 |
+
],
|
323 |
+
'selectors' => [
|
324 |
+
'{{WRAPPER}} .premium-image-separator-container i' => 'background-color: {{VALUE}}'
|
325 |
+
],
|
326 |
+
'condition' => [
|
327 |
+
'separator_type' => 'icon'
|
328 |
+
]
|
329 |
+
]
|
330 |
+
);
|
331 |
+
|
332 |
+
$this->add_control('icon_hover_background_color',
|
333 |
+
[
|
334 |
+
'label' => __( 'Hover Background Color', 'premium-addons-for-elementor' ),
|
335 |
+
'type' => Controls_Manager::COLOR,
|
336 |
+
'scheme' => [
|
337 |
+
'type' => Scheme_Color::get_type(),
|
338 |
+
'value' => Scheme_Color::COLOR_2,
|
339 |
+
],
|
340 |
+
'selectors' => [
|
341 |
+
'{{WRAPPER}} .premium-image-separator-container i:hover' => 'background-color: {{VALUE}}'
|
342 |
+
],
|
343 |
+
'condition' => [
|
344 |
+
'separator_type' => 'icon'
|
345 |
+
]
|
346 |
+
]
|
347 |
+
);
|
348 |
+
|
349 |
+
$this->add_responsive_control('separator_border_radius',
|
350 |
+
[
|
351 |
+
'label' => __('Border Radius', 'premium-addons-for-elementor'),
|
352 |
+
'type' => Controls_Manager::DIMENSIONS,
|
353 |
+
'size_units' => ['px', 'em', '%'],
|
354 |
+
'selectors' => [
|
355 |
+
'{{WRAPPER}} .premium-image-separator-container i, {{WRAPPER}} .premium-image-separator-container img' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}'
|
356 |
+
],
|
357 |
+
]
|
358 |
+
);
|
359 |
+
|
360 |
+
$this->add_group_control(
|
361 |
+
Group_Control_Text_Shadow::get_type(),
|
362 |
+
[
|
363 |
+
'name' => 'separator_shadow',
|
364 |
+
'selector' => '{{WRAPPER}} .premium-image-separator-container i',
|
365 |
+
'condition' => [
|
366 |
+
'separator_type' => 'icon'
|
367 |
+
]
|
368 |
+
]
|
369 |
+
);
|
370 |
+
|
371 |
+
$this->add_responsive_control('icon_padding',
|
372 |
+
[
|
373 |
+
'label' => __('Padding', 'premium-addons-for-elementor'),
|
374 |
+
'type' => Controls_Manager::DIMENSIONS,
|
375 |
+
'size_units' => ['px', 'em', '%'],
|
376 |
+
'selectors' => [
|
377 |
+
'{{WRAPPER}} .premium-image-separator-container i' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}}'
|
378 |
+
],
|
379 |
+
'condition' => [
|
380 |
+
'separator_type' => 'icon'
|
381 |
+
]
|
382 |
+
]
|
383 |
+
);
|
384 |
|
|
|
385 |
$this->end_controls_section();
|
386 |
|
387 |
}
|
394 |
|
395 |
$link_url = ( 'url' == $link_type ) ? $settings['premium_image_separator_image_link'] : get_permalink( $settings['premium_image_separator_existing_page'] );
|
396 |
|
397 |
+
if( 'image' === $settings['separator_type'] )
|
398 |
+
$alt = esc_attr( Control_Media::get_image_alt( $settings['premium_image_separator_image'] ) );
|
399 |
?>
|
400 |
|
401 |
<div class="premium-image-separator-container">
|
402 |
+
<?php if( 'image' === $settings['separator_type'] ) : ?>
|
403 |
+
<img class="img-responsive" src="<?php echo $settings['premium_image_separator_image']['url']; ?>" alt="<?php echo $alt; ?>">
|
404 |
+
<?php else:
|
405 |
+
Icons_Manager::render_icon( $settings['separator_icon'], [ 'aria-hidden' => 'true' ] );
|
406 |
+
endif;
|
407 |
+
if ( $settings['premium_image_separator_link_switcher'] == 'yes' ) : ?>
|
408 |
+
<a class="premium-image-separator-link" href="<?php echo $link_url; ?>" target="_<?php echo $settings['premium_image_separator_link_target']; ?>" title="<?php echo $settings['premium_image_separator_image_link_text']; ?>">
|
409 |
+
</a>
|
410 |
+
<?php endif; ?>
|
411 |
</div>
|
412 |
<?php
|
413 |
}
|
417 |
<#
|
418 |
var linkType = settings.premium_image_separator_link_type,
|
419 |
|
|
|
|
|
420 |
linkSwitch = settings.premium_image_separator_link_switcher,
|
421 |
|
422 |
linkTarget = settings.premium_image_separator_link_target,
|
424 |
linkTitle = settings.premium_image_separator_image_link_text,
|
425 |
|
426 |
linkUrl = ( 'url' == linkType ) ? settings.premium_image_separator_image_link : settings.premium_image_separator_existing_page;
|
427 |
+
|
428 |
+
if( 'image' === settings.separator_type ) {
|
429 |
+
var imgUrl = settings.premium_image_separator_image.url;
|
430 |
+
} else {
|
431 |
+
var iconHTML = elementor.helpers.renderIcon( view, settings.separator_icon, { 'aria-hidden': true }, 'i' , 'object' );
|
432 |
+
}
|
433 |
+
|
434 |
#>
|
435 |
|
436 |
<div class="premium-image-separator-container">
|
437 |
+
<# if( 'image' === settings.separator_type ) { #>
|
438 |
+
<img alt="image separator" class="img-responsive" src="{{ imgUrl }}">
|
439 |
+
<# } else { #>
|
440 |
+
{{{ iconHTML.value }}}
|
441 |
+
<# }
|
442 |
+
if( 'yes' == linkSwitch ) { #>
|
443 |
<a class="premium-image-separator-link" href="{{ linkUrl }}" target="_{{ linkTarget }}" title="{{ linkTitle }}"></a>
|
444 |
+
<# } #>
|
|
|
|
|
445 |
</div>
|
446 |
|
447 |
<?php
|
widgets/premium-modalbox.php
CHANGED
@@ -674,26 +674,26 @@ class Premium_Modalbox extends Widget_Base {
|
|
674 |
|
675 |
$this->add_group_control(
|
676 |
Group_Control_Box_Shadow::get_type(),
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
]
|
684 |
]
|
685 |
-
|
|
|
686 |
|
687 |
$this->add_group_control(
|
688 |
Group_Control_Text_Shadow::get_type(),
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
|
694 |
-
]
|
695 |
]
|
696 |
-
|
|
|
697 |
|
698 |
$this->end_controls_tab();
|
699 |
|
674 |
|
675 |
$this->add_group_control(
|
676 |
Group_Control_Box_Shadow::get_type(),
|
677 |
+
[
|
678 |
+
'label' => __('Shadow','premium-addons-for-elementor'),
|
679 |
+
'name' => 'premium_modal_box_selector_box_shadow',
|
680 |
+
'selector' => '{{WRAPPER}} .premium-modal-box-button-selector, {{WRAPPER}} .premium-modal-box-img-selector',
|
681 |
+
'condition' => [
|
682 |
+
'premium_modal_box_display_on' => [ 'button', 'image' ],
|
|
|
683 |
]
|
684 |
+
]
|
685 |
+
);
|
686 |
|
687 |
$this->add_group_control(
|
688 |
Group_Control_Text_Shadow::get_type(),
|
689 |
+
[
|
690 |
+
'name' => 'premium_modal_box_selector_text_shadow',
|
691 |
+
'selector' => '{{WRAPPER}} .premium-modal-box-text-selector',
|
692 |
+
'condition' => [
|
693 |
+
'premium_modal_box_display_on' => 'text',
|
|
|
694 |
]
|
695 |
+
]
|
696 |
+
);
|
697 |
|
698 |
$this->end_controls_tab();
|
699 |
|
widgets/premium-pricing-table.php
CHANGED
@@ -187,15 +187,14 @@ class Premium_Pricing_Table extends Widget_Base {
|
|
187 |
|
188 |
$this->end_controls_section();
|
189 |
|
190 |
-
/*Icon List Content Section*/
|
191 |
$this->start_controls_section('premium_pricing_table_list_section',
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
|
200 |
$repeater = new REPEATER();
|
201 |
|
@@ -220,6 +219,25 @@ class Premium_Pricing_Table extends Widget_Base {
|
|
220 |
],
|
221 |
]
|
222 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
223 |
|
224 |
$this->add_control('premium_fancy_text_list_items',
|
225 |
[
|
@@ -479,11 +497,11 @@ class Premium_Pricing_Table extends Widget_Base {
|
|
479 |
);
|
480 |
|
481 |
$this->add_control('premium_pricing_table_icon_switcher',
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
|
488 |
$this->add_control('premium_pricing_table_title_switcher',
|
489 |
[
|
@@ -1112,10 +1130,8 @@ class Premium_Pricing_Table extends Widget_Base {
|
|
1112 |
]
|
1113 |
);
|
1114 |
|
1115 |
-
/*End Price Style Settings */
|
1116 |
$this->end_controls_section();
|
1117 |
|
1118 |
-
/*Start List Style Settings*/
|
1119 |
$this->start_controls_section('premium_pricing_list_style_settings',
|
1120 |
[
|
1121 |
'label' => __('Features', 'premium-addons-for-elementor'),
|
@@ -1279,6 +1295,97 @@ class Premium_Pricing_Table extends Widget_Base {
|
|
1279 |
]);
|
1280 |
|
1281 |
$this->end_controls_section();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1282 |
|
1283 |
/*Start Description Style Settings */
|
1284 |
$this->start_controls_section('premium_pricing_description_style_settings',
|
@@ -1963,8 +2070,16 @@ class Premium_Pricing_Table extends Widget_Base {
|
|
1963 |
Icons_Manager::render_icon( $item['premium_pricing_list_item_icon_updated'], [ 'aria-hidden' => 'true' ] );
|
1964 |
else: ?>
|
1965 |
<i class="<?php echo $item['premium_pricing_list_item_icon']; ?>"></i>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1966 |
<?php endif; ?>
|
1967 |
-
<span class="premium-pricing-list-span"><?php echo esc_html( $item['premium_pricing_list_item_text'] ); ?></span>
|
1968 |
</li>
|
1969 |
<?php endforeach; ?>
|
1970 |
</ul>
|
@@ -2054,8 +2169,16 @@ class Premium_Pricing_Table extends Widget_Base {
|
|
2054 |
{{{ listIconHTML.value }}}
|
2055 |
<# } else { #>
|
2056 |
<i class="{{ item.premium_pricing_list_item_icon }}" aria-hidden="true"></i>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2057 |
<# } #>
|
2058 |
-
<span class="premium-pricing-list-span">{{{ item.premium_pricing_list_item_text }}}</span>
|
2059 |
</li>
|
2060 |
<# } ); #>
|
2061 |
</ul>
|
187 |
|
188 |
$this->end_controls_section();
|
189 |
|
|
|
190 |
$this->start_controls_section('premium_pricing_table_list_section',
|
191 |
+
[
|
192 |
+
'label' => __('Feature List', 'premium-addons-for-elementor'),
|
193 |
+
'condition' => [
|
194 |
+
'premium_pricing_table_list_switcher' => 'yes',
|
195 |
+
]
|
196 |
+
]
|
197 |
+
);
|
198 |
|
199 |
$repeater = new REPEATER();
|
200 |
|
219 |
],
|
220 |
]
|
221 |
);
|
222 |
+
|
223 |
+
$repeater->add_control('premium_pricing_table_item_tooltip',
|
224 |
+
[
|
225 |
+
'label' => __('Tooltip', 'premium-addons-for-elementor'),
|
226 |
+
'type' => Controls_Manager::SWITCHER,
|
227 |
+
]
|
228 |
+
);
|
229 |
+
|
230 |
+
$repeater->add_control('premium_pricing_table_item_tooltip_text',
|
231 |
+
[
|
232 |
+
'label' => __('Tooltip Text', 'premium-addons-for-elementor'),
|
233 |
+
'type' => Controls_Manager::TEXTAREA,
|
234 |
+
'dynamic' => [ 'active' => true ],
|
235 |
+
'default' => 'Lorem ipsum dolor sit amet, consectetur adipiscing elit',
|
236 |
+
'condition' => [
|
237 |
+
'premium_pricing_table_item_tooltip' => 'yes'
|
238 |
+
]
|
239 |
+
]
|
240 |
+
);
|
241 |
|
242 |
$this->add_control('premium_fancy_text_list_items',
|
243 |
[
|
497 |
);
|
498 |
|
499 |
$this->add_control('premium_pricing_table_icon_switcher',
|
500 |
+
[
|
501 |
+
'label' => __('Icon', 'premium-addons-for-elementor'),
|
502 |
+
'type' => Controls_Manager::SWITCHER,
|
503 |
+
]
|
504 |
+
);
|
505 |
|
506 |
$this->add_control('premium_pricing_table_title_switcher',
|
507 |
[
|
1130 |
]
|
1131 |
);
|
1132 |
|
|
|
1133 |
$this->end_controls_section();
|
1134 |
|
|
|
1135 |
$this->start_controls_section('premium_pricing_list_style_settings',
|
1136 |
[
|
1137 |
'label' => __('Features', 'premium-addons-for-elementor'),
|
1295 |
]);
|
1296 |
|
1297 |
$this->end_controls_section();
|
1298 |
+
|
1299 |
+
$this->start_controls_section('tooltips_style',
|
1300 |
+
[
|
1301 |
+
'label' => __('Tooltips', 'premium-addons-for-elementor'),
|
1302 |
+
'tab' => Controls_Manager::TAB_STYLE,
|
1303 |
+
'condition' => [
|
1304 |
+
'premium_pricing_table_list_switcher' => 'yes',
|
1305 |
+
]
|
1306 |
+
]
|
1307 |
+
);
|
1308 |
+
|
1309 |
+
$this->add_responsive_control('tooltips_align',
|
1310 |
+
[
|
1311 |
+
'label' => __( 'Alignment', 'premium-addons-for-elementor' ),
|
1312 |
+
'type' => Controls_Manager::CHOOSE,
|
1313 |
+
'options' => [
|
1314 |
+
'left' => [
|
1315 |
+
'title' => __( 'Left', 'premium-addons-for-elementor' ),
|
1316 |
+
'icon' => 'fa fa-align-left',
|
1317 |
+
],
|
1318 |
+
'center' => [
|
1319 |
+
'title' => __( 'Center', 'premium-addons-for-elementor' ),
|
1320 |
+
'icon' => 'fa fa-align-center',
|
1321 |
+
],
|
1322 |
+
'right' => [
|
1323 |
+
'title' => __( 'Right', 'premium-addons-for-elementor' ),
|
1324 |
+
'icon' => 'fa fa-align-right',
|
1325 |
+
],
|
1326 |
+
],
|
1327 |
+
'selectors' => [
|
1328 |
+
'{{WRAPPER}} .premium-pricing-list-tooltip' => 'text-align: {{VALUE}}',
|
1329 |
+
],
|
1330 |
+
]
|
1331 |
+
);
|
1332 |
+
|
1333 |
+
$this->add_responsive_control('tooltips_width',
|
1334 |
+
[
|
1335 |
+
'label' => __('Width', 'premium-addons-for-elementor'),
|
1336 |
+
'type' => Controls_Manager::SLIDER,
|
1337 |
+
'range' => [
|
1338 |
+
'px' => [
|
1339 |
+
'min' => 1,
|
1340 |
+
'min' => 400,
|
1341 |
+
]
|
1342 |
+
],
|
1343 |
+
'selectors' => [
|
1344 |
+
'{{WRAPPER}} .premium-pricing-list-tooltip' => 'min-width: {{SIZE}}px;'
|
1345 |
+
]
|
1346 |
+
]
|
1347 |
+
);
|
1348 |
+
|
1349 |
+
$this->add_control('tooltips_color',
|
1350 |
+
[
|
1351 |
+
'label' => __('Color', 'premium-addons-for-elementor'),
|
1352 |
+
'type' => Controls_Manager::COLOR,
|
1353 |
+
'selectors' => [
|
1354 |
+
'{{WRAPPER}} .premium-pricing-list-tooltip' => 'color: {{VALUE}};'
|
1355 |
+
]
|
1356 |
+
]
|
1357 |
+
);
|
1358 |
+
|
1359 |
+
$this->add_group_control(
|
1360 |
+
Group_Control_Typography::get_type(),
|
1361 |
+
[
|
1362 |
+
'name' => 'tooltips_typo',
|
1363 |
+
'scheme' => Scheme_Typography::TYPOGRAPHY_1,
|
1364 |
+
'selector' => '{{WRAPPER}} .premium-pricing-list-tooltip',
|
1365 |
+
]
|
1366 |
+
);
|
1367 |
+
|
1368 |
+
$this->add_control('tooltips_background_color',
|
1369 |
+
[
|
1370 |
+
'label' => __('Background Color', 'premium-addons-for-elementor'),
|
1371 |
+
'type' => Controls_Manager::COLOR,
|
1372 |
+
'selectors' => [
|
1373 |
+
'{{WRAPPER}} .premium-pricing-list-tooltip' => 'background-color: {{VALUE}};'
|
1374 |
+
]
|
1375 |
+
]
|
1376 |
+
);
|
1377 |
+
|
1378 |
+
$this->add_control('tooltips_border_color',
|
1379 |
+
[
|
1380 |
+
'label' => __('Border Color', 'premium-addons-for-elementor'),
|
1381 |
+
'type' => Controls_Manager::COLOR,
|
1382 |
+
'selectors' => [
|
1383 |
+
'{{WRAPPER}} .list-item-tooltip' => 'border-color: {{VALUE}};'
|
1384 |
+
]
|
1385 |
+
]
|
1386 |
+
);
|
1387 |
+
|
1388 |
+
$this->end_controls_section();
|
1389 |
|
1390 |
/*Start Description Style Settings */
|
1391 |
$this->start_controls_section('premium_pricing_description_style_settings',
|
2070 |
Icons_Manager::render_icon( $item['premium_pricing_list_item_icon_updated'], [ 'aria-hidden' => 'true' ] );
|
2071 |
else: ?>
|
2072 |
<i class="<?php echo $item['premium_pricing_list_item_icon']; ?>"></i>
|
2073 |
+
<?php endif;
|
2074 |
+
if ( ! empty( $item['premium_pricing_list_item_text'] ) ) :
|
2075 |
+
$item_class = 'yes' === $item['premium_pricing_table_item_tooltip'] ? 'list-item-tooltip' : '';
|
2076 |
+
?>
|
2077 |
+
<span class="premium-pricing-list-span <?php echo $item_class; ?>"><?php echo esc_html( $item['premium_pricing_list_item_text'] );
|
2078 |
+
if ( 'yes' === $item['premium_pricing_table_item_tooltip'] && ! empty( $item['premium_pricing_table_item_tooltip_text'] ) ) : ?>
|
2079 |
+
<span class="premium-pricing-list-tooltip"><?php echo esc_html( $item['premium_pricing_table_item_tooltip_text'] ); ?></span>
|
2080 |
+
<?php endif; ?>
|
2081 |
+
</span>
|
2082 |
<?php endif; ?>
|
|
|
2083 |
</li>
|
2084 |
<?php endforeach; ?>
|
2085 |
</ul>
|
2169 |
{{{ listIconHTML.value }}}
|
2170 |
<# } else { #>
|
2171 |
<i class="{{ item.premium_pricing_list_item_icon }}" aria-hidden="true"></i>
|
2172 |
+
<# }
|
2173 |
+
if ( '' !== item.premium_pricing_list_item_text ) {
|
2174 |
+
var itemClass = 'yes' === item.premium_pricing_table_item_tooltip ? 'list-item-tooltip' : '';
|
2175 |
+
#>
|
2176 |
+
<span class="premium-pricing-list-span {{itemClass}}">{{{ item.premium_pricing_list_item_text }}}
|
2177 |
+
<# if ( 'yes' === item.premium_pricing_table_item_tooltip && '' !== item.premium_pricing_table_item_tooltip_text ) { #>
|
2178 |
+
<span class="premium-pricing-list-tooltip">{{{ item.premium_pricing_table_item_tooltip_text }}}</span>
|
2179 |
+
<# } #>
|
2180 |
+
</span>
|
2181 |
<# } #>
|
|
|
2182 |
</li>
|
2183 |
<# } ); #>
|
2184 |
</ul>
|