Version Description
Download this release
Release Info
Developer | averta |
Plugin | ![]() |
Version | 2.6.0 |
Comparing to | |
See all releases |
Code changes from version 2.5.20 to 2.6.0
- README.txt +8 -3
- admin/assets/js/plugins.js +1 -1
- admin/assets/js/solo/global.js +0 -22
- admin/includes/admin-hooks.php +2 -48
- admin/includes/classes/class-auxels-plugin-check-update.php +13 -11
- admin/includes/classes/class-auxels-system-check.php +49 -8
- admin/includes/classes/class-auxin-dashboard-notice.php +0 -240
- admin/includes/classes/class-auxin-license-activation.php +2 -0
- admin/includes/classes/class-auxin-notices.php +58 -3
- admin/includes/compatibility/smush/smush.php +15 -0
- admin/includes/compatibility/yoast-seo/yoast-seo.php +13 -0
- admin/includes/index.php +2 -0
- auxin-elements.php +2 -2
- includes/classes/class-auxin-demo-importer.php +71 -3
- includes/classes/class-auxin-welcome-sections.php +4 -2
- includes/classes/class-auxin-welcome.php +0 -26
- includes/classes/class-auxin-widget.php +3 -1
- includes/define.php +1 -1
- includes/elementor/class-auxin-elementor-core-elements.php +2 -12
- includes/elementor/modules/dynamic-tags/pages-url.php +82 -0
- includes/elementor/modules/dynamic-tags/taxonomies-url.php +81 -0
- includes/elementor/modules/templates-types-manager.php +12 -0
- includes/elementor/widgets/modern-button.php +310 -25
- includes/elementor/widgets/recent-posts-grid-carousel.php +2 -1
- includes/elementor/widgets/recent-posts-land-style.php +15 -16
- includes/elementor/widgets/testimonial.php +4 -0
- includes/elementor/widgets/text.php +21 -1
- includes/elementor/widgets/theme-elements/menu.php +11 -0
- includes/elements/button.php +1 -1
- includes/elements/gallery.php +1 -1
- includes/elements/recent-posts-grid-carousel.php +1 -1
- includes/elements/recent-posts-land-style.php +1 -1
- includes/elements/recent-posts-masonry.php +1 -1
- includes/elements/recent-posts-tiles-carousel.php +1 -1
- includes/elements/recent-posts-tiles.php +1 -1
- includes/elements/recent-posts-timeline.php +1 -1
- includes/elements/recent-products.php +1 -1
- includes/general-hooks.php +112 -13
- languages/auxin-elements.pot +545 -493
- public/assets/js/plugins.js +1 -1
- public/includes/class-auxels-frontend-assets.php +16 -0
README.txt
CHANGED
@@ -6,8 +6,8 @@ License URI: http://www.gnu.org/licenses/gpl.html
|
|
6 |
Tags: phlox, gallery, elementor, siteorigin, auxin, averta, auxin-elements, framework, widget, fullwidth, masonry, timeline, parallax
|
7 |
Requires PHP: 5.4
|
8 |
Requires at least: 4.6
|
9 |
-
Tested up to: 5.4.
|
10 |
-
Stable tag: 2.
|
11 |
License: GPLv3
|
12 |
License URI: http://www.gnu.org/licenses/gpl.html
|
13 |
|
@@ -155,12 +155,17 @@ Bugs can be reported in our [support forums](https://docs.phlox.pro).
|
|
155 |
|
156 |
== Changelog ==
|
157 |
|
|
|
|
|
|
|
|
|
|
|
|
|
158 |
= Version 2.5.0 / (09.03.2020) =
|
159 |
- [Improvement]: Instagram link for staff Element added.
|
160 |
- [New]: Inline SVG option for Infobox element added.
|
161 |
- [Improvement]: Improvements in dark mode style of controllers for Elementor applied.
|
162 |
|
163 |
-
|
164 |
= Version 2.4.18 / (03.02.2020) =
|
165 |
- [Improvement]: Some improvements for modern heading element applied.
|
166 |
- [Improvement]: Improvements for dark mode styles in Elementor panel applied.
|
6 |
Tags: phlox, gallery, elementor, siteorigin, auxin, averta, auxin-elements, framework, widget, fullwidth, masonry, timeline, parallax
|
7 |
Requires PHP: 5.4
|
8 |
Requires at least: 4.6
|
9 |
+
Tested up to: 5.4.3
|
10 |
+
Stable tag: 2.6.0
|
11 |
License: GPLv3
|
12 |
License URI: http://www.gnu.org/licenses/gpl.html
|
13 |
|
155 |
|
156 |
== Changelog ==
|
157 |
|
158 |
+
= Version 2.6.0 / (11.05.2020) =
|
159 |
+
- [New]: New option for changing the character limit of last breadcrumb text added.
|
160 |
+
- [Improvement]: Improvements for ajax add to cart applied.
|
161 |
+
- [Improvement]: Improvements for demo importer applied.
|
162 |
+
- [Fix]: A minor bug while using WordPress widgets in Elementor fixed.
|
163 |
+
|
164 |
= Version 2.5.0 / (09.03.2020) =
|
165 |
- [Improvement]: Instagram link for staff Element added.
|
166 |
- [New]: Inline SVG option for Infobox element added.
|
167 |
- [Improvement]: Improvements in dark mode style of controllers for Elementor applied.
|
168 |
|
|
|
169 |
= Version 2.4.18 / (03.02.2020) =
|
170 |
- [Improvement]: Some improvements for modern heading element applied.
|
171 |
- [Improvement]: Improvements for dark mode styles in Elementor panel applied.
|
admin/assets/js/plugins.js
CHANGED
@@ -1,4 +1,4 @@
|
|
1 |
-
/*! Phlox Core Plugin - v2.
|
2 |
* All required javascript plugins for admin
|
3 |
* http://phlox.pro/
|
4 |
* Place any jQuery/helper plugins in here, instead of separate, slower script files!
|
1 |
+
/*! Phlox Core Plugin - v2.6.0 (2020-07)
|
2 |
* All required javascript plugins for admin
|
3 |
* http://phlox.pro/
|
4 |
* Place any jQuery/helper plugins in here, instead of separate, slower script files!
|
admin/assets/js/solo/global.js
CHANGED
@@ -1,27 +1,5 @@
|
|
1 |
(function( $ ) {
|
2 |
"use strict";
|
3 |
|
4 |
-
$('.aux-welcome-close-notice').on('click', function(event){
|
5 |
-
event.preventDefault();
|
6 |
-
var $this = $(this),
|
7 |
-
_id = $this.data('id');
|
8 |
-
|
9 |
-
jQuery.post(
|
10 |
-
ajaxurl,
|
11 |
-
{
|
12 |
-
action : 'aux_welcome_dismiss_notice', // the handler
|
13 |
-
auxnonce : aux_setup_params.wpnonce,
|
14 |
-
_id : _id
|
15 |
-
},
|
16 |
-
function(res){
|
17 |
-
if( ! res.success ){
|
18 |
-
alert( res.data.message );
|
19 |
-
} else {
|
20 |
-
$this.closest('.aux-welcome-notice-wrapper').hide();
|
21 |
-
}
|
22 |
-
}
|
23 |
-
);
|
24 |
-
|
25 |
-
});
|
26 |
|
27 |
})( jQuery );
|
1 |
(function( $ ) {
|
2 |
"use strict";
|
3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
4 |
|
5 |
})( jQuery );
|
admin/includes/admin-hooks.php
CHANGED
@@ -754,54 +754,8 @@ add_action( 'admin_notices', 'auxin_notice_manager' );
|
|
754 |
/*-----------------------------------------------------------------------------------*/
|
755 |
|
756 |
function auxin_ads_manager(){
|
757 |
-
|
758 |
-
|
759 |
-
$body = auxin_remote_get( 'http://averta.net/main/rest/ara/v1/notifications?notification-space=3,5', null);
|
760 |
-
$data = json_decode( $body );
|
761 |
-
set_transient( 'auxin_ads_request', $data , 12 * HOUR_IN_SECONDS );
|
762 |
-
}
|
763 |
-
|
764 |
-
if ( empty( $data ) ) {
|
765 |
-
return false;
|
766 |
-
}
|
767 |
-
|
768 |
-
$ads_list = [];
|
769 |
-
|
770 |
-
foreach( $data as $ads_data ) {
|
771 |
-
$ads_list['auxin_ads_' . $ads_data->id] = new Auxin_Notices([
|
772 |
-
'id' => 'auxin_ads_' . $ads_data->id,
|
773 |
-
'title' => $ads_data->title->rendered,
|
774 |
-
'desc' => $ads_data->message,
|
775 |
-
'skin' => 'ads',
|
776 |
-
'has_close' => false,
|
777 |
-
'wrapper_extra_styles' => [
|
778 |
-
'background-color' => $ads_data->{'background-color'},
|
779 |
-
'background-image' => 'url(' . $ads_data->{'background-image'} . ')',
|
780 |
-
'color' => $ads_data->color,
|
781 |
-
'custom' => $ads_data->boxStyles
|
782 |
-
],
|
783 |
-
'buttons' => [
|
784 |
-
[
|
785 |
-
'label' => $ads_data->button->label,
|
786 |
-
'target' => '_blank',
|
787 |
-
'link' => $ads_data->button->url,
|
788 |
-
'custom_styles' => $ads_data->button->style
|
789 |
-
],
|
790 |
-
[
|
791 |
-
'label' => __('Dismiss', 'auxin-elements'),
|
792 |
-
'type' => 'skip',
|
793 |
-
'expiration' => HOUR_IN_SECONDS * 2
|
794 |
-
]
|
795 |
-
],
|
796 |
-
]);
|
797 |
-
}
|
798 |
-
|
799 |
-
foreach ( $ads_list as $ads ) {
|
800 |
-
if( $ads instanceof Auxin_Notices ){
|
801 |
-
$ads->render();
|
802 |
-
}
|
803 |
-
}
|
804 |
-
|
805 |
}
|
806 |
|
807 |
add_action( 'admin_notices', 'auxin_ads_manager' );
|
754 |
/*-----------------------------------------------------------------------------------*/
|
755 |
|
756 |
function auxin_ads_manager(){
|
757 |
+
$api_id = ( defined('THEME_PRO' ) && THEME_PRO ) ? '27' : '26';
|
758 |
+
Auxin_Notices::get_ads_notices( $api_id );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
759 |
}
|
760 |
|
761 |
add_action( 'admin_notices', 'auxin_ads_manager' );
|
admin/includes/classes/class-auxels-plugin-check-update.php
CHANGED
@@ -131,19 +131,21 @@ class AUXELS_Plugin_Check_Update {
|
|
131 |
$this_plugin['Version'] = defined('THEME_VERSION') ? THEME_VERSION : $theme_data->Version;
|
132 |
$this_plugin['Slug'] = defined('THEME_ID') ? THEME_ID : $this->slug;
|
133 |
$this_plugin['Activated'] = 0;
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
)
|
146 |
);
|
|
|
|
|
147 |
|
148 |
if ( ! is_wp_error( $request ) || wp_remote_retrieve_response_code( $request ) === 200 ) {
|
149 |
return $request['body'];
|
131 |
$this_plugin['Version'] = defined('THEME_VERSION') ? THEME_VERSION : $theme_data->Version;
|
132 |
$this_plugin['Slug'] = defined('THEME_ID') ? THEME_ID : $this->slug;
|
133 |
$this_plugin['Activated'] = 0;
|
134 |
+
$this_plugin['client_key'] = get_theme_mod( 'client_key', '');
|
135 |
+
|
136 |
+
$args = array(
|
137 |
+
'user-agent' => 'WordPress/'.$wp_version.'; '. get_site_url(),
|
138 |
+
'timeout' => ( ( defined('DOING_CRON') && DOING_CRON ) ? 30 : 3),
|
139 |
+
'body' => array(
|
140 |
+
'cat' => 'version-check',
|
141 |
+
'action' => 'final',
|
142 |
+
'type' => 'plugin',
|
143 |
+
'item-name' => $this->request_name,
|
144 |
+
'item-info' => $this_plugin
|
145 |
)
|
146 |
);
|
147 |
+
$args = apply_filters( 'auxels_version_check_args', $args );
|
148 |
+
$request = wp_remote_post( $this->update_path, $args );
|
149 |
|
150 |
if ( ! is_wp_error( $request ) || wp_remote_retrieve_response_code( $request ) === 200 ) {
|
151 |
return $request['body'];
|
admin/includes/classes/class-auxels-system-check.php
CHANGED
@@ -20,6 +20,11 @@ class Auxels_System_Check {
|
|
20 |
'label' => __( 'System Status Check By Averta', 'auxin-elements' ),
|
21 |
'test' => array( $this, 'check_php_ini_settings' )
|
22 |
);
|
|
|
|
|
|
|
|
|
|
|
23 |
|
24 |
return $tests;
|
25 |
}
|
@@ -51,19 +56,13 @@ class Auxels_System_Check {
|
|
51 |
|
52 |
$output = '<ul>';
|
53 |
$output .= sprintf(
|
54 |
-
'<li
|
55 |
$message
|
56 |
);
|
57 |
$output .= '</ul>';
|
58 |
|
59 |
$result['description'] = $output;
|
60 |
-
|
61 |
-
if ( 'good' !== $result['status'] ) {
|
62 |
-
if ( 'recommended' === $result['status'] ) {
|
63 |
-
$result['label'] = __( 'We recommend setting max execution time to at least 60.', 'auxin-elements' );
|
64 |
-
}
|
65 |
-
|
66 |
-
}
|
67 |
}
|
68 |
|
69 |
return $result;
|
@@ -91,10 +90,52 @@ class Auxels_System_Check {
|
|
91 |
++$system_notices;
|
92 |
}
|
93 |
|
|
|
|
|
|
|
|
|
94 |
return $system_notices;
|
95 |
|
96 |
}
|
97 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
98 |
/**
|
99 |
* Return an instance of this class.
|
100 |
*
|
20 |
'label' => __( 'System Status Check By Averta', 'auxin-elements' ),
|
21 |
'test' => array( $this, 'check_php_ini_settings' )
|
22 |
);
|
23 |
+
|
24 |
+
$tests['direct']['auxin_curl_check'] = array(
|
25 |
+
'label' => __( 'Demo And Template Import Check By Averta', 'auxin-elements' ),
|
26 |
+
'test' => array( $this, 'check_connecting_to_averta_servers' )
|
27 |
+
);
|
28 |
|
29 |
return $tests;
|
30 |
}
|
56 |
|
57 |
$output = '<ul>';
|
58 |
$output .= sprintf(
|
59 |
+
'<li>%s</li>',
|
60 |
$message
|
61 |
);
|
62 |
$output .= '</ul>';
|
63 |
|
64 |
$result['description'] = $output;
|
65 |
+
$result['label'] = __( 'We recommend setting max execution time to at least 60.', 'auxin-elements' );
|
|
|
|
|
|
|
|
|
|
|
|
|
66 |
}
|
67 |
|
68 |
return $result;
|
90 |
++$system_notices;
|
91 |
}
|
92 |
|
93 |
+
if ( empty( Auxin_Welcome::get_instance()->get_demo_list() ) ) {
|
94 |
+
++$system_notices;
|
95 |
+
}
|
96 |
+
|
97 |
return $system_notices;
|
98 |
|
99 |
}
|
100 |
|
101 |
+
/**
|
102 |
+
* Curl connection to averta server check
|
103 |
+
*/
|
104 |
+
public function check_connecting_to_averta_servers() {
|
105 |
+
$result = array(
|
106 |
+
'label' => __( 'Connecting to averta servers to get demos and templates passed successfully' ),
|
107 |
+
'status' => 'good',
|
108 |
+
'badge' => array(
|
109 |
+
'label' => __( 'Performance' ),
|
110 |
+
'color' => 'blue',
|
111 |
+
),
|
112 |
+
'actions' => '',
|
113 |
+
'test' => 'auxin_check_connecting_to_averta_servers',
|
114 |
+
'description' => __( 'Connecting to averta servers to get demos and templates passed successfully', 'auxin-elements' )
|
115 |
+
);
|
116 |
+
|
117 |
+
if ( empty( Auxin_Welcome::get_instance()->get_demo_list() ) ) {
|
118 |
+
$result['status'] = 'critical';
|
119 |
+
|
120 |
+
$class = 'error';
|
121 |
+
$screen_reader = __( 'Error', 'auxin-elements' );
|
122 |
+
$message = __( 'Your site can communicate securely with Phlox update services. <a href="https://docs.phlox.pro/article/206-error-activating-license" target="_blank">How to fix?</a>
|
123 |
+
', 'auxin-elements' );
|
124 |
+
$message = "<span class='dashicons $class'><span class='screen-reader-text'>$screen_reader</span></span> $message";
|
125 |
+
|
126 |
+
$output = '<ul>';
|
127 |
+
$output .= sprintf(
|
128 |
+
'<li>%s</li>',
|
129 |
+
$message
|
130 |
+
);
|
131 |
+
$output .= '</ul>';
|
132 |
+
$result['description'] = $output;
|
133 |
+
$result['label'] = __( 'Error while trying to connect to averta servers', 'auxin-elements' );
|
134 |
+
|
135 |
+
}
|
136 |
+
return $result;
|
137 |
+
}
|
138 |
+
|
139 |
/**
|
140 |
* Return an instance of this class.
|
141 |
*
|
admin/includes/classes/class-auxin-dashboard-notice.php
DELETED
@@ -1,240 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Auxin admin notices
|
4 |
-
*/
|
5 |
-
class Auxin_Dashboard_Notice {
|
6 |
-
|
7 |
-
/**
|
8 |
-
* Instance of this class.
|
9 |
-
*
|
10 |
-
* @var object
|
11 |
-
*/
|
12 |
-
protected static $instance = null;
|
13 |
-
|
14 |
-
|
15 |
-
/**
|
16 |
-
* The list of notice IDs
|
17 |
-
*
|
18 |
-
* @var object
|
19 |
-
*/
|
20 |
-
private $notice_ids = array();
|
21 |
-
|
22 |
-
/**
|
23 |
-
* Notices
|
24 |
-
*
|
25 |
-
* @var array
|
26 |
-
*/
|
27 |
-
private $notices = array();
|
28 |
-
|
29 |
-
/**
|
30 |
-
* Base API URL
|
31 |
-
*
|
32 |
-
* @var string
|
33 |
-
*/
|
34 |
-
private $base_url = '';
|
35 |
-
|
36 |
-
/**
|
37 |
-
* Prefix
|
38 |
-
*
|
39 |
-
* @var string
|
40 |
-
*/
|
41 |
-
private $prefix = 'auxin-';
|
42 |
-
|
43 |
-
|
44 |
-
function __construct(){
|
45 |
-
|
46 |
-
$this->notice_ids = array(
|
47 |
-
'auxels-notice-info-dashboard'
|
48 |
-
);
|
49 |
-
|
50 |
-
$this->prefix = THEME_ID . '-';
|
51 |
-
|
52 |
-
$this->base_url = 'http://cdn.averta.net/project/phlox/free/info/';
|
53 |
-
}
|
54 |
-
|
55 |
-
// Methods using the plugin API
|
56 |
-
// =========================================================================
|
57 |
-
|
58 |
-
private function get_option( $option_key ){
|
59 |
-
return auxin_get_option( $this->prefix . $option_key );
|
60 |
-
}
|
61 |
-
|
62 |
-
private function update_option( $option_key, $option_value ){
|
63 |
-
return auxin_update_option( $this->prefix . $option_key, $option_value );
|
64 |
-
}
|
65 |
-
|
66 |
-
private function get_transient( $transient ){
|
67 |
-
return auxin_get_transient( $this->prefix . $transient );
|
68 |
-
}
|
69 |
-
|
70 |
-
private function set_transient( $transient, $value, $expiration = 0 ){
|
71 |
-
return auxin_set_transient( $this->prefix . $transient, $value, $expiration );
|
72 |
-
}
|
73 |
-
|
74 |
-
private function delete_transient( $transient ){
|
75 |
-
return auxin_delete_transient( $this->prefix . $transient );
|
76 |
-
}
|
77 |
-
|
78 |
-
private function get_remote_post( $url ){
|
79 |
-
return auxin_remote_post( $url );
|
80 |
-
}
|
81 |
-
|
82 |
-
// =========================================================================
|
83 |
-
|
84 |
-
private function get_notice_info_transient_id( $notice_id ){
|
85 |
-
return 'notice-info-' . esc_attr( $notice_id );
|
86 |
-
}
|
87 |
-
|
88 |
-
private function fetch_notice_info( $notice_id, $force_update = false ){
|
89 |
-
|
90 |
-
if( empty( $notice_id ) ){
|
91 |
-
return false;
|
92 |
-
}
|
93 |
-
|
94 |
-
// defaults
|
95 |
-
$defaults = array(
|
96 |
-
'remote_url' => '', // the remote notice url
|
97 |
-
'beta_url' => '', // beta remote content
|
98 |
-
'revision' => '', // empty means don't display
|
99 |
-
'first_delay' => 0, // in seconds
|
100 |
-
'id' => $notice_id,
|
101 |
-
'enabled' => true,
|
102 |
-
|
103 |
-
'content' => '', // the remote notice content
|
104 |
-
'delay_passed' => false, // the remote notice content
|
105 |
-
'debug' => array()
|
106 |
-
);
|
107 |
-
|
108 |
-
// info transient id
|
109 |
-
$transient_id = $this->get_notice_info_transient_id( $notice_id );
|
110 |
-
|
111 |
-
if( isset( $_GET['msafi'] ) ){
|
112 |
-
$this->delete_transient( $transient_id );
|
113 |
-
}
|
114 |
-
|
115 |
-
if( ! $force_update && false !== ( $result = $this->get_transient( $transient_id ) ) ){
|
116 |
-
// wp_parse_args to prevent the errors while new args implemented in new versions
|
117 |
-
$defaults['debug'][] = '1.1';
|
118 |
-
return wp_parse_args( $result, $defaults );
|
119 |
-
}
|
120 |
-
|
121 |
-
if( false === $info = $this->get_remote_post( $this->base_url . $notice_id . '.json' ) ){
|
122 |
-
$defaults['debug'][] = '1.2';
|
123 |
-
return $defaults;
|
124 |
-
} else {
|
125 |
-
$info = json_decode( $info, true );
|
126 |
-
$info = wp_parse_args( $info, $defaults );
|
127 |
-
$info['debug'][] = '1.3';
|
128 |
-
}
|
129 |
-
|
130 |
-
// get remote content
|
131 |
-
$remote_url = isset( $_GET['msbeta'] ) ? $info["beta_url"] : $info["remote_url"];
|
132 |
-
$info["content"] = $this->fetch_file_content( $remote_url );
|
133 |
-
|
134 |
-
if( empty( $info["revision"] ) ){
|
135 |
-
$info["enabled"] = false;
|
136 |
-
$info['debug'][] = '1.4';
|
137 |
-
|
138 |
-
} elseif( is_numeric( $info['revision'] ) && $info['revision'] != $this->get_option( 'notice-'. $notice_id .'-latest-revision' ) ){
|
139 |
-
$info["enabled"] = true;
|
140 |
-
$info['debug'][] = '1.5';
|
141 |
-
} else {
|
142 |
-
$info["enabled"] = false;
|
143 |
-
$info['debug'][] = '1.55';
|
144 |
-
}
|
145 |
-
|
146 |
-
if( ! $this->get_option( 'notice-installtion-time' ) ){
|
147 |
-
$this->update_option( 'notice-installtion-time', time() );
|
148 |
-
$info['debug'][] = '1.6';
|
149 |
-
}
|
150 |
-
|
151 |
-
$first_delay_diff = ( ( $this->get_option( 'notice-installtion-time' ) + ( (int) $info['first_delay'] ) ) - time() );
|
152 |
-
$info['debug'][] = 'Due - Now: '. ( $first_delay_diff < 0 ? 'Passed ' . abs($first_delay_diff) : ' Remaining ' . abs($first_delay_diff) ) . ' seconds';
|
153 |
-
$info['debug'][] = 'Previous revision: '. $this->get_option( 'notice-'. $notice_id .'-latest-revision' );
|
154 |
-
$info['debug'][] = 'Remote revision: '. $info['revision'];
|
155 |
-
|
156 |
-
// check for initial delay
|
157 |
-
if( $info['first_delay'] ){
|
158 |
-
if( $this->get_option( 'notice-installtion-time' ) + ( (int) $info['first_delay'] ) > time() ){
|
159 |
-
$info['debug'][] = '1.7';
|
160 |
-
$info["delay_passed"] = false;
|
161 |
-
} else {
|
162 |
-
$info["delay_passed"] = true;
|
163 |
-
$info['debug'][] = '1.8';
|
164 |
-
}
|
165 |
-
} else {
|
166 |
-
$info["delay_passed"] = true;
|
167 |
-
}
|
168 |
-
|
169 |
-
$this->set_transient( $transient_id, $info, 6 * HOUR_IN_SECONDS );
|
170 |
-
|
171 |
-
return $info;
|
172 |
-
}
|
173 |
-
|
174 |
-
private function fetch_file_content( $url ){
|
175 |
-
if( false === $result = $this->get_remote_post( $url ) ){
|
176 |
-
return '';
|
177 |
-
}
|
178 |
-
return $result;
|
179 |
-
}
|
180 |
-
|
181 |
-
public function get_content( $notice_id ){
|
182 |
-
$result = $this->fetch_notice_info( $notice_id );
|
183 |
-
|
184 |
-
if( isset( $_GET['msdebug'] ) ){
|
185 |
-
$debug_info = $result;
|
186 |
-
unset( $debug_info['content'] );
|
187 |
-
$debug = axpp( $debug_info, false, true );
|
188 |
-
} else {
|
189 |
-
$debug = '';
|
190 |
-
}
|
191 |
-
|
192 |
-
if( ! empty( $result['content'] ) && $result['enabled'] && $result['delay_passed'] ){
|
193 |
-
return $result['content'] . $debug;
|
194 |
-
}
|
195 |
-
|
196 |
-
return $debug;
|
197 |
-
}
|
198 |
-
|
199 |
-
|
200 |
-
public function get_notice( $notice_id ){
|
201 |
-
if( $content = $this->get_content( $notice_id ) ){
|
202 |
-
return '<div class="aux-welcome-notice-wrapper aux-welcome-banner-wrapper">' . $content . '</div>';
|
203 |
-
}
|
204 |
-
return '';
|
205 |
-
}
|
206 |
-
|
207 |
-
public function disable_notice( $notice_id ){
|
208 |
-
|
209 |
-
if( ! in_array( $notice_id, $this->notice_ids ) ){
|
210 |
-
return false;
|
211 |
-
}
|
212 |
-
|
213 |
-
// info transient id
|
214 |
-
$transient_id = $this->get_notice_info_transient_id( $notice_id );
|
215 |
-
|
216 |
-
if( false !== ( $info = $this->fetch_notice_info( $notice_id ) ) ){
|
217 |
-
$this->update_option( 'notice-'. $notice_id .'-latest-revision', $info['revision'] );
|
218 |
-
$info['enabled'] = false;
|
219 |
-
$this->set_transient( $transient_id, $info, 6 * HOUR_IN_SECONDS );
|
220 |
-
}
|
221 |
-
|
222 |
-
return true;
|
223 |
-
}
|
224 |
-
|
225 |
-
/**
|
226 |
-
* Return an instance of this class.
|
227 |
-
*
|
228 |
-
* @return object A single instance of this class.
|
229 |
-
*/
|
230 |
-
public static function get_instance() {
|
231 |
-
|
232 |
-
// If the single instance hasn't been set, set it now.
|
233 |
-
if ( null == self::$instance ) {
|
234 |
-
self::$instance = new self;
|
235 |
-
}
|
236 |
-
|
237 |
-
return self::$instance;
|
238 |
-
}
|
239 |
-
|
240 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
admin/includes/classes/class-auxin-license-activation.php
CHANGED
@@ -73,6 +73,8 @@ class Auxin_License_Activation {
|
|
73 |
)
|
74 |
);
|
75 |
|
|
|
|
|
76 |
$request = wp_remote_post( $this->api, $args );
|
77 |
|
78 |
if ( is_wp_error( $request ) || wp_remote_retrieve_response_code( $request ) !== 200 ) {
|
73 |
)
|
74 |
);
|
75 |
|
76 |
+
$args = apply_filters( 'auxels_get_license_result_args', $args );
|
77 |
+
|
78 |
$request = wp_remote_post( $this->api, $args );
|
79 |
|
80 |
if ( is_wp_error( $request ) || wp_remote_retrieve_response_code( $request ) !== 200 ) {
|
admin/includes/classes/class-auxin-notices.php
CHANGED
@@ -325,14 +325,15 @@ class Auxin_Notices{
|
|
325 |
* @param boolean $echo
|
326 |
* @return void
|
327 |
*/
|
328 |
-
public function render(){
|
329 |
|
330 |
if( $this->is_dismissible() || $this->is_visible_screen() || $this->is_snoozed() ) {
|
331 |
return;
|
332 |
}
|
333 |
-
|
334 |
echo sprintf(
|
335 |
-
'<div class="
|
|
|
336 |
$this->get_unique_class(),
|
337 |
$this->get_skin(),
|
338 |
$this->get_custom_styles(),
|
@@ -345,4 +346,58 @@ class Auxin_Notices{
|
|
345 |
|
346 |
}
|
347 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
348 |
}
|
325 |
* @param boolean $echo
|
326 |
* @return void
|
327 |
*/
|
328 |
+
public function render( $updated = '' ){
|
329 |
|
330 |
if( $this->is_dismissible() || $this->is_visible_screen() || $this->is_snoozed() ) {
|
331 |
return;
|
332 |
}
|
333 |
+
$updated = empty( $updated ) ? 'updated' : '';
|
334 |
echo sprintf(
|
335 |
+
'<div class="%s auxin-message aux-notice-control aux-notice-wrapper %s %s" %s>%s %s %s <p class="aux-notice-submit submit">%s %s</p></div>',
|
336 |
+
$updated,
|
337 |
$this->get_unique_class(),
|
338 |
$this->get_skin(),
|
339 |
$this->get_custom_styles(),
|
346 |
|
347 |
}
|
348 |
|
349 |
+
public static function get_ads_notices( $api_id = '26', $style = array(), $updated = '' ) {
|
350 |
+
$transient_id = ( $api_id == '3' || $api_id == '4' ) ? 'auxin_dashboard_ads_request' : 'auxin_ads_request';
|
351 |
+
if ( false === $data = get_transient( $transient_id ) ) {
|
352 |
+
$body = auxin_remote_get( 'http://api.averta.net/rest/ara/v1/notifications?notification-space='. $api_id, null);
|
353 |
+
$data = json_decode( $body );
|
354 |
+
set_transient( $transient_id, $data , 12 * HOUR_IN_SECONDS );
|
355 |
+
}
|
356 |
+
|
357 |
+
if ( empty( $data ) ) {
|
358 |
+
return false;
|
359 |
+
}
|
360 |
+
|
361 |
+
$ads_list = [];
|
362 |
+
|
363 |
+
foreach( $data as $ads_data ) {
|
364 |
+
$args = [
|
365 |
+
'id' => 'auxin_ads_' . $ads_data->id,
|
366 |
+
'title' => $ads_data->title->rendered,
|
367 |
+
'desc' => $ads_data->message,
|
368 |
+
'skin' => 'ads',
|
369 |
+
'has_close' => false,
|
370 |
+
'wrapper_extra_styles' => [
|
371 |
+
'background-color' => $ads_data->{'background-color'},
|
372 |
+
'background-image' => 'url(' . $ads_data->{'background-image'} . ')',
|
373 |
+
'color' => $ads_data->color,
|
374 |
+
'custom' => $ads_data->boxStyles
|
375 |
+
],
|
376 |
+
'buttons' => [
|
377 |
+
[
|
378 |
+
'label' => $ads_data->button->label,
|
379 |
+
'target' => '_blank',
|
380 |
+
'link' => $ads_data->button->url,
|
381 |
+
'custom_styles' => $ads_data->button->style
|
382 |
+
],
|
383 |
+
[
|
384 |
+
'label' => __('Dismiss', 'auxin-elements'),
|
385 |
+
'type' => 'skip',
|
386 |
+
'expiration' => HOUR_IN_SECONDS * 2
|
387 |
+
]
|
388 |
+
],
|
389 |
+
];
|
390 |
+
if ( ! empty( $style ) ) {
|
391 |
+
foreach( $style as $prop => $value ) {
|
392 |
+
$args['wrapper_extra_styles'][ $prop ] = $value;
|
393 |
+
}
|
394 |
+
}
|
395 |
+
$ads_list['auxin_dashboard_ads_' . $ads_data->id] = new self( $args );
|
396 |
+
}
|
397 |
+
foreach ( $ads_list as $ads ) {
|
398 |
+
if( $ads instanceof self ){
|
399 |
+
$ads->render( $updated );
|
400 |
+
}
|
401 |
+
}
|
402 |
+
}
|
403 |
}
|
admin/includes/compatibility/smush/smush.php
ADDED
@@ -0,0 +1,15 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Enqueue smush lazy load script in header
|
5 |
+
*/
|
6 |
+
function auxin_enqueue_smush_lazy_load_in_header() {
|
7 |
+
if ( defined( 'WP_SMUSH_PREFIX' ) && empty( get_option( WP_SMUSH_PREFIX . 'lazy_load', '' ) ) ) {
|
8 |
+
$default_lazy_load_config = maybe_unserialize( 'a:8:{s:6:"format";a:5:{s:4:"jpeg";b:1;s:3:"png";b:1;s:3:"gif";b:1;s:3:"svg";b:1;s:6:"iframe";b:1;}s:6:"output";a:4:{s:7:"content";b:1;s:7:"widgets";b:1;s:10:"thumbnails";b:1;s:9:"gravatars";b:1;}s:9:"animation";a:4:{s:8:"selected";s:6:"fadein";s:6:"fadein";a:2:{s:8:"duration";i:400;s:5:"delay";i:0;}s:7:"spinner";a:2:{s:8:"selected";i:1;s:6:"custom";a:0:{}}s:11:"placeholder";a:3:{s:8:"selected";i:1;s:6:"custom";a:0:{}s:5:"color";s:7:"#F3F3F3";}}s:7:"include";a:7:{s:9:"frontpage";b:1;s:4:"home";b:1;s:4:"page";b:1;s:6:"single";b:1;s:7:"archive";b:1;s:8:"category";b:1;s:3:"tag";b:1;}s:13:"exclude-pages";a:0:{}s:15:"exclude-classes";a:0:{}s:6:"footer";b:0;s:6:"native";b:0;}' );
|
9 |
+
update_option( WP_SMUSH_PREFIX . 'lazy_load', $default_lazy_load_config );
|
10 |
+
update_option( 'skip-smush-setup', true );
|
11 |
+
}
|
12 |
+
}
|
13 |
+
add_action( 'admin_init', 'auxin_enqueue_smush_lazy_load_in_header' );
|
14 |
+
|
15 |
+
?>
|
admin/includes/compatibility/yoast-seo/yoast-seo.php
ADDED
@@ -0,0 +1,13 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Hide yoast seo admin notice
|
5 |
+
*/
|
6 |
+
function auxin_hide_yoast_seo_admin_notice() {
|
7 |
+
if ( class_exists( 'WPSEO_Options' ) ) {
|
8 |
+
WPSEO_Options::set( 'ignore_indexation_warning', true );
|
9 |
+
}
|
10 |
+
}
|
11 |
+
add_action( 'admin_init', 'auxin_hide_yoast_seo_admin_notice' );
|
12 |
+
|
13 |
+
?>
|
admin/includes/index.php
CHANGED
@@ -12,6 +12,8 @@ include_once( 'compatibility/uvca/uvca.php' );
|
|
12 |
include_once( 'compatibility/sliders/rev.php' );
|
13 |
include_once( 'compatibility/sliders/layerslider.php' );
|
14 |
include_once( 'compatibility/element-pack/element-pack.php' );
|
|
|
|
|
15 |
|
16 |
|
17 |
if ( function_exists('icl_object_id') ) {
|
12 |
include_once( 'compatibility/sliders/rev.php' );
|
13 |
include_once( 'compatibility/sliders/layerslider.php' );
|
14 |
include_once( 'compatibility/element-pack/element-pack.php' );
|
15 |
+
include_once( 'compatibility/yoast-seo/yoast-seo.php' );
|
16 |
+
include_once( 'compatibility/smush/smush.php' );
|
17 |
|
18 |
|
19 |
if ( function_exists('icl_object_id') ) {
|
auxin-elements.php
CHANGED
@@ -12,14 +12,14 @@
|
|
12 |
* Plugin Name: Phlox Core Elements
|
13 |
* Plugin URI: https://wordpress.org/plugins/auxin-elements/
|
14 |
* Description: Exclusive and comprehensive plugin that extends the functionality of Phlox theme by adding new Elements, widgets and options.
|
15 |
-
* Version: 2.
|
16 |
* Author: averta
|
17 |
* Author URI: http://averta.net
|
18 |
* Text Domain: auxin-elements
|
19 |
* License: GPL2
|
20 |
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
21 |
* Domain Path: /languages
|
22 |
-
* Tested up to: 5.4.
|
23 |
*/
|
24 |
|
25 |
// If this file is called directly, abort.
|
12 |
* Plugin Name: Phlox Core Elements
|
13 |
* Plugin URI: https://wordpress.org/plugins/auxin-elements/
|
14 |
* Description: Exclusive and comprehensive plugin that extends the functionality of Phlox theme by adding new Elements, widgets and options.
|
15 |
+
* Version: 2.6.0
|
16 |
* Author: averta
|
17 |
* Author URI: http://averta.net
|
18 |
* Text Domain: auxin-elements
|
19 |
* License: GPL2
|
20 |
* License URI: https://www.gnu.org/licenses/gpl-2.0.html
|
21 |
* Domain Path: /languages
|
22 |
+
* Tested up to: 5.4.2
|
23 |
*/
|
24 |
|
25 |
// If this file is called directly, abort.
|
includes/classes/class-auxin-demo-importer.php
CHANGED
@@ -22,6 +22,17 @@ class Auxin_Demo_Importer {
|
|
22 |
*/
|
23 |
protected static $instance = null;
|
24 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
25 |
/**
|
26 |
* Return an instance of this class.
|
27 |
*
|
@@ -304,6 +315,9 @@ class Auxin_Demo_Importer {
|
|
304 |
|
305 |
auxin_delete_transient( 'aux-old-products-id-transformation' );
|
306 |
$this->update_imported_ids();
|
|
|
|
|
|
|
307 |
wp_send_json_success( array( 'step' => 'content', 'message' => __( 'Importing Options', 'auxin-elements' ), 'next' => 'auxin_options' ) );
|
308 |
|
309 |
case 'auxin_options':
|
@@ -479,6 +493,10 @@ class Auxin_Demo_Importer {
|
|
479 |
// This line is for changing the old attachment ID with new one.
|
480 |
$theme_mods_value = $this->get_attachment_id( 'auxin_import_id', $theme_mods_value );
|
481 |
}
|
|
|
|
|
|
|
|
|
482 |
// Update theme mods
|
483 |
set_theme_mod( $theme_mods_key , maybe_unserialize( $theme_mods_value ) );
|
484 |
}
|
@@ -834,10 +852,11 @@ class Auxin_Demo_Importer {
|
|
834 |
if ( $post['post_type'] == 'product' || $post['post_type'] == 'product_variation' ) {
|
835 |
if ( strpos( $tax, 'pa_' ) == '0' && class_exists( 'WooCommerce' ) ) {
|
836 |
$tax_name = str_replace('pa_','',$tax);
|
|
|
837 |
$data = array(
|
838 |
'name' => $tax_name,
|
839 |
'slug' => $tax_name,
|
840 |
-
'type' =>
|
841 |
'orderby' => 'menu_order',
|
842 |
'has_archive' => 0, // Enable archives ==> true (or 1)
|
843 |
);
|
@@ -856,7 +875,9 @@ class Auxin_Demo_Importer {
|
|
856 |
$add_these_terms = array();
|
857 |
|
858 |
foreach ($term as $key => $value) {
|
859 |
-
|
|
|
|
|
860 |
$key = is_numeric( $key ) ? (string) $key : $key;
|
861 |
$term_obj = term_exists( $key, $tax );
|
862 |
|
@@ -1010,7 +1031,8 @@ class Auxin_Demo_Importer {
|
|
1010 |
'post_type' => array(
|
1011 |
'post',
|
1012 |
'page',
|
1013 |
-
'portfolio'
|
|
|
1014 |
),
|
1015 |
'posts_per_page' => -1
|
1016 |
);
|
@@ -1066,6 +1088,38 @@ class Auxin_Demo_Importer {
|
|
1066 |
}
|
1067 |
}
|
1068 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1069 |
update_post_meta( get_the_ID(), '_elementor_data', wp_slash( $elementor_data ) );
|
1070 |
|
1071 |
$page_header_use_legacy = get_post_meta( get_the_ID(), 'page_header_use_legacy', true );
|
@@ -1086,6 +1140,20 @@ class Auxin_Demo_Importer {
|
|
1086 |
wp_reset_postdata();
|
1087 |
}
|
1088 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1089 |
public function prepare_download( array $args ) {
|
1090 |
|
1091 |
$tmpname = $responses = $requests = array();
|
22 |
*/
|
23 |
protected static $instance = null;
|
24 |
|
25 |
+
/**
|
26 |
+
* Skip these options during demo import process
|
27 |
+
*/
|
28 |
+
public $skip_options = [
|
29 |
+
'initial_date_free',
|
30 |
+
'initial_version_free',
|
31 |
+
'initial_date_pro',
|
32 |
+
'initial_version_pro',
|
33 |
+
'client_key'
|
34 |
+
];
|
35 |
+
|
36 |
/**
|
37 |
* Return an instance of this class.
|
38 |
*
|
315 |
|
316 |
auxin_delete_transient( 'aux-old-products-id-transformation' );
|
317 |
$this->update_imported_ids();
|
318 |
+
if ( ! empty( $data['terms-meta'] ) ) {
|
319 |
+
$this->add_demo_terms_meta( $data['terms-meta'] );
|
320 |
+
}
|
321 |
wp_send_json_success( array( 'step' => 'content', 'message' => __( 'Importing Options', 'auxin-elements' ), 'next' => 'auxin_options' ) );
|
322 |
|
323 |
case 'auxin_options':
|
493 |
// This line is for changing the old attachment ID with new one.
|
494 |
$theme_mods_value = $this->get_attachment_id( 'auxin_import_id', $theme_mods_value );
|
495 |
}
|
496 |
+
|
497 |
+
if ( in_array( $theme_mods_key, $this->skip_options ) ) {
|
498 |
+
continue;
|
499 |
+
}
|
500 |
// Update theme mods
|
501 |
set_theme_mod( $theme_mods_key , maybe_unserialize( $theme_mods_value ) );
|
502 |
}
|
852 |
if ( $post['post_type'] == 'product' || $post['post_type'] == 'product_variation' ) {
|
853 |
if ( strpos( $tax, 'pa_' ) == '0' && class_exists( 'WooCommerce' ) ) {
|
854 |
$tax_name = str_replace('pa_','',$tax);
|
855 |
+
$type = ! empty( $term['pa_attribute_type'] ) ? $term['pa_attribute_type'] : 'select';
|
856 |
$data = array(
|
857 |
'name' => $tax_name,
|
858 |
'slug' => $tax_name,
|
859 |
+
'type' => $type,
|
860 |
'orderby' => 'menu_order',
|
861 |
'has_archive' => 0, // Enable archives ==> true (or 1)
|
862 |
);
|
875 |
$add_these_terms = array();
|
876 |
|
877 |
foreach ($term as $key => $value) {
|
878 |
+
if ( $key == 'pa_attribute_type' ) {
|
879 |
+
continue;
|
880 |
+
}
|
881 |
$key = is_numeric( $key ) ? (string) $key : $key;
|
882 |
$term_obj = term_exists( $key, $tax );
|
883 |
|
1031 |
'post_type' => array(
|
1032 |
'post',
|
1033 |
'page',
|
1034 |
+
'portfolio',
|
1035 |
+
'product'
|
1036 |
),
|
1037 |
'posts_per_page' => -1
|
1038 |
);
|
1088 |
}
|
1089 |
}
|
1090 |
|
1091 |
+
// Change products's id in flexible recent posts element
|
1092 |
+
preg_match_all( '/only_products__in":"[\d,]*/', $elementor_data, $product_id_strings, PREG_SET_ORDER );
|
1093 |
+
if ( ! empty( $product_id_strings ) ) {
|
1094 |
+
foreach ( $product_id_strings as $key => $product_id_string ) {
|
1095 |
+
$old_ids = str_replace( 'only_products__in":"', '', $product_id_string[0] );
|
1096 |
+
$old_ids = explode( ',', $old_ids );
|
1097 |
+
$new_id = [];
|
1098 |
+
foreach( $old_ids as $key => $id ) {
|
1099 |
+
$new_id[] = auxin_get_transient( "aux-elementor-library-{$id}-changs-to" );
|
1100 |
+
}
|
1101 |
+
$new_id = implode(',', $new_id );
|
1102 |
+
$new_product_id_string = 'only_products__in":"' . $new_id . '"';
|
1103 |
+
$elementor_data = str_replace( $product_id_string[0].'"', $new_product_id_string, $elementor_data );
|
1104 |
+
}
|
1105 |
+
}
|
1106 |
+
|
1107 |
+
// Change posts's id in flexible recent posts element
|
1108 |
+
preg_match_all( '/only_posts__in":"[\d,]*/', $elementor_data, $post_id_strings, PREG_SET_ORDER );
|
1109 |
+
if ( ! empty( $post_id_strings ) ) {
|
1110 |
+
foreach ( $post_id_strings as $key => $post_id_string ) {
|
1111 |
+
$old_ids = str_replace( 'only_posts__in":"', '', $post_id_string[0] );
|
1112 |
+
$old_ids = explode( ',', $old_ids );
|
1113 |
+
$new_id = [];
|
1114 |
+
foreach( $old_ids as $key => $id ) {
|
1115 |
+
$new_id[] = auxin_get_transient( "aux-elementor-library-{$id}-changs-to" );
|
1116 |
+
}
|
1117 |
+
$new_id = implode(',', $new_id );
|
1118 |
+
$new_post_id_string = 'only_posts__in":"' . $new_id . '"';
|
1119 |
+
$elementor_data = str_replace( $post_id_string[0].'"', $new_post_id_string, $elementor_data );
|
1120 |
+
}
|
1121 |
+
}
|
1122 |
+
|
1123 |
update_post_meta( get_the_ID(), '_elementor_data', wp_slash( $elementor_data ) );
|
1124 |
|
1125 |
$page_header_use_legacy = get_post_meta( get_the_ID(), 'page_header_use_legacy', true );
|
1140 |
wp_reset_postdata();
|
1141 |
}
|
1142 |
|
1143 |
+
/**
|
1144 |
+
* Add Terms Meta Fields
|
1145 |
+
*/
|
1146 |
+
public function add_demo_terms_meta( $terms_meta ) {
|
1147 |
+
foreach( $terms_meta as $meta_id => $term_options ) {
|
1148 |
+
$term_id = auxin_get_transient( 'auxin_category_new_id_of' . (int) $term_options['term_id'] );
|
1149 |
+
if ( empty( $term_id ) ) {
|
1150 |
+
continue;
|
1151 |
+
}
|
1152 |
+
$term_options['meta_value'] = ( $term_options['meta_key'] == 'image' && is_numeric( $term_options['meta_value'] ) ) ? $this->get_attachment_id( 'auxin_import_id', $term_options['meta_value'] ) : $term_options['meta_value'];
|
1153 |
+
add_term_meta( $term_id, $term_options['meta_key'], $term_options['meta_value'] );
|
1154 |
+
}
|
1155 |
+
}
|
1156 |
+
|
1157 |
public function prepare_download( array $args ) {
|
1158 |
|
1159 |
$tmpname = $responses = $requests = array();
|
includes/classes/class-auxin-welcome-sections.php
CHANGED
@@ -42,9 +42,9 @@ class Auxin_Welcome_Sections {
|
|
42 |
add_filter( 'auxin_admin_welcome_sections', array( $this, 'add_section_status' ), 110 );
|
43 |
add_filter( 'auxin_admin_welcome_sections', array( $this, 'add_section_updates' ), 120 );
|
44 |
|
|
|
45 |
if( ! defined('THEME_PRO') || ! THEME_PRO ) {
|
46 |
add_filter( 'auxin_admin_welcome_sections', array( $this, 'add_section_go_pro' ), 120 );
|
47 |
-
add_action( 'auxin_admin_before_welcome_section_content', array( $this, 'maybe_add_dashboard_notice') );
|
48 |
}
|
49 |
|
50 |
add_action( 'auxin_admin_after_welcome_section_content' , array( $this, 'append_changelog') );
|
@@ -115,7 +115,9 @@ class Auxin_Welcome_Sections {
|
|
115 |
* @param array $sections
|
116 |
*/
|
117 |
public function maybe_add_dashboard_notice( $sections ){
|
118 |
-
|
|
|
|
|
119 |
}
|
120 |
|
121 |
/**
|
42 |
add_filter( 'auxin_admin_welcome_sections', array( $this, 'add_section_status' ), 110 );
|
43 |
add_filter( 'auxin_admin_welcome_sections', array( $this, 'add_section_updates' ), 120 );
|
44 |
|
45 |
+
add_action( 'auxin_admin_before_welcome_section_content', array( $this, 'maybe_add_dashboard_notice') );
|
46 |
if( ! defined('THEME_PRO') || ! THEME_PRO ) {
|
47 |
add_filter( 'auxin_admin_welcome_sections', array( $this, 'add_section_go_pro' ), 120 );
|
|
|
48 |
}
|
49 |
|
50 |
add_action( 'auxin_admin_after_welcome_section_content' , array( $this, 'append_changelog') );
|
115 |
* @param array $sections
|
116 |
*/
|
117 |
public function maybe_add_dashboard_notice( $sections ){
|
118 |
+
$api_id = ( defined('THEME_PRO' ) && THEME_PRO ) ? '3' : '4';
|
119 |
+
$style = array( 'display' => 'block !important' );
|
120 |
+
Auxin_Notices::get_ads_notices( $api_id, $style, 'no-updated' );
|
121 |
}
|
122 |
|
123 |
/**
|
includes/classes/class-auxin-welcome.php
CHANGED
@@ -124,8 +124,6 @@ class Auxin_Welcome extends Auxin_Welcome_Base {
|
|
124 |
add_action( 'wp_ajax_aux_ajax_lightbox' , array( $this, 'ajax_lightbox') );
|
125 |
add_action( 'wp_ajax_aux_step_manager' , array( $this, 'step_manager' ) );
|
126 |
|
127 |
-
add_action( 'wp_ajax_aux_welcome_dismiss_notice' , array( $this, 'dimiss_dashboard_notice' ) );
|
128 |
-
|
129 |
if( isset( $_POST['action'] ) && $_POST['action'] === "aux_setup_plugins" && wp_doing_ajax() ) {
|
130 |
add_filter( 'wp_redirect', '__return_false', 999 );
|
131 |
}
|
@@ -271,30 +269,6 @@ class Auxin_Welcome extends Auxin_Welcome_Base {
|
|
271 |
unset( $submenu[ $this->page_slug ]['1'] );
|
272 |
}
|
273 |
|
274 |
-
/**
|
275 |
-
* Dimiss and close dashboard notice
|
276 |
-
*
|
277 |
-
* @return void
|
278 |
-
*/
|
279 |
-
public function dimiss_dashboard_notice(){
|
280 |
-
// verify nonce
|
281 |
-
if ( ! isset( $_POST['auxnonce'] ) || ! wp_verify_nonce( $_POST['auxnonce'], "aux_setup_nonce") ) {
|
282 |
-
wp_send_json_error( array( 'message' => __( 'Authorization failed! Notice cannot be closed.', 'auxin-elements' ) ) );
|
283 |
-
}
|
284 |
-
|
285 |
-
$notice_id = ! empty( $_POST['_id'] ) ? $_POST['_id'] : '';
|
286 |
-
|
287 |
-
if ( empty( $notice_id ) ) {
|
288 |
-
wp_send_json_error( array( 'message' => __( 'Notice cannot be closed. Notice ID is required ..', 'auxin-elements' ) ) );
|
289 |
-
}
|
290 |
-
|
291 |
-
if( Auxin_Dashboard_Notice::get_instance()->disable_notice( $notice_id ) ){
|
292 |
-
wp_send_json_success( array( 'message' => __( 'Successfully dismissed ..', 'auxin-elements' ) ) );
|
293 |
-
}
|
294 |
-
|
295 |
-
wp_send_json_error( array( 'message' => __( 'Notice cannot be closed. Invalid notice ID is required.', 'auxin-elements' ) ) );
|
296 |
-
}
|
297 |
-
|
298 |
/*-----------------------------------------------------------------------------------*/
|
299 |
/* Start Setup Wizard
|
300 |
/*-----------------------------------------------------------------------------------*/
|
124 |
add_action( 'wp_ajax_aux_ajax_lightbox' , array( $this, 'ajax_lightbox') );
|
125 |
add_action( 'wp_ajax_aux_step_manager' , array( $this, 'step_manager' ) );
|
126 |
|
|
|
|
|
127 |
if( isset( $_POST['action'] ) && $_POST['action'] === "aux_setup_plugins" && wp_doing_ajax() ) {
|
128 |
add_filter( 'wp_redirect', '__return_false', 999 );
|
129 |
}
|
269 |
unset( $submenu[ $this->page_slug ]['1'] );
|
270 |
}
|
271 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
272 |
/*-----------------------------------------------------------------------------------*/
|
273 |
/* Start Setup Wizard
|
274 |
/*-----------------------------------------------------------------------------------*/
|
includes/classes/class-auxin-widget.php
CHANGED
@@ -470,7 +470,9 @@ class Auxin_Widget extends WP_Widget {
|
|
470 |
*/
|
471 |
public function print_dependencies(){
|
472 |
// echo js dependencies
|
473 |
-
printf( '<script>
|
|
|
|
|
474 |
auxin.elements.%3$s.dependencies = %2$s;
|
475 |
auxin.elements.%3$s.baseid = "%1$s";</script>',
|
476 |
$this->widget_info['base_ID'],
|
470 |
*/
|
471 |
public function print_dependencies(){
|
472 |
// echo js dependencies
|
473 |
+
printf( '<script>
|
474 |
+
function auxinCreateNamespace(n){for(var e=n.split("."),a=window,i="",r=e.length,t=0;r>t;t++)"window"!=e[t]&&(i=e[t],a[i]=a[i]||{},a=a[i]);return a;}
|
475 |
+
auxinCreateNamespace("auxin.elements.%3$s");
|
476 |
auxin.elements.%3$s.dependencies = %2$s;
|
477 |
auxin.elements.%3$s.baseid = "%1$s";</script>',
|
478 |
$this->widget_info['base_ID'],
|
includes/define.php
CHANGED
@@ -12,7 +12,7 @@ if( ! defined( 'THEME_NAME' ) ){
|
|
12 |
}
|
13 |
|
14 |
|
15 |
-
define( 'AUXELS_VERSION' , '2.
|
16 |
|
17 |
define( 'AUXELS_SLUG' , 'auxin-elements' );
|
18 |
|
12 |
}
|
13 |
|
14 |
|
15 |
+
define( 'AUXELS_VERSION' , '2.6.0' );
|
16 |
|
17 |
define( 'AUXELS_SLUG' , 'auxin-elements' );
|
18 |
|
includes/elementor/class-auxin-elementor-core-elements.php
CHANGED
@@ -612,16 +612,6 @@ final class Elements {
|
|
612 |
wp_enqueue_style( 'auxin-elementor-widgets' , AUXELS_ADMIN_URL . '/assets/css/elementor-widgets.css' );
|
613 |
wp_enqueue_style( 'wp-mediaelement' );
|
614 |
|
615 |
-
// Enqueue header template styles in header
|
616 |
-
if( $header_template_style = auxin_get_option( 'site_elementor_header_template' ) ){
|
617 |
-
$css_file = new \Elementor\Core\Files\CSS\Post( $header_template_style );
|
618 |
-
$css_file->enqueue();
|
619 |
-
}
|
620 |
-
|
621 |
-
if( $footer_template_style = auxin_get_option( 'site_elementor_footer_template' ) ){
|
622 |
-
$css_file = new \Elementor\Core\Files\CSS\Post( $footer_template_style );
|
623 |
-
$css_file->enqueue();
|
624 |
-
}
|
625 |
}
|
626 |
|
627 |
/**
|
@@ -754,7 +744,7 @@ final class Elements {
|
|
754 |
}
|
755 |
|
756 |
$tabs['auxicon'] = [
|
757 |
-
'name' => '
|
758 |
'label' => __( 'Phlox Icons - Set 1', 'auxin-elements' ),
|
759 |
'url' => THEME_URL . 'css/auxin-icon.css',
|
760 |
'enqueue' => [ THEME_URL . 'css/auxin-icon.css' ],
|
@@ -773,7 +763,7 @@ final class Elements {
|
|
773 |
}
|
774 |
|
775 |
$tabs['auxicon2'] = [
|
776 |
-
'name' => '
|
777 |
'label' => __( 'Phlox Icons - Set 2', 'auxin-elements' ),
|
778 |
'url' => THEME_URL . 'css/auxin-icon.css',
|
779 |
'enqueue' => [ THEME_URL . 'css/auxin-icon.css' ],
|
612 |
wp_enqueue_style( 'auxin-elementor-widgets' , AUXELS_ADMIN_URL . '/assets/css/elementor-widgets.css' );
|
613 |
wp_enqueue_style( 'wp-mediaelement' );
|
614 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
615 |
}
|
616 |
|
617 |
/**
|
744 |
}
|
745 |
|
746 |
$tabs['auxicon'] = [
|
747 |
+
'name' => 'auxin-front-icon',
|
748 |
'label' => __( 'Phlox Icons - Set 1', 'auxin-elements' ),
|
749 |
'url' => THEME_URL . 'css/auxin-icon.css',
|
750 |
'enqueue' => [ THEME_URL . 'css/auxin-icon.css' ],
|
763 |
}
|
764 |
|
765 |
$tabs['auxicon2'] = [
|
766 |
+
'name' => 'auxin-front-icon2',
|
767 |
'label' => __( 'Phlox Icons - Set 2', 'auxin-elements' ),
|
768 |
'url' => THEME_URL . 'css/auxin-icon.css',
|
769 |
'enqueue' => [ THEME_URL . 'css/auxin-icon.css' ],
|
includes/elementor/modules/dynamic-tags/pages-url.php
ADDED
@@ -0,0 +1,82 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace Auxin\Plugin\CoreElements\Elementor\Modules\DynamicTags;
|
3 |
+
|
4 |
+
use Elementor\Controls_Manager;
|
5 |
+
use Elementor\Core\DynamicTags\Tag;
|
6 |
+
use Elementor\Modules\DynamicTags\Module as TagsModule;
|
7 |
+
|
8 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
+
exit; // Exit if accessed directly
|
10 |
+
}
|
11 |
+
|
12 |
+
class Auxin_Pages_Url extends Tag {
|
13 |
+
|
14 |
+
public function get_name() {
|
15 |
+
return 'aux-pages-url';
|
16 |
+
}
|
17 |
+
|
18 |
+
public function get_title() {
|
19 |
+
return __( 'Pages URL', 'auxin-elements' );
|
20 |
+
}
|
21 |
+
|
22 |
+
public function get_group() {
|
23 |
+
return 'URL';
|
24 |
+
}
|
25 |
+
|
26 |
+
public function get_categories() {
|
27 |
+
return [
|
28 |
+
TagsModule::URL_CATEGORY
|
29 |
+
];
|
30 |
+
}
|
31 |
+
|
32 |
+
public function get_pages_list() {
|
33 |
+
|
34 |
+
$items = [
|
35 |
+
'' => __( 'Select...', 'auxin-elements' ),
|
36 |
+
];
|
37 |
+
$pages = get_posts( array(
|
38 |
+
'post_type' => 'page',
|
39 |
+
'numberposts' => -1
|
40 |
+
) );
|
41 |
+
$home_id = get_option( 'page_on_front' );
|
42 |
+
foreach ( $pages as $page ) {
|
43 |
+
$page->post_title = $home_id == $page->ID ? __( 'Home Page', 'auxin-elements' ) : $page->post_title;
|
44 |
+
$items[ $page->ID ] = $page->post_title;
|
45 |
+
}
|
46 |
+
|
47 |
+
return $items;
|
48 |
+
}
|
49 |
+
|
50 |
+
public function is_settings_required() {
|
51 |
+
return true;
|
52 |
+
}
|
53 |
+
|
54 |
+
protected function _register_controls() {
|
55 |
+
$this->add_control(
|
56 |
+
'key',
|
57 |
+
[
|
58 |
+
'label' => __( 'Pages URL', 'auxin-elements' ),
|
59 |
+
'type' => Controls_Manager::SELECT,
|
60 |
+
'options' => $this->get_pages_list(),
|
61 |
+
'default' => ''
|
62 |
+
]
|
63 |
+
);
|
64 |
+
}
|
65 |
+
|
66 |
+
protected function get_page_url() {
|
67 |
+
if( $key = $this->get_settings( 'key' ) ){
|
68 |
+
return get_permalink( $key );
|
69 |
+
}
|
70 |
+
|
71 |
+
return '';
|
72 |
+
}
|
73 |
+
|
74 |
+
public function get_value( array $options = [] ) {
|
75 |
+
return $this->get_page_url();
|
76 |
+
}
|
77 |
+
|
78 |
+
public function render() {
|
79 |
+
echo $this->get_page_url();
|
80 |
+
}
|
81 |
+
|
82 |
+
}
|
includes/elementor/modules/dynamic-tags/taxonomies-url.php
ADDED
@@ -0,0 +1,81 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
namespace Auxin\Plugin\CoreElements\Elementor\Modules\DynamicTags;
|
3 |
+
|
4 |
+
use Elementor\Controls_Manager;
|
5 |
+
use Elementor\Core\DynamicTags\Tag;
|
6 |
+
use Elementor\Modules\DynamicTags\Module as TagsModule;
|
7 |
+
|
8 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
9 |
+
exit; // Exit if accessed directly
|
10 |
+
}
|
11 |
+
|
12 |
+
class Auxin_Taxonomies_Url extends Tag {
|
13 |
+
|
14 |
+
public function get_name() {
|
15 |
+
return 'aux-tax-url';
|
16 |
+
}
|
17 |
+
|
18 |
+
public function get_title() {
|
19 |
+
return __( 'Taxonomies URL', 'auxin-elements' );
|
20 |
+
}
|
21 |
+
|
22 |
+
public function get_group() {
|
23 |
+
return 'URL';
|
24 |
+
}
|
25 |
+
|
26 |
+
public function get_categories() {
|
27 |
+
return [
|
28 |
+
TagsModule::URL_CATEGORY
|
29 |
+
];
|
30 |
+
}
|
31 |
+
|
32 |
+
public function get_categories_list() {
|
33 |
+
|
34 |
+
$items = [
|
35 |
+
'' => __( 'Select...', 'auxin-elements' ),
|
36 |
+
];
|
37 |
+
|
38 |
+
$categories = auxin_general_post_types_category_slug();
|
39 |
+
foreach( $categories as $category_slug => $post_type_name ) {
|
40 |
+
$terms = get_categories( array( 'taxonomy' => $category_slug ) );
|
41 |
+
foreach ( $terms as $term ) {
|
42 |
+
$items[ $term->term_id ] = $post_type_name . ' - ' . $term->name;
|
43 |
+
}
|
44 |
+
}
|
45 |
+
|
46 |
+
return $items;
|
47 |
+
}
|
48 |
+
|
49 |
+
public function is_settings_required() {
|
50 |
+
return true;
|
51 |
+
}
|
52 |
+
|
53 |
+
protected function _register_controls() {
|
54 |
+
$this->add_control(
|
55 |
+
'key',
|
56 |
+
[
|
57 |
+
'label' => __( 'Categories URL', 'auxin-elements' ),
|
58 |
+
'type' => Controls_Manager::SELECT,
|
59 |
+
'options' => $this->get_categories_list(),
|
60 |
+
'default' => ''
|
61 |
+
]
|
62 |
+
);
|
63 |
+
}
|
64 |
+
|
65 |
+
protected function get_category_url() {
|
66 |
+
if( $key = $this->get_settings( 'key' ) ){
|
67 |
+
return get_category_link( $key );
|
68 |
+
}
|
69 |
+
|
70 |
+
return '';
|
71 |
+
}
|
72 |
+
|
73 |
+
public function get_value( array $options = [] ) {
|
74 |
+
return $this->get_category_url();
|
75 |
+
}
|
76 |
+
|
77 |
+
public function render() {
|
78 |
+
echo $this->get_category_url();
|
79 |
+
}
|
80 |
+
|
81 |
+
}
|
includes/elementor/modules/templates-types-manager.php
CHANGED
@@ -133,6 +133,18 @@ class Templates_Types_Manager {
|
|
133 |
'group' => 'colors',
|
134 |
'title' => 'Colors',
|
135 |
),
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
136 |
// 'aux-post-date' => array(
|
137 |
// 'file' => AUXELS_INC_DIR . '/elementor/modules/dynamic-tags/post-date.php',
|
138 |
// 'class' => 'DynamicTags\Post_Date',
|
133 |
'group' => 'colors',
|
134 |
'title' => 'Colors',
|
135 |
),
|
136 |
+
'aux-pages-url' => array(
|
137 |
+
'file' => AUXELS_INC_DIR . '/elementor/modules/dynamic-tags/pages-url.php',
|
138 |
+
'class' => 'DynamicTags\Auxin_Pages_Url',
|
139 |
+
'group' => 'URL',
|
140 |
+
'title' => 'URL',
|
141 |
+
),
|
142 |
+
'aux-cats-url' => array(
|
143 |
+
'file' => AUXELS_INC_DIR . '/elementor/modules/dynamic-tags/taxonomies-url.php',
|
144 |
+
'class' => 'DynamicTags\Auxin_Taxonomies_Url',
|
145 |
+
'group' => 'URL',
|
146 |
+
'title' => 'URL',
|
147 |
+
),
|
148 |
// 'aux-post-date' => array(
|
149 |
// 'file' => AUXELS_INC_DIR . '/elementor/modules/dynamic-tags/post-date.php',
|
150 |
// 'class' => 'DynamicTags\Post_Date',
|
includes/elementor/widgets/modern-button.php
CHANGED
@@ -105,37 +105,75 @@ class ModernButton extends Widget_Base {
|
|
105 |
$this->add_control(
|
106 |
'label',
|
107 |
[
|
108 |
-
'label' => __('
|
109 |
'type' => Controls_Manager::TEXT,
|
110 |
-
'default' => __('Click Here','auxin-elements' )
|
111 |
]
|
112 |
);
|
113 |
|
114 |
$this->add_control(
|
115 |
-
'
|
116 |
[
|
117 |
-
'label'
|
118 |
-
'type'
|
119 |
-
'
|
120 |
-
'show_external' => true,
|
121 |
-
'dynamic' => [
|
122 |
-
'active' => true
|
123 |
-
]
|
124 |
]
|
125 |
);
|
126 |
|
127 |
$this->add_control(
|
128 |
-
'
|
129 |
-
|
130 |
-
'label' => __('
|
131 |
-
'type' => Controls_Manager::
|
132 |
-
'
|
133 |
-
|
134 |
-
'return_value' => 'yes',
|
135 |
-
'default' => ''
|
136 |
-
)
|
137 |
);
|
138 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
139 |
$this->add_responsive_control(
|
140 |
'btn_align',
|
141 |
[
|
@@ -164,14 +202,30 @@ class ModernButton extends Widget_Base {
|
|
164 |
);
|
165 |
|
166 |
$this->add_control(
|
167 |
-
'
|
168 |
[
|
169 |
-
'label'
|
170 |
-
'type'
|
171 |
-
'
|
|
|
|
|
|
|
|
|
172 |
]
|
173 |
);
|
174 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
175 |
$this->add_control(
|
176 |
'icon_display',
|
177 |
[
|
@@ -401,7 +455,7 @@ class ModernButton extends Widget_Base {
|
|
401 |
$this->end_controls_section();
|
402 |
|
403 |
/*-----------------------------------------------------------------------------------*/
|
404 |
-
/*
|
405 |
/*-----------------------------------------------------------------------------------*/
|
406 |
|
407 |
$this->start_controls_section(
|
@@ -496,6 +550,231 @@ class ModernButton extends Widget_Base {
|
|
496 |
|
497 |
$this->end_controls_section();
|
498 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
499 |
/*-----------------------------------------------------------------------------------*/
|
500 |
/* Button Style Section
|
501 |
/*-----------------------------------------------------------------------------------*/
|
@@ -778,7 +1057,13 @@ class ModernButton extends Widget_Base {
|
|
778 |
<?php Icons_Manager::render_icon( $settings['icon'], [ 'aria-hidden' => 'true' ] );?>
|
779 |
</div>
|
780 |
<?php };?>
|
781 |
-
<div class="aux-text"
|
|
|
|
|
|
|
|
|
|
|
|
|
782 |
</a>
|
783 |
<?php
|
784 |
if ( auxin_is_true( $settings['open_video_in_lightbox'] ) ) {
|
105 |
$this->add_control(
|
106 |
'label',
|
107 |
[
|
108 |
+
'label' => __('Text','auxin-elements' ),
|
109 |
'type' => Controls_Manager::TEXT,
|
110 |
+
'default' => __('Click Here','auxin-elements' )
|
111 |
]
|
112 |
);
|
113 |
|
114 |
$this->add_control(
|
115 |
+
'label2',
|
116 |
[
|
117 |
+
'label' => __('Highlighted Text', 'auxin-elements' ),
|
118 |
+
'type' => Controls_Manager::TEXT,
|
119 |
+
'default' => __('','auxin-elements' )
|
|
|
|
|
|
|
|
|
120 |
]
|
121 |
);
|
122 |
|
123 |
$this->add_control(
|
124 |
+
'label3',
|
125 |
+
[
|
126 |
+
'label' => __('After Text', 'auxin-elements' ),
|
127 |
+
'type' => Controls_Manager::TEXT,
|
128 |
+
'default' => __('','auxin-elements' )
|
129 |
+
]
|
|
|
|
|
|
|
130 |
);
|
131 |
|
132 |
+
$this->add_control(
|
133 |
+
'vertical_align',
|
134 |
+
[
|
135 |
+
'label' => __( 'Text Vertical Align', 'auxin-elements' ),
|
136 |
+
'type' => Controls_Manager::CHOOSE,
|
137 |
+
'options' => [
|
138 |
+
'top' => [
|
139 |
+
'title' => __( 'Top', 'auxin-elements' ),
|
140 |
+
'icon' => 'eicon-v-align-top',
|
141 |
+
],
|
142 |
+
'center' => [
|
143 |
+
'title' => __( 'Center', 'auxin-elements' ),
|
144 |
+
'icon' => 'eicon-v-align-middle',
|
145 |
+
],
|
146 |
+
'bottom' => [
|
147 |
+
'title' => __( 'Bottom', 'auxin-elements' ),
|
148 |
+
'icon' => 'eicon-v-align-bottom',
|
149 |
+
],
|
150 |
+
],
|
151 |
+
'selectors' => [
|
152 |
+
'{{WRAPPER}} .aux-text' => 'display:flex; align-items:{{VALUE}};'
|
153 |
+
],
|
154 |
+
'selectors_dictionary' => [
|
155 |
+
'top' => 'flex-start',
|
156 |
+
'bottom' => 'flex-end'
|
157 |
+
],
|
158 |
+
'conditions' => [
|
159 |
+
'relation' => 'or',
|
160 |
+
'terms' => [
|
161 |
+
[
|
162 |
+
'name' => 'label2',
|
163 |
+
'operator' => '!==',
|
164 |
+
'value' => ''
|
165 |
+
],
|
166 |
+
[
|
167 |
+
'name' => 'label3',
|
168 |
+
'operator' => '!==',
|
169 |
+
'value' => ''
|
170 |
+
]
|
171 |
+
]
|
172 |
+
],
|
173 |
+
'default' => ''
|
174 |
+
]
|
175 |
+
);
|
176 |
+
|
177 |
$this->add_responsive_control(
|
178 |
'btn_align',
|
179 |
[
|
202 |
);
|
203 |
|
204 |
$this->add_control(
|
205 |
+
'link',
|
206 |
[
|
207 |
+
'label' => __('Link','auxin-elements' ),
|
208 |
+
'type' => Controls_Manager::URL,
|
209 |
+
'placeholder' => 'https://your-link.com',
|
210 |
+
'show_external' => true,
|
211 |
+
'dynamic' => [
|
212 |
+
'active' => true
|
213 |
+
]
|
214 |
]
|
215 |
);
|
216 |
|
217 |
+
$this->add_control(
|
218 |
+
'open_video_in_lightbox',
|
219 |
+
array(
|
220 |
+
'label' => __('Open Video in Lightbox','auxin-elements' ),
|
221 |
+
'type' => Controls_Manager::SWITCHER,
|
222 |
+
'label_on' => __( 'On', 'auxin-elements' ),
|
223 |
+
'label_off' => __( 'Off', 'auxin-elements' ),
|
224 |
+
'return_value' => 'yes',
|
225 |
+
'default' => ''
|
226 |
+
)
|
227 |
+
);
|
228 |
+
|
229 |
$this->add_control(
|
230 |
'icon_display',
|
231 |
[
|
455 |
$this->end_controls_section();
|
456 |
|
457 |
/*-----------------------------------------------------------------------------------*/
|
458 |
+
/* Label Style Section
|
459 |
/*-----------------------------------------------------------------------------------*/
|
460 |
|
461 |
$this->start_controls_section(
|
550 |
|
551 |
$this->end_controls_section();
|
552 |
|
553 |
+
|
554 |
+
/*-----------------------------------------------------------------------------------*/
|
555 |
+
/* Label Highlighted Style Section
|
556 |
+
/*-----------------------------------------------------------------------------------*/
|
557 |
+
|
558 |
+
$this->start_controls_section(
|
559 |
+
'section_style_text2',
|
560 |
+
[
|
561 |
+
'label' => __('Highlighted Text', 'auxin-elements' ),
|
562 |
+
'tab' => Controls_Manager::TAB_STYLE,
|
563 |
+
'condition' => [
|
564 |
+
'label2!' => ''
|
565 |
+
]
|
566 |
+
]
|
567 |
+
);
|
568 |
+
|
569 |
+
|
570 |
+
$this->start_controls_tabs( 'text2_styles' );
|
571 |
+
|
572 |
+
$this->start_controls_tab(
|
573 |
+
'text2_normal',
|
574 |
+
[
|
575 |
+
'label' => __( 'Normal' , 'auxin-elements' )
|
576 |
+
]
|
577 |
+
);
|
578 |
+
|
579 |
+
$this->add_group_control(
|
580 |
+
Group_Control_Typography::get_type(),
|
581 |
+
[
|
582 |
+
'name' => 'text2_normal_typo',
|
583 |
+
'scheme' => Scheme_Typography::TYPOGRAPHY_1,
|
584 |
+
'selector' => '{{WRAPPER}} .aux-text-highlighted'
|
585 |
+
]
|
586 |
+
);
|
587 |
+
|
588 |
+
$this->add_control(
|
589 |
+
'text2_normal_color',
|
590 |
+
[
|
591 |
+
'label' => __( 'Color', 'auxin-elements' ),
|
592 |
+
'type' => Controls_Manager::COLOR,
|
593 |
+
'selectors' => [
|
594 |
+
'{{WRAPPER}} .aux-text-highlighted' => 'color: {{VALUE}};'
|
595 |
+
]
|
596 |
+
]
|
597 |
+
|
598 |
+
);
|
599 |
+
|
600 |
+
$this->add_group_control(
|
601 |
+
Group_Control_Text_Shadow::get_type(),
|
602 |
+
[
|
603 |
+
'name' => 'text2_normal_text_shadow',
|
604 |
+
'label' => __( 'Text Shadow', 'auxin-elements' ),
|
605 |
+
'selector' => '{{WRAPPER}} .aux-text-highlighted'
|
606 |
+
]
|
607 |
+
);
|
608 |
+
|
609 |
+
$this->end_controls_tab();
|
610 |
+
|
611 |
+
$this->start_controls_tab(
|
612 |
+
'text2_hover',
|
613 |
+
[
|
614 |
+
'label' => __( 'Hover' , 'auxin-elements' )
|
615 |
+
]
|
616 |
+
);
|
617 |
+
|
618 |
+
$this->add_group_control(
|
619 |
+
Group_Control_Typography::get_type(),
|
620 |
+
[
|
621 |
+
'name' => 'text2_hover_typo',
|
622 |
+
'scheme' => Scheme_Typography::TYPOGRAPHY_1,
|
623 |
+
'selector' => '{{WRAPPER}} .aux-modern-button:hover .aux-text-highlighted'
|
624 |
+
]
|
625 |
+
);
|
626 |
+
|
627 |
+
$this->add_control(
|
628 |
+
'text2_hover_color',
|
629 |
+
[
|
630 |
+
'label' => __( 'Color', 'auxin-elements' ),
|
631 |
+
'type' => Controls_Manager::COLOR,
|
632 |
+
'selectors' => [
|
633 |
+
'{{WRAPPER}} .aux-modern-button:hover .aux-text-highlighted' => 'color:{{VALUE}};'
|
634 |
+
]
|
635 |
+
]
|
636 |
+
);
|
637 |
+
|
638 |
+
$this->add_group_control(
|
639 |
+
Group_Control_Text_Shadow::get_type(),
|
640 |
+
[
|
641 |
+
'name' => 'text2_hover_text_shadow',
|
642 |
+
'label' => __( 'Text Shadow', 'auxin-elements' ),
|
643 |
+
'selector' => '{{WRAPPER}} .aux-modern-button:hover .aux-text-highlighted'
|
644 |
+
]
|
645 |
+
);
|
646 |
+
|
647 |
+
$this->end_controls_tab();
|
648 |
+
|
649 |
+
$this->end_controls_tabs();
|
650 |
+
|
651 |
+
$this->add_responsive_control(
|
652 |
+
'text2_margin',
|
653 |
+
[
|
654 |
+
'label' => __( 'Margin', 'auxin-elements' ),
|
655 |
+
'type' => Controls_Manager::DIMENSIONS,
|
656 |
+
'size_units' => [ 'px', 'em', '%' ],
|
657 |
+
'selectors' => [
|
658 |
+
'{{WRAPPER}} .aux-text-highlighted' => 'margin:{{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
|
659 |
+
],
|
660 |
+
'separator' => 'before'
|
661 |
+
]
|
662 |
+
);
|
663 |
+
|
664 |
+
$this->end_controls_section();
|
665 |
+
|
666 |
+
/*-----------------------------------------------------------------------------------*/
|
667 |
+
/* Label After Style Section
|
668 |
+
/*-----------------------------------------------------------------------------------*/
|
669 |
+
|
670 |
+
$this->start_controls_section(
|
671 |
+
'section_style_text3',
|
672 |
+
[
|
673 |
+
'label' => __('After Text', 'auxin-elements' ),
|
674 |
+
'tab' => Controls_Manager::TAB_STYLE,
|
675 |
+
'condition' => [
|
676 |
+
'label3!' => ''
|
677 |
+
]
|
678 |
+
]
|
679 |
+
);
|
680 |
+
|
681 |
+
|
682 |
+
$this->start_controls_tabs( 'text3_styles' );
|
683 |
+
|
684 |
+
$this->start_controls_tab(
|
685 |
+
'text3_normal',
|
686 |
+
[
|
687 |
+
'label' => __( 'Normal' , 'auxin-elements' )
|
688 |
+
]
|
689 |
+
);
|
690 |
+
|
691 |
+
$this->add_group_control(
|
692 |
+
Group_Control_Typography::get_type(),
|
693 |
+
[
|
694 |
+
'name' => 'text3_normal_typo',
|
695 |
+
'scheme' => Scheme_Typography::TYPOGRAPHY_1,
|
696 |
+
'selector' => '{{WRAPPER}} .aux-text-after'
|
697 |
+
]
|
698 |
+
);
|
699 |
+
|
700 |
+
$this->add_control(
|
701 |
+
'text3_normal_color',
|
702 |
+
[
|
703 |
+
'label' => __( 'Color', 'auxin-elements' ),
|
704 |
+
'type' => Controls_Manager::COLOR,
|