Version Description
Download this release
Release Info
Code changes from version 1.3.52 to 1.3.53
- admin/import/class-parsers.php +1041 -1041
- admin/import/class-wordpress-importer.php +1370 -1370
- admin/includes/wpr-conditions-manager.php +206 -206
- admin/includes/wpr-render-templates.php +250 -250
- admin/includes/wpr-templates-actions.php +313 -313
- admin/includes/wpr-templates-library.php +133 -133
- admin/includes/wpr-templates-loop.php +364 -364
- admin/includes/wpr-templates-modal-popups.php +233 -233
- admin/includes/wpr-templates-shortcode.php +69 -69
- admin/mega-menu.php +375 -375
- admin/plugin-options.php +570 -565
- admin/popups.php +86 -81
- admin/premade-blocks.php +39 -39
- admin/templates-kit.php +622 -622
- admin/templates/views/astra/class-astra-compat.php +84 -84
- admin/templates/views/oceanwp/class-oceanwp-compat.php +72 -72
- admin/templates/views/royal/theme-footer-royal.php +23 -23
- admin/templates/views/royal/theme-header-royal.php +39 -39
- admin/templates/views/storefront/class-storefront-compat.php +105 -105
- admin/templates/views/theme-footer.php +19 -19
- admin/templates/views/theme-header.php +32 -32
- admin/templates/wpr-canvas.php +66 -66
- admin/templates/wpr-templates-data.php +879 -879
- admin/templates/wpr-templates-library-blocks.php +167 -167
- admin/templates/wpr-templates-library-popups.php +108 -108
- admin/templates/wpr-templates-pages.php +51 -51
- admin/theme-builder.php +163 -158
- assets/css/admin/mega-menu.css +443 -443
- assets/css/admin/plugin-options.css +1125 -1089
- assets/css/admin/premade-blocks.css +436 -436
- assets/css/admin/templates-kit.css +603 -603
- assets/css/admin/wporg-theme-notice.css +2 -2
- assets/css/editor.css +943 -943
- assets/css/editor.min.css +1008 -959
- assets/css/frontend.css +0 -7400
admin/import/class-parsers.php
CHANGED
@@ -1,1041 +1,1041 @@
|
|
1 |
-
<?php
|
2 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
3 |
-
exit; // Exit if accessed directly.
|
4 |
-
}
|
5 |
-
|
6 |
-
/**
|
7 |
-
* WordPress eXtended RSS file parser implementations
|
8 |
-
*
|
9 |
-
* @package WordPress
|
10 |
-
* @subpackage Importer
|
11 |
-
*/
|
12 |
-
|
13 |
-
/**
|
14 |
-
* WXR Parser that uses regular expressions. Fallback for installs without an XML parser.
|
15 |
-
*/
|
16 |
-
class WXR_Parser_Regex {
|
17 |
-
/**
|
18 |
-
* @var bool
|
19 |
-
*/
|
20 |
-
private $has_gzip;
|
21 |
-
|
22 |
-
private $authors = [];
|
23 |
-
private $posts = [];
|
24 |
-
private $categories = [];
|
25 |
-
private $tags = [];
|
26 |
-
private $terms = [];
|
27 |
-
private $base_url = '';
|
28 |
-
private $base_blog_url = '';
|
29 |
-
|
30 |
-
/**
|
31 |
-
* @param string $file
|
32 |
-
*
|
33 |
-
* @return array|\WP_Error
|
34 |
-
*/
|
35 |
-
public function parse( $file ) {
|
36 |
-
$wxr_version = '';
|
37 |
-
$in_multiline = false;
|
38 |
-
|
39 |
-
$multiline_content = '';
|
40 |
-
|
41 |
-
$multiline_tags = [
|
42 |
-
'item' => [
|
43 |
-
'posts',
|
44 |
-
function ( $post ) {
|
45 |
-
return $this->process_post( $post );
|
46 |
-
},
|
47 |
-
],
|
48 |
-
'wp:category' => [
|
49 |
-
'categories',
|
50 |
-
function ( $category ) {
|
51 |
-
return $this->process_category( $category );
|
52 |
-
},
|
53 |
-
],
|
54 |
-
'wp:tag' => [
|
55 |
-
'tags',
|
56 |
-
function ( $tag ) {
|
57 |
-
return $this->process_tag( $tag );
|
58 |
-
},
|
59 |
-
],
|
60 |
-
'wp:term' => [
|
61 |
-
'terms',
|
62 |
-
function ( $term ) {
|
63 |
-
return $this->process_term( $term );
|
64 |
-
},
|
65 |
-
],
|
66 |
-
];
|
67 |
-
|
68 |
-
$fp = $this->fopen( $file, 'r' );
|
69 |
-
if ( $fp ) {
|
70 |
-
while ( ! $this->feof( $fp ) ) {
|
71 |
-
$importline = rtrim( $this->fgets( $fp ) );
|
72 |
-
|
73 |
-
if ( ! $wxr_version && preg_match( '|<wp:wxr_version>(\d+\.\d+)</wp:wxr_version>|', $importline, $version ) ) {
|
74 |
-
$wxr_version = $version[1];
|
75 |
-
}
|
76 |
-
|
77 |
-
if ( false !== strpos( $importline, '<wp:base_site_url>' ) ) {
|
78 |
-
preg_match( '|<wp:base_site_url>(.*?)</wp:base_site_url>|is', $importline, $url );
|
79 |
-
$this->base_url = $url[1];
|
80 |
-
continue;
|
81 |
-
}
|
82 |
-
|
83 |
-
if ( false !== strpos( $importline, '<wp:base_blog_url>' ) ) {
|
84 |
-
preg_match( '|<wp:base_blog_url>(.*?)</wp:base_blog_url>|is', $importline, $blog_url );
|
85 |
-
$this->base_blog_url = $blog_url[1];
|
86 |
-
continue;
|
87 |
-
} else {
|
88 |
-
$this->base_blog_url = $this->base_url;
|
89 |
-
}
|
90 |
-
|
91 |
-
if ( false !== strpos( $importline, '<wp:author>' ) ) {
|
92 |
-
preg_match( '|<wp:author>(.*?)</wp:author>|is', $importline, $author );
|
93 |
-
$a = $this->process_author( $author[1] );
|
94 |
-
$this->authors[ $a['author_login'] ] = $a;
|
95 |
-
continue;
|
96 |
-
}
|
97 |
-
|
98 |
-
foreach ( $multiline_tags as $tag => $handler ) {
|
99 |
-
// Handle multi-line tags on a singular line.
|
100 |
-
if ( preg_match( '|<'. $tag .'>(.*?)</'. $tag .'>|is', $importline, $matches ) ) {
|
101 |
-
$this->{$handler[0]}[] = call_user_func( $handler[1], $matches[1] );
|
102 |
-
|
103 |
-
continue;
|
104 |
-
}
|
105 |
-
|
106 |
-
$pos = strpos( $importline, "<$tag>" );
|
107 |
-
|
108 |
-
if ( false !== $pos ) {
|
109 |
-
// Take note of any content after the opening tag.
|
110 |
-
$multiline_content = trim( substr( $importline, $pos + strlen( $tag ) + 2 ) );
|
111 |
-
|
112 |
-
// We don't want to have this line added to `$is_multiline` below.
|
113 |
-
$importline = '';
|
114 |
-
$in_multiline = $tag;
|
115 |
-
|
116 |
-
continue;
|
117 |
-
}
|
118 |
-
|
119 |
-
$pos = strpos( $importline, "</$tag>" );
|
120 |
-
|
121 |
-
if ( false !== $pos ) {
|
122 |
-
$in_multiline = false;
|
123 |
-
$multiline_content .= trim( substr( $importline, 0, $pos ) );
|
124 |
-
|
125 |
-
$this->{$handler[0]}[] = call_user_func( $handler[1], $multiline_content );
|
126 |
-
}
|
127 |
-
}
|
128 |
-
|
129 |
-
if ( $in_multiline && $importline ) {
|
130 |
-
$multiline_content .= $importline . "\n";
|
131 |
-
}
|
132 |
-
}
|
133 |
-
|
134 |
-
$this->fclose( $fp );
|
135 |
-
}
|
136 |
-
|
137 |
-
if ( ! $wxr_version ) {
|
138 |
-
return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpr-addons' ) );
|
139 |
-
}
|
140 |
-
|
141 |
-
return [
|
142 |
-
'authors' => $this->authors,
|
143 |
-
'posts' => $this->posts,
|
144 |
-
'categories' => $this->categories,
|
145 |
-
'tags' => $this->tags,
|
146 |
-
'terms' => $this->terms,
|
147 |
-
'base_url' => $this->base_url,
|
148 |
-
'base_blog_url' => $this->base_blog_url,
|
149 |
-
'version' => $wxr_version,
|
150 |
-
];
|
151 |
-
}
|
152 |
-
|
153 |
-
private function process_category( $category ) {
|
154 |
-
$term = [
|
155 |
-
'term_id' => $this->get_tag( $category, 'wp:term_id' ),
|
156 |
-
'cat_name' => $this->get_tag( $category, 'wp:cat_name' ),
|
157 |
-
'category_nicename' => $this->get_tag( $category, 'wp:category_nicename' ),
|
158 |
-
'category_parent' => $this->get_tag( $category, 'wp:category_parent' ),
|
159 |
-
'category_description' => $this->get_tag( $category, 'wp:category_description' ),
|
160 |
-
];
|
161 |
-
|
162 |
-
$term_meta = $this->process_meta( $category, 'wp:termmeta' );
|
163 |
-
if ( ! empty( $term_meta ) ) {
|
164 |
-
$term['termmeta'] = $term_meta;
|
165 |
-
}
|
166 |
-
|
167 |
-
return $term;
|
168 |
-
}
|
169 |
-
|
170 |
-
private function process_tag( $tag ) {
|
171 |
-
$term = [
|
172 |
-
'term_id' => $this->get_tag( $tag, 'wp:term_id' ),
|
173 |
-
'tag_name' => $this->get_tag( $tag, 'wp:tag_name' ),
|
174 |
-
'tag_slug' => $this->get_tag( $tag, 'wp:tag_slug' ),
|
175 |
-
'tag_description' => $this->get_tag( $tag, 'wp:tag_description' ),
|
176 |
-
];
|
177 |
-
|
178 |
-
$term_meta = $this->process_meta( $tag, 'wp:termmeta' );
|
179 |
-
if ( ! empty( $term_meta ) ) {
|
180 |
-
$term['termmeta'] = $term_meta;
|
181 |
-
}
|
182 |
-
|
183 |
-
return $term;
|
184 |
-
}
|
185 |
-
|
186 |
-
private function process_term( $term ) {
|
187 |
-
$term_data = [
|
188 |
-
'term_id' => $this->get_tag( $term, 'wp:term_id' ),
|
189 |
-
'term_taxonomy' => $this->get_tag( $term, 'wp:term_taxonomy' ),
|
190 |
-
'slug' => $this->get_tag( $term, 'wp:term_slug' ),
|
191 |
-
'term_parent' => $this->get_tag( $term, 'wp:term_parent' ),
|
192 |
-
'term_name' => $this->get_tag( $term, 'wp:term_name' ),
|
193 |
-
'term_description' => $this->get_tag( $term, 'wp:term_description' ),
|
194 |
-
];
|
195 |
-
|
196 |
-
$term_meta = $this->process_meta( $term, 'wp:termmeta' );
|
197 |
-
if ( ! empty( $term_meta ) ) {
|
198 |
-
$term_data['termmeta'] = $term_meta;
|
199 |
-
}
|
200 |
-
|
201 |
-
return $term_data;
|
202 |
-
}
|
203 |
-
|
204 |
-
private function process_meta( $string, $tag ) {
|
205 |
-
$parsed_meta = [];
|
206 |
-
|
207 |
-
preg_match_all( "|<$tag>(.+?)</$tag>|is", $string, $meta );
|
208 |
-
|
209 |
-
if ( ! isset( $meta[1] ) ) {
|
210 |
-
return $parsed_meta;
|
211 |
-
}
|
212 |
-
|
213 |
-
foreach ( $meta[1] as $m ) {
|
214 |
-
$parsed_meta[] = [
|
215 |
-
'key' => $this->get_tag( $m, 'wp:meta_key' ),
|
216 |
-
'value' => $this->get_tag( $m, 'wp:meta_value' ),
|
217 |
-
];
|
218 |
-
}
|
219 |
-
|
220 |
-
return $parsed_meta;
|
221 |
-
}
|
222 |
-
|
223 |
-
private function process_author( $a ) {
|
224 |
-
return [
|
225 |
-
'author_id' => $this->get_tag( $a, 'wp:author_id' ),
|
226 |
-
'author_login' => $this->get_tag( $a, 'wp:author_login' ),
|
227 |
-
'author_email' => $this->get_tag( $a, 'wp:author_email' ),
|
228 |
-
'author_display_name' => $this->get_tag( $a, 'wp:author_display_name' ),
|
229 |
-
'author_first_name' => $this->get_tag( $a, 'wp:author_first_name' ),
|
230 |
-
'author_last_name' => $this->get_tag( $a, 'wp:author_last_name' ),
|
231 |
-
];
|
232 |
-
}
|
233 |
-
|
234 |
-
private function process_post( $post ) {
|
235 |
-
$normalize_tag_callback = function ( $matches ) {
|
236 |
-
return $this->normalize_tag( $matches );
|
237 |
-
};
|
238 |
-
|
239 |
-
$post_id = $this->get_tag( $post, 'wp:post_id' );
|
240 |
-
$post_title = $this->get_tag( $post, 'title' );
|
241 |
-
$post_date = $this->get_tag( $post, 'wp:post_date' );
|
242 |
-
$post_date_gmt = $this->get_tag( $post, 'wp:post_date_gmt' );
|
243 |
-
$comment_status = $this->get_tag( $post, 'wp:comment_status' );
|
244 |
-
$ping_status = $this->get_tag( $post, 'wp:ping_status' );
|
245 |
-
$status = $this->get_tag( $post, 'wp:status' );
|
246 |
-
$post_name = $this->get_tag( $post, 'wp:post_name' );
|
247 |
-
$post_parent = $this->get_tag( $post, 'wp:post_parent' );
|
248 |
-
$menu_order = $this->get_tag( $post, 'wp:menu_order' );
|
249 |
-
$post_type = $this->get_tag( $post, 'wp:post_type' );
|
250 |
-
$post_password = $this->get_tag( $post, 'wp:post_password' );
|
251 |
-
$is_sticky = $this->get_tag( $post, 'wp:is_sticky' );
|
252 |
-
$guid = $this->get_tag( $post, 'guid' );
|
253 |
-
$post_author = $this->get_tag( $post, 'dc:creator' );
|
254 |
-
|
255 |
-
$post_excerpt = $this->get_tag( $post, 'excerpt:encoded' );
|
256 |
-
$post_excerpt = preg_replace_callback( '|<(/?[A-Z]+)|', $normalize_tag_callback, $post_excerpt );
|
257 |
-
$post_excerpt = str_replace( '<br>', '<br />', $post_excerpt );
|
258 |
-
$post_excerpt = str_replace( '<hr>', '<hr />', $post_excerpt );
|
259 |
-
|
260 |
-
$post_content = $this->get_tag( $post, 'content:encoded' );
|
261 |
-
$post_content = preg_replace_callback( '|<(/?[A-Z]+)|', $normalize_tag_callback, $post_content );
|
262 |
-
$post_content = str_replace( '<br>', '<br />', $post_content );
|
263 |
-
$post_content = str_replace( '<hr>', '<hr />', $post_content );
|
264 |
-
|
265 |
-
$postdata = compact( 'post_id', 'post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_excerpt', 'post_title', 'status', 'post_name', 'comment_status', 'ping_status', 'guid', 'post_parent', 'menu_order', 'post_type', 'post_password', 'is_sticky' );
|
266 |
-
|
267 |
-
$attachment_url = $this->get_tag( $post, 'wp:attachment_url' );
|
268 |
-
if ( $attachment_url ) {
|
269 |
-
$postdata['attachment_url'] = $attachment_url;
|
270 |
-
}
|
271 |
-
|
272 |
-
preg_match_all( '|<category domain="([^"]+?)" nicename="([^"]+?)">(.+?)</category>|is', $post, $terms, PREG_SET_ORDER );
|
273 |
-
foreach ( $terms as $t ) {
|
274 |
-
$post_terms[] = [
|
275 |
-
'slug' => $t[2],
|
276 |
-
'domain' => $t[1],
|
277 |
-
'name' => str_replace( [ '<![CDATA[', ']]>' ], '', $t[3] ),
|
278 |
-
];
|
279 |
-
}
|
280 |
-
if ( ! empty( $post_terms ) ) {
|
281 |
-
$postdata['terms'] = $post_terms;
|
282 |
-
}
|
283 |
-
|
284 |
-
preg_match_all( '|<wp:comment>(.+?)</wp:comment>|is', $post, $comments );
|
285 |
-
$comments = $comments[1];
|
286 |
-
if ( $comments ) {
|
287 |
-
foreach ( $comments as $comment ) {
|
288 |
-
$post_comments[] = [
|
289 |
-
'comment_id' => $this->get_tag( $comment, 'wp:comment_id' ),
|
290 |
-
'comment_author' => $this->get_tag( $comment, 'wp:comment_author' ),
|
291 |
-
'comment_author_email' => $this->get_tag( $comment, 'wp:comment_author_email' ),
|
292 |
-
'comment_author_IP' => $this->get_tag( $comment, 'wp:comment_author_IP' ),
|
293 |
-
'comment_author_url' => $this->get_tag( $comment, 'wp:comment_author_url' ),
|
294 |
-
'comment_date' => $this->get_tag( $comment, 'wp:comment_date' ),
|
295 |
-
'comment_date_gmt' => $this->get_tag( $comment, 'wp:comment_date_gmt' ),
|
296 |
-
'comment_content' => $this->get_tag( $comment, 'wp:comment_content' ),
|
297 |
-
'comment_approved' => $this->get_tag( $comment, 'wp:comment_approved' ),
|
298 |
-
'comment_type' => $this->get_tag( $comment, 'wp:comment_type' ),
|
299 |
-
'comment_parent' => $this->get_tag( $comment, 'wp:comment_parent' ),
|
300 |
-
'comment_user_id' => $this->get_tag( $comment, 'wp:comment_user_id' ),
|
301 |
-
'commentmeta' => $this->process_meta( $comment, 'wp:commentmeta' ),
|
302 |
-
];
|
303 |
-
}
|
304 |
-
}
|
305 |
-
if ( ! empty( $post_comments ) ) {
|
306 |
-
$postdata['comments'] = $post_comments;
|
307 |
-
}
|
308 |
-
|
309 |
-
$post_meta = $this->process_meta( $post, 'wp:postmeta' );
|
310 |
-
if ( ! empty( $post_meta ) ) {
|
311 |
-
$postdata['postmeta'] = $post_meta;
|
312 |
-
}
|
313 |
-
|
314 |
-
return $postdata;
|
315 |
-
}
|
316 |
-
|
317 |
-
private function get_tag( $string, $tag ) {
|
318 |
-
preg_match( "|<$tag.*?>(.*?)</$tag>|is", $string, $return );
|
319 |
-
if ( isset( $return[1] ) ) {
|
320 |
-
if ( substr( $return[1], 0, 9 ) == '<![CDATA[' ) {
|
321 |
-
if ( strpos( $return[1], ']]]]><![CDATA[>' ) !== false ) {
|
322 |
-
preg_match_all( '|<!\[CDATA\[(.*?)\]\]>|s', $return[1], $matches );
|
323 |
-
$return = '';
|
324 |
-
foreach ( $matches[1] as $match ) {
|
325 |
-
$return .= $match;
|
326 |
-
}
|
327 |
-
} else {
|
328 |
-
$return = preg_replace( '|^<!\[CDATA\[(.*)\]\]>$|s', '$1', $return[1] );
|
329 |
-
}
|
330 |
-
} else {
|
331 |
-
$return = $return[1];
|
332 |
-
}
|
333 |
-
} else {
|
334 |
-
$return = '';
|
335 |
-
}
|
336 |
-
|
337 |
-
return $return;
|
338 |
-
}
|
339 |
-
|
340 |
-
private function normalize_tag( $matches ) {
|
341 |
-
return '<' . strtolower( $matches[1] );
|
342 |
-
}
|
343 |
-
|
344 |
-
private function fopen( $filename, $mode = 'r' ) {
|
345 |
-
if ( $this->has_gzip ) {
|
346 |
-
return gzopen( $filename, $mode );
|
347 |
-
}
|
348 |
-
|
349 |
-
return fopen( $filename, $mode );
|
350 |
-
}
|
351 |
-
|
352 |
-
private function feof( $fp ) {
|
353 |
-
if ( $this->has_gzip ) {
|
354 |
-
return gzeof( $fp );
|
355 |
-
}
|
356 |
-
|
357 |
-
return feof( $fp );
|
358 |
-
}
|
359 |
-
|
360 |
-
private function fgets( $fp, $len = 8192 ) {
|
361 |
-
if ( $this->has_gzip ) {
|
362 |
-
return gzgets( $fp, $len );
|
363 |
-
}
|
364 |
-
|
365 |
-
return fgets( $fp, $len );
|
366 |
-
}
|
367 |
-
|
368 |
-
private function fclose( $fp ) {
|
369 |
-
if ( $this->has_gzip ) {
|
370 |
-
return gzclose( $fp );
|
371 |
-
}
|
372 |
-
|
373 |
-
return fclose( $fp );
|
374 |
-
}
|
375 |
-
|
376 |
-
public function __construct() {
|
377 |
-
$this->has_gzip = is_callable( 'gzopen' );
|
378 |
-
}
|
379 |
-
}
|
380 |
-
|
381 |
-
/**
|
382 |
-
* WordPress eXtended RSS file parser implementations,
|
383 |
-
* Originally made by WordPress part of WordPress/Importer.
|
384 |
-
* https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser-simplexml.php
|
385 |
-
*
|
386 |
-
* What was done:
|
387 |
-
* Reformat of the code.
|
388 |
-
* Removed variable '$internal_errors'.
|
389 |
-
* Changed text domain.
|
390 |
-
*/
|
391 |
-
|
392 |
-
/**
|
393 |
-
* WXR Parser that makes use of the SimpleXML PHP extension.
|
394 |
-
*/
|
395 |
-
class WXR_Parser_SimpleXML {
|
396 |
-
|
397 |
-
/**
|
398 |
-
* @param string $file
|
399 |
-
*
|
400 |
-
* @return array|\WP_Error
|
401 |
-
*/
|
402 |
-
public function parse( $file ) {
|
403 |
-
$authors = [];
|
404 |
-
$posts = [];
|
405 |
-
$categories = [];
|
406 |
-
$tags = [];
|
407 |
-
$terms = [];
|
408 |
-
|
409 |
-
libxml_use_internal_errors( true );
|
410 |
-
|
411 |
-
$dom = new \DOMDocument();
|
412 |
-
$old_value = null;
|
413 |
-
|
414 |
-
$libxml_disable_entity_loader_exists = function_exists( 'libxml_disable_entity_loader' );
|
415 |
-
|
416 |
-
if ( $libxml_disable_entity_loader_exists ) {
|
417 |
-
$old_value = libxml_disable_entity_loader( true ); // phpcs:ignore Generic.PHP.DeprecatedFunctions.Deprecated
|
418 |
-
}
|
419 |
-
|
420 |
-
$success = $dom->loadXML( file_get_contents( $file ) );
|
421 |
-
|
422 |
-
if ( $libxml_disable_entity_loader_exists && ! is_null( $old_value ) ) {
|
423 |
-
libxml_disable_entity_loader( $old_value ); // phpcs:ignore Generic.PHP.DeprecatedFunctions.Deprecated
|
424 |
-
}
|
425 |
-
|
426 |
-
if ( ! $success || isset( $dom->doctype ) ) {
|
427 |
-
return new WP_Error( 'SimpleXML_parse_error', esc_html__( 'There was an error when reading this WXR file', 'wpr-addons' ), libxml_get_errors() );
|
428 |
-
}
|
429 |
-
|
430 |
-
$xml = simplexml_import_dom( $dom );
|
431 |
-
unset( $dom );
|
432 |
-
|
433 |
-
// Halt if loading produces an error.
|
434 |
-
if ( ! $xml ) {
|
435 |
-
return new WP_Error( 'SimpleXML_parse_error', esc_html__( 'There was an error when reading this WXR file', 'wpr-addons' ), libxml_get_errors() );
|
436 |
-
}
|
437 |
-
|
438 |
-
$wxr_version = $xml->xpath( '/rss/channel/wp:wxr_version' );
|
439 |
-
if ( ! $wxr_version ) {
|
440 |
-
return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpr-addons' ) );
|
441 |
-
}
|
442 |
-
|
443 |
-
$wxr_version = (string) trim( $wxr_version[0] );
|
444 |
-
// Confirm that we are dealing with the correct file format.
|
445 |
-
if ( ! preg_match( '/^\d+\.\d+$/', $wxr_version ) ) {
|
446 |
-
return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpr-addons' ) );
|
447 |
-
}
|
448 |
-
|
449 |
-
$base_url = $xml->xpath( '/rss/channel/wp:base_site_url' );
|
450 |
-
$base_url = (string) trim( isset( $base_url[0] ) ? $base_url[0] : '' );
|
451 |
-
|
452 |
-
$base_blog_url = $xml->xpath( '/rss/channel/wp:base_blog_url' );
|
453 |
-
if ( $base_blog_url ) {
|
454 |
-
$base_blog_url = (string) trim( $base_blog_url[0] );
|
455 |
-
} else {
|
456 |
-
$base_blog_url = $base_url;
|
457 |
-
}
|
458 |
-
|
459 |
-
$page_on_front = $xml->xpath( '/rss/channel/wp:page_on_front' );
|
460 |
-
|
461 |
-
if ( $page_on_front ) {
|
462 |
-
$page_on_front = (int) $page_on_front[0];
|
463 |
-
}
|
464 |
-
|
465 |
-
$namespaces = $xml->getDocNamespaces();
|
466 |
-
if ( ! isset( $namespaces['wp'] ) ) {
|
467 |
-
$namespaces['wp'] = 'http://wordpress.org/export/1.1/';
|
468 |
-
}
|
469 |
-
if ( ! isset( $namespaces['excerpt'] ) ) {
|
470 |
-
$namespaces['excerpt'] = 'http://wordpress.org/export/1.1/excerpt/';
|
471 |
-
}
|
472 |
-
|
473 |
-
// Grab authors.
|
474 |
-
foreach ( $xml->xpath( '/rss/channel/wp:author' ) as $author_arr ) {
|
475 |
-
$a = $author_arr->children( $namespaces['wp'] );
|
476 |
-
$login = (string) $a->author_login;
|
477 |
-
$authors[ $login ] = [
|
478 |
-
'author_id' => (int) $a->author_id,
|
479 |
-
'author_login' => $login,
|
480 |
-
'author_email' => (string) $a->author_email,
|
481 |
-
'author_display_name' => (string) $a->author_display_name,
|
482 |
-
'author_first_name' => (string) $a->author_first_name,
|
483 |
-
'author_last_name' => (string) $a->author_last_name,
|
484 |
-
];
|
485 |
-
}
|
486 |
-
|
487 |
-
// Grab cats, tags and terms.
|
488 |
-
foreach ( $xml->xpath( '/rss/channel/wp:category' ) as $term_arr ) {
|
489 |
-
$t = $term_arr->children( $namespaces['wp'] );
|
490 |
-
$category = [
|
491 |
-
'term_id' => (int) $t->term_id,
|
492 |
-
'category_nicename' => (string) $t->category_nicename,
|
493 |
-
'category_parent' => (string) $t->category_parent,
|
494 |
-
'cat_name' => (string) $t->cat_name,
|
495 |
-
'category_description' => (string) $t->category_description,
|
496 |
-
];
|
497 |
-
|
498 |
-
foreach ( $t->termmeta as $meta ) {
|
499 |
-
$category['termmeta'][] = [
|
500 |
-
'key' => (string) $meta->meta_key,
|
501 |
-
'value' => (string) $meta->meta_value,
|
502 |
-
];
|
503 |
-
}
|
504 |
-
|
505 |
-
$categories[] = $category;
|
506 |
-
}
|
507 |
-
|
508 |
-
foreach ( $xml->xpath( '/rss/channel/wp:tag' ) as $term_arr ) {
|
509 |
-
$t = $term_arr->children( $namespaces['wp'] );
|
510 |
-
$tag = [
|
511 |
-
'term_id' => (int) $t->term_id,
|
512 |
-
'tag_slug' => (string) $t->tag_slug,
|
513 |
-
'tag_name' => (string) $t->tag_name,
|
514 |
-
'tag_description' => (string) $t->tag_description,
|
515 |
-
];
|
516 |
-
|
517 |
-
foreach ( $t->termmeta as $meta ) {
|
518 |
-
$tag['termmeta'][] = [
|
519 |
-
'key' => (string) $meta->meta_key,
|
520 |
-
'value' => (string) $meta->meta_value,
|
521 |
-
];
|
522 |
-
}
|
523 |
-
|
524 |
-
$tags[] = $tag;
|
525 |
-
}
|
526 |
-
|
527 |
-
foreach ( $xml->xpath( '/rss/channel/wp:term' ) as $term_arr ) {
|
528 |
-
$t = $term_arr->children( $namespaces['wp'] );
|
529 |
-
$term = [
|
530 |
-
'term_id' => (int) $t->term_id,
|
531 |
-
'term_taxonomy' => (string) $t->term_taxonomy,
|
532 |
-
'slug' => (string) $t->term_slug,
|
533 |
-
'term_parent' => (string) $t->term_parent,
|
534 |
-
'term_name' => (string) $t->term_name,
|
535 |
-
'term_description' => (string) $t->term_description,
|
536 |
-
];
|
537 |
-
|
538 |
-
foreach ( $t->termmeta as $meta ) {
|
539 |
-
$term['termmeta'][] = [
|
540 |
-
'key' => (string) $meta->meta_key,
|
541 |
-
'value' => (string) $meta->meta_value,
|
542 |
-
];
|
543 |
-
}
|
544 |
-
|
545 |
-
$terms[] = $term;
|
546 |
-
}
|
547 |
-
|
548 |
-
// Grab posts.
|
549 |
-
foreach ( $xml->channel->item as $item ) {
|
550 |
-
$post = [
|
551 |
-
'post_title' => (string) $item->title,
|
552 |
-
'guid' => (string) $item->guid,
|
553 |
-
];
|
554 |
-
|
555 |
-
$dc = $item->children( 'http://purl.org/dc/elements/1.1/' );
|
556 |
-
$post['post_author'] = (string) $dc->creator;
|
557 |
-
|
558 |
-
$content = $item->children( 'http://purl.org/rss/1.0/modules/content/' );
|
559 |
-
$excerpt = $item->children( $namespaces['excerpt'] );
|
560 |
-
$post['post_content'] = (string) $content->encoded;
|
561 |
-
$post['post_excerpt'] = (string) $excerpt->encoded;
|
562 |
-
|
563 |
-
$wp = $item->children( $namespaces['wp'] );
|
564 |
-
$post['post_id'] = (int) $wp->post_id;
|
565 |
-
$post['post_date'] = (string) $wp->post_date;
|
566 |
-
$post['post_date_gmt'] = (string) $wp->post_date_gmt;
|
567 |
-
$post['comment_status'] = (string) $wp->comment_status;
|
568 |
-
$post['ping_status'] = (string) $wp->ping_status;
|
569 |
-
$post['post_name'] = (string) $wp->post_name;
|
570 |
-
$post['status'] = (string) $wp->status;
|
571 |
-
$post['post_parent'] = (int) $wp->post_parent;
|
572 |
-
$post['menu_order'] = (int) $wp->menu_order;
|
573 |
-
$post['post_type'] = (string) $wp->post_type;
|
574 |
-
$post['post_password'] = (string) $wp->post_password;
|
575 |
-
$post['is_sticky'] = (int) $wp->is_sticky;
|
576 |
-
|
577 |
-
if ( isset( $wp->attachment_url ) ) {
|
578 |
-
$post['attachment_url'] = (string) $wp->attachment_url;
|
579 |
-
}
|
580 |
-
|
581 |
-
foreach ( $item->category as $c ) {
|
582 |
-
$att = $c->attributes();
|
583 |
-
if ( isset( $att['nicename'] ) ) {
|
584 |
-
$post['terms'][] = [
|
585 |
-
'name' => (string) $c,
|
586 |
-
'slug' => (string) $att['nicename'],
|
587 |
-
'domain' => (string) $att['domain'],
|
588 |
-
];
|
589 |
-
}
|
590 |
-
}
|
591 |
-
|
592 |
-
foreach ( $wp->postmeta as $meta ) {
|
593 |
-
$post['postmeta'][] = [
|
594 |
-
'key' => (string) $meta->meta_key,
|
595 |
-
'value' => (string) $meta->meta_value,
|
596 |
-
];
|
597 |
-
}
|
598 |
-
|
599 |
-
foreach ( $wp->comment as $comment ) {
|
600 |
-
$meta = [];
|
601 |
-
if ( isset( $comment->commentmeta ) ) {
|
602 |
-
foreach ( $comment->commentmeta as $m ) {
|
603 |
-
$meta[] = [
|
604 |
-
'key' => (string) $m->meta_key,
|
605 |
-
'value' => (string) $m->meta_value,
|
606 |
-
];
|
607 |
-
}
|
608 |
-
}
|
609 |
-
|
610 |
-
$post['comments'][] = [
|
611 |
-
'comment_id' => (int) $comment->comment_id,
|
612 |
-
'comment_author' => (string) $comment->comment_author,
|
613 |
-
'comment_author_email' => (string) $comment->comment_author_email,
|
614 |
-
'comment_author_IP' => (string) $comment->comment_author_IP,
|
615 |
-
'comment_author_url' => (string) $comment->comment_author_url,
|
616 |
-
'comment_date' => (string) $comment->comment_date,
|
617 |
-
'comment_date_gmt' => (string) $comment->comment_date_gmt,
|
618 |
-
'comment_content' => (string) $comment->comment_content,
|
619 |
-
'comment_approved' => (string) $comment->comment_approved,
|
620 |
-
'comment_type' => (string) $comment->comment_type,
|
621 |
-
'comment_parent' => (string) $comment->comment_parent,
|
622 |
-
'comment_user_id' => (int) $comment->comment_user_id,
|
623 |
-
'commentmeta' => $meta,
|
624 |
-
];
|
625 |
-
}
|
626 |
-
|
627 |
-
$posts[] = $post;
|
628 |
-
}
|
629 |
-
|
630 |
-
return [
|
631 |
-
'authors' => $authors,
|
632 |
-
'posts' => $posts,
|
633 |
-
'categories' => $categories,
|
634 |
-
'tags' => $tags,
|
635 |
-
'terms' => $terms,
|
636 |
-
'base_url' => $base_url,
|
637 |
-
'base_blog_url' => $base_blog_url,
|
638 |
-
'page_on_front' => $page_on_front,
|
639 |
-
'version' => $wxr_version,
|
640 |
-
];
|
641 |
-
}
|
642 |
-
}
|
643 |
-
|
644 |
-
|
645 |
-
/**
|
646 |
-
* WordPress eXtended RSS file parser implementations,
|
647 |
-
* Originally made by WordPress part of WordPress/Importer.
|
648 |
-
* https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser-xml.php
|
649 |
-
*
|
650 |
-
* What was done:
|
651 |
-
* Reformat of the code.
|
652 |
-
* Added PHPDOC.
|
653 |
-
* Changed text domain.
|
654 |
-
* Added clear() method.
|
655 |
-
* Added undeclared class properties.
|
656 |
-
* Changed methods visibility.
|
657 |
-
*/
|
658 |
-
|
659 |
-
/**
|
660 |
-
* WXR Parser that makes use of the XML Parser PHP extension.
|
661 |
-
*/
|
662 |
-
class WXR_Parser_XML {
|
663 |
-
private static $wp_tags = [
|
664 |
-
'wp:post_id',
|
665 |
-
'wp:post_date',
|
666 |
-
'wp:post_date_gmt',
|
667 |
-
'wp:comment_status',
|
668 |
-
'wp:ping_status',
|
669 |
-
'wp:attachment_url',
|
670 |
-
'wp:status',
|
671 |
-
'wp:post_name',
|
672 |
-
'wp:post_parent',
|
673 |
-
'wp:menu_order',
|
674 |
-
'wp:post_type',
|
675 |
-
'wp:post_password',
|
676 |
-
'wp:is_sticky',
|
677 |
-
'wp:term_id',
|
678 |
-
'wp:category_nicename',
|
679 |
-
'wp:category_parent',
|
680 |
-
'wp:cat_name',
|
681 |
-
'wp:category_description',
|
682 |
-
'wp:tag_slug',
|
683 |
-
'wp:tag_name',
|
684 |
-
'wp:tag_description',
|
685 |
-
'wp:term_taxonomy',
|
686 |
-
'wp:term_parent',
|
687 |
-
'wp:term_name',
|
688 |
-
'wp:term_description',
|
689 |
-
'wp:author_id',
|
690 |
-
'wp:author_login',
|
691 |
-
'wp:author_email',
|
692 |
-
'wp:author_display_name',
|
693 |
-
'wp:author_first_name',
|
694 |
-
'wp:author_last_name',
|
695 |
-
];
|
696 |
-
|
697 |
-
private static $wp_sub_tags = [
|
698 |
-
'wp:comment_id',
|
699 |
-
'wp:comment_author',
|
700 |
-
'wp:comment_author_email',
|
701 |
-
'wp:comment_author_url',
|
702 |
-
'wp:comment_author_IP',
|
703 |
-
'wp:comment_date',
|
704 |
-
'wp:comment_date_gmt',
|
705 |
-
'wp:comment_content',
|
706 |
-
'wp:comment_approved',
|
707 |
-
'wp:comment_type',
|
708 |
-
'wp:comment_parent',
|
709 |
-
'wp:comment_user_id',
|
710 |
-
];
|
711 |
-
|
712 |
-
/**
|
713 |
-
* @var string
|
714 |
-
*/
|
715 |
-
private $wxr_version;
|
716 |
-
|
717 |
-
/**
|
718 |
-
* @var string
|
719 |
-
*/
|
720 |
-
private $cdata;
|
721 |
-
|
722 |
-
/**
|
723 |
-
* @var array
|
724 |
-
*/
|
725 |
-
private $data;
|
726 |
-
|
727 |
-
/**
|
728 |
-
* @var array
|
729 |
-
*/
|
730 |
-
private $sub_data;
|
731 |
-
|
732 |
-
/**
|
733 |
-
* @var boolean
|
734 |
-
*/
|
735 |
-
private $in_post;
|
736 |
-
|
737 |
-
/**
|
738 |
-
* @var boolean
|
739 |
-
*/
|
740 |
-
private $in_tag;
|
741 |
-
|
742 |
-
/**
|
743 |
-
* @var boolean
|
744 |
-
*/
|
745 |
-
private $in_sub_tag;
|
746 |
-
|
747 |
-
/**
|
748 |
-
* @var array
|
749 |
-
*/
|
750 |
-
private $authors;
|
751 |
-
|
752 |
-
/**
|
753 |
-
* @var array
|
754 |
-
*/
|
755 |
-
private $posts;
|
756 |
-
|
757 |
-
/**
|
758 |
-
* @var array
|
759 |
-
*/
|
760 |
-
private $term;
|
761 |
-
|
762 |
-
/**
|
763 |
-
* @var array
|
764 |
-
*/
|
765 |
-
private $category;
|
766 |
-
|
767 |
-
/**
|
768 |
-
* @var array
|
769 |
-
*/
|
770 |
-
private $tag;
|
771 |
-
|
772 |
-
/**
|
773 |
-
* @var string
|
774 |
-
*/
|
775 |
-
private $base_url;
|
776 |
-
|
777 |
-
/**
|
778 |
-
* @var string
|
779 |
-
*/
|
780 |
-
private $base_blog_url;
|
781 |
-
|
782 |
-
/**
|
783 |
-
* @param string $file
|
784 |
-
*
|
785 |
-
* @return array|WP_Error
|
786 |
-
*/
|
787 |
-
public function parse( $file ) {
|
788 |
-
$this->clear();
|
789 |
-
|
790 |
-
$xml = xml_parser_create( 'UTF-8' );
|
791 |
-
xml_parser_set_option( $xml, XML_OPTION_SKIP_WHITE, 1 );
|
792 |
-
xml_parser_set_option( $xml, XML_OPTION_CASE_FOLDING, 0 );
|
793 |
-
xml_set_object( $xml, $this );
|
794 |
-
|
795 |
-
xml_set_character_data_handler( $xml, function ( $parser, $cdata ) {
|
796 |
-
$this->cdata( $cdata );
|
797 |
-
} );
|
798 |
-
|
799 |
-
$tag_open_callback = function ( $parse, $tag, $attr ) {
|
800 |
-
$this->tag_open( $tag, $attr );
|
801 |
-
};
|
802 |
-
|
803 |
-
$tag_close_callback = function ( $parser, $tag ) {
|
804 |
-
$this->tag_close( $tag );
|
805 |
-
};
|
806 |
-
|
807 |
-
xml_set_element_handler( $xml, $tag_open_callback, $tag_close_callback );
|
808 |
-
|
809 |
-
if ( ! xml_parse( $xml, file_get_contents( $file ), true ) ) {
|
810 |
-
$current_line = xml_get_current_line_number( $xml );
|
811 |
-
$current_column = xml_get_current_column_number( $xml );
|
812 |
-
$error_code = xml_get_error_code( $xml );
|
813 |
-
$error_string = xml_error_string( $error_code );
|
814 |
-
|
815 |
-
return new WP_Error( 'XML_parse_error', 'There was an error when reading this WXR file', [
|
816 |
-
$current_line,
|
817 |
-
$current_column,
|
818 |
-
$error_string,
|
819 |
-
] );
|
820 |
-
}
|
821 |
-
xml_parser_free( $xml );
|
822 |
-
|
823 |
-
if ( ! preg_match( '/^\d+\.\d+$/', $this->wxr_version ) ) {
|
824 |
-
return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpr-addons' ) );
|
825 |
-
}
|
826 |
-
|
827 |
-
return array(
|
828 |
-
'authors' => $this->authors,
|
829 |
-
'posts' => $this->posts,
|
830 |
-
'categories' => $this->category,
|
831 |
-
'tags' => $this->tag,
|
832 |
-
'terms' => $this->term,
|
833 |
-
'base_url' => $this->base_url,
|
834 |
-
'base_blog_url' => $this->base_blog_url,
|
835 |
-
'version' => $this->wxr_version,
|
836 |
-
);
|
837 |
-
}
|
838 |
-
|
839 |
-
private function tag_open( $tag, $attr ) {
|
840 |
-
if ( in_array( $tag, self::$wp_tags ) ) {
|
841 |
-
$this->in_tag = substr( $tag, 3 );
|
842 |
-
|
843 |
-
return;
|
844 |
-
}
|
845 |
-
|
846 |
-
if ( in_array( $tag, self::$wp_sub_tags ) ) {
|
847 |
-
$this->in_sub_tag = substr( $tag, 3 );
|
848 |
-
|
849 |
-
return;
|
850 |
-
}
|
851 |
-
|
852 |
-
switch ( $tag ) {
|
853 |
-
case 'category':
|
854 |
-
if ( isset( $attr['domain'], $attr['nicename'] ) ) {
|
855 |
-
$this->sub_data['domain'] = $attr['domain'];
|
856 |
-
$this->sub_data['slug'] = $attr['nicename'];
|
857 |
-
}
|
858 |
-
break;
|
859 |
-
case 'item':
|
860 |
-
$this->in_post = true;
|
861 |
-
// No break !!!.
|
862 |
-
case 'title':
|
863 |
-
if ( $this->in_post ) {
|
864 |
-
$this->in_tag = 'post_title';
|
865 |
-
}
|
866 |
-
break;
|
867 |
-
case 'guid':
|
868 |
-
$this->in_tag = 'guid';
|
869 |
-
break;
|
870 |
-
case 'dc:creator':
|
871 |
-
$this->in_tag = 'post_author';
|
872 |
-
break;
|
873 |
-
case 'content:encoded':
|
874 |
-
$this->in_tag = 'post_content';
|
875 |
-
break;
|
876 |
-
case 'excerpt:encoded':
|
877 |
-
$this->in_tag = 'post_excerpt';
|
878 |
-
break;
|
879 |
-
|
880 |
-
case 'wp:term_slug':
|
881 |
-
$this->in_tag = 'slug';
|
882 |
-
break;
|
883 |
-
case 'wp:meta_key':
|
884 |
-
$this->in_sub_tag = 'key';
|
885 |
-
break;
|
886 |
-
case 'wp:meta_value':
|
887 |
-
$this->in_sub_tag = 'value';
|
888 |
-
break;
|
889 |
-
}
|
890 |
-
}
|
891 |
-
|
892 |
-
private function cdata( $cdata ) {
|
893 |
-
if ( ! trim( $cdata ) ) {
|
894 |
-
return;
|
895 |
-
}
|
896 |
-
|
897 |
-
if ( false !== $this->in_tag || false !== $this->in_sub_tag ) {
|
898 |
-
$this->cdata .= $cdata;
|
899 |
-
} else {
|
900 |
-
$this->cdata .= trim( $cdata );
|
901 |
-
}
|
902 |
-
}
|
903 |
-
|
904 |
-
private function tag_close( $tag ) {
|
905 |
-
switch ( $tag ) {
|
906 |
-
case 'wp:comment':
|
907 |
-
unset( $this->sub_data['key'], $this->sub_data['value'] ); // Remove meta sub_data.
|
908 |
-
if ( ! empty( $this->sub_data ) ) {
|
909 |
-
$this->data['comments'][] = $this->sub_data;
|
910 |
-
}
|
911 |
-
$this->sub_data = [];
|
912 |
-
break;
|
913 |
-
case 'wp:commentmeta':
|
914 |
-
$this->sub_data['commentmeta'][] = [
|
915 |
-
'key' => $this->sub_data['key'],
|
916 |
-
'value' => $this->sub_data['value'],
|
917 |
-
];
|
918 |
-
break;
|
919 |
-
case 'category':
|
920 |
-
if ( ! empty( $this->sub_data ) ) {
|
921 |
-
$this->sub_data['name'] = $this->cdata;
|
922 |
-
$this->data['terms'][] = $this->sub_data;
|
923 |
-
}
|
924 |
-
$this->sub_data = [];
|
925 |
-
break;
|
926 |
-
case 'wp:postmeta':
|
927 |
-
if ( ! empty( $this->sub_data ) ) {
|
928 |
-
$this->data['postmeta'][] = $this->sub_data;
|
929 |
-
}
|
930 |
-
$this->sub_data = [];
|
931 |
-
break;
|
932 |
-
case 'item':
|
933 |
-
$this->posts[] = $this->data;
|
934 |
-
$this->data = [];
|
935 |
-
break;
|
936 |
-
case 'wp:category':
|
937 |
-
case 'wp:tag':
|
938 |
-
case 'wp:term':
|
939 |
-
$n = substr( $tag, 3 );
|
940 |
-
array_push( $this->$n, $this->data );
|
941 |
-
$this->data = [];
|
942 |
-
break;
|
943 |
-
case 'wp:termmeta':
|
944 |
-
if ( ! empty( $this->sub_data ) ) {
|
945 |
-
$this->data['termmeta'][] = $this->sub_data;
|
946 |
-
}
|
947 |
-
$this->sub_data = [];
|
948 |
-
break;
|
949 |
-
case 'wp:author':
|
950 |
-
if ( ! empty( $this->data['author_login'] ) ) {
|
951 |
-
$this->authors[ $this->data['author_login'] ] = $this->data;
|
952 |
-
}
|
953 |
-
$this->data = [];
|
954 |
-
break;
|
955 |
-
case 'wp:base_site_url':
|
956 |
-
$this->base_url = $this->cdata;
|
957 |
-
if ( ! isset( $this->base_blog_url ) ) {
|
958 |
-
$this->base_blog_url = $this->cdata;
|
959 |
-
}
|
960 |
-
break;
|
961 |
-
case 'wp:base_blog_url':
|
962 |
-
$this->base_blog_url = $this->cdata;
|
963 |
-
break;
|
964 |
-
case 'wp:wxr_version':
|
965 |
-
$this->wxr_version = $this->cdata;
|
966 |
-
break;
|
967 |
-
|
968 |
-
default:
|
969 |
-
if ( $this->in_sub_tag ) {
|
970 |
-
$this->sub_data[ $this->in_sub_tag ] = $this->cdata;
|
971 |
-
$this->in_sub_tag = false;
|
972 |
-
} elseif ( $this->in_tag ) {
|
973 |
-
$this->data[ $this->in_tag ] = $this->cdata;
|
974 |
-
$this->in_tag = false;
|
975 |
-
}
|
976 |
-
}
|
977 |
-
|
978 |
-
$this->cdata = '';
|
979 |
-
}
|
980 |
-
|
981 |
-
private function clear() {
|
982 |
-
$this->wxr_version = '';
|
983 |
-
|
984 |
-
$this->cdata = '';
|
985 |
-
$this->data = [];
|
986 |
-
$this->sub_data = [];
|
987 |
-
|
988 |
-
$this->in_post = false;
|
989 |
-
$this->in_tag = false;
|
990 |
-
$this->in_sub_tag = false;
|
991 |
-
|
992 |
-
$this->authors = [];
|
993 |
-
$this->posts = [];
|
994 |
-
$this->term = [];
|
995 |
-
$this->category = [];
|
996 |
-
$this->tag = [];
|
997 |
-
}
|
998 |
-
}
|
999 |
-
|
1000 |
-
|
1001 |
-
/**
|
1002 |
-
* WordPress eXtended RSS file parser implementations,
|
1003 |
-
* Originally made by WordPress part of WordPress/Importer.
|
1004 |
-
* https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser.php
|
1005 |
-
*
|
1006 |
-
* What was done:
|
1007 |
-
* Reformat of the code.
|
1008 |
-
* Changed text domain.
|
1009 |
-
*/
|
1010 |
-
|
1011 |
-
/**
|
1012 |
-
* WordPress Importer class for managing parsing of WXR files.
|
1013 |
-
*/
|
1014 |
-
class WXR_Parser {
|
1015 |
-
|
1016 |
-
public function parse( $file ) {
|
1017 |
-
// Attempt to use proper XML parsers first.
|
1018 |
-
if ( extension_loaded( 'simplexml' ) ) {
|
1019 |
-
$parser = new WXR_Parser_SimpleXML();
|
1020 |
-
$result = $parser->parse( $file );
|
1021 |
-
|
1022 |
-
// If SimpleXML succeeds or this is an invalid WXR file then return the results.
|
1023 |
-
if ( ! is_wp_error( $result ) || 'SimpleXML_parse_error' != $result->get_error_code() ) {
|
1024 |
-
return $result;
|
1025 |
-
}
|
1026 |
-
} elseif ( extension_loaded( 'xml' ) ) {
|
1027 |
-
$parser = new WXR_Parser_XML();
|
1028 |
-
$result = $parser->parse( $file );
|
1029 |
-
|
1030 |
-
// If XMLParser succeeds or this is an invalid WXR file then return the results.
|
1031 |
-
if ( ! is_wp_error( $result ) || 'XML_parse_error' != $result->get_error_code() ) {
|
1032 |
-
return $result;
|
1033 |
-
}
|
1034 |
-
}
|
1035 |
-
|
1036 |
-
// Use regular expressions if nothing else available or this is bad XML.
|
1037 |
-
$parser = new WXR_Parser_Regex();
|
1038 |
-
|
1039 |
-
return $parser->parse( $file );
|
1040 |
-
}
|
1041 |
-
}
|
1 |
+
<?php
|
2 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
3 |
+
exit; // Exit if accessed directly.
|
4 |
+
}
|
5 |
+
|
6 |
+
/**
|
7 |
+
* WordPress eXtended RSS file parser implementations
|
8 |
+
*
|
9 |
+
* @package WordPress
|
10 |
+
* @subpackage Importer
|
11 |
+
*/
|
12 |
+
|
13 |
+
/**
|
14 |
+
* WXR Parser that uses regular expressions. Fallback for installs without an XML parser.
|
15 |
+
*/
|
16 |
+
class WXR_Parser_Regex {
|
17 |
+
/**
|
18 |
+
* @var bool
|
19 |
+
*/
|
20 |
+
private $has_gzip;
|
21 |
+
|
22 |
+
private $authors = [];
|
23 |
+
private $posts = [];
|
24 |
+
private $categories = [];
|
25 |
+
private $tags = [];
|
26 |
+
private $terms = [];
|
27 |
+
private $base_url = '';
|
28 |
+
private $base_blog_url = '';
|
29 |
+
|
30 |
+
/**
|
31 |
+
* @param string $file
|
32 |
+
*
|
33 |
+
* @return array|\WP_Error
|
34 |
+
*/
|
35 |
+
public function parse( $file ) {
|
36 |
+
$wxr_version = '';
|
37 |
+
$in_multiline = false;
|
38 |
+
|
39 |
+
$multiline_content = '';
|
40 |
+
|
41 |
+
$multiline_tags = [
|
42 |
+
'item' => [
|
43 |
+
'posts',
|
44 |
+
function ( $post ) {
|
45 |
+
return $this->process_post( $post );
|
46 |
+
},
|
47 |
+
],
|
48 |
+
'wp:category' => [
|
49 |
+
'categories',
|
50 |
+
function ( $category ) {
|
51 |
+
return $this->process_category( $category );
|
52 |
+
},
|
53 |
+
],
|
54 |
+
'wp:tag' => [
|
55 |
+
'tags',
|
56 |
+
function ( $tag ) {
|
57 |
+
return $this->process_tag( $tag );
|
58 |
+
},
|
59 |
+
],
|
60 |
+
'wp:term' => [
|
61 |
+
'terms',
|
62 |
+
function ( $term ) {
|
63 |
+
return $this->process_term( $term );
|
64 |
+
},
|
65 |
+
],
|
66 |
+
];
|
67 |
+
|
68 |
+
$fp = $this->fopen( $file, 'r' );
|
69 |
+
if ( $fp ) {
|
70 |
+
while ( ! $this->feof( $fp ) ) {
|
71 |
+
$importline = rtrim( $this->fgets( $fp ) );
|
72 |
+
|
73 |
+
if ( ! $wxr_version && preg_match( '|<wp:wxr_version>(\d+\.\d+)</wp:wxr_version>|', $importline, $version ) ) {
|
74 |
+
$wxr_version = $version[1];
|
75 |
+
}
|
76 |
+
|
77 |
+
if ( false !== strpos( $importline, '<wp:base_site_url>' ) ) {
|
78 |
+
preg_match( '|<wp:base_site_url>(.*?)</wp:base_site_url>|is', $importline, $url );
|
79 |
+
$this->base_url = $url[1];
|
80 |
+
continue;
|
81 |
+
}
|
82 |
+
|
83 |
+
if ( false !== strpos( $importline, '<wp:base_blog_url>' ) ) {
|
84 |
+
preg_match( '|<wp:base_blog_url>(.*?)</wp:base_blog_url>|is', $importline, $blog_url );
|
85 |
+
$this->base_blog_url = $blog_url[1];
|
86 |
+
continue;
|
87 |
+
} else {
|
88 |
+
$this->base_blog_url = $this->base_url;
|
89 |
+
}
|
90 |
+
|
91 |
+
if ( false !== strpos( $importline, '<wp:author>' ) ) {
|
92 |
+
preg_match( '|<wp:author>(.*?)</wp:author>|is', $importline, $author );
|
93 |
+
$a = $this->process_author( $author[1] );
|
94 |
+
$this->authors[ $a['author_login'] ] = $a;
|
95 |
+
continue;
|
96 |
+
}
|
97 |
+
|
98 |
+
foreach ( $multiline_tags as $tag => $handler ) {
|
99 |
+
// Handle multi-line tags on a singular line.
|
100 |
+
if ( preg_match( '|<'. $tag .'>(.*?)</'. $tag .'>|is', $importline, $matches ) ) {
|
101 |
+
$this->{$handler[0]}[] = call_user_func( $handler[1], $matches[1] );
|
102 |
+
|
103 |
+
continue;
|
104 |
+
}
|
105 |
+
|
106 |
+
$pos = strpos( $importline, "<$tag>" );
|
107 |
+
|
108 |
+
if ( false !== $pos ) {
|
109 |
+
// Take note of any content after the opening tag.
|
110 |
+
$multiline_content = trim( substr( $importline, $pos + strlen( $tag ) + 2 ) );
|
111 |
+
|
112 |
+
// We don't want to have this line added to `$is_multiline` below.
|
113 |
+
$importline = '';
|
114 |
+
$in_multiline = $tag;
|
115 |
+
|
116 |
+
continue;
|
117 |
+
}
|
118 |
+
|
119 |
+
$pos = strpos( $importline, "</$tag>" );
|
120 |
+
|
121 |
+
if ( false !== $pos ) {
|
122 |
+
$in_multiline = false;
|
123 |
+
$multiline_content .= trim( substr( $importline, 0, $pos ) );
|
124 |
+
|
125 |
+
$this->{$handler[0]}[] = call_user_func( $handler[1], $multiline_content );
|
126 |
+
}
|
127 |
+
}
|
128 |
+
|
129 |
+
if ( $in_multiline && $importline ) {
|
130 |
+
$multiline_content .= $importline . "\n";
|
131 |
+
}
|
132 |
+
}
|
133 |
+
|
134 |
+
$this->fclose( $fp );
|
135 |
+
}
|
136 |
+
|
137 |
+
if ( ! $wxr_version ) {
|
138 |
+
return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpr-addons' ) );
|
139 |
+
}
|
140 |
+
|
141 |
+
return [
|
142 |
+
'authors' => $this->authors,
|
143 |
+
'posts' => $this->posts,
|
144 |
+
'categories' => $this->categories,
|
145 |
+
'tags' => $this->tags,
|
146 |
+
'terms' => $this->terms,
|
147 |
+
'base_url' => $this->base_url,
|
148 |
+
'base_blog_url' => $this->base_blog_url,
|
149 |
+
'version' => $wxr_version,
|
150 |
+
];
|
151 |
+
}
|
152 |
+
|
153 |
+
private function process_category( $category ) {
|
154 |
+
$term = [
|
155 |
+
'term_id' => $this->get_tag( $category, 'wp:term_id' ),
|
156 |
+
'cat_name' => $this->get_tag( $category, 'wp:cat_name' ),
|
157 |
+
'category_nicename' => $this->get_tag( $category, 'wp:category_nicename' ),
|
158 |
+
'category_parent' => $this->get_tag( $category, 'wp:category_parent' ),
|
159 |
+
'category_description' => $this->get_tag( $category, 'wp:category_description' ),
|
160 |
+
];
|
161 |
+
|
162 |
+
$term_meta = $this->process_meta( $category, 'wp:termmeta' );
|
163 |
+
if ( ! empty( $term_meta ) ) {
|
164 |
+
$term['termmeta'] = $term_meta;
|
165 |
+
}
|
166 |
+
|
167 |
+
return $term;
|
168 |
+
}
|
169 |
+
|
170 |
+
private function process_tag( $tag ) {
|
171 |
+
$term = [
|
172 |
+
'term_id' => $this->get_tag( $tag, 'wp:term_id' ),
|
173 |
+
'tag_name' => $this->get_tag( $tag, 'wp:tag_name' ),
|
174 |
+
'tag_slug' => $this->get_tag( $tag, 'wp:tag_slug' ),
|
175 |
+
'tag_description' => $this->get_tag( $tag, 'wp:tag_description' ),
|
176 |
+
];
|
177 |
+
|
178 |
+
$term_meta = $this->process_meta( $tag, 'wp:termmeta' );
|
179 |
+
if ( ! empty( $term_meta ) ) {
|
180 |
+
$term['termmeta'] = $term_meta;
|
181 |
+
}
|
182 |
+
|
183 |
+
return $term;
|
184 |
+
}
|
185 |
+
|
186 |
+
private function process_term( $term ) {
|
187 |
+
$term_data = [
|
188 |
+
'term_id' => $this->get_tag( $term, 'wp:term_id' ),
|
189 |
+
'term_taxonomy' => $this->get_tag( $term, 'wp:term_taxonomy' ),
|
190 |
+
'slug' => $this->get_tag( $term, 'wp:term_slug' ),
|
191 |
+
'term_parent' => $this->get_tag( $term, 'wp:term_parent' ),
|
192 |
+
'term_name' => $this->get_tag( $term, 'wp:term_name' ),
|
193 |
+
'term_description' => $this->get_tag( $term, 'wp:term_description' ),
|
194 |
+
];
|
195 |
+
|
196 |
+
$term_meta = $this->process_meta( $term, 'wp:termmeta' );
|
197 |
+
if ( ! empty( $term_meta ) ) {
|
198 |
+
$term_data['termmeta'] = $term_meta;
|
199 |
+
}
|
200 |
+
|
201 |
+
return $term_data;
|
202 |
+
}
|
203 |
+
|
204 |
+
private function process_meta( $string, $tag ) {
|
205 |
+
$parsed_meta = [];
|
206 |
+
|
207 |
+
preg_match_all( "|<$tag>(.+?)</$tag>|is", $string, $meta );
|
208 |
+
|
209 |
+
if ( ! isset( $meta[1] ) ) {
|
210 |
+
return $parsed_meta;
|
211 |
+
}
|
212 |
+
|
213 |
+
foreach ( $meta[1] as $m ) {
|
214 |
+
$parsed_meta[] = [
|
215 |
+
'key' => $this->get_tag( $m, 'wp:meta_key' ),
|
216 |
+
'value' => $this->get_tag( $m, 'wp:meta_value' ),
|
217 |
+
];
|
218 |
+
}
|
219 |
+
|
220 |
+
return $parsed_meta;
|
221 |
+
}
|
222 |
+
|
223 |
+
private function process_author( $a ) {
|
224 |
+
return [
|
225 |
+
'author_id' => $this->get_tag( $a, 'wp:author_id' ),
|
226 |
+
'author_login' => $this->get_tag( $a, 'wp:author_login' ),
|
227 |
+
'author_email' => $this->get_tag( $a, 'wp:author_email' ),
|
228 |
+
'author_display_name' => $this->get_tag( $a, 'wp:author_display_name' ),
|
229 |
+
'author_first_name' => $this->get_tag( $a, 'wp:author_first_name' ),
|
230 |
+
'author_last_name' => $this->get_tag( $a, 'wp:author_last_name' ),
|
231 |
+
];
|
232 |
+
}
|
233 |
+
|
234 |
+
private function process_post( $post ) {
|
235 |
+
$normalize_tag_callback = function ( $matches ) {
|
236 |
+
return $this->normalize_tag( $matches );
|
237 |
+
};
|
238 |
+
|
239 |
+
$post_id = $this->get_tag( $post, 'wp:post_id' );
|
240 |
+
$post_title = $this->get_tag( $post, 'title' );
|
241 |
+
$post_date = $this->get_tag( $post, 'wp:post_date' );
|
242 |
+
$post_date_gmt = $this->get_tag( $post, 'wp:post_date_gmt' );
|
243 |
+
$comment_status = $this->get_tag( $post, 'wp:comment_status' );
|
244 |
+
$ping_status = $this->get_tag( $post, 'wp:ping_status' );
|
245 |
+
$status = $this->get_tag( $post, 'wp:status' );
|
246 |
+
$post_name = $this->get_tag( $post, 'wp:post_name' );
|
247 |
+
$post_parent = $this->get_tag( $post, 'wp:post_parent' );
|
248 |
+
$menu_order = $this->get_tag( $post, 'wp:menu_order' );
|
249 |
+
$post_type = $this->get_tag( $post, 'wp:post_type' );
|
250 |
+
$post_password = $this->get_tag( $post, 'wp:post_password' );
|
251 |
+
$is_sticky = $this->get_tag( $post, 'wp:is_sticky' );
|
252 |
+
$guid = $this->get_tag( $post, 'guid' );
|
253 |
+
$post_author = $this->get_tag( $post, 'dc:creator' );
|
254 |
+
|
255 |
+
$post_excerpt = $this->get_tag( $post, 'excerpt:encoded' );
|
256 |
+
$post_excerpt = preg_replace_callback( '|<(/?[A-Z]+)|', $normalize_tag_callback, $post_excerpt );
|
257 |
+
$post_excerpt = str_replace( '<br>', '<br />', $post_excerpt );
|
258 |
+
$post_excerpt = str_replace( '<hr>', '<hr />', $post_excerpt );
|
259 |
+
|
260 |
+
$post_content = $this->get_tag( $post, 'content:encoded' );
|
261 |
+
$post_content = preg_replace_callback( '|<(/?[A-Z]+)|', $normalize_tag_callback, $post_content );
|
262 |
+
$post_content = str_replace( '<br>', '<br />', $post_content );
|
263 |
+
$post_content = str_replace( '<hr>', '<hr />', $post_content );
|
264 |
+
|
265 |
+
$postdata = compact( 'post_id', 'post_author', 'post_date', 'post_date_gmt', 'post_content', 'post_excerpt', 'post_title', 'status', 'post_name', 'comment_status', 'ping_status', 'guid', 'post_parent', 'menu_order', 'post_type', 'post_password', 'is_sticky' );
|
266 |
+
|
267 |
+
$attachment_url = $this->get_tag( $post, 'wp:attachment_url' );
|
268 |
+
if ( $attachment_url ) {
|
269 |
+
$postdata['attachment_url'] = $attachment_url;
|
270 |
+
}
|
271 |
+
|
272 |
+
preg_match_all( '|<category domain="([^"]+?)" nicename="([^"]+?)">(.+?)</category>|is', $post, $terms, PREG_SET_ORDER );
|
273 |
+
foreach ( $terms as $t ) {
|
274 |
+
$post_terms[] = [
|
275 |
+
'slug' => $t[2],
|
276 |
+
'domain' => $t[1],
|
277 |
+
'name' => str_replace( [ '<![CDATA[', ']]>' ], '', $t[3] ),
|
278 |
+
];
|
279 |
+
}
|
280 |
+
if ( ! empty( $post_terms ) ) {
|
281 |
+
$postdata['terms'] = $post_terms;
|
282 |
+
}
|
283 |
+
|
284 |
+
preg_match_all( '|<wp:comment>(.+?)</wp:comment>|is', $post, $comments );
|
285 |
+
$comments = $comments[1];
|
286 |
+
if ( $comments ) {
|
287 |
+
foreach ( $comments as $comment ) {
|
288 |
+
$post_comments[] = [
|
289 |
+
'comment_id' => $this->get_tag( $comment, 'wp:comment_id' ),
|
290 |
+
'comment_author' => $this->get_tag( $comment, 'wp:comment_author' ),
|
291 |
+
'comment_author_email' => $this->get_tag( $comment, 'wp:comment_author_email' ),
|
292 |
+
'comment_author_IP' => $this->get_tag( $comment, 'wp:comment_author_IP' ),
|
293 |
+
'comment_author_url' => $this->get_tag( $comment, 'wp:comment_author_url' ),
|
294 |
+
'comment_date' => $this->get_tag( $comment, 'wp:comment_date' ),
|
295 |
+
'comment_date_gmt' => $this->get_tag( $comment, 'wp:comment_date_gmt' ),
|
296 |
+
'comment_content' => $this->get_tag( $comment, 'wp:comment_content' ),
|
297 |
+
'comment_approved' => $this->get_tag( $comment, 'wp:comment_approved' ),
|
298 |
+
'comment_type' => $this->get_tag( $comment, 'wp:comment_type' ),
|
299 |
+
'comment_parent' => $this->get_tag( $comment, 'wp:comment_parent' ),
|
300 |
+
'comment_user_id' => $this->get_tag( $comment, 'wp:comment_user_id' ),
|
301 |
+
'commentmeta' => $this->process_meta( $comment, 'wp:commentmeta' ),
|
302 |
+
];
|
303 |
+
}
|
304 |
+
}
|
305 |
+
if ( ! empty( $post_comments ) ) {
|
306 |
+
$postdata['comments'] = $post_comments;
|
307 |
+
}
|
308 |
+
|
309 |
+
$post_meta = $this->process_meta( $post, 'wp:postmeta' );
|
310 |
+
if ( ! empty( $post_meta ) ) {
|
311 |
+
$postdata['postmeta'] = $post_meta;
|
312 |
+
}
|
313 |
+
|
314 |
+
return $postdata;
|
315 |
+
}
|
316 |
+
|
317 |
+
private function get_tag( $string, $tag ) {
|
318 |
+
preg_match( "|<$tag.*?>(.*?)</$tag>|is", $string, $return );
|
319 |
+
if ( isset( $return[1] ) ) {
|
320 |
+
if ( substr( $return[1], 0, 9 ) == '<![CDATA[' ) {
|
321 |
+
if ( strpos( $return[1], ']]]]><![CDATA[>' ) !== false ) {
|
322 |
+
preg_match_all( '|<!\[CDATA\[(.*?)\]\]>|s', $return[1], $matches );
|
323 |
+
$return = '';
|
324 |
+
foreach ( $matches[1] as $match ) {
|
325 |
+
$return .= $match;
|
326 |
+
}
|
327 |
+
} else {
|
328 |
+
$return = preg_replace( '|^<!\[CDATA\[(.*)\]\]>$|s', '$1', $return[1] );
|
329 |
+
}
|
330 |
+
} else {
|
331 |
+
$return = $return[1];
|
332 |
+
}
|
333 |
+
} else {
|
334 |
+
$return = '';
|
335 |
+
}
|
336 |
+
|
337 |
+
return $return;
|
338 |
+
}
|
339 |
+
|
340 |
+
private function normalize_tag( $matches ) {
|
341 |
+
return '<' . strtolower( $matches[1] );
|
342 |
+
}
|
343 |
+
|
344 |
+
private function fopen( $filename, $mode = 'r' ) {
|
345 |
+
if ( $this->has_gzip ) {
|
346 |
+
return gzopen( $filename, $mode );
|
347 |
+
}
|
348 |
+
|
349 |
+
return fopen( $filename, $mode );
|
350 |
+
}
|
351 |
+
|
352 |
+
private function feof( $fp ) {
|
353 |
+
if ( $this->has_gzip ) {
|
354 |
+
return gzeof( $fp );
|
355 |
+
}
|
356 |
+
|
357 |
+
return feof( $fp );
|
358 |
+
}
|
359 |
+
|
360 |
+
private function fgets( $fp, $len = 8192 ) {
|
361 |
+
if ( $this->has_gzip ) {
|
362 |
+
return gzgets( $fp, $len );
|
363 |
+
}
|
364 |
+
|
365 |
+
return fgets( $fp, $len );
|
366 |
+
}
|
367 |
+
|
368 |
+
private function fclose( $fp ) {
|
369 |
+
if ( $this->has_gzip ) {
|
370 |
+
return gzclose( $fp );
|
371 |
+
}
|
372 |
+
|
373 |
+
return fclose( $fp );
|
374 |
+
}
|
375 |
+
|
376 |
+
public function __construct() {
|
377 |
+
$this->has_gzip = is_callable( 'gzopen' );
|
378 |
+
}
|
379 |
+
}
|
380 |
+
|
381 |
+
/**
|
382 |
+
* WordPress eXtended RSS file parser implementations,
|
383 |
+
* Originally made by WordPress part of WordPress/Importer.
|
384 |
+
* https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser-simplexml.php
|
385 |
+
*
|
386 |
+
* What was done:
|
387 |
+
* Reformat of the code.
|
388 |
+
* Removed variable '$internal_errors'.
|
389 |
+
* Changed text domain.
|
390 |
+
*/
|
391 |
+
|
392 |
+
/**
|
393 |
+
* WXR Parser that makes use of the SimpleXML PHP extension.
|
394 |
+
*/
|
395 |
+
class WXR_Parser_SimpleXML {
|
396 |
+
|
397 |
+
/**
|
398 |
+
* @param string $file
|
399 |
+
*
|
400 |
+
* @return array|\WP_Error
|
401 |
+
*/
|
402 |
+
public function parse( $file ) {
|
403 |
+
$authors = [];
|
404 |
+
$posts = [];
|
405 |
+
$categories = [];
|
406 |
+
$tags = [];
|
407 |
+
$terms = [];
|
408 |
+
|
409 |
+
libxml_use_internal_errors( true );
|
410 |
+
|
411 |
+
$dom = new \DOMDocument();
|
412 |
+
$old_value = null;
|
413 |
+
|
414 |
+
$libxml_disable_entity_loader_exists = function_exists( 'libxml_disable_entity_loader' );
|
415 |
+
|
416 |
+
if ( $libxml_disable_entity_loader_exists ) {
|
417 |
+
$old_value = libxml_disable_entity_loader( true ); // phpcs:ignore Generic.PHP.DeprecatedFunctions.Deprecated
|
418 |
+
}
|
419 |
+
|
420 |
+
$success = $dom->loadXML( file_get_contents( $file ) );
|
421 |
+
|
422 |
+
if ( $libxml_disable_entity_loader_exists && ! is_null( $old_value ) ) {
|
423 |
+
libxml_disable_entity_loader( $old_value ); // phpcs:ignore Generic.PHP.DeprecatedFunctions.Deprecated
|
424 |
+
}
|
425 |
+
|
426 |
+
if ( ! $success || isset( $dom->doctype ) ) {
|
427 |
+
return new WP_Error( 'SimpleXML_parse_error', esc_html__( 'There was an error when reading this WXR file', 'wpr-addons' ), libxml_get_errors() );
|
428 |
+
}
|
429 |
+
|
430 |
+
$xml = simplexml_import_dom( $dom );
|
431 |
+
unset( $dom );
|
432 |
+
|
433 |
+
// Halt if loading produces an error.
|
434 |
+
if ( ! $xml ) {
|
435 |
+
return new WP_Error( 'SimpleXML_parse_error', esc_html__( 'There was an error when reading this WXR file', 'wpr-addons' ), libxml_get_errors() );
|
436 |
+
}
|
437 |
+
|
438 |
+
$wxr_version = $xml->xpath( '/rss/channel/wp:wxr_version' );
|
439 |
+
if ( ! $wxr_version ) {
|
440 |
+
return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpr-addons' ) );
|
441 |
+
}
|
442 |
+
|
443 |
+
$wxr_version = (string) trim( $wxr_version[0] );
|
444 |
+
// Confirm that we are dealing with the correct file format.
|
445 |
+
if ( ! preg_match( '/^\d+\.\d+$/', $wxr_version ) ) {
|
446 |
+
return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpr-addons' ) );
|
447 |
+
}
|
448 |
+
|
449 |
+
$base_url = $xml->xpath( '/rss/channel/wp:base_site_url' );
|
450 |
+
$base_url = (string) trim( isset( $base_url[0] ) ? $base_url[0] : '' );
|
451 |
+
|
452 |
+
$base_blog_url = $xml->xpath( '/rss/channel/wp:base_blog_url' );
|
453 |
+
if ( $base_blog_url ) {
|
454 |
+
$base_blog_url = (string) trim( $base_blog_url[0] );
|
455 |
+
} else {
|
456 |
+
$base_blog_url = $base_url;
|
457 |
+
}
|
458 |
+
|
459 |
+
$page_on_front = $xml->xpath( '/rss/channel/wp:page_on_front' );
|
460 |
+
|
461 |
+
if ( $page_on_front ) {
|
462 |
+
$page_on_front = (int) $page_on_front[0];
|
463 |
+
}
|
464 |
+
|
465 |
+
$namespaces = $xml->getDocNamespaces();
|
466 |
+
if ( ! isset( $namespaces['wp'] ) ) {
|
467 |
+
$namespaces['wp'] = 'http://wordpress.org/export/1.1/';
|
468 |
+
}
|
469 |
+
if ( ! isset( $namespaces['excerpt'] ) ) {
|
470 |
+
$namespaces['excerpt'] = 'http://wordpress.org/export/1.1/excerpt/';
|
471 |
+
}
|
472 |
+
|
473 |
+
// Grab authors.
|
474 |
+
foreach ( $xml->xpath( '/rss/channel/wp:author' ) as $author_arr ) {
|
475 |
+
$a = $author_arr->children( $namespaces['wp'] );
|
476 |
+
$login = (string) $a->author_login;
|
477 |
+
$authors[ $login ] = [
|
478 |
+
'author_id' => (int) $a->author_id,
|
479 |
+
'author_login' => $login,
|
480 |
+
'author_email' => (string) $a->author_email,
|
481 |
+
'author_display_name' => (string) $a->author_display_name,
|
482 |
+
'author_first_name' => (string) $a->author_first_name,
|
483 |
+
'author_last_name' => (string) $a->author_last_name,
|
484 |
+
];
|
485 |
+
}
|
486 |
+
|
487 |
+
// Grab cats, tags and terms.
|
488 |
+
foreach ( $xml->xpath( '/rss/channel/wp:category' ) as $term_arr ) {
|
489 |
+
$t = $term_arr->children( $namespaces['wp'] );
|
490 |
+
$category = [
|
491 |
+
'term_id' => (int) $t->term_id,
|
492 |
+
'category_nicename' => (string) $t->category_nicename,
|
493 |
+
'category_parent' => (string) $t->category_parent,
|
494 |
+
'cat_name' => (string) $t->cat_name,
|
495 |
+
'category_description' => (string) $t->category_description,
|
496 |
+
];
|
497 |
+
|
498 |
+
foreach ( $t->termmeta as $meta ) {
|
499 |
+
$category['termmeta'][] = [
|
500 |
+
'key' => (string) $meta->meta_key,
|
501 |
+
'value' => (string) $meta->meta_value,
|
502 |
+
];
|
503 |
+
}
|
504 |
+
|
505 |
+
$categories[] = $category;
|
506 |
+
}
|
507 |
+
|
508 |
+
foreach ( $xml->xpath( '/rss/channel/wp:tag' ) as $term_arr ) {
|
509 |
+
$t = $term_arr->children( $namespaces['wp'] );
|
510 |
+
$tag = [
|
511 |
+
'term_id' => (int) $t->term_id,
|
512 |
+
'tag_slug' => (string) $t->tag_slug,
|
513 |
+
'tag_name' => (string) $t->tag_name,
|
514 |
+
'tag_description' => (string) $t->tag_description,
|
515 |
+
];
|
516 |
+
|
517 |
+
foreach ( $t->termmeta as $meta ) {
|
518 |
+
$tag['termmeta'][] = [
|
519 |
+
'key' => (string) $meta->meta_key,
|
520 |
+
'value' => (string) $meta->meta_value,
|
521 |
+
];
|
522 |
+
}
|
523 |
+
|
524 |
+
$tags[] = $tag;
|
525 |
+
}
|
526 |
+
|
527 |
+
foreach ( $xml->xpath( '/rss/channel/wp:term' ) as $term_arr ) {
|
528 |
+
$t = $term_arr->children( $namespaces['wp'] );
|
529 |
+
$term = [
|
530 |
+
'term_id' => (int) $t->term_id,
|
531 |
+
'term_taxonomy' => (string) $t->term_taxonomy,
|
532 |
+
'slug' => (string) $t->term_slug,
|
533 |
+
'term_parent' => (string) $t->term_parent,
|
534 |
+
'term_name' => (string) $t->term_name,
|
535 |
+
'term_description' => (string) $t->term_description,
|
536 |
+
];
|
537 |
+
|
538 |
+
foreach ( $t->termmeta as $meta ) {
|
539 |
+
$term['termmeta'][] = [
|
540 |
+
'key' => (string) $meta->meta_key,
|
541 |
+
'value' => (string) $meta->meta_value,
|
542 |
+
];
|
543 |
+
}
|
544 |
+
|
545 |
+
$terms[] = $term;
|
546 |
+
}
|
547 |
+
|
548 |
+
// Grab posts.
|
549 |
+
foreach ( $xml->channel->item as $item ) {
|
550 |
+
$post = [
|
551 |
+
'post_title' => (string) $item->title,
|
552 |
+
'guid' => (string) $item->guid,
|
553 |
+
];
|
554 |
+
|
555 |
+
$dc = $item->children( 'http://purl.org/dc/elements/1.1/' );
|
556 |
+
$post['post_author'] = (string) $dc->creator;
|
557 |
+
|
558 |
+
$content = $item->children( 'http://purl.org/rss/1.0/modules/content/' );
|
559 |
+
$excerpt = $item->children( $namespaces['excerpt'] );
|
560 |
+
$post['post_content'] = (string) $content->encoded;
|
561 |
+
$post['post_excerpt'] = (string) $excerpt->encoded;
|
562 |
+
|
563 |
+
$wp = $item->children( $namespaces['wp'] );
|
564 |
+
$post['post_id'] = (int) $wp->post_id;
|
565 |
+
$post['post_date'] = (string) $wp->post_date;
|
566 |
+
$post['post_date_gmt'] = (string) $wp->post_date_gmt;
|
567 |
+
$post['comment_status'] = (string) $wp->comment_status;
|
568 |
+
$post['ping_status'] = (string) $wp->ping_status;
|
569 |
+
$post['post_name'] = (string) $wp->post_name;
|
570 |
+
$post['status'] = (string) $wp->status;
|
571 |
+
$post['post_parent'] = (int) $wp->post_parent;
|
572 |
+
$post['menu_order'] = (int) $wp->menu_order;
|
573 |
+
$post['post_type'] = (string) $wp->post_type;
|
574 |
+
$post['post_password'] = (string) $wp->post_password;
|
575 |
+
$post['is_sticky'] = (int) $wp->is_sticky;
|
576 |
+
|
577 |
+
if ( isset( $wp->attachment_url ) ) {
|
578 |
+
$post['attachment_url'] = (string) $wp->attachment_url;
|
579 |
+
}
|
580 |
+
|
581 |
+
foreach ( $item->category as $c ) {
|
582 |
+
$att = $c->attributes();
|
583 |
+
if ( isset( $att['nicename'] ) ) {
|
584 |
+
$post['terms'][] = [
|
585 |
+
'name' => (string) $c,
|
586 |
+
'slug' => (string) $att['nicename'],
|
587 |
+
'domain' => (string) $att['domain'],
|
588 |
+
];
|
589 |
+
}
|
590 |
+
}
|
591 |
+
|
592 |
+
foreach ( $wp->postmeta as $meta ) {
|
593 |
+
$post['postmeta'][] = [
|
594 |
+
'key' => (string) $meta->meta_key,
|
595 |
+
'value' => (string) $meta->meta_value,
|
596 |
+
];
|
597 |
+
}
|
598 |
+
|
599 |
+
foreach ( $wp->comment as $comment ) {
|
600 |
+
$meta = [];
|
601 |
+
if ( isset( $comment->commentmeta ) ) {
|
602 |
+
foreach ( $comment->commentmeta as $m ) {
|
603 |
+
$meta[] = [
|
604 |
+
'key' => (string) $m->meta_key,
|
605 |
+
'value' => (string) $m->meta_value,
|
606 |
+
];
|
607 |
+
}
|
608 |
+
}
|
609 |
+
|
610 |
+
$post['comments'][] = [
|
611 |
+
'comment_id' => (int) $comment->comment_id,
|
612 |
+
'comment_author' => (string) $comment->comment_author,
|
613 |
+
'comment_author_email' => (string) $comment->comment_author_email,
|
614 |
+
'comment_author_IP' => (string) $comment->comment_author_IP,
|
615 |
+
'comment_author_url' => (string) $comment->comment_author_url,
|
616 |
+
'comment_date' => (string) $comment->comment_date,
|
617 |
+
'comment_date_gmt' => (string) $comment->comment_date_gmt,
|
618 |
+
'comment_content' => (string) $comment->comment_content,
|
619 |
+
'comment_approved' => (string) $comment->comment_approved,
|
620 |
+
'comment_type' => (string) $comment->comment_type,
|
621 |
+
'comment_parent' => (string) $comment->comment_parent,
|
622 |
+
'comment_user_id' => (int) $comment->comment_user_id,
|
623 |
+
'commentmeta' => $meta,
|
624 |
+
];
|
625 |
+
}
|
626 |
+
|
627 |
+
$posts[] = $post;
|
628 |
+
}
|
629 |
+
|
630 |
+
return [
|
631 |
+
'authors' => $authors,
|
632 |
+
'posts' => $posts,
|
633 |
+
'categories' => $categories,
|
634 |
+
'tags' => $tags,
|
635 |
+
'terms' => $terms,
|
636 |
+
'base_url' => $base_url,
|
637 |
+
'base_blog_url' => $base_blog_url,
|
638 |
+
'page_on_front' => $page_on_front,
|
639 |
+
'version' => $wxr_version,
|
640 |
+
];
|
641 |
+
}
|
642 |
+
}
|
643 |
+
|
644 |
+
|
645 |
+
/**
|
646 |
+
* WordPress eXtended RSS file parser implementations,
|
647 |
+
* Originally made by WordPress part of WordPress/Importer.
|
648 |
+
* https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser-xml.php
|
649 |
+
*
|
650 |
+
* What was done:
|
651 |
+
* Reformat of the code.
|
652 |
+
* Added PHPDOC.
|
653 |
+
* Changed text domain.
|
654 |
+
* Added clear() method.
|
655 |
+
* Added undeclared class properties.
|
656 |
+
* Changed methods visibility.
|
657 |
+
*/
|
658 |
+
|
659 |
+
/**
|
660 |
+
* WXR Parser that makes use of the XML Parser PHP extension.
|
661 |
+
*/
|
662 |
+
class WXR_Parser_XML {
|
663 |
+
private static $wp_tags = [
|
664 |
+
'wp:post_id',
|
665 |
+
'wp:post_date',
|
666 |
+
'wp:post_date_gmt',
|
667 |
+
'wp:comment_status',
|
668 |
+
'wp:ping_status',
|
669 |
+
'wp:attachment_url',
|
670 |
+
'wp:status',
|
671 |
+
'wp:post_name',
|
672 |
+
'wp:post_parent',
|
673 |
+
'wp:menu_order',
|
674 |
+
'wp:post_type',
|
675 |
+
'wp:post_password',
|
676 |
+
'wp:is_sticky',
|
677 |
+
'wp:term_id',
|
678 |
+
'wp:category_nicename',
|
679 |
+
'wp:category_parent',
|
680 |
+
'wp:cat_name',
|
681 |
+
'wp:category_description',
|
682 |
+
'wp:tag_slug',
|
683 |
+
'wp:tag_name',
|
684 |
+
'wp:tag_description',
|
685 |
+
'wp:term_taxonomy',
|
686 |
+
'wp:term_parent',
|
687 |
+
'wp:term_name',
|
688 |
+
'wp:term_description',
|
689 |
+
'wp:author_id',
|
690 |
+
'wp:author_login',
|
691 |
+
'wp:author_email',
|
692 |
+
'wp:author_display_name',
|
693 |
+
'wp:author_first_name',
|
694 |
+
'wp:author_last_name',
|
695 |
+
];
|
696 |
+
|
697 |
+
private static $wp_sub_tags = [
|
698 |
+
'wp:comment_id',
|
699 |
+
'wp:comment_author',
|
700 |
+
'wp:comment_author_email',
|
701 |
+
'wp:comment_author_url',
|
702 |
+
'wp:comment_author_IP',
|
703 |
+
'wp:comment_date',
|
704 |
+
'wp:comment_date_gmt',
|
705 |
+
'wp:comment_content',
|
706 |
+
'wp:comment_approved',
|
707 |
+
'wp:comment_type',
|
708 |
+
'wp:comment_parent',
|
709 |
+
'wp:comment_user_id',
|
710 |
+
];
|
711 |
+
|
712 |
+
/**
|
713 |
+
* @var string
|
714 |
+
*/
|
715 |
+
private $wxr_version;
|
716 |
+
|
717 |
+
/**
|
718 |
+
* @var string
|
719 |
+
*/
|
720 |
+
private $cdata;
|
721 |
+
|
722 |
+
/**
|
723 |
+
* @var array
|
724 |
+
*/
|
725 |
+
private $data;
|
726 |
+
|
727 |
+
/**
|
728 |
+
* @var array
|
729 |
+
*/
|
730 |
+
private $sub_data;
|
731 |
+
|
732 |
+
/**
|
733 |
+
* @var boolean
|
734 |
+
*/
|
735 |
+
private $in_post;
|
736 |
+
|
737 |
+
/**
|
738 |
+
* @var boolean
|
739 |
+
*/
|
740 |
+
private $in_tag;
|
741 |
+
|
742 |
+
/**
|
743 |
+
* @var boolean
|
744 |
+
*/
|
745 |
+
private $in_sub_tag;
|
746 |
+
|
747 |
+
/**
|
748 |
+
* @var array
|
749 |
+
*/
|
750 |
+
private $authors;
|
751 |
+
|
752 |
+
/**
|
753 |
+
* @var array
|
754 |
+
*/
|
755 |
+
private $posts;
|
756 |
+
|
757 |
+
/**
|
758 |
+
* @var array
|
759 |
+
*/
|
760 |
+
private $term;
|
761 |
+
|
762 |
+
/**
|
763 |
+
* @var array
|
764 |
+
*/
|
765 |
+
private $category;
|
766 |
+
|
767 |
+
/**
|
768 |
+
* @var array
|
769 |
+
*/
|
770 |
+
private $tag;
|
771 |
+
|
772 |
+
/**
|
773 |
+
* @var string
|
774 |
+
*/
|
775 |
+
private $base_url;
|
776 |
+
|
777 |
+
/**
|
778 |
+
* @var string
|
779 |
+
*/
|
780 |
+
private $base_blog_url;
|
781 |
+
|
782 |
+
/**
|
783 |
+
* @param string $file
|
784 |
+
*
|
785 |
+
* @return array|WP_Error
|
786 |
+
*/
|
787 |
+
public function parse( $file ) {
|
788 |
+
$this->clear();
|
789 |
+
|
790 |
+
$xml = xml_parser_create( 'UTF-8' );
|
791 |
+
xml_parser_set_option( $xml, XML_OPTION_SKIP_WHITE, 1 );
|
792 |
+
xml_parser_set_option( $xml, XML_OPTION_CASE_FOLDING, 0 );
|
793 |
+
xml_set_object( $xml, $this );
|
794 |
+
|
795 |
+
xml_set_character_data_handler( $xml, function ( $parser, $cdata ) {
|
796 |
+
$this->cdata( $cdata );
|
797 |
+
} );
|
798 |
+
|
799 |
+
$tag_open_callback = function ( $parse, $tag, $attr ) {
|
800 |
+
$this->tag_open( $tag, $attr );
|
801 |
+
};
|
802 |
+
|
803 |
+
$tag_close_callback = function ( $parser, $tag ) {
|
804 |
+
$this->tag_close( $tag );
|
805 |
+
};
|
806 |
+
|
807 |
+
xml_set_element_handler( $xml, $tag_open_callback, $tag_close_callback );
|
808 |
+
|
809 |
+
if ( ! xml_parse( $xml, file_get_contents( $file ), true ) ) {
|
810 |
+
$current_line = xml_get_current_line_number( $xml );
|
811 |
+
$current_column = xml_get_current_column_number( $xml );
|
812 |
+
$error_code = xml_get_error_code( $xml );
|
813 |
+
$error_string = xml_error_string( $error_code );
|
814 |
+
|
815 |
+
return new WP_Error( 'XML_parse_error', 'There was an error when reading this WXR file', [
|
816 |
+
$current_line,
|
817 |
+
$current_column,
|
818 |
+
$error_string,
|
819 |
+
] );
|
820 |
+
}
|
821 |
+
xml_parser_free( $xml );
|
822 |
+
|
823 |
+
if ( ! preg_match( '/^\d+\.\d+$/', $this->wxr_version ) ) {
|
824 |
+
return new WP_Error( 'WXR_parse_error', esc_html__( 'This does not appear to be a WXR file, missing/invalid WXR version number', 'wpr-addons' ) );
|
825 |
+
}
|
826 |
+
|
827 |
+
return array(
|
828 |
+
'authors' => $this->authors,
|
829 |
+
'posts' => $this->posts,
|
830 |
+
'categories' => $this->category,
|
831 |
+
'tags' => $this->tag,
|
832 |
+
'terms' => $this->term,
|
833 |
+
'base_url' => $this->base_url,
|
834 |
+
'base_blog_url' => $this->base_blog_url,
|
835 |
+
'version' => $this->wxr_version,
|
836 |
+
);
|
837 |
+
}
|
838 |
+
|
839 |
+
private function tag_open( $tag, $attr ) {
|
840 |
+
if ( in_array( $tag, self::$wp_tags ) ) {
|
841 |
+
$this->in_tag = substr( $tag, 3 );
|
842 |
+
|
843 |
+
return;
|
844 |
+
}
|
845 |
+
|
846 |
+
if ( in_array( $tag, self::$wp_sub_tags ) ) {
|
847 |
+
$this->in_sub_tag = substr( $tag, 3 );
|
848 |
+
|
849 |
+
return;
|
850 |
+
}
|
851 |
+
|
852 |
+
switch ( $tag ) {
|
853 |
+
case 'category':
|
854 |
+
if ( isset( $attr['domain'], $attr['nicename'] ) ) {
|
855 |
+
$this->sub_data['domain'] = $attr['domain'];
|
856 |
+
$this->sub_data['slug'] = $attr['nicename'];
|
857 |
+
}
|
858 |
+
break;
|
859 |
+
case 'item':
|
860 |
+
$this->in_post = true;
|
861 |
+
// No break !!!.
|
862 |
+
case 'title':
|
863 |
+
if ( $this->in_post ) {
|
864 |
+
$this->in_tag = 'post_title';
|
865 |
+
}
|
866 |
+
break;
|
867 |
+
case 'guid':
|
868 |
+
$this->in_tag = 'guid';
|
869 |
+
break;
|
870 |
+
case 'dc:creator':
|
871 |
+
$this->in_tag = 'post_author';
|
872 |
+
break;
|
873 |
+
case 'content:encoded':
|
874 |
+
$this->in_tag = 'post_content';
|
875 |
+
break;
|
876 |
+
case 'excerpt:encoded':
|
877 |
+
$this->in_tag = 'post_excerpt';
|
878 |
+
break;
|
879 |
+
|
880 |
+
case 'wp:term_slug':
|
881 |
+
$this->in_tag = 'slug';
|
882 |
+
break;
|
883 |
+
case 'wp:meta_key':
|
884 |
+
$this->in_sub_tag = 'key';
|
885 |
+
break;
|
886 |
+
case 'wp:meta_value':
|
887 |
+
$this->in_sub_tag = 'value';
|
888 |
+
break;
|
889 |
+
}
|
890 |
+
}
|
891 |
+
|
892 |
+
private function cdata( $cdata ) {
|
893 |
+
if ( ! trim( $cdata ) ) {
|
894 |
+
return;
|
895 |
+
}
|
896 |
+
|
897 |
+
if ( false !== $this->in_tag || false !== $this->in_sub_tag ) {
|
898 |
+
$this->cdata .= $cdata;
|
899 |
+
} else {
|
900 |
+
$this->cdata .= trim( $cdata );
|
901 |
+
}
|
902 |
+
}
|
903 |
+
|
904 |
+
private function tag_close( $tag ) {
|
905 |
+
switch ( $tag ) {
|
906 |
+
case 'wp:comment':
|
907 |
+
unset( $this->sub_data['key'], $this->sub_data['value'] ); // Remove meta sub_data.
|
908 |
+
if ( ! empty( $this->sub_data ) ) {
|
909 |
+
$this->data['comments'][] = $this->sub_data;
|
910 |
+
}
|
911 |
+
$this->sub_data = [];
|
912 |
+
break;
|
913 |
+
case 'wp:commentmeta':
|
914 |
+
$this->sub_data['commentmeta'][] = [
|
915 |
+
'key' => $this->sub_data['key'],
|
916 |
+
'value' => $this->sub_data['value'],
|
917 |
+
];
|
918 |
+
break;
|
919 |
+
case 'category':
|
920 |
+
if ( ! empty( $this->sub_data ) ) {
|
921 |
+
$this->sub_data['name'] = $this->cdata;
|
922 |
+
$this->data['terms'][] = $this->sub_data;
|
923 |
+
}
|
924 |
+
$this->sub_data = [];
|
925 |
+
break;
|
926 |
+
case 'wp:postmeta':
|
927 |
+
if ( ! empty( $this->sub_data ) ) {
|
928 |
+
$this->data['postmeta'][] = $this->sub_data;
|
929 |
+
}
|
930 |
+
$this->sub_data = [];
|
931 |
+
break;
|
932 |
+
case 'item':
|
933 |
+
$this->posts[] = $this->data;
|
934 |
+
$this->data = [];
|
935 |
+
break;
|
936 |
+
case 'wp:category':
|
937 |
+
case 'wp:tag':
|
938 |
+
case 'wp:term':
|
939 |
+
$n = substr( $tag, 3 );
|
940 |
+
array_push( $this->$n, $this->data );
|
941 |
+
$this->data = [];
|
942 |
+
break;
|
943 |
+
case 'wp:termmeta':
|
944 |
+
if ( ! empty( $this->sub_data ) ) {
|
945 |
+
$this->data['termmeta'][] = $this->sub_data;
|
946 |
+
}
|
947 |
+
$this->sub_data = [];
|
948 |
+
break;
|
949 |
+
case 'wp:author':
|
950 |
+
if ( ! empty( $this->data['author_login'] ) ) {
|
951 |
+
$this->authors[ $this->data['author_login'] ] = $this->data;
|
952 |
+
}
|
953 |
+
$this->data = [];
|
954 |
+
break;
|
955 |
+
case 'wp:base_site_url':
|
956 |
+
$this->base_url = $this->cdata;
|
957 |
+
if ( ! isset( $this->base_blog_url ) ) {
|
958 |
+
$this->base_blog_url = $this->cdata;
|
959 |
+
}
|
960 |
+
break;
|
961 |
+
case 'wp:base_blog_url':
|
962 |
+
$this->base_blog_url = $this->cdata;
|
963 |
+
break;
|
964 |
+
case 'wp:wxr_version':
|
965 |
+
$this->wxr_version = $this->cdata;
|
966 |
+
break;
|
967 |
+
|
968 |
+
default:
|
969 |
+
if ( $this->in_sub_tag ) {
|
970 |
+
$this->sub_data[ $this->in_sub_tag ] = $this->cdata;
|
971 |
+
$this->in_sub_tag = false;
|
972 |
+
} elseif ( $this->in_tag ) {
|
973 |
+
$this->data[ $this->in_tag ] = $this->cdata;
|
974 |
+
$this->in_tag = false;
|
975 |
+
}
|
976 |
+
}
|
977 |
+
|
978 |
+
$this->cdata = '';
|
979 |
+
}
|
980 |
+
|
981 |
+
private function clear() {
|
982 |
+
$this->wxr_version = '';
|
983 |
+
|
984 |
+
$this->cdata = '';
|
985 |
+
$this->data = [];
|
986 |
+
$this->sub_data = [];
|
987 |
+
|
988 |
+
$this->in_post = false;
|
989 |
+
$this->in_tag = false;
|
990 |
+
$this->in_sub_tag = false;
|
991 |
+
|
992 |
+
$this->authors = [];
|
993 |
+
$this->posts = [];
|
994 |
+
$this->term = [];
|
995 |
+
$this->category = [];
|
996 |
+
$this->tag = [];
|
997 |
+
}
|
998 |
+
}
|
999 |
+
|
1000 |
+
|
1001 |
+
/**
|
1002 |
+
* WordPress eXtended RSS file parser implementations,
|
1003 |
+
* Originally made by WordPress part of WordPress/Importer.
|
1004 |
+
* https://plugins.trac.wordpress.org/browser/wordpress-importer/trunk/parsers/class-wxr-parser.php
|
1005 |
+
*
|
1006 |
+
* What was done:
|
1007 |
+
* Reformat of the code.
|
1008 |
+
* Changed text domain.
|
1009 |
+
*/
|
1010 |
+
|
1011 |
+
/**
|
1012 |
+
* WordPress Importer class for managing parsing of WXR files.
|
1013 |
+
*/
|
1014 |
+
class WXR_Parser {
|
1015 |
+
|
1016 |
+
public function parse( $file ) {
|
1017 |
+
// Attempt to use proper XML parsers first.
|
1018 |
+
if ( extension_loaded( 'simplexml' ) ) {
|
1019 |
+
$parser = new WXR_Parser_SimpleXML();
|
1020 |
+
$result = $parser->parse( $file );
|
1021 |
+
|
1022 |
+
// If SimpleXML succeeds or this is an invalid WXR file then return the results.
|
1023 |
+
if ( ! is_wp_error( $result ) || 'SimpleXML_parse_error' != $result->get_error_code() ) {
|
1024 |
+
return $result;
|
1025 |
+
}
|
1026 |
+
} elseif ( extension_loaded( 'xml' ) ) {
|
1027 |
+
$parser = new WXR_Parser_XML();
|
1028 |
+
$result = $parser->parse( $file );
|
1029 |
+
|
1030 |
+
// If XMLParser succeeds or this is an invalid WXR file then return the results.
|
1031 |
+
if ( ! is_wp_error( $result ) || 'XML_parse_error' != $result->get_error_code() ) {
|
1032 |
+
return $result;
|
1033 |
+
}
|
1034 |
+
}
|
1035 |
+
|
1036 |
+
// Use regular expressions if nothing else available or this is bad XML.
|
1037 |
+
$parser = new WXR_Parser_Regex();
|
1038 |
+
|
1039 |
+
return $parser->parse( $file );
|
1040 |
+
}
|
1041 |
+
}
|
admin/import/class-wordpress-importer.php
CHANGED
@@ -1,1370 +1,1370 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
-
exit; // Exit if accessed directly.
|
5 |
-
}
|
6 |
-
|
7 |
-
if ( ! defined( 'WP_LOAD_IMPORTERS' ) )
|
8 |
-
return;
|
9 |
-
|
10 |
-
/** Display verbose errors */
|
11 |
-
define( 'IMPORT_DEBUG', false );
|
12 |
-
|
13 |
-
// Load Importer API
|
14 |
-
require_once ABSPATH . 'wp-admin/includes/import.php';
|
15 |
-
|
16 |
-
if ( ! class_exists( 'WP_Importer' ) ) {
|
17 |
-
$class_wp_importer = ABSPATH . 'wp-admin/includes/class-wp-importer.php';
|
18 |
-
if ( file_exists( $class_wp_importer ) )
|
19 |
-
require $class_wp_importer;
|
20 |
-
}
|
21 |
-
|
22 |
-
// include WXR file parsers
|
23 |
-
require WPR_ADDONS_PATH .'admin/import/class-parsers.php';
|
24 |
-
|
25 |
-
class WP_Import extends WP_Importer {
|
26 |
-
const DEFAULT_BUMP_REQUEST_TIMEOUT = 60;
|
27 |
-
const DEFAULT_ALLOW_CREATE_USERS = true;
|
28 |
-
const DEFAULT_IMPORT_ATTACHMENT_SIZE_LIMIT = 0; // 0 = unlimited.
|
29 |
-
|
30 |
-
/**
|
31 |
-
* @var string
|
32 |
-
*/
|
33 |
-
private $requested_file_path;
|
34 |
-
|
35 |
-
/**
|
36 |
-
* @var array
|
37 |
-
*/
|
38 |
-
private $args;
|
39 |
-
|
40 |
-
/**
|
41 |
-
* @var array
|
42 |
-
*/
|
43 |
-
private $output = [
|
44 |
-
'status' => 'failed',
|
45 |
-
'errors' => [],
|
46 |
-
];
|
47 |
-
|
48 |
-
/*
|
49 |
-
* WXR attachment ID
|
50 |
-
*/
|
51 |
-
private $id;
|
52 |
-
|
53 |
-
// Information to import from WXR file.
|
54 |
-
private $version;
|
55 |
-
private $authors = [];
|
56 |
-
private $posts = [];
|
57 |
-
private $terms = [];
|
58 |
-
private $categories = [];
|
59 |
-
private $tags = [];
|
60 |
-
private $base_url = '';
|
61 |
-
private $page_on_front;
|
62 |
-
|
63 |
-
// Mappings from old information to new.
|
64 |
-
private $processed_authors = [];
|
65 |
-
private $author_mapping = [];
|
66 |
-
private $processed_terms = [];
|
67 |
-
private $processed_posts = [];
|
68 |
-
private $post_orphans = [];
|
69 |
-
private $processed_menu_items = [];
|
70 |
-
private $menu_item_orphans = [];
|
71 |
-
private $missing_menu_items = [];
|
72 |
-
|
73 |
-
private $fetch_attachments = false;
|
74 |
-
private $url_remap = [];
|
75 |
-
private $featured_images = [];
|
76 |
-
|
77 |
-
/**
|
78 |
-
* Parses filename from a Content-Disposition header value.
|
79 |
-
*
|
80 |
-
* As per RFC6266:
|
81 |
-
*
|
82 |
-
* content-disposition = "Content-Disposition" ":"
|
83 |
-
* disposition-type *( ";" disposition-parm )
|
84 |
-
*
|
85 |
-
* disposition-type = "inline" | "attachment" | disp-ext-type
|
86 |
-
* ; case-insensitive
|
87 |
-
* disp-ext-type = token
|
88 |
-
*
|
89 |
-
* disposition-parm = filename-parm | disp-ext-parm
|
90 |
-
*
|
91 |
-
* filename-parm = "filename" "=" value
|
92 |
-
* | "filename*" "=" ext-value
|
93 |
-
*
|
94 |
-
* disp-ext-parm = token "=" value
|
95 |
-
* | ext-token "=" ext-value
|
96 |
-
* ext-token = <the characters in token, followed by "*">
|
97 |
-
*
|
98 |
-
* @param string[] $disposition_header List of Content-Disposition header values.
|
99 |
-
*
|
100 |
-
* @return string|null Filename if available, or null if not found.
|
101 |
-
* @link http://tools.ietf.org/html/rfc2388
|
102 |
-
* @link http://tools.ietf.org/html/rfc6266
|
103 |
-
*
|
104 |
-
* @see WP_REST_Attachments_Controller::get_filename_from_disposition()
|
105 |
-
*
|
106 |
-
*/
|
107 |
-
protected static function get_filename_from_disposition( $disposition_header ) {
|
108 |
-
// Get the filename.
|
109 |
-
$filename = null;
|
110 |
-
|
111 |
-
foreach ( $disposition_header as $value ) {
|
112 |
-
$value = trim( $value );
|
113 |
-
|
114 |
-
if ( strpos( $value, ';' ) === false ) {
|
115 |
-
continue;
|
116 |
-
}
|
117 |
-
|
118 |
-
list( $type, $attr_parts ) = explode( ';', $value, 2 );
|
119 |
-
|
120 |
-
$attr_parts = explode( ';', $attr_parts );
|
121 |
-
$attributes = [];
|
122 |
-
|
123 |
-
foreach ( $attr_parts as $part ) {
|
124 |
-
if ( strpos( $part, '=' ) === false ) {
|
125 |
-
continue;
|
126 |
-
}
|
127 |
-
|
128 |
-
list( $key, $value ) = explode( '=', $part, 2 );
|
129 |
-
|
130 |
-
$attributes[ trim( $key ) ] = trim( $value );
|
131 |
-
}
|
132 |
-
|
133 |
-
if ( empty( $attributes['filename'] ) ) {
|
134 |
-
continue;
|
135 |
-
}
|
136 |
-
|
137 |
-
$filename = trim( $attributes['filename'] );
|
138 |
-
|
139 |
-
// Unquote quoted filename, but after trimming.
|
140 |
-
if ( substr( $filename, 0, 1 ) === '"' && substr( $filename, -1, 1 ) === '"' ) {
|
141 |
-
$filename = substr( $filename, 1, -1 );
|
142 |
-
}
|
143 |
-
}
|
144 |
-
|
145 |
-
return $filename;
|
146 |
-
}
|
147 |
-
|
148 |
-
/**
|
149 |
-
* Retrieves file extension by mime type.
|
150 |
-
*
|
151 |
-
* @param string $mime_type Mime type to search extension for.
|
152 |
-
*
|
153 |
-
* @return string|null File extension if available, or null if not found.
|
154 |
-
*/
|
155 |
-
protected static function get_file_extension_by_mime_type( $mime_type ) {
|
156 |
-
static $map = null;
|
157 |
-
|
158 |
-
if ( is_array( $map ) ) {
|
159 |
-
return isset( $map[ $mime_type ] ) ? $map[ $mime_type ] : null;
|
160 |
-
}
|
161 |
-
|
162 |
-
$mime_types = wp_get_mime_types();
|
163 |
-
$map = array_flip( $mime_types );
|
164 |
-
|
165 |
-
// Some types have multiple extensions, use only the first one.
|
166 |
-
foreach ( $map as $type => $extensions ) {
|
167 |
-
$map[ $type ] = strtok( $extensions, '|' );
|
168 |
-
}
|
169 |
-
|
170 |
-
return isset( $map[ $mime_type ] ) ? $map[ $mime_type ] : null;
|
171 |
-
}
|
172 |
-
|
173 |
-
/**
|
174 |
-
* The main controller for the actual import stage.
|
175 |
-
*
|
176 |
-
* @param string $file Path to the WXR file for importing
|
177 |
-
*/
|
178 |
-
private function import( $file ) {
|
179 |
-
add_filter( 'import_post_meta_key', function ( $key ) {
|
180 |
-
return $this->is_valid_meta_key( $key );
|
181 |
-
} );
|
182 |
-
add_filter( 'http_request_timeout', function () {
|
183 |
-
return self::DEFAULT_BUMP_REQUEST_TIMEOUT;
|
184 |
-
} );
|
185 |
-
|
186 |
-
if ( ! $this->import_start( $file ) ) {
|
187 |
-
return;
|
188 |
-
}
|
189 |
-
|
190 |
-
$this->set_author_mapping();
|
191 |
-
|
192 |
-
wp_suspend_cache_invalidation( true );
|
193 |
-
$imported_summary = [
|
194 |
-
'categories' => $this->process_categories(),
|
195 |
-
'tags' => $this->process_tags(),
|
196 |
-
'terms' => $this->process_terms(),
|
197 |
-
'posts' => $this->process_posts(),
|
198 |
-
];
|
199 |
-
wp_suspend_cache_invalidation( false );
|
200 |
-
|
201 |
-
// Update incorrect/missing information in the DB.
|
202 |
-
$this->backfill_parents();
|
203 |
-
$this->backfill_attachment_urls();
|
204 |
-
$this->remap_featured_images();
|
205 |
-
|
206 |
-
$this->import_end();
|
207 |
-
|
208 |
-
$is_some_succeed = false;
|
209 |
-
foreach ( $imported_summary as $item ) {
|
210 |
-
if ( $item > 0 ) {
|
211 |
-
$is_some_succeed = true;
|
212 |
-
break;
|
213 |
-
}
|
214 |
-
}
|
215 |
-
|
216 |
-
if ( $is_some_succeed ) {
|
217 |
-
$this->output['status'] = 'success';
|
218 |
-
$this->output['summary'] = $imported_summary;
|
219 |
-
}
|
220 |
-
}
|
221 |
-
|
222 |
-
/**
|
223 |
-
* Parses the WXR file and prepares us for the task of processing parsed data.
|
224 |
-
*
|
225 |
-
* @param string $file Path to the WXR file for importing
|
226 |
-
*/
|
227 |
-
private function import_start( $file ) {
|
228 |
-
if ( ! is_file( $file ) ) {
|
229 |
-
$this->output['errors'] = [ esc_html__( 'The file does not exist, please try again.', 'wpr-addons' ) ];
|
230 |
-
|
231 |
-
return false;
|
232 |
-
}
|
233 |
-
|
234 |
-
$import_data = $this->parse( $file );
|
235 |
-
|
236 |
-
if ( is_wp_error( $import_data ) ) {
|
237 |
-
$this->output['errors'] = [ $import_data->get_error_message() ];
|
238 |
-
|
239 |
-
return false;
|
240 |
-
}
|
241 |
-
|
242 |
-
$this->version = $import_data['version'];
|
243 |
-
$this->set_authors_from_import( $import_data );
|
244 |
-
$this->posts = $import_data['posts'];
|
245 |
-
$this->terms = $import_data['terms'];
|
246 |
-
$this->categories = $import_data['categories'];
|
247 |
-
$this->tags = $import_data['tags'];
|
248 |
-
$this->base_url = esc_url( $import_data['base_url'] );
|
249 |
-
$this->page_on_front = $import_data['page_on_front'];
|
250 |
-
|
251 |
-
wp_defer_term_counting( true );
|
252 |
-
wp_defer_comment_counting( true );
|
253 |
-
|
254 |
-
do_action( 'import_start' );
|
255 |
-
|
256 |
-
return true;
|
257 |
-
}
|
258 |
-
|
259 |
-
/**
|
260 |
-
* Performs post-import cleanup of files and the cache
|
261 |
-
*/
|
262 |
-
private function import_end() {
|
263 |
-
wp_import_cleanup( $this->id );
|
264 |
-
|
265 |
-
wp_cache_flush();
|
266 |
-
|
267 |
-
foreach ( get_taxonomies() as $tax ) {
|
268 |
-
delete_option( "{$tax}_children" );
|
269 |
-
_get_term_hierarchy( $tax );
|
270 |
-
}
|
271 |
-
|
272 |
-
wp_defer_term_counting( false );
|
273 |
-
wp_defer_comment_counting( false );
|
274 |
-
|
275 |
-
do_action( 'import_end' );
|
276 |
-
}
|
277 |
-
|
278 |
-
/**
|
279 |
-
* Retrieve authors from parsed WXR data and set it to `$this->>authors`.
|
280 |
-
*
|
281 |
-
* Uses the provided author information from WXR 1.1 files
|
282 |
-
* or extracts info from each post for WXR 1.0 files
|
283 |
-
*
|
284 |
-
* @param array $import_data Data returned by a WXR parser
|
285 |
-
*/
|
286 |
-
private function set_authors_from_import( $import_data ) {
|
287 |
-
if ( ! empty( $import_data['authors'] ) ) {
|
288 |
-
$this->authors = $import_data['authors'];
|
289 |
-
// No author information, grab it from the posts.
|
290 |
-
} else {
|
291 |
-
foreach ( $import_data['posts'] as $post ) {
|
292 |
-
$login = sanitize_user( $post['post_author'], true );
|
293 |
-
|
294 |
-
if ( empty( $login ) ) {
|
295 |
-
/* translators: %s: Post author. */
|
296 |
-
$this->output['errors'][] = sprintf( esc_html__( 'Failed to import author %s. Their posts will be attributed to the current user.', 'wpr-addons' ), $post['post_author'] );
|
297 |
-
continue;
|
298 |
-
}
|
299 |
-
|
300 |
-
if ( ! isset( $this->authors[ $login ] ) ) {
|
301 |
-
$this->authors[ $login ] = [
|
302 |
-
'author_login' => $login,
|
303 |
-
'author_display_name' => $post['post_author'],
|
304 |
-
];
|
305 |
-
}
|
306 |
-
}
|
307 |
-
}
|
308 |
-
}
|
309 |
-
|
310 |
-
/**
|
311 |
-
* Map old author logins to local user IDs based on decisions made
|
312 |
-
* in import options form. Can map to an existing user, create a new user
|
313 |
-
* or falls back to the current user in case of error with either of the previous
|
314 |
-
*/
|
315 |
-
private function set_author_mapping() {
|
316 |
-
if ( ! isset( $this->args['imported_authors'] ) ) {
|
317 |
-
return;
|
318 |
-
}
|
319 |
-
|
320 |
-
$create_users = apply_filters( 'import_allow_create_users', self::DEFAULT_ALLOW_CREATE_USERS );
|
321 |
-
|
322 |
-
foreach ( (array) $this->args['imported_authors'] as $i => $old_login ) {
|
323 |
-
// Multisite adds strtolower to sanitize_user. Need to sanitize here to stop breakage in process_posts.
|
324 |
-
$santized_old_login = sanitize_user( $old_login, true );
|
325 |
-
$old_id = isset( $this->authors[ $old_login ]['author_id'] ) ? intval( $this->authors[ $old_login ]['author_id'] ) : false;
|
326 |
-
|
327 |
-
if ( ! empty( $this->args['user_map'][ $i ] ) ) {
|
328 |
-
$user = get_userdata( intval( $this->args['user_map'][ $i ] ) );
|
329 |
-
if ( isset( $user->ID ) ) {
|
330 |
-
if ( $old_id ) {
|
331 |
-
$this->processed_authors[ $old_id ] = $user->ID;
|
332 |
-
}
|
333 |
-
$this->author_mapping[ $santized_old_login ] = $user->ID;
|
334 |
-
}
|
335 |
-
} elseif ( $create_users ) {
|
336 |
-
$user_id = 0;
|
337 |
-
if ( ! empty( $this->args['user_new'][ $i ] ) ) {
|
338 |
-
$user_id = wp_create_user( $this->args['user_new'][ $i ], wp_generate_password() );
|
339 |
-
} elseif ( '1.0' !== $this->version ) {
|
340 |
-
$user_data = [
|
341 |
-
'user_login' => $old_login,
|
342 |
-
'user_pass' => wp_generate_password(),
|
343 |
-
'user_email' => isset( $this->authors[ $old_login ]['author_email'] ) ? $this->authors[ $old_login ]['author_email'] : '',
|
344 |
-
'display_name' => $this->authors[ $old_login ]['author_display_name'],
|
345 |
-
'first_name' => isset( $this->authors[ $old_login ]['author_first_name'] ) ? $this->authors[ $old_login ]['author_first_name'] : '',
|
346 |
-
'last_name' => isset( $this->authors[ $old_login ]['author_last_name'] ) ? $this->authors[ $old_login ]['author_last_name'] : '',
|
347 |
-
];
|
348 |
-
$user_id = wp_insert_user( $user_data );
|
349 |
-
}
|
350 |
-
|
351 |
-
if ( ! is_wp_error( $user_id ) ) {
|
352 |
-
if ( $old_id ) {
|
353 |
-
$this->processed_authors[ $old_id ] = $user_id;
|
354 |
-
}
|
355 |
-
$this->author_mapping[ $santized_old_login ] = $user_id;
|
356 |
-
} else {
|
357 |
-
/* translators: %s: Author display name. */
|
358 |
-
$error = sprintf( esc_html__( 'Failed to create new user for %s. Their posts will be attributed to the current user.', 'wpr-addons' ), $this->authors[ $old_login ]['author_display_name'] );
|
359 |
-
|
360 |
-
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
361 |
-
$error .= PHP_EOL . $user_id->get_error_message();
|
362 |
-
}
|
363 |
-
|
364 |
-
$this->output['errors'][] = $error;
|
365 |
-
}
|
366 |
-
}
|
367 |
-
|
368 |
-
// Failsafe: if the user_id was invalid, default to the current user.
|
369 |
-
if ( ! isset( $this->author_mapping[ $santized_old_login ] ) ) {
|
370 |
-
if ( $old_id ) {
|
371 |
-
$this->processed_authors[ $old_id ] = (int) get_current_user_id();
|
372 |
-
}
|
373 |
-
$this->author_mapping[ $santized_old_login ] = (int) get_current_user_id();
|
374 |
-
}
|
375 |
-
}
|
376 |
-
}
|
377 |
-
|
378 |
-
/**
|
379 |
-
* Create new categories based on import information
|
380 |
-
*
|
381 |
-
* Doesn't create a new category if its slug already exists
|
382 |
-
*
|
383 |
-
* @return int number of imported categories.
|
384 |
-
*/
|
385 |
-
private function process_categories() {
|
386 |
-
$result = 0;
|
387 |
-
|
388 |
-
$this->categories = apply_filters( 'wp_import_categories', $this->categories );
|
389 |
-
|
390 |
-
if ( empty( $this->categories ) ) {
|
391 |
-
return $result;
|
392 |
-
}
|
393 |
-
|
394 |
-
foreach ( $this->categories as $cat ) {
|
395 |
-
// if the category already exists leave it alone
|
396 |
-
$term_id = term_exists( $cat['category_nicename'], 'category' );
|
397 |
-
if ( $term_id ) {
|
398 |
-
if ( is_array( $term_id ) ) {
|
399 |
-
$term_id = $term_id['term_id'];
|
400 |
-
}
|
401 |
-
if ( isset( $cat['term_id'] ) ) {
|
402 |
-
$this->processed_terms[ intval( $cat['term_id'] ) ] = (int) $term_id;
|
403 |
-
}
|
404 |
-
continue;
|
405 |
-
}
|
406 |
-
|
407 |
-
$parent = empty( $cat['category_parent'] ) ? 0 : category_exists( $cat['category_parent'] );
|
408 |
-
$description = isset( $cat['category_description'] ) ? $cat['category_description'] : '';
|
409 |
-
|
410 |
-
$data = [
|
411 |
-
'category_nicename' => $cat['category_nicename'],
|
412 |
-
'category_parent' => $parent,
|
413 |
-
'cat_name' => wp_slash( $cat['cat_name'] ),
|
414 |
-
'category_description' => wp_slash( $description ),
|
415 |
-
];
|
416 |
-
|
417 |
-
$id = wp_insert_category( $data );
|
418 |
-
if ( ! is_wp_error( $id ) && $id > 0 ) {
|
419 |
-
if ( isset( $cat['term_id'] ) ) {
|
420 |
-
$this->processed_terms[ intval( $cat['term_id'] ) ] = $id;
|
421 |
-
}
|
422 |
-
$result++;
|
423 |
-
} else {
|
424 |
-
/* translators: %s: Category name. */
|
425 |
-
$error = sprintf( esc_html__( 'Failed to import category %s', 'wpr-addons' ), $cat['category_nicename'] );
|
426 |
-
|
427 |
-
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
428 |
-
$error .= PHP_EOL . $id->get_error_message();
|
429 |
-
}
|
430 |
-
|
431 |
-
$this->output['errors'][] = $error;
|
432 |
-
continue;
|
433 |
-
}
|
434 |
-
|
435 |
-
$this->process_termmeta( $cat, $id );
|
436 |
-
}
|
437 |
-
|
438 |
-
unset( $this->categories );
|
439 |
-
|
440 |
-
return $result;
|
441 |
-
}
|
442 |
-
|
443 |
-
/**
|
444 |
-
* Create new post tags based on import information
|
445 |
-
*
|
446 |
-
* Doesn't create a tag if its slug already exists
|
447 |
-
*
|
448 |
-
* @return int number of imported tags.
|
449 |
-
*/
|
450 |
-
private function process_tags() {
|
451 |
-
$result = 0;
|
452 |
-
|
453 |
-
$this->tags = apply_filters( 'wp_import_tags', $this->tags );
|
454 |
-
|
455 |
-
if ( empty( $this->tags ) ) {
|
456 |
-
return $result;
|
457 |
-
}
|
458 |
-
|
459 |
-
foreach ( $this->tags as $tag ) {
|
460 |
-
// if the tag already exists leave it alone
|
461 |
-
$term_id = term_exists( $tag['tag_slug'], 'post_tag' );
|
462 |
-
if ( $term_id ) {
|
463 |
-
if ( is_array( $term_id ) ) {
|
464 |
-
$term_id = $term_id['term_id'];
|
465 |
-
}
|
466 |
-
if ( isset( $tag['term_id'] ) ) {
|
467 |
-
$this->processed_terms[ intval( $tag['term_id'] ) ] = (int) $term_id;
|
468 |
-
}
|
469 |
-
continue;
|
470 |
-
}
|
471 |
-
|
472 |
-
$description = isset( $tag['tag_description'] ) ? $tag['tag_description'] : '';
|
473 |
-
$args = [
|
474 |
-
'slug' => $tag['tag_slug'],
|
475 |
-
'description' => wp_slash( $description ),
|
476 |
-
];
|
477 |
-
|
478 |
-
$id = wp_insert_term( wp_slash( $tag['tag_name'] ), 'post_tag', $args );
|
479 |
-
if ( ! is_wp_error( $id ) ) {
|
480 |
-
if ( isset( $tag['term_id'] ) ) {
|
481 |
-
$this->processed_terms[ intval( $tag['term_id'] ) ] = $id['term_id'];
|
482 |
-
}
|
483 |
-
$result++;
|
484 |
-
} else {
|
485 |
-
/* translators: %s: Tag name. */
|
486 |
-
$error = sprintf( esc_html__( 'Failed to import post tag %s', 'wpr-addons' ), $tag['tag_name'] );
|
487 |
-
|
488 |
-
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
489 |
-
$error .= PHP_EOL . $id->get_error_message();
|
490 |
-
}
|
491 |
-
|
492 |
-
$this->output['errors'][] = $error;
|
493 |
-
continue;
|
494 |
-
}
|
495 |
-
|
496 |
-
$this->process_termmeta( $tag, $id['term_id'] );
|
497 |
-
}
|
498 |
-
|
499 |
-
unset( $this->tags );
|
500 |
-
|
501 |
-
return $result;
|
502 |
-
}
|
503 |
-
|
504 |
-
/**
|
505 |
-
* Create new terms based on import information
|
506 |
-
*
|
507 |
-
* Doesn't create a term its slug already exists
|
508 |
-
*
|
509 |
-
* @return int number of imported terms.
|
510 |
-
*/
|
511 |
-
private function process_terms() {
|
512 |
-
$result = 0;
|
513 |
-
|
514 |
-
$this->terms = apply_filters( 'wp_import_terms', $this->terms );
|
515 |
-
|
516 |
-
if ( empty( $this->terms ) ) {
|
517 |
-
return $result;
|
518 |
-
}
|
519 |
-
|
520 |
-
foreach ( $this->terms as $term ) {
|
521 |
-
// if the term already exists in the correct taxonomy leave it alone
|
522 |
-
$term_id = term_exists( $term['slug'], $term['term_taxonomy'] );
|
523 |
-
if ( $term_id ) {
|
524 |
-
if ( is_array( $term_id ) ) {
|
525 |
-
$term_id = $term_id['term_id'];
|
526 |
-
}
|
527 |
-
if ( isset( $term['term_id'] ) ) {
|
528 |
-
$this->processed_terms[ intval( $term['term_id'] ) ] = (int) $term_id;
|
529 |
-
}
|
530 |
-
continue;
|
531 |
-
}
|
532 |
-
|
533 |
-
if ( empty( $term['term_parent'] ) ) {
|
534 |
-
$parent = 0;
|
535 |
-
} else {
|
536 |
-
$parent = term_exists( $term['term_parent'], $term['term_taxonomy'] );
|
537 |
-
if ( is_array( $parent ) ) {
|
538 |
-
$parent = $parent['term_id'];
|
539 |
-
}
|
540 |
-
}
|
541 |
-
|
542 |
-
$description = isset( $term['term_description'] ) ? $term['term_description'] : '';
|
543 |
-
$args = [
|
544 |
-
'slug' => $term['slug'],
|
545 |
-
'description' => wp_slash( $description ),
|
546 |
-
'parent' => (int) $parent,
|
547 |
-
];
|
548 |
-
|
549 |
-
$id = wp_insert_term( wp_slash( $term['term_name'] ), $term['term_taxonomy'], $args );
|
550 |
-
if ( ! is_wp_error( $id ) ) {
|
551 |
-
if ( isset( $term['term_id'] ) ) {
|
552 |
-
$this->processed_terms[ intval( $term['term_id'] ) ] = $id['term_id'];
|
553 |
-
}
|
554 |
-
$result++;
|
555 |
-
} else {
|
556 |
-
/* translators: 1: Term taxonomy, 2: Term name. */
|
557 |
-
$error = sprintf( esc_html__( 'Failed to import %1$s %2$s', 'wpr-addons' ), $term['term_taxonomy'], $term['term_name'] );
|
558 |
-
|
559 |
-
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
560 |
-
$error .= PHP_EOL . $id->get_error_message();
|
561 |
-
}
|
562 |
-
|
563 |
-
$this->output['errors'][] = $error;
|
564 |
-
continue;
|
565 |
-
}
|
566 |
-
|
567 |
-
$this->process_termmeta( $term, $id['term_id'] );
|
568 |
-
}
|
569 |
-
|
570 |
-
unset( $this->terms );
|
571 |
-
|
572 |
-
return $result;
|
573 |
-
}
|
574 |
-
|
575 |
-
/**
|
576 |
-
* Add metadata to imported term.
|
577 |
-
*
|
578 |
-
* @param array $term Term data from WXR import.
|
579 |
-
* @param int $term_id ID of the newly created term.
|
580 |
-
*/
|
581 |
-
private function process_termmeta( $term, $term_id ) {
|
582 |
-
if ( ! function_exists( 'add_term_meta' ) ) {
|
583 |
-
return;
|
584 |
-
}
|
585 |
-
|
586 |
-
if ( ! isset( $term['termmeta'] ) ) {
|
587 |
-
$term['termmeta'] = [];
|
588 |
-
}
|
589 |
-
|
590 |
-
/**
|
591 |
-
* Filters the metadata attached to an imported term.
|
592 |
-
*
|
593 |
-
* @param array $termmeta Array of term meta.
|
594 |
-
* @param int $term_id ID of the newly created term.
|
595 |
-
* @param array $term Term data from the WXR import.
|
596 |
-
*/
|
597 |
-
$term['termmeta'] = apply_filters( 'wp_import_term_meta', $term['termmeta'], $term_id, $term );
|
598 |
-
|
599 |
-
if ( empty( $term['termmeta'] ) ) {
|
600 |
-
return;
|
601 |
-
}
|
602 |
-
|
603 |
-
foreach ( $term['termmeta'] as $meta ) {
|
604 |
-
/**
|
605 |
-
* Filters the meta key for an imported piece of term meta.
|
606 |
-
*
|
607 |
-
* @param string $meta_key Meta key.
|
608 |
-
* @param int $term_id ID of the newly created term.
|
609 |
-
* @param array $term Term data from the WXR import.
|
610 |
-
*/
|
611 |
-
$key = apply_filters( 'import_term_meta_key', $meta['key'], $term_id, $term );
|
612 |
-
if ( ! $key ) {
|
613 |
-
continue;
|
614 |
-
}
|
615 |
-
|
616 |
-
// Export gets meta straight from the DB so could have a serialized string
|
617 |
-
$value = maybe_unserialize( $meta['value'] );
|
618 |
-
|
619 |
-
add_term_meta( $term_id, wp_slash( $key ), wp_slash_strings_only( $value ) );
|
620 |
-
|
621 |
-
/**
|
622 |
-
* Fires after term meta is imported.
|
623 |
-
*
|
624 |
-
* @param int $term_id ID of the newly created term.
|
625 |
-
* @param string $key Meta key.
|
626 |
-
* @param mixed $value Meta value.
|
627 |
-
*/
|
628 |
-
do_action( 'import_term_meta', $term_id, $key, $value );
|
629 |
-
}
|
630 |
-
}
|
631 |
-
|
632 |
-
/**
|
633 |
-
* Create new posts based on import information
|
634 |
-
*
|
635 |
-
* Posts marked as having a parent which doesn't exist will become top level items.
|
636 |
-
* Doesn't create a new post if: the post type doesn't exist, the given post ID
|
637 |
-
* is already noted as imported or a post with the same title and date already exists.
|
638 |
-
* Note that new/updated terms, comments and meta are imported for the last of the above.
|
639 |
-
*
|
640 |
-
* @return array the ids of succeed/failed imported posts.
|
641 |
-
*/
|
642 |
-
private function process_posts() {
|
643 |
-
$result = [
|
644 |
-
'succeed' => [],
|
645 |
-
'failed' => [],
|
646 |
-
];
|
647 |
-
|
648 |
-
$this->posts = apply_filters( 'wp_import_posts', $this->posts );
|
649 |
-
|
650 |
-
foreach ( $this->posts as $post ) {
|
651 |
-
$post = apply_filters( 'wp_import_post_data_raw', $post );
|
652 |
-
|
653 |
-
if ( ! post_type_exists( $post['post_type'] ) ) {
|
654 |
-
/* translators: 1: Post title, 2: Post type. */
|
655 |
-
$this->output['errors'][] = sprintf( esc_html__( 'Failed to import %1$s: Invalid post type %2$s', 'wpr-addons' ), $post['post_title'], $post['post_type'] );
|
656 |
-
do_action( 'wp_import_post_exists', $post );
|
657 |
-
continue;
|
658 |
-
}
|
659 |
-
|
660 |
-
if ( isset( $this->processed_posts[ $post['post_id'] ] ) && ! empty( $post['post_id'] ) ) {
|
661 |
-
continue;
|
662 |
-
}
|
663 |
-
|
664 |
-
if ( 'auto-draft' === $post['status'] ) {
|
665 |
-
continue;
|
666 |
-
}
|
667 |
-
|
668 |
-
if ( 'nav_menu_item' === $post['post_type'] ) {
|
669 |
-
$this->process_menu_item( $post );
|
670 |
-
continue;
|
671 |
-
}
|
672 |
-
|
673 |
-
$post_type_object = get_post_type_object( $post['post_type'] );
|
674 |
-
|
675 |
-
$post_parent = (int) $post['post_parent'];
|
676 |
-
if ( $post_parent ) {
|
677 |
-
// if we already know the parent, map it to the new local ID.
|
678 |
-
if ( isset( $this->processed_posts[ $post_parent ] ) ) {
|
679 |
-
$post_parent = $this->processed_posts[ $post_parent ];
|
680 |
-
// otherwise record the parent for later.
|
681 |
-
} else {
|
682 |
-
$this->post_orphans[ intval( $post['post_id'] ) ] = $post_parent;
|
683 |
-
$post_parent = 0;
|
684 |
-
}
|
685 |
-
}
|
686 |
-
|
687 |
-
// Map the post author.
|
688 |
-
$author = sanitize_user( $post['post_author'], true );
|
689 |
-
if ( isset( $this->author_mapping[ $author ] ) ) {
|
690 |
-
$author = $this->author_mapping[ $author ];
|
691 |
-
} else {
|
692 |
-
$author = (int) get_current_user_id();
|
693 |
-
}
|
694 |
-
|
695 |
-
$postdata = [
|
696 |
-
'import_id' => $post['post_id'],
|
697 |
-
'post_author' => $author,
|
698 |
-
'post_content' => $post['post_content'],
|
699 |
-
'post_excerpt' => $post['post_excerpt'],
|
700 |
-
'post_title' => $post['post_title'],
|
701 |
-
'post_status' => $post['status'],
|
702 |
-
'post_name' => $post['post_name'],
|
703 |
-
'comment_status' => $post['comment_status'],
|
704 |
-
'ping_status' => $post['ping_status'],
|
705 |
-
'guid' => $post['guid'],
|
706 |
-
'post_parent' => $post_parent,
|
707 |
-
'menu_order' => $post['menu_order'],
|
708 |
-
'post_type' => $post['post_type'],
|
709 |
-
'post_password' => $post['post_password'],
|
710 |
-
'post_date' => $post['post_date'],
|
711 |
-
];
|
712 |
-
|
713 |
-
$original_post_id = $post['post_id'];
|
714 |
-
$postdata = apply_filters( 'wp_import_post_data_processed', $postdata, $post );
|
715 |
-
|
716 |
-
$postdata = wp_slash( $postdata );
|
717 |
-
|
718 |
-
if ( 'attachment' === $postdata['post_type'] ) {
|
719 |
-
$remote_url = ! empty( $post['attachment_url'] ) ? $post['attachment_url'] : $post['guid'];
|
720 |
-
|
721 |
-
// try to use _wp_attached file for upload folder placement to ensure the same location as the export site
|
722 |
-
// e.g. location is 2003/05/image.jpg but the attachment post_date is 2010/09, see media_handle_upload()
|
723 |
-
$postdata['upload_date'] = $post['post_date'];
|
724 |
-
if ( isset( $post['postmeta'] ) ) {
|
725 |
-
foreach ( $post['postmeta'] as $meta ) {
|
726 |
-
if ( '_wp_attached_file' === $meta['key'] ) {
|
727 |
-
if ( preg_match( '%^[0-9]{4}/[0-9]{2}%', $meta['value'], $matches ) ) {
|
728 |
-
$postdata['upload_date'] = $matches[0];
|
729 |
-
}
|
730 |
-
break;
|
731 |
-
}
|
732 |
-
}
|
733 |
-
}
|
734 |
-
|
735 |
-
$post_id = $this->process_attachment( $postdata, $remote_url );
|
736 |
-
$comment_post_id = $post_id;
|
737 |
-
} else {
|
738 |
-
$post_id = wp_insert_post( $postdata, true );
|
739 |
-
$comment_post_id = $post_id;
|
740 |
-
do_action( 'wp_import_insert_post', $post_id, $original_post_id, $postdata, $post );
|
741 |
-
}
|
742 |
-
|
743 |
-
if ( is_wp_error( $post_id ) ) {
|
744 |
-
/* translators: 1: Post type singular label, 2: Post title. */
|
745 |
-
$error = sprintf( __( 'Failed to import %1$s %2$s', 'wpr-addons' ), $post_type_object->labels->singular_name, $post['post_title'] );
|
746 |
-
|
747 |
-
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
748 |
-
$error .= PHP_EOL . $post_id->get_error_message();
|
749 |
-
}
|
750 |
-
|
751 |
-
$result['failed'][] = $original_post_id;
|
752 |
-
|
753 |
-
$this->output['errors'][] = $error;
|
754 |
-
|
755 |
-
continue;
|
756 |
-
}
|
757 |
-
|
758 |
-
$result['succeed'][ $original_post_id ] = $post_id;
|
759 |
-
|
760 |
-
if ( 1 === $post['is_sticky'] ) {
|
761 |
-
stick_post( $post_id );
|
762 |
-
}
|
763 |
-
|
764 |
-
if ( $this->page_on_front === $original_post_id ) {
|
765 |
-
update_option( 'page_on_front', $post_id );
|
766 |
-
}
|
767 |
-
|
768 |
-
// Map pre-import ID to local ID.
|
769 |
-
$this->processed_posts[ intval( $post['post_id'] ) ] = (int) $post_id;
|
770 |
-
|
771 |
-
if ( ! isset( $post['terms'] ) ) {
|
772 |
-
$post['terms'] = [];
|
773 |
-
}
|
774 |
-
|
775 |
-
$post['terms'] = apply_filters( 'wp_import_post_terms', $post['terms'], $post_id, $post );
|
776 |
-
|
777 |
-
// add categories, tags and other terms
|
778 |
-
if ( ! empty( $post['terms'] ) ) {
|
779 |
-
$terms_to_set = [];
|
780 |
-
foreach ( $post['terms'] as $term ) {
|
781 |
-
// back compat with WXR 1.0 map 'tag' to 'post_tag'
|
782 |
-
$taxonomy = ( 'tag' === $term['domain'] ) ? 'post_tag' : $term['domain'];
|
783 |
-
$term_exists = term_exists( $term['slug'], $taxonomy );
|
784 |
-
$term_id = is_array( $term_exists ) ? $term_exists['term_id'] : $term_exists;
|
785 |
-
if ( ! $term_id ) {
|
786 |
-
$t = wp_insert_term( $term['name'], $taxonomy, [ 'slug' => $term['slug'] ] );
|
787 |
-
if ( ! is_wp_error( $t ) ) {
|
788 |
-
$term_id = $t['term_id'];
|
789 |
-
do_action( 'wp_import_insert_term', $t, $term, $post_id, $post );
|
790 |
-
} else {
|
791 |
-
/* translators: 1: Taxonomy name, 2: Term name. */
|
792 |
-
$error = sprintf( esc_html__( 'Failed to import %1$s %2$s', 'wpr-addons' ), $taxonomy, $term['name'] );
|
793 |
-
|
794 |
-
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
795 |
-
$error .= PHP_EOL . $t->get_error_message();
|
796 |
-
}
|
797 |
-
|
798 |
-
$this->output['errors'][] = $error;
|
799 |
-
|
800 |
-
do_action( 'wp_import_insert_term_failed', $t, $term, $post_id, $post );
|
801 |
-
continue;
|
802 |
-
}
|
803 |
-
}
|
804 |
-
$terms_to_set[ $taxonomy ][] = intval( $term_id );
|
805 |
-
}
|
806 |
-
|
807 |
-
foreach ( $terms_to_set as $tax => $ids ) {
|
808 |
-
$tt_ids = wp_set_post_terms( $post_id, $ids, $tax );
|
809 |
-
do_action( 'wp_import_set_post_terms', $tt_ids, $ids, $tax, $post_id, $post );
|
810 |
-
}
|
811 |
-
unset( $post['terms'], $terms_to_set );
|
812 |
-
}
|
813 |
-
|
814 |
-
if ( ! isset( $post['comments'] ) ) {
|
815 |
-
$post['comments'] = [];
|
816 |
-
}
|
817 |
-
|
818 |
-
$post['comments'] = apply_filters( 'wp_import_post_comments', $post['comments'], $post_id, $post );
|
819 |
-
|
820 |
-
// Add/update comments.
|
821 |
-
if ( ! empty( $post['comments'] ) ) {
|
822 |
-
$num_comments = 0;
|
823 |
-
$inserted_comments = [];
|
824 |
-
foreach ( $post['comments'] as $comment ) {
|
825 |
-
$comment_id = $comment['comment_id'];
|
826 |
-
$newcomments[ $comment_id ]['comment_post_ID'] = $comment_post_id;
|
827 |
-
$newcomments[ $comment_id ]['comment_author'] = $comment['comment_author'];
|
828 |
-
$newcomments[ $comment_id ]['comment_author_email'] = $comment['comment_author_email'];
|
829 |
-
$newcomments[ $comment_id ]['comment_author_IP'] = $comment['comment_author_IP'];
|
830 |
-
$newcomments[ $comment_id ]['comment_author_url'] = $comment['comment_author_url'];
|
831 |
-
$newcomments[ $comment_id ]['comment_date'] = $comment['comment_date'];
|
832 |
-
$newcomments[ $comment_id ]['comment_date_gmt'] = $comment['comment_date_gmt'];
|
833 |
-
$newcomments[ $comment_id ]['comment_content'] = $comment['comment_content'];
|
834 |
-
$newcomments[ $comment_id ]['comment_approved'] = $comment['comment_approved'];
|
835 |
-
$newcomments[ $comment_id ]['comment_type'] = $comment['comment_type'];
|
836 |
-
$newcomments[ $comment_id ]['comment_parent'] = $comment['comment_parent'];
|
837 |
-
$newcomments[ $comment_id ]['commentmeta'] = isset( $comment['commentmeta'] ) ? $comment['commentmeta'] : [];
|
838 |
-
if ( isset( $this->processed_authors[ $comment['comment_user_id'] ] ) ) {
|
839 |
-
$newcomments[ $comment_id ]['user_id'] = $this->processed_authors[ $comment['comment_user_id'] ];
|
840 |
-
}
|
841 |
-
}
|
842 |
-
|
843 |
-
ksort( $newcomments );
|
844 |
-
|
845 |
-
foreach ( $newcomments as $key => $comment ) {
|
846 |
-
if ( isset( $inserted_comments[ $comment['comment_parent'] ] ) ) {
|
847 |
-
$comment['comment_parent'] = $inserted_comments[ $comment['comment_parent'] ];
|
848 |
-
}
|
849 |
-
|
850 |
-
$comment_data = wp_slash( $comment );
|
851 |
-
unset( $comment_data['commentmeta'] ); // Handled separately, wp_insert_comment() also expects `comment_meta`.
|
852 |
-
$comment_data = wp_filter_comment( $comment_data );
|
853 |
-
|
854 |
-
$inserted_comments[ $key ] = wp_insert_comment( $comment_data );
|
855 |
-
|
856 |
-
do_action( 'wp_import_insert_comment', $inserted_comments[ $key ], $comment, $comment_post_id, $post );
|
857 |
-
|
858 |
-
foreach ( $comment['commentmeta'] as $meta ) {
|
859 |
-
$value = maybe_unserialize( $meta['value'] );
|
860 |
-
|
861 |
-
add_comment_meta( $inserted_comments[ $key ], wp_slash( $meta['key'] ), wp_slash_strings_only( $value ) );
|
862 |
-
}
|
863 |
-
|
864 |
-
$num_comments++;
|
865 |
-
}
|
866 |
-
unset( $newcomments, $inserted_comments, $post['comments'] );
|
867 |
-
}
|
868 |
-
|
869 |
-
if ( ! isset( $post['postmeta'] ) ) {
|
870 |
-
$post['postmeta'] = [];
|
871 |
-
}
|
872 |
-
|
873 |
-
$post['postmeta'] = apply_filters( 'wp_import_post_meta', $post['postmeta'], $post_id, $post );
|
874 |
-
|
875 |
-
// Add/update post meta.
|
876 |
-
if ( ! empty( $post['postmeta'] ) ) {
|
877 |
-
foreach ( $post['postmeta'] as $meta ) {
|
878 |
-
$key = apply_filters( 'import_post_meta_key', $meta['key'], $post_id, $post );
|
879 |
-
$value = false;
|
880 |
-
|
881 |
-
if ( '_edit_last' === $key ) {
|
882 |
-
if ( isset( $this->processed_authors[ intval( $meta['value'] ) ] ) ) {
|
883 |
-
$value = $this->processed_authors[ intval( $meta['value'] ) ];
|
884 |
-
} else {
|
885 |
-
$key = false;
|
886 |
-
}
|
887 |
-
}
|
888 |
-
|
889 |
-
if ( $key ) {
|
890 |
-
// Export gets meta straight from the DB so could have a serialized string.
|
891 |
-
if ( ! $value ) {
|
892 |
-
$value = maybe_unserialize( $meta['value'] );
|
893 |
-
}
|
894 |
-
|
895 |
-
add_post_meta( $post_id, wp_slash( $key ), wp_slash_strings_only( $value ) );
|
896 |
-
|
897 |
-
do_action( 'import_post_meta', $post_id, $key, $value );
|
898 |
-
|
899 |
-
// If the post has a featured image, take note of this in case of remap.
|
900 |
-
if ( '_thumbnail_id' === $key ) {
|
901 |
-
$this->featured_images[ $post_id ] = (int) $value;
|
902 |
-
}
|
903 |
-
}
|
904 |
-
}
|
905 |
-
}
|
906 |
-
}
|
907 |
-
|
908 |
-
unset( $this->posts );
|
909 |
-
|
910 |
-
return $result;
|
911 |
-
}
|
912 |
-
|
913 |
-
/**
|
914 |
-
* Attempt to create a new menu item from import data
|
915 |
-
*
|
916 |
-
* Fails for draft, orphaned menu items and those without an associated nav_menu
|
917 |
-
* or an invalid nav_menu term. If the post type or term object which the menu item
|
918 |
-
* represents doesn't exist then the menu item will not be imported (waits until the
|
919 |
-
* end of the import to retry again before discarding).
|
920 |
-
*
|
921 |
-
* @param array $item Menu item details from WXR file
|
922 |
-
*/
|
923 |
-
private function process_menu_item( $item ) {
|
924 |
-
// Skip draft, orphaned menu items.
|
925 |
-
if ( 'draft' === $item['status'] ) {
|
926 |
-
return;
|
927 |
-
}
|
928 |
-
|
929 |
-
$menu_slug = false;
|
930 |
-
if ( isset( $item['terms'] ) ) {
|
931 |
-
// Loop through terms, assume first nav_menu term is correct menu.
|
932 |
-
foreach ( $item['terms'] as $term ) {
|
933 |
-
if ( 'nav_menu' === $term['domain'] ) {
|
934 |
-
$menu_slug = $term['slug'];
|
935 |
-
break;
|
936 |
-
}
|
937 |
-
}
|
938 |
-
}
|
939 |
-
|
940 |
-
// No nav_menu term associated with this menu item.
|
941 |
-
if ( ! $menu_slug ) {
|
942 |
-
$this->output['errors'][] = esc_html__( 'Menu item skipped due to missing menu slug', 'wpr-addons' );
|
943 |
-
|
944 |
-
return;
|
945 |
-
}
|
946 |
-
|
947 |
-
$menu_id = term_exists( $menu_slug, 'nav_menu' );
|
948 |
-
if ( ! $menu_id ) {
|
949 |
-
/* translators: %s: Menu slug. */
|
950 |
-
$this->output['errors'][] = sprintf( esc_html__( 'Menu item skipped due to invalid menu slug: %s', 'wpr-addons' ), $menu_slug );
|
951 |
-
|
952 |
-
return;
|
953 |
-
} else {
|
954 |
-
$menu_id = is_array( $menu_id ) ? $menu_id['term_id'] : $menu_id;
|
955 |
-
}
|
956 |
-
|
957 |
-
$post_meta_key_value = [];
|
958 |
-
foreach ( $item['postmeta'] as $meta ) {
|
959 |
-
$post_meta_key_value[ $meta['key'] ] = $meta['value'];
|
960 |
-
}
|
961 |
-
|
962 |
-
// Duke - Import Menu Items Post Meta
|
963 |
-
$backup_menu_item_meta = [];
|
964 |
-
$backup_menu_item_meta['postmeta'] = $item['postmeta'];
|
965 |
-
|
966 |
-
foreach ( $item['postmeta'] as $meta ) {
|
967 |
-
${$meta['key']} = $meta['value'];
|
968 |
-
}
|
969 |
-
// End.
|
970 |
-
|
971 |
-
$_menu_item_object_id = $post_meta_key_value['_menu_item_object_id'];
|
972 |
-
if ( 'taxonomy' === $post_meta_key_value['_menu_item_type'] && isset( $this->processed_terms[ intval( $_menu_item_object_id ) ] ) ) {
|
973 |
-
$_menu_item_object_id = $this->processed_terms[ intval( $_menu_item_object_id ) ];
|
974 |
-
} elseif ( 'post_type' === $post_meta_key_value['_menu_item_type'] && isset( $this->processed_posts[ intval( $_menu_item_object_id ) ] ) ) {
|
975 |
-
$_menu_item_object_id = $this->processed_posts[ intval( $_menu_item_object_id ) ];
|
976 |
-
} elseif ( 'custom' !== $post_meta_key_value['_menu_item_type'] ) {
|
977 |
-
// Associated object is missing or not imported yet, we'll retry later.
|
978 |
-
$this->missing_menu_items[] = $item;
|
979 |
-
|
980 |
-
return;
|
981 |
-
}
|
982 |
-
|
983 |
-
$_menu_item_menu_item_parent = $post_meta_key_value['_menu_item_menu_item_parent']; // Duke - fix "_menu_item_menu_item_parent" dash was added
|
984 |
-
if ( isset( $this->processed_menu_items[ intval( $_menu_item_menu_item_parent ) ] ) ) {
|
985 |
-
$_menu_item_menu_item_parent = $this->processed_menu_items[ intval( $_menu_item_menu_item_parent ) ];
|
986 |
-
} elseif ( $_menu_item_menu_item_parent ) {
|
987 |
-
$this->menu_item_orphans[ intval( $item['post_id'] ) ] = (int) $_menu_item_menu_item_parent;
|
988 |
-
$_menu_item_menu_item_parent = 0;
|
989 |
-
}
|
990 |
-
|
991 |
-
// wp_update_nav_menu_item expects CSS classes as a space separated string
|
992 |
-
$_menu_item_classes = maybe_unserialize( $post_meta_key_value['_menu_item_classes'] );
|
993 |
-
if ( is_array( $_menu_item_classes ) ) {
|
994 |
-
$_menu_item_classes = implode( ' ', $_menu_item_classes );
|
995 |
-
}
|
996 |
-
|
997 |
-
$args = [
|
998 |
-
'menu-item-object-id' => $_menu_item_object_id,
|
999 |
-
'menu-item-object' => $post_meta_key_value['_menu_item_object'],
|
1000 |
-
'menu-item-parent-id' => $_menu_item_menu_item_parent,
|
1001 |
-
'menu-item-position' => intval( $item['menu_order'] ),
|
1002 |
-
'menu-item-type' => $post_meta_key_value['_menu_item_type'],
|
1003 |
-
'menu-item-title' => $item['post_title'],
|
1004 |
-
'menu-item-url' => $post_meta_key_value['_menu_item_url'],
|
1005 |
-
'menu-item-description' => $item['post_content'],
|
1006 |
-
'menu-item-attr-title' => $item['post_excerpt'],
|
1007 |
-
'menu-item-target' => $post_meta_key_value['_menu_item_target'],
|
1008 |
-
'menu-item-classes' => $_menu_item_classes,
|
1009 |
-
'menu-item-xfn' => $post_meta_key_value['_menu_item_xfn'],
|
1010 |
-
'menu-item-status' => $item['status'],
|
1011 |
-
];
|
1012 |
-
|
1013 |
-
$id = wp_update_nav_menu_item( $menu_id, 0, $args );
|
1014 |
-
if ( $id && ! is_wp_error( $id ) ) {
|
1015 |
-
// Duke - Import Menu Items Post Meta
|
1016 |
-
$menu_item_db_id = $id;
|
1017 |
-
$backup_menu_item_meta['postmeta'] = apply_filters('wordpress_importer_menu_items_meta_import', $backup_menu_item_meta['postmeta'], $id);
|
1018 |
-
$skip_meta_items = [
|
1019 |
-
'_menu_item_type',
|
1020 |
-
'_menu_item_menu_item_parent',
|
1021 |
-
'_menu_item_object_id',
|
1022 |
-
'_menu_item_object',
|
1023 |
-
'_menu_item_target',
|
1024 |
-
'_menu_item_classes',
|
1025 |
-
'_menu_item_xfn',
|
1026 |
-
'_menu_item_url'
|
1027 |
-
];
|
1028 |
-
if ( is_array($backup_menu_item_meta['postmeta']) && !empty($backup_menu_item_meta['postmeta']) ) {
|
1029 |
-
foreach ( $backup_menu_item_meta['postmeta'] as $meta ) {
|
1030 |
-
if ( !in_array($meta['key'], $skip_meta_items) ) {
|
1031 |
-
update_post_meta( $menu_item_db_id, $meta['key'], maybe_unserialize($meta['value']));
|
1032 |
-
}
|
1033 |
-
}
|
1034 |
-
}
|
1035 |
-
// End.
|
1036 |
-
|
1037 |
-
$this->processed_menu_items[ intval( $item['post_id'] ) ] = (int) $id;
|
1038 |
-
}
|
1039 |
-
}
|
1040 |
-
|
1041 |
-
/**
|
1042 |
-
* If fetching attachments is enabled then attempt to create a new attachment
|
1043 |
-
*
|
1044 |
-
* @param array $post Attachment post details from WXR
|
1045 |
-
* @param string $url URL to fetch attachment from
|
1046 |
-
*
|
1047 |
-
* @return int|WP_Error Post ID on success, WP_Error otherwise
|
1048 |
-
*/
|
1049 |
-
private function process_attachment( $post, $url ) {
|
1050 |
-
|
1051 |
-
if ( ! $this->fetch_attachments ) {
|
1052 |
-
return new WP_Error( 'attachment_processing_error', esc_html__( 'Fetching attachments is not enabled', 'wpr-addons' ) );
|
1053 |
-
}
|
1054 |
-
|
1055 |
-
// if the URL is absolute, but does not contain address, then upload it assuming base_site_url.
|
1056 |
-
if ( preg_match( '|^/[\w\W]+$|', $url ) ) {
|
1057 |
-
$url = rtrim( $this->base_url, '/' ) . $url;
|
1058 |
-
}
|
1059 |
-
|
1060 |
-
$upload = $this->fetch_remote_file( $url, $post );
|
1061 |
-
if ( is_wp_error( $upload ) ) {
|
1062 |
-
return $upload;
|
1063 |
-
}
|
1064 |
-
|
1065 |
-
$info = wp_check_filetype( $upload['file'] );
|
1066 |
-
if ( $info ) {
|
1067 |
-
$post['post_mime_type'] = $info['type'];
|
1068 |
-
} else {
|
1069 |
-
return new WP_Error( 'attachment_processing_error', esc_html__( 'Invalid file type', 'wpr-addons' ) );
|
1070 |
-
}
|
1071 |
-
|
1072 |
-
$post['guid'] = $upload['url'];
|
1073 |
-
|
1074 |
-
// As per wp-admin/includes/upload.php.
|
1075 |
-
$post_id = wp_insert_attachment( $post, $upload['file'] );
|
1076 |
-
wp_update_attachment_metadata( $post_id, wp_generate_attachment_metadata( $post_id, $upload['file'] ) );
|
1077 |
-
|
1078 |
-
// Remap resized image URLs, works by stripping the extension and remapping the URL stub.
|
1079 |
-
if ( preg_match( '!^image/!', $info['type'] ) ) {
|
1080 |
-
$parts = pathinfo( $url );
|
1081 |
-
$name = basename( $parts['basename'], ".{$parts['extension']}" ); // PATHINFO_FILENAME in PHP 5.2
|
1082 |
-
|
1083 |
-
$parts_new = pathinfo( $upload['url'] );
|
1084 |
-
$name_new = basename( $parts_new['basename'], ".{$parts_new['extension']}" );
|
1085 |
-
|
1086 |
-
$this->url_remap[ $parts['dirname'] . '/' . $name ] = $parts_new['dirname'] . '/' . $name_new;
|
1087 |
-
}
|
1088 |
-
|
1089 |
-
return $post_id;
|
1090 |
-
}
|
1091 |
-
|
1092 |
-
/**
|
1093 |
-
* Attempt to download a remote file attachment
|
1094 |
-
*
|
1095 |
-
* @param string $url URL of item to fetch
|
1096 |
-
* @param array $post Attachment details
|
1097 |
-
*
|
1098 |
-
* @return array|WP_Error Local file location details on success, WP_Error otherwise
|
1099 |
-
*/
|
1100 |
-
private function fetch_remote_file( $url, $post ) {
|
1101 |
-
// Extract the file name from the URL.
|
1102 |
-
$file_name = basename( parse_url( $url, PHP_URL_PATH ) );
|
1103 |
-
|
1104 |
-
if ( ! $file_name ) {
|
1105 |
-
$file_name = md5( $url );
|
1106 |
-
}
|
1107 |
-
|
1108 |
-
$tmp_file_name = wp_tempnam( $file_name );
|
1109 |
-
if ( ! $tmp_file_name ) {
|
1110 |
-
return new WP_Error( 'import_no_file', esc_html__( 'Could not create temporary file.', 'wpr-addons' ) );
|
1111 |
-
}
|
1112 |
-
|
1113 |
-
// Fetch the remote URL and write it to the placeholder file.
|
1114 |
-
$remote_response = wp_safe_remote_get( $url, [
|
1115 |
-
'timeout' => 300,
|
1116 |
-
'stream' => true,
|
1117 |
-
'filename' => $tmp_file_name,
|
1118 |
-
'headers' => [
|
1119 |
-
'Accept-Encoding' => 'identity',
|
1120 |
-
],
|
1121 |
-
] );
|
1122 |
-
|
1123 |
-
if ( is_wp_error( $remote_response ) ) {
|
1124 |
-
@unlink( $tmp_file_name );
|
1125 |
-
|
1126 |
-
return new WP_Error( 'import_file_error', sprintf( /* translators: 1: WordPress error message, 2: WordPress error code. */ esc_html__( 'Request failed due to an error: %1$s (%2$s)', 'wpr-addons' ), esc_html( $remote_response->get_error_message() ), esc_html( $remote_response->get_error_code() ) ) );
|
1127 |
-
}
|
1128 |
-
|
1129 |
-
$remote_response_code = (int) wp_remote_retrieve_response_code( $remote_response );
|
1130 |
-
|
1131 |
-
// Make sure the fetch was successful.
|
1132 |
-
if ( 200 !== $remote_response_code ) {
|
1133 |
-
@unlink( $tmp_file_name );
|
1134 |
-
|
1135 |
-
return new WP_Error( 'import_file_error', sprintf( /* translators: 1: HTTP error message, 2: HTTP error code. */ esc_html__( 'Remote server returned the following unexpected result: %1$s (%2$s)', 'wpr-addons' ), get_status_header_desc( $remote_response_code ), esc_html( $remote_response_code ) ) );
|
1136 |
-
}
|
1137 |
-
|
1138 |
-
$headers = wp_remote_retrieve_headers( $remote_response );
|
1139 |
-
|
1140 |
-
// Request failed.
|
1141 |
-
if ( ! $headers ) {
|
1142 |
-
@unlink( $tmp_file_name );
|
1143 |
-
|
1144 |
-
return new WP_Error( 'import_file_error', esc_html__( 'Remote server did not respond', 'wpr-addons' ) );
|
1145 |
-
}
|
1146 |
-
|
1147 |
-
$filesize = (int) filesize( $tmp_file_name );
|
1148 |
-
|
1149 |
-
if ( 0 === $filesize ) {
|
1150 |
-
@unlink( $tmp_file_name );
|
1151 |
-
|
1152 |
-
return new WP_Error( 'import_file_error', esc_html__( 'Zero size file downloaded', 'wpr-addons' ) );
|
1153 |
-
}
|
1154 |
-
|
1155 |
-
if ( ! isset( $headers['content-encoding'] ) && isset( $headers['content-length'] ) && $filesize !== (int) $headers['content-length'] ) {
|
1156 |
-
@unlink( $tmp_file_name );
|
1157 |
-
|
1158 |
-
return new WP_Error( 'import_file_error', esc_html__( 'Downloaded file has incorrect size', 'wpr-addons' ) );
|
1159 |
-
}
|
1160 |
-
|
1161 |
-
$max_size = (int) apply_filters( 'import_attachment_size_limit', self::DEFAULT_IMPORT_ATTACHMENT_SIZE_LIMIT );
|
1162 |
-
if ( ! empty( $max_size ) && $filesize > $max_size ) {
|
1163 |
-
@unlink( $tmp_file_name );
|
1164 |
-
|
1165 |
-
/* translators: %s: Max file size. */
|
1166 |
-
return new WP_Error( 'import_file_error', sprintf( esc_html__( 'Remote file is too large, limit is %s', 'wpr-addons' ), size_format( $max_size ) ) );
|
1167 |
-
}
|
1168 |
-
|
1169 |
-
// Override file name with Content-Disposition header value.
|
1170 |
-
if ( ! empty( $headers['content-disposition'] ) ) {
|
1171 |
-
$file_name_from_disposition = self::get_filename_from_disposition( (array) $headers['content-disposition'] );
|
1172 |
-
if ( $file_name_from_disposition ) {
|
1173 |
-
$file_name = $file_name_from_disposition;
|
1174 |
-
}
|
1175 |
-
}
|
1176 |
-
|
1177 |
-
// Set file extension if missing.
|
1178 |
-
$file_ext = pathinfo( $file_name, PATHINFO_EXTENSION );
|
1179 |
-
if ( ! $file_ext && ! empty( $headers['content-type'] ) ) {
|
1180 |
-
$extension = self::get_file_extension_by_mime_type( $headers['content-type'] );
|
1181 |
-
if ( $extension ) {
|
1182 |
-
$file_name = "{$file_name}.{$extension}";
|
1183 |
-
}
|
1184 |
-
}
|
1185 |
-
|
1186 |
-
// Handle the upload like _wp_handle_upload() does.
|
1187 |
-
$wp_filetype = wp_check_filetype_and_ext( $tmp_file_name, $file_name );
|
1188 |
-
$ext = empty( $wp_filetype['ext'] ) ? '' : $wp_filetype['ext'];
|
1189 |
-
$type = empty( $wp_filetype['type'] ) ? '' : $wp_filetype['type'];
|
1190 |
-
$proper_filename = empty( $wp_filetype['proper_filename'] ) ? '' : $wp_filetype['proper_filename'];
|
1191 |
-
|
1192 |
-
// Check to see if wp_check_filetype_and_ext() determined the filename was incorrect.
|
1193 |
-
if ( $proper_filename ) {
|
1194 |
-
$file_name = $proper_filename;
|
1195 |
-
}
|
1196 |
-
|
1197 |
-
if ( ( ! $type || ! $ext ) && ! current_user_can( 'unfiltered_upload' ) ) {
|
1198 |
-
return new WP_Error( 'import_file_error', esc_html__( 'Sorry, this file type is not permitted for security reasons.', 'wpr-addons' ) );
|
1199 |
-
}
|
1200 |
-
|
1201 |
-
$uploads = wp_upload_dir( $post['upload_date'] );
|
1202 |
-
if ( ! ( $uploads && false === $uploads['error'] ) ) {
|
1203 |
-
return new WP_Error( 'upload_dir_error', $uploads['error'] );
|
1204 |
-
}
|
1205 |
-
|
1206 |
-
// Move the file to the uploads dir.
|
1207 |
-
$file_name = wp_unique_filename( $uploads['path'], $file_name );
|
1208 |
-
$new_file = $uploads['path'] . "/$file_name";
|
1209 |
-
$move_new_file = copy( $tmp_file_name, $new_file );
|
1210 |
-
|
1211 |
-
if ( ! $move_new_file ) {
|
1212 |
-
@unlink( $tmp_file_name );
|
1213 |
-
|
1214 |
-
return new WP_Error( 'import_file_error', esc_html__( 'The uploaded file could not be moved', 'wpr-addons' ) );
|
1215 |
-
}
|
1216 |
-
|
1217 |
-
// Set correct file permissions.
|
1218 |
-
$stat = stat( dirname( $new_file ) );
|
1219 |
-
$perms = $stat['mode'] & 0000666;
|
1220 |
-
chmod( $new_file, $perms );
|
1221 |
-
|
1222 |
-
$upload = [
|
1223 |
-
'file' => $new_file,
|
1224 |
-
'url' => $uploads['url'] . "/$file_name",
|
1225 |
-
'type' => $wp_filetype['type'],
|
1226 |
-
'error' => false,
|
1227 |
-
];
|
1228 |
-
|
1229 |
-
// Keep track of the old and new urls so we can substitute them later.
|
1230 |
-
$this->url_remap[ $url ] = $upload['url'];
|
1231 |
-
$this->url_remap[ $post['guid'] ] = $upload['url']; // r13735, really needed?
|
1232 |
-
// Keep track of the destination if the remote url is redirected somewhere else.
|
1233 |
-
if ( isset( $headers['x-final-location'] ) && $headers['x-final-location'] !== $url ) {
|
1234 |
-
$this->url_remap[ $headers['x-final-location'] ] = $upload['url'];
|
1235 |
-
}
|
1236 |
-
|
1237 |
-
return $upload;
|
1238 |
-
}
|
1239 |
-
|
1240 |
-
/**
|
1241 |
-
* Attempt to associate posts and menu items with previously missing parents
|
1242 |
-
*
|
1243 |
-
* An imported post's parent may not have been imported when it was first created
|
1244 |
-
* so try again. Similarly for child menu items and menu items which were missing
|
1245 |
-
* the object (e.g. post) they represent in the menu
|
1246 |
-
*/
|
1247 |
-
private function backfill_parents() {
|
1248 |
-
global $wpdb;
|
1249 |
-
|
1250 |
-
// Find parents for post orphans.
|
1251 |
-
foreach ( $this->post_orphans as $child_id => $parent_id ) {
|
1252 |
-
$local_child_id = false;
|
1253 |
-
$local_parent_id = false;
|
1254 |
-
|
1255 |
-
if ( isset( $this->processed_posts[ $child_id ] ) ) {
|
1256 |
-
$local_child_id = $this->processed_posts[ $child_id ];
|
1257 |
-
}
|
1258 |
-
if ( isset( $this->processed_posts[ $parent_id ] ) ) {
|
1259 |
-
$local_parent_id = $this->processed_posts[ $parent_id ];
|
1260 |
-
}
|
1261 |
-
|
1262 |
-
if ( $local_child_id && $local_parent_id ) {
|
1263 |
-
$wpdb->update( $wpdb->posts, [ 'post_parent' => $local_parent_id ], [ 'ID' => $local_child_id ], '%d', '%d' );
|
1264 |
-
clean_post_cache( $local_child_id );
|
1265 |
-
}
|
1266 |
-
}
|
1267 |
-
|
1268 |
-
// All other posts/terms are imported, retry menu items with missing associated object.
|
1269 |
-
$missing_menu_items = $this->missing_menu_items;
|
1270 |
-
foreach ( $missing_menu_items as $item ) {
|
1271 |
-
$this->process_menu_item( $item );
|
1272 |
-
}
|
1273 |
-
|
1274 |
-
// Find parents for menu item orphans.
|
1275 |
-
foreach ( $this->menu_item_orphans as $child_id => $parent_id ) {
|
1276 |
-
$local_child_id = 0;
|
1277 |
-
$local_parent_id = 0;
|
1278 |
-
if ( isset( $this->processed_menu_items[ $child_id ] ) ) {
|
1279 |
-
$local_child_id = $this->processed_menu_items[ $child_id ];
|
1280 |
-
}
|
1281 |
-
if ( isset( $this->processed_menu_items[ $parent_id ] ) ) {
|
1282 |
-
$local_parent_id = $this->processed_menu_items[ $parent_id ];
|
1283 |
-
}
|
1284 |
-
|
1285 |
-
if ( $local_child_id && $local_parent_id ) {
|
1286 |
-
update_post_meta( $local_child_id, '_menu_item_menu_item_parent', (int) $local_parent_id );
|
1287 |
-
}
|
1288 |
-
}
|
1289 |
-
}
|
1290 |
-
|
1291 |
-
/**
|
1292 |
-
* Use stored mapping information to update old attachment URLs
|
1293 |
-
*/
|
1294 |
-
private function backfill_attachment_urls() {
|
1295 |
-
global $wpdb;
|
1296 |
-
// Make sure we do the longest urls first, in case one is a substring of another.
|
1297 |
-
uksort( $this->url_remap, function ( $a, $b ) {
|
1298 |
-
// Return the difference in length between two strings.
|
1299 |
-
return strlen( $b ) - strlen( $a );
|
1300 |
-
} );
|
1301 |
-
|
1302 |
-
foreach ( $this->url_remap as $from_url => $to_url ) {
|
1303 |
-
// Remap urls in post_content.
|
1304 |
-
$wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->posts} SET post_content = REPLACE(post_content, %s, %s)", $from_url, $to_url ) );
|
1305 |
-
// Remap enclosure urls.
|
1306 |
-
$wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->postmeta} SET meta_value = REPLACE(meta_value, %s, %s) WHERE meta_key='enclosure'", $from_url, $to_url ) );
|
1307 |
-
}
|
1308 |
-
}
|
1309 |
-
|
1310 |
-
/**
|
1311 |
-
* Update _thumbnail_id meta to new, imported attachment IDs
|
1312 |
-
*/
|
1313 |
-
private function remap_featured_images() {
|
1314 |
-
// Cycle through posts that have a featured image.
|
1315 |
-
foreach ( $this->featured_images as $post_id => $value ) {
|
1316 |
-
if ( isset( $this->processed_posts[ $value ] ) ) {
|
1317 |
-
$new_id = $this->processed_posts[ $value ];
|
1318 |
-
// Only update if there's a difference.
|
1319 |
-
if ( $new_id !== $value ) {
|
1320 |
-
update_post_meta( $post_id, '_thumbnail_id', $new_id );
|
1321 |
-
}
|
1322 |
-
}
|
1323 |
-
}
|
1324 |
-
}
|
1325 |
-
|
1326 |
-
/**
|
1327 |
-
* Parse a WXR file
|
1328 |
-
*
|
1329 |
-
* @param string $file Path to WXR file for parsing
|
1330 |
-
*
|
1331 |
-
* @return array Information gathered from the WXR file
|
1332 |
-
*/
|
1333 |
-
private function parse( $file ) {
|
1334 |
-
$parser = new WXR_Parser();
|
1335 |
-
|
1336 |
-
return $parser->parse( $file );
|
1337 |
-
}
|
1338 |
-
|
1339 |
-
/**
|
1340 |
-
* Decide if the given meta key maps to information we will want to import
|
1341 |
-
*
|
1342 |
-
* @param string $key The meta key to check
|
1343 |
-
*
|
1344 |
-
* @return string|bool The key if we do want to import, false if not
|
1345 |
-
*/
|
1346 |
-
private function is_valid_meta_key( $key ) {
|
1347 |
-
// Skip attachment metadata since we'll regenerate it from scratch.
|
1348 |
-
// Skip _edit_lock as not relevant for import
|
1349 |
-
if ( in_array( $key, [ '_wp_attached_file', '_wp_attachment_metadata', '_edit_lock' ] ) ) {
|
1350 |
-
return false;
|
1351 |
-
}
|
1352 |
-
|
1353 |
-
return $key;
|
1354 |
-
}
|
1355 |
-
|
1356 |
-
public function run() {
|
1357 |
-
$this->import( $this->requested_file_path );
|
1358 |
-
|
1359 |
-
return $this->output;
|
1360 |
-
}
|
1361 |
-
|
1362 |
-
public function __construct( $file, $args = [] ) {
|
1363 |
-
$this->requested_file_path = $file;
|
1364 |
-
$this->args = $args;
|
1365 |
-
|
1366 |
-
if ( ! empty( $this->args['fetch_attachments'] ) ) {
|
1367 |
-
$this->fetch_attachments = true;
|
1368 |
-
}
|
1369 |
-
}
|
1370 |
-
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
exit; // Exit if accessed directly.
|
5 |
+
}
|
6 |
+
|
7 |
+
if ( ! defined( 'WP_LOAD_IMPORTERS' ) )
|
8 |
+
return;
|
9 |
+
|
10 |
+
/** Display verbose errors */
|
11 |
+
define( 'IMPORT_DEBUG', false );
|
12 |
+
|
13 |
+
// Load Importer API
|
14 |
+
require_once ABSPATH . 'wp-admin/includes/import.php';
|
15 |
+
|
16 |
+
if ( ! class_exists( 'WP_Importer' ) ) {
|
17 |
+
$class_wp_importer = ABSPATH . 'wp-admin/includes/class-wp-importer.php';
|
18 |
+
if ( file_exists( $class_wp_importer ) )
|
19 |
+
require $class_wp_importer;
|
20 |
+
}
|
21 |
+
|
22 |
+
// include WXR file parsers
|
23 |
+
require WPR_ADDONS_PATH .'admin/import/class-parsers.php';
|
24 |
+
|
25 |
+
class WP_Import extends WP_Importer {
|
26 |
+
const DEFAULT_BUMP_REQUEST_TIMEOUT = 60;
|
27 |
+
const DEFAULT_ALLOW_CREATE_USERS = true;
|
28 |
+
const DEFAULT_IMPORT_ATTACHMENT_SIZE_LIMIT = 0; // 0 = unlimited.
|
29 |
+
|
30 |
+
/**
|
31 |
+
* @var string
|
32 |
+
*/
|
33 |
+
private $requested_file_path;
|
34 |
+
|
35 |
+
/**
|
36 |
+
* @var array
|
37 |
+
*/
|
38 |
+
private $args;
|
39 |
+
|
40 |
+
/**
|
41 |
+
* @var array
|
42 |
+
*/
|
43 |
+
private $output = [
|
44 |
+
'status' => 'failed',
|
45 |
+
'errors' => [],
|
46 |
+
];
|
47 |
+
|
48 |
+
/*
|
49 |
+
* WXR attachment ID
|
50 |
+
*/
|
51 |
+
private $id;
|
52 |
+
|
53 |
+
// Information to import from WXR file.
|
54 |
+
private $version;
|
55 |
+
private $authors = [];
|
56 |
+
private $posts = [];
|
57 |
+
private $terms = [];
|
58 |
+
private $categories = [];
|
59 |
+
private $tags = [];
|
60 |
+
private $base_url = '';
|
61 |
+
private $page_on_front;
|
62 |
+
|
63 |
+
// Mappings from old information to new.
|
64 |
+
private $processed_authors = [];
|
65 |
+
private $author_mapping = [];
|
66 |
+
private $processed_terms = [];
|
67 |
+
private $processed_posts = [];
|
68 |
+
private $post_orphans = [];
|
69 |
+
private $processed_menu_items = [];
|
70 |
+
private $menu_item_orphans = [];
|
71 |
+
private $missing_menu_items = [];
|
72 |
+
|
73 |
+
private $fetch_attachments = false;
|
74 |
+
private $url_remap = [];
|
75 |
+
private $featured_images = [];
|
76 |
+
|
77 |
+
/**
|
78 |
+
* Parses filename from a Content-Disposition header value.
|
79 |
+
*
|
80 |
+
* As per RFC6266:
|
81 |
+
*
|
82 |
+
* content-disposition = "Content-Disposition" ":"
|
83 |
+
* disposition-type *( ";" disposition-parm )
|
84 |
+
*
|
85 |
+
* disposition-type = "inline" | "attachment" | disp-ext-type
|
86 |
+
* ; case-insensitive
|
87 |
+
* disp-ext-type = token
|
88 |
+
*
|
89 |
+
* disposition-parm = filename-parm | disp-ext-parm
|
90 |
+
*
|
91 |
+
* filename-parm = "filename" "=" value
|
92 |
+
* | "filename*" "=" ext-value
|
93 |
+
*
|
94 |
+
* disp-ext-parm = token "=" value
|
95 |
+
* | ext-token "=" ext-value
|
96 |
+
* ext-token = <the characters in token, followed by "*">
|
97 |
+
*
|
98 |
+
* @param string[] $disposition_header List of Content-Disposition header values.
|
99 |
+
*
|
100 |
+
* @return string|null Filename if available, or null if not found.
|
101 |
+
* @link http://tools.ietf.org/html/rfc2388
|
102 |
+
* @link http://tools.ietf.org/html/rfc6266
|
103 |
+
*
|
104 |
+
* @see WP_REST_Attachments_Controller::get_filename_from_disposition()
|
105 |
+
*
|
106 |
+
*/
|
107 |
+
protected static function get_filename_from_disposition( $disposition_header ) {
|
108 |
+
// Get the filename.
|
109 |
+
$filename = null;
|
110 |
+
|
111 |
+
foreach ( $disposition_header as $value ) {
|
112 |
+
$value = trim( $value );
|
113 |
+
|
114 |
+
if ( strpos( $value, ';' ) === false ) {
|
115 |
+
continue;
|
116 |
+
}
|
117 |
+
|
118 |
+
list( $type, $attr_parts ) = explode( ';', $value, 2 );
|
119 |
+
|
120 |
+
$attr_parts = explode( ';', $attr_parts );
|
121 |
+
$attributes = [];
|
122 |
+
|
123 |
+
foreach ( $attr_parts as $part ) {
|
124 |
+
if ( strpos( $part, '=' ) === false ) {
|
125 |
+
continue;
|
126 |
+
}
|
127 |
+
|
128 |
+
list( $key, $value ) = explode( '=', $part, 2 );
|
129 |
+
|
130 |
+
$attributes[ trim( $key ) ] = trim( $value );
|
131 |
+
}
|
132 |
+
|
133 |
+
if ( empty( $attributes['filename'] ) ) {
|
134 |
+
continue;
|
135 |
+
}
|
136 |
+
|
137 |
+
$filename = trim( $attributes['filename'] );
|
138 |
+
|
139 |
+
// Unquote quoted filename, but after trimming.
|
140 |
+
if ( substr( $filename, 0, 1 ) === '"' && substr( $filename, -1, 1 ) === '"' ) {
|
141 |
+
$filename = substr( $filename, 1, -1 );
|
142 |
+
}
|
143 |
+
}
|
144 |
+
|
145 |
+
return $filename;
|
146 |
+
}
|
147 |
+
|
148 |
+
/**
|
149 |
+
* Retrieves file extension by mime type.
|
150 |
+
*
|
151 |
+
* @param string $mime_type Mime type to search extension for.
|
152 |
+
*
|
153 |
+
* @return string|null File extension if available, or null if not found.
|
154 |
+
*/
|
155 |
+
protected static function get_file_extension_by_mime_type( $mime_type ) {
|
156 |
+
static $map = null;
|
157 |
+
|
158 |
+
if ( is_array( $map ) ) {
|
159 |
+
return isset( $map[ $mime_type ] ) ? $map[ $mime_type ] : null;
|
160 |
+
}
|
161 |
+
|
162 |
+
$mime_types = wp_get_mime_types();
|
163 |
+
$map = array_flip( $mime_types );
|
164 |
+
|
165 |
+
// Some types have multiple extensions, use only the first one.
|
166 |
+
foreach ( $map as $type => $extensions ) {
|
167 |
+
$map[ $type ] = strtok( $extensions, '|' );
|
168 |
+
}
|
169 |
+
|
170 |
+
return isset( $map[ $mime_type ] ) ? $map[ $mime_type ] : null;
|
171 |
+
}
|
172 |
+
|
173 |
+
/**
|
174 |
+
* The main controller for the actual import stage.
|
175 |
+
*
|
176 |
+
* @param string $file Path to the WXR file for importing
|
177 |
+
*/
|
178 |
+
private function import( $file ) {
|
179 |
+
add_filter( 'import_post_meta_key', function ( $key ) {
|
180 |
+
return $this->is_valid_meta_key( $key );
|
181 |
+
} );
|
182 |
+
add_filter( 'http_request_timeout', function () {
|
183 |
+
return self::DEFAULT_BUMP_REQUEST_TIMEOUT;
|
184 |
+
} );
|
185 |
+
|
186 |
+
if ( ! $this->import_start( $file ) ) {
|
187 |
+
return;
|
188 |
+
}
|
189 |
+
|
190 |
+
$this->set_author_mapping();
|
191 |
+
|
192 |
+
wp_suspend_cache_invalidation( true );
|
193 |
+
$imported_summary = [
|
194 |
+
'categories' => $this->process_categories(),
|
195 |
+
'tags' => $this->process_tags(),
|
196 |
+
'terms' => $this->process_terms(),
|
197 |
+
'posts' => $this->process_posts(),
|
198 |
+
];
|
199 |
+
wp_suspend_cache_invalidation( false );
|
200 |
+
|
201 |
+
// Update incorrect/missing information in the DB.
|
202 |
+
$this->backfill_parents();
|
203 |
+
$this->backfill_attachment_urls();
|
204 |
+
$this->remap_featured_images();
|
205 |
+
|
206 |
+
$this->import_end();
|
207 |
+
|
208 |
+
$is_some_succeed = false;
|
209 |
+
foreach ( $imported_summary as $item ) {
|
210 |
+
if ( $item > 0 ) {
|
211 |
+
$is_some_succeed = true;
|
212 |
+
break;
|
213 |
+
}
|
214 |
+
}
|
215 |
+
|
216 |
+
if ( $is_some_succeed ) {
|
217 |
+
$this->output['status'] = 'success';
|
218 |
+
$this->output['summary'] = $imported_summary;
|
219 |
+
}
|
220 |
+
}
|
221 |
+
|
222 |
+
/**
|
223 |
+
* Parses the WXR file and prepares us for the task of processing parsed data.
|
224 |
+
*
|
225 |
+
* @param string $file Path to the WXR file for importing
|
226 |
+
*/
|
227 |
+
private function import_start( $file ) {
|
228 |
+
if ( ! is_file( $file ) ) {
|
229 |
+
$this->output['errors'] = [ esc_html__( 'The file does not exist, please try again.', 'wpr-addons' ) ];
|
230 |
+
|
231 |
+
return false;
|
232 |
+
}
|
233 |
+
|
234 |
+
$import_data = $this->parse( $file );
|
235 |
+
|
236 |
+
if ( is_wp_error( $import_data ) ) {
|
237 |
+
$this->output['errors'] = [ $import_data->get_error_message() ];
|
238 |
+
|
239 |
+
return false;
|
240 |
+
}
|
241 |
+
|
242 |
+
$this->version = $import_data['version'];
|
243 |
+
$this->set_authors_from_import( $import_data );
|
244 |
+
$this->posts = $import_data['posts'];
|
245 |
+
$this->terms = $import_data['terms'];
|
246 |
+
$this->categories = $import_data['categories'];
|
247 |
+
$this->tags = $import_data['tags'];
|
248 |
+
$this->base_url = esc_url( $import_data['base_url'] );
|
249 |
+
$this->page_on_front = $import_data['page_on_front'];
|
250 |
+
|
251 |
+
wp_defer_term_counting( true );
|
252 |
+
wp_defer_comment_counting( true );
|
253 |
+
|
254 |
+
do_action( 'import_start' );
|
255 |
+
|
256 |
+
return true;
|
257 |
+
}
|
258 |
+
|
259 |
+
/**
|
260 |
+
* Performs post-import cleanup of files and the cache
|
261 |
+
*/
|
262 |
+
private function import_end() {
|
263 |
+
wp_import_cleanup( $this->id );
|
264 |
+
|
265 |
+
wp_cache_flush();
|
266 |
+
|
267 |
+
foreach ( get_taxonomies() as $tax ) {
|
268 |
+
delete_option( "{$tax}_children" );
|
269 |
+
_get_term_hierarchy( $tax );
|
270 |
+
}
|
271 |
+
|
272 |
+
wp_defer_term_counting( false );
|
273 |
+
wp_defer_comment_counting( false );
|
274 |
+
|
275 |
+
do_action( 'import_end' );
|
276 |
+
}
|
277 |
+
|
278 |
+
/**
|
279 |
+
* Retrieve authors from parsed WXR data and set it to `$this->>authors`.
|
280 |
+
*
|
281 |
+
* Uses the provided author information from WXR 1.1 files
|
282 |
+
* or extracts info from each post for WXR 1.0 files
|
283 |
+
*
|
284 |
+
* @param array $import_data Data returned by a WXR parser
|
285 |
+
*/
|
286 |
+
private function set_authors_from_import( $import_data ) {
|
287 |
+
if ( ! empty( $import_data['authors'] ) ) {
|
288 |
+
$this->authors = $import_data['authors'];
|
289 |
+
// No author information, grab it from the posts.
|
290 |
+
} else {
|
291 |
+
foreach ( $import_data['posts'] as $post ) {
|
292 |
+
$login = sanitize_user( $post['post_author'], true );
|
293 |
+
|
294 |
+
if ( empty( $login ) ) {
|
295 |
+
/* translators: %s: Post author. */
|
296 |
+
$this->output['errors'][] = sprintf( esc_html__( 'Failed to import author %s. Their posts will be attributed to the current user.', 'wpr-addons' ), $post['post_author'] );
|
297 |
+
continue;
|
298 |
+
}
|
299 |
+
|
300 |
+
if ( ! isset( $this->authors[ $login ] ) ) {
|
301 |
+
$this->authors[ $login ] = [
|
302 |
+
'author_login' => $login,
|
303 |
+
'author_display_name' => $post['post_author'],
|
304 |
+
];
|
305 |
+
}
|
306 |
+
}
|
307 |
+
}
|
308 |
+
}
|
309 |
+
|
310 |
+
/**
|
311 |
+
* Map old author logins to local user IDs based on decisions made
|
312 |
+
* in import options form. Can map to an existing user, create a new user
|
313 |
+
* or falls back to the current user in case of error with either of the previous
|
314 |
+
*/
|
315 |
+
private function set_author_mapping() {
|
316 |
+
if ( ! isset( $this->args['imported_authors'] ) ) {
|
317 |
+
return;
|
318 |
+
}
|
319 |
+
|
320 |
+
$create_users = apply_filters( 'import_allow_create_users', self::DEFAULT_ALLOW_CREATE_USERS );
|
321 |
+
|
322 |
+
foreach ( (array) $this->args['imported_authors'] as $i => $old_login ) {
|
323 |
+
// Multisite adds strtolower to sanitize_user. Need to sanitize here to stop breakage in process_posts.
|
324 |
+
$santized_old_login = sanitize_user( $old_login, true );
|
325 |
+
$old_id = isset( $this->authors[ $old_login ]['author_id'] ) ? intval( $this->authors[ $old_login ]['author_id'] ) : false;
|
326 |
+
|
327 |
+
if ( ! empty( $this->args['user_map'][ $i ] ) ) {
|
328 |
+
$user = get_userdata( intval( $this->args['user_map'][ $i ] ) );
|
329 |
+
if ( isset( $user->ID ) ) {
|
330 |
+
if ( $old_id ) {
|
331 |
+
$this->processed_authors[ $old_id ] = $user->ID;
|
332 |
+
}
|
333 |
+
$this->author_mapping[ $santized_old_login ] = $user->ID;
|
334 |
+
}
|
335 |
+
} elseif ( $create_users ) {
|
336 |
+
$user_id = 0;
|
337 |
+
if ( ! empty( $this->args['user_new'][ $i ] ) ) {
|
338 |
+
$user_id = wp_create_user( $this->args['user_new'][ $i ], wp_generate_password() );
|
339 |
+
} elseif ( '1.0' !== $this->version ) {
|
340 |
+
$user_data = [
|
341 |
+
'user_login' => $old_login,
|
342 |
+
'user_pass' => wp_generate_password(),
|
343 |
+
'user_email' => isset( $this->authors[ $old_login ]['author_email'] ) ? $this->authors[ $old_login ]['author_email'] : '',
|
344 |
+
'display_name' => $this->authors[ $old_login ]['author_display_name'],
|
345 |
+
'first_name' => isset( $this->authors[ $old_login ]['author_first_name'] ) ? $this->authors[ $old_login ]['author_first_name'] : '',
|
346 |
+
'last_name' => isset( $this->authors[ $old_login ]['author_last_name'] ) ? $this->authors[ $old_login ]['author_last_name'] : '',
|
347 |
+
];
|
348 |
+
$user_id = wp_insert_user( $user_data );
|
349 |
+
}
|
350 |
+
|
351 |
+
if ( ! is_wp_error( $user_id ) ) {
|
352 |
+
if ( $old_id ) {
|
353 |
+
$this->processed_authors[ $old_id ] = $user_id;
|
354 |
+
}
|
355 |
+
$this->author_mapping[ $santized_old_login ] = $user_id;
|
356 |
+
} else {
|
357 |
+
/* translators: %s: Author display name. */
|
358 |
+
$error = sprintf( esc_html__( 'Failed to create new user for %s. Their posts will be attributed to the current user.', 'wpr-addons' ), $this->authors[ $old_login ]['author_display_name'] );
|
359 |
+
|
360 |
+
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
361 |
+
$error .= PHP_EOL . $user_id->get_error_message();
|
362 |
+
}
|
363 |
+
|
364 |
+
$this->output['errors'][] = $error;
|
365 |
+
}
|
366 |
+
}
|
367 |
+
|
368 |
+
// Failsafe: if the user_id was invalid, default to the current user.
|
369 |
+
if ( ! isset( $this->author_mapping[ $santized_old_login ] ) ) {
|
370 |
+
if ( $old_id ) {
|
371 |
+
$this->processed_authors[ $old_id ] = (int) get_current_user_id();
|
372 |
+
}
|
373 |
+
$this->author_mapping[ $santized_old_login ] = (int) get_current_user_id();
|
374 |
+
}
|
375 |
+
}
|
376 |
+
}
|
377 |
+
|
378 |
+
/**
|
379 |
+
* Create new categories based on import information
|
380 |
+
*
|
381 |
+
* Doesn't create a new category if its slug already exists
|
382 |
+
*
|
383 |
+
* @return int number of imported categories.
|
384 |
+
*/
|
385 |
+
private function process_categories() {
|
386 |
+
$result = 0;
|
387 |
+
|
388 |
+
$this->categories = apply_filters( 'wp_import_categories', $this->categories );
|
389 |
+
|
390 |
+
if ( empty( $this->categories ) ) {
|
391 |
+
return $result;
|
392 |
+
}
|
393 |
+
|
394 |
+
foreach ( $this->categories as $cat ) {
|
395 |
+
// if the category already exists leave it alone
|
396 |
+
$term_id = term_exists( $cat['category_nicename'], 'category' );
|
397 |
+
if ( $term_id ) {
|
398 |
+
if ( is_array( $term_id ) ) {
|
399 |
+
$term_id = $term_id['term_id'];
|
400 |
+
}
|
401 |
+
if ( isset( $cat['term_id'] ) ) {
|
402 |
+
$this->processed_terms[ intval( $cat['term_id'] ) ] = (int) $term_id;
|
403 |
+
}
|
404 |
+
continue;
|
405 |
+
}
|
406 |
+
|
407 |
+
$parent = empty( $cat['category_parent'] ) ? 0 : category_exists( $cat['category_parent'] );
|
408 |
+
$description = isset( $cat['category_description'] ) ? $cat['category_description'] : '';
|
409 |
+
|
410 |
+
$data = [
|
411 |
+
'category_nicename' => $cat['category_nicename'],
|
412 |
+
'category_parent' => $parent,
|
413 |
+
'cat_name' => wp_slash( $cat['cat_name'] ),
|
414 |
+
'category_description' => wp_slash( $description ),
|
415 |
+
];
|
416 |
+
|
417 |
+
$id = wp_insert_category( $data );
|
418 |
+
if ( ! is_wp_error( $id ) && $id > 0 ) {
|
419 |
+
if ( isset( $cat['term_id'] ) ) {
|
420 |
+
$this->processed_terms[ intval( $cat['term_id'] ) ] = $id;
|
421 |
+
}
|
422 |
+
$result++;
|
423 |
+
} else {
|
424 |
+
/* translators: %s: Category name. */
|
425 |
+
$error = sprintf( esc_html__( 'Failed to import category %s', 'wpr-addons' ), $cat['category_nicename'] );
|
426 |
+
|
427 |
+
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
428 |
+
$error .= PHP_EOL . $id->get_error_message();
|
429 |
+
}
|
430 |
+
|
431 |
+
$this->output['errors'][] = $error;
|
432 |
+
continue;
|
433 |
+
}
|
434 |
+
|
435 |
+
$this->process_termmeta( $cat, $id );
|
436 |
+
}
|
437 |
+
|
438 |
+
unset( $this->categories );
|
439 |
+
|
440 |
+
return $result;
|
441 |
+
}
|
442 |
+
|
443 |
+
/**
|
444 |
+
* Create new post tags based on import information
|
445 |
+
*
|
446 |
+
* Doesn't create a tag if its slug already exists
|
447 |
+
*
|
448 |
+
* @return int number of imported tags.
|
449 |
+
*/
|
450 |
+
private function process_tags() {
|
451 |
+
$result = 0;
|
452 |
+
|
453 |
+
$this->tags = apply_filters( 'wp_import_tags', $this->tags );
|
454 |
+
|
455 |
+
if ( empty( $this->tags ) ) {
|
456 |
+
return $result;
|
457 |
+
}
|
458 |
+
|
459 |
+
foreach ( $this->tags as $tag ) {
|
460 |
+
// if the tag already exists leave it alone
|
461 |
+
$term_id = term_exists( $tag['tag_slug'], 'post_tag' );
|
462 |
+
if ( $term_id ) {
|
463 |
+
if ( is_array( $term_id ) ) {
|
464 |
+
$term_id = $term_id['term_id'];
|
465 |
+
}
|
466 |
+
if ( isset( $tag['term_id'] ) ) {
|
467 |
+
$this->processed_terms[ intval( $tag['term_id'] ) ] = (int) $term_id;
|
468 |
+
}
|
469 |
+
continue;
|
470 |
+
}
|
471 |
+
|
472 |
+
$description = isset( $tag['tag_description'] ) ? $tag['tag_description'] : '';
|
473 |
+
$args = [
|
474 |
+
'slug' => $tag['tag_slug'],
|
475 |
+
'description' => wp_slash( $description ),
|
476 |
+
];
|
477 |
+
|
478 |
+
$id = wp_insert_term( wp_slash( $tag['tag_name'] ), 'post_tag', $args );
|
479 |
+
if ( ! is_wp_error( $id ) ) {
|
480 |
+
if ( isset( $tag['term_id'] ) ) {
|
481 |
+
$this->processed_terms[ intval( $tag['term_id'] ) ] = $id['term_id'];
|
482 |
+
}
|
483 |
+
$result++;
|
484 |
+
} else {
|
485 |
+
/* translators: %s: Tag name. */
|
486 |
+
$error = sprintf( esc_html__( 'Failed to import post tag %s', 'wpr-addons' ), $tag['tag_name'] );
|
487 |
+
|
488 |
+
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
489 |
+
$error .= PHP_EOL . $id->get_error_message();
|
490 |
+
}
|
491 |
+
|
492 |
+
$this->output['errors'][] = $error;
|
493 |
+
continue;
|
494 |
+
}
|
495 |
+
|
496 |
+
$this->process_termmeta( $tag, $id['term_id'] );
|
497 |
+
}
|
498 |
+
|
499 |
+
unset( $this->tags );
|
500 |
+
|
501 |
+
return $result;
|
502 |
+
}
|
503 |
+
|
504 |
+
/**
|
505 |
+
* Create new terms based on import information
|
506 |
+
*
|
507 |
+
* Doesn't create a term its slug already exists
|
508 |
+
*
|
509 |
+
* @return int number of imported terms.
|
510 |
+
*/
|
511 |
+
private function process_terms() {
|
512 |
+
$result = 0;
|
513 |
+
|
514 |
+
$this->terms = apply_filters( 'wp_import_terms', $this->terms );
|
515 |
+
|
516 |
+
if ( empty( $this->terms ) ) {
|
517 |
+
return $result;
|
518 |
+
}
|
519 |
+
|
520 |
+
foreach ( $this->terms as $term ) {
|
521 |
+
// if the term already exists in the correct taxonomy leave it alone
|
522 |
+
$term_id = term_exists( $term['slug'], $term['term_taxonomy'] );
|
523 |
+
if ( $term_id ) {
|
524 |
+
if ( is_array( $term_id ) ) {
|
525 |
+
$term_id = $term_id['term_id'];
|
526 |
+
}
|
527 |
+
if ( isset( $term['term_id'] ) ) {
|
528 |
+
$this->processed_terms[ intval( $term['term_id'] ) ] = (int) $term_id;
|
529 |
+
}
|
530 |
+
continue;
|
531 |
+
}
|
532 |
+
|
533 |
+
if ( empty( $term['term_parent'] ) ) {
|
534 |
+
$parent = 0;
|
535 |
+
} else {
|
536 |
+
$parent = term_exists( $term['term_parent'], $term['term_taxonomy'] );
|
537 |
+
if ( is_array( $parent ) ) {
|
538 |
+
$parent = $parent['term_id'];
|
539 |
+
}
|
540 |
+
}
|
541 |
+
|
542 |
+
$description = isset( $term['term_description'] ) ? $term['term_description'] : '';
|
543 |
+
$args = [
|
544 |
+
'slug' => $term['slug'],
|
545 |
+
'description' => wp_slash( $description ),
|
546 |
+
'parent' => (int) $parent,
|
547 |
+
];
|
548 |
+
|
549 |
+
$id = wp_insert_term( wp_slash( $term['term_name'] ), $term['term_taxonomy'], $args );
|
550 |
+
if ( ! is_wp_error( $id ) ) {
|
551 |
+
if ( isset( $term['term_id'] ) ) {
|
552 |
+
$this->processed_terms[ intval( $term['term_id'] ) ] = $id['term_id'];
|
553 |
+
}
|
554 |
+
$result++;
|
555 |
+
} else {
|
556 |
+
/* translators: 1: Term taxonomy, 2: Term name. */
|
557 |
+
$error = sprintf( esc_html__( 'Failed to import %1$s %2$s', 'wpr-addons' ), $term['term_taxonomy'], $term['term_name'] );
|
558 |
+
|
559 |
+
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
560 |
+
$error .= PHP_EOL . $id->get_error_message();
|
561 |
+
}
|
562 |
+
|
563 |
+
$this->output['errors'][] = $error;
|
564 |
+
continue;
|
565 |
+
}
|
566 |
+
|
567 |
+
$this->process_termmeta( $term, $id['term_id'] );
|
568 |
+
}
|
569 |
+
|
570 |
+
unset( $this->terms );
|
571 |
+
|
572 |
+
return $result;
|
573 |
+
}
|
574 |
+
|
575 |
+
/**
|
576 |
+
* Add metadata to imported term.
|
577 |
+
*
|
578 |
+
* @param array $term Term data from WXR import.
|
579 |
+
* @param int $term_id ID of the newly created term.
|
580 |
+
*/
|
581 |
+
private function process_termmeta( $term, $term_id ) {
|
582 |
+
if ( ! function_exists( 'add_term_meta' ) ) {
|
583 |
+
return;
|
584 |
+
}
|
585 |
+
|
586 |
+
if ( ! isset( $term['termmeta'] ) ) {
|
587 |
+
$term['termmeta'] = [];
|
588 |
+
}
|
589 |
+
|
590 |
+
/**
|
591 |
+
* Filters the metadata attached to an imported term.
|
592 |
+
*
|
593 |
+
* @param array $termmeta Array of term meta.
|
594 |
+
* @param int $term_id ID of the newly created term.
|
595 |
+
* @param array $term Term data from the WXR import.
|
596 |
+
*/
|
597 |
+
$term['termmeta'] = apply_filters( 'wp_import_term_meta', $term['termmeta'], $term_id, $term );
|
598 |
+
|
599 |
+
if ( empty( $term['termmeta'] ) ) {
|
600 |
+
return;
|
601 |
+
}
|
602 |
+
|
603 |
+
foreach ( $term['termmeta'] as $meta ) {
|
604 |
+
/**
|
605 |
+
* Filters the meta key for an imported piece of term meta.
|
606 |
+
*
|
607 |
+
* @param string $meta_key Meta key.
|
608 |
+
* @param int $term_id ID of the newly created term.
|
609 |
+
* @param array $term Term data from the WXR import.
|
610 |
+
*/
|
611 |
+
$key = apply_filters( 'import_term_meta_key', $meta['key'], $term_id, $term );
|
612 |
+
if ( ! $key ) {
|
613 |
+
continue;
|
614 |
+
}
|
615 |
+
|
616 |
+
// Export gets meta straight from the DB so could have a serialized string
|
617 |
+
$value = maybe_unserialize( $meta['value'] );
|
618 |
+
|
619 |
+
add_term_meta( $term_id, wp_slash( $key ), wp_slash_strings_only( $value ) );
|
620 |
+
|
621 |
+
/**
|
622 |
+
* Fires after term meta is imported.
|
623 |
+
*
|
624 |
+
* @param int $term_id ID of the newly created term.
|
625 |
+
* @param string $key Meta key.
|
626 |
+
* @param mixed $value Meta value.
|
627 |
+
*/
|
628 |
+
do_action( 'import_term_meta', $term_id, $key, $value );
|
629 |
+
}
|
630 |
+
}
|
631 |
+
|
632 |
+
/**
|
633 |
+
* Create new posts based on import information
|
634 |
+
*
|
635 |
+
* Posts marked as having a parent which doesn't exist will become top level items.
|
636 |
+
* Doesn't create a new post if: the post type doesn't exist, the given post ID
|
637 |
+
* is already noted as imported or a post with the same title and date already exists.
|
638 |
+
* Note that new/updated terms, comments and meta are imported for the last of the above.
|
639 |
+
*
|
640 |
+
* @return array the ids of succeed/failed imported posts.
|
641 |
+
*/
|
642 |
+
private function process_posts() {
|
643 |
+
$result = [
|
644 |
+
'succeed' => [],
|
645 |
+
'failed' => [],
|
646 |
+
];
|
647 |
+
|
648 |
+
$this->posts = apply_filters( 'wp_import_posts', $this->posts );
|
649 |
+
|
650 |
+
foreach ( $this->posts as $post ) {
|
651 |
+
$post = apply_filters( 'wp_import_post_data_raw', $post );
|
652 |
+
|
653 |
+
if ( ! post_type_exists( $post['post_type'] ) ) {
|
654 |
+
/* translators: 1: Post title, 2: Post type. */
|
655 |
+
$this->output['errors'][] = sprintf( esc_html__( 'Failed to import %1$s: Invalid post type %2$s', 'wpr-addons' ), $post['post_title'], $post['post_type'] );
|
656 |
+
do_action( 'wp_import_post_exists', $post );
|
657 |
+
continue;
|
658 |
+
}
|
659 |
+
|
660 |
+
if ( isset( $this->processed_posts[ $post['post_id'] ] ) && ! empty( $post['post_id'] ) ) {
|
661 |
+
continue;
|
662 |
+
}
|
663 |
+
|
664 |
+
if ( 'auto-draft' === $post['status'] ) {
|
665 |
+
continue;
|
666 |
+
}
|
667 |
+
|
668 |
+
if ( 'nav_menu_item' === $post['post_type'] ) {
|
669 |
+
$this->process_menu_item( $post );
|
670 |
+
continue;
|
671 |
+
}
|
672 |
+
|
673 |
+
$post_type_object = get_post_type_object( $post['post_type'] );
|
674 |
+
|
675 |
+
$post_parent = (int) $post['post_parent'];
|
676 |
+
if ( $post_parent ) {
|
677 |
+
// if we already know the parent, map it to the new local ID.
|
678 |
+
if ( isset( $this->processed_posts[ $post_parent ] ) ) {
|
679 |
+
$post_parent = $this->processed_posts[ $post_parent ];
|
680 |
+
// otherwise record the parent for later.
|
681 |
+
} else {
|
682 |
+
$this->post_orphans[ intval( $post['post_id'] ) ] = $post_parent;
|
683 |
+
$post_parent = 0;
|
684 |
+
}
|
685 |
+
}
|
686 |
+
|
687 |
+
// Map the post author.
|
688 |
+
$author = sanitize_user( $post['post_author'], true );
|
689 |
+
if ( isset( $this->author_mapping[ $author ] ) ) {
|
690 |
+
$author = $this->author_mapping[ $author ];
|
691 |
+
} else {
|
692 |
+
$author = (int) get_current_user_id();
|
693 |
+
}
|
694 |
+
|
695 |
+
$postdata = [
|
696 |
+
'import_id' => $post['post_id'],
|
697 |
+
'post_author' => $author,
|
698 |
+
'post_content' => $post['post_content'],
|
699 |
+
'post_excerpt' => $post['post_excerpt'],
|
700 |
+
'post_title' => $post['post_title'],
|
701 |
+
'post_status' => $post['status'],
|
702 |
+
'post_name' => $post['post_name'],
|
703 |
+
'comment_status' => $post['comment_status'],
|
704 |
+
'ping_status' => $post['ping_status'],
|
705 |
+
'guid' => $post['guid'],
|
706 |
+
'post_parent' => $post_parent,
|
707 |
+
'menu_order' => $post['menu_order'],
|
708 |
+
'post_type' => $post['post_type'],
|
709 |
+
'post_password' => $post['post_password'],
|
710 |
+
'post_date' => $post['post_date'],
|
711 |
+
];
|
712 |
+
|
713 |
+
$original_post_id = $post['post_id'];
|
714 |
+
$postdata = apply_filters( 'wp_import_post_data_processed', $postdata, $post );
|
715 |
+
|
716 |
+
$postdata = wp_slash( $postdata );
|
717 |
+
|
718 |
+
if ( 'attachment' === $postdata['post_type'] ) {
|
719 |
+
$remote_url = ! empty( $post['attachment_url'] ) ? $post['attachment_url'] : $post['guid'];
|
720 |
+
|
721 |
+
// try to use _wp_attached file for upload folder placement to ensure the same location as the export site
|
722 |
+
// e.g. location is 2003/05/image.jpg but the attachment post_date is 2010/09, see media_handle_upload()
|
723 |
+
$postdata['upload_date'] = $post['post_date'];
|
724 |
+
if ( isset( $post['postmeta'] ) ) {
|
725 |
+
foreach ( $post['postmeta'] as $meta ) {
|
726 |
+
if ( '_wp_attached_file' === $meta['key'] ) {
|
727 |
+
if ( preg_match( '%^[0-9]{4}/[0-9]{2}%', $meta['value'], $matches ) ) {
|
728 |
+
$postdata['upload_date'] = $matches[0];
|
729 |
+
}
|
730 |
+
break;
|
731 |
+
}
|
732 |
+
}
|
733 |
+
}
|
734 |
+
|
735 |
+
$post_id = $this->process_attachment( $postdata, $remote_url );
|
736 |
+
$comment_post_id = $post_id;
|
737 |
+
} else {
|
738 |
+
$post_id = wp_insert_post( $postdata, true );
|
739 |
+
$comment_post_id = $post_id;
|
740 |
+
do_action( 'wp_import_insert_post', $post_id, $original_post_id, $postdata, $post );
|
741 |
+
}
|
742 |
+
|
743 |
+
if ( is_wp_error( $post_id ) ) {
|
744 |
+
/* translators: 1: Post type singular label, 2: Post title. */
|
745 |
+
$error = sprintf( __( 'Failed to import %1$s %2$s', 'wpr-addons' ), $post_type_object->labels->singular_name, $post['post_title'] );
|
746 |
+
|
747 |
+
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
748 |
+
$error .= PHP_EOL . $post_id->get_error_message();
|
749 |
+
}
|
750 |
+
|
751 |
+
$result['failed'][] = $original_post_id;
|
752 |
+
|
753 |
+
$this->output['errors'][] = $error;
|
754 |
+
|
755 |
+
continue;
|
756 |
+
}
|
757 |
+
|
758 |
+
$result['succeed'][ $original_post_id ] = $post_id;
|
759 |
+
|
760 |
+
if ( 1 === $post['is_sticky'] ) {
|
761 |
+
stick_post( $post_id );
|
762 |
+
}
|
763 |
+
|
764 |
+
if ( $this->page_on_front === $original_post_id ) {
|
765 |
+
update_option( 'page_on_front', $post_id );
|
766 |
+
}
|
767 |
+
|
768 |
+
// Map pre-import ID to local ID.
|
769 |
+
$this->processed_posts[ intval( $post['post_id'] ) ] = (int) $post_id;
|
770 |
+
|
771 |
+
if ( ! isset( $post['terms'] ) ) {
|
772 |
+
$post['terms'] = [];
|
773 |
+
}
|
774 |
+
|
775 |
+
$post['terms'] = apply_filters( 'wp_import_post_terms', $post['terms'], $post_id, $post );
|
776 |
+
|
777 |
+
// add categories, tags and other terms
|
778 |
+
if ( ! empty( $post['terms'] ) ) {
|
779 |
+
$terms_to_set = [];
|
780 |
+
foreach ( $post['terms'] as $term ) {
|
781 |
+
// back compat with WXR 1.0 map 'tag' to 'post_tag'
|
782 |
+
$taxonomy = ( 'tag' === $term['domain'] ) ? 'post_tag' : $term['domain'];
|
783 |
+
$term_exists = term_exists( $term['slug'], $taxonomy );
|
784 |
+
$term_id = is_array( $term_exists ) ? $term_exists['term_id'] : $term_exists;
|
785 |
+
if ( ! $term_id ) {
|
786 |
+
$t = wp_insert_term( $term['name'], $taxonomy, [ 'slug' => $term['slug'] ] );
|
787 |
+
if ( ! is_wp_error( $t ) ) {
|
788 |
+
$term_id = $t['term_id'];
|
789 |
+
do_action( 'wp_import_insert_term', $t, $term, $post_id, $post );
|
790 |
+
} else {
|
791 |
+
/* translators: 1: Taxonomy name, 2: Term name. */
|
792 |
+
$error = sprintf( esc_html__( 'Failed to import %1$s %2$s', 'wpr-addons' ), $taxonomy, $term['name'] );
|
793 |
+
|
794 |
+
if ( defined( 'IMPORT_DEBUG' ) && IMPORT_DEBUG ) {
|
795 |
+
$error .= PHP_EOL . $t->get_error_message();
|
796 |
+
}
|
797 |
+
|
798 |
+
$this->output['errors'][] = $error;
|
799 |
+
|
800 |
+
do_action( 'wp_import_insert_term_failed', $t, $term, $post_id, $post );
|
801 |
+
continue;
|
802 |
+
}
|
803 |
+
}
|
804 |
+
$terms_to_set[ $taxonomy ][] = intval( $term_id );
|
805 |
+
}
|
806 |
+
|
807 |
+
foreach ( $terms_to_set as $tax => $ids ) {
|
808 |
+
$tt_ids = wp_set_post_terms( $post_id, $ids, $tax );
|
809 |
+
do_action( 'wp_import_set_post_terms', $tt_ids, $ids, $tax, $post_id, $post );
|
810 |
+
}
|
811 |
+
unset( $post['terms'], $terms_to_set );
|
812 |
+
}
|
813 |
+
|
814 |
+
if ( ! isset( $post['comments'] ) ) {
|
815 |
+
$post['comments'] = [];
|
816 |
+
}
|
817 |
+
|
818 |
+
$post['comments'] = apply_filters( 'wp_import_post_comments', $post['comments'], $post_id, $post );
|
819 |
+
|
820 |
+
// Add/update comments.
|
821 |
+
if ( ! empty( $post['comments'] ) ) {
|
822 |
+
$num_comments = 0;
|
823 |
+
$inserted_comments = [];
|
824 |
+
foreach ( $post['comments'] as $comment ) {
|
825 |
+
$comment_id = $comment['comment_id'];
|
826 |
+
$newcomments[ $comment_id ]['comment_post_ID'] = $comment_post_id;
|
827 |
+
$newcomments[ $comment_id ]['comment_author'] = $comment['comment_author'];
|
828 |
+
$newcomments[ $comment_id ]['comment_author_email'] = $comment['comment_author_email'];
|
829 |
+
$newcomments[ $comment_id ]['comment_author_IP'] = $comment['comment_author_IP'];
|
830 |
+
$newcomments[ $comment_id ]['comment_author_url'] = $comment['comment_author_url'];
|
831 |
+
$newcomments[ $comment_id ]['comment_date'] = $comment['comment_date'];
|
832 |
+
$newcomments[ $comment_id ]['comment_date_gmt'] = $comment['comment_date_gmt'];
|
833 |
+
$newcomments[ $comment_id ]['comment_content'] = $comment['comment_content'];
|
834 |
+
$newcomments[ $comment_id ]['comment_approved'] = $comment['comment_approved'];
|
835 |
+
$newcomments[ $comment_id ]['comment_type'] = $comment['comment_type'];
|
836 |
+
$newcomments[ $comment_id ]['comment_parent'] = $comment['comment_parent'];
|
837 |
+
$newcomments[ $comment_id ]['commentmeta'] = isset( $comment['commentmeta'] ) ? $comment['commentmeta'] : [];
|
838 |
+
if ( isset( $this->processed_authors[ $comment['comment_user_id'] ] ) ) {
|
839 |
+
$newcomments[ $comment_id ]['user_id'] = $this->processed_authors[ $comment['comment_user_id'] ];
|
840 |
+
}
|
841 |
+
}
|
842 |
+
|
843 |
+
ksort( $newcomments );
|
844 |
+
|
845 |
+
foreach ( $newcomments as $key => $comment ) {
|
846 |
+
if ( isset( $inserted_comments[ $comment['comment_parent'] ] ) ) {
|
847 |
+
$comment['comment_parent'] = $inserted_comments[ $comment['comment_parent'] ];
|
848 |
+
}
|
849 |
+
|
850 |
+
$comment_data = wp_slash( $comment );
|
851 |
+
unset( $comment_data['commentmeta'] ); // Handled separately, wp_insert_comment() also expects `comment_meta`.
|
852 |
+
$comment_data = wp_filter_comment( $comment_data );
|
853 |
+
|
854 |
+
$inserted_comments[ $key ] = wp_insert_comment( $comment_data );
|
855 |
+
|
856 |
+
do_action( 'wp_import_insert_comment', $inserted_comments[ $key ], $comment, $comment_post_id, $post );
|
857 |
+
|
858 |
+
foreach ( $comment['commentmeta'] as $meta ) {
|
859 |
+
$value = maybe_unserialize( $meta['value'] );
|
860 |
+
|
861 |
+
add_comment_meta( $inserted_comments[ $key ], wp_slash( $meta['key'] ), wp_slash_strings_only( $value ) );
|
862 |
+
}
|
863 |
+
|
864 |
+
$num_comments++;
|
865 |
+
}
|
866 |
+
unset( $newcomments, $inserted_comments, $post['comments'] );
|
867 |
+
}
|
868 |
+
|
869 |
+
if ( ! isset( $post['postmeta'] ) ) {
|
870 |
+
$post['postmeta'] = [];
|
871 |
+
}
|
872 |
+
|
873 |
+
$post['postmeta'] = apply_filters( 'wp_import_post_meta', $post['postmeta'], $post_id, $post );
|
874 |
+
|
875 |
+
// Add/update post meta.
|
876 |
+
if ( ! empty( $post['postmeta'] ) ) {
|
877 |
+
foreach ( $post['postmeta'] as $meta ) {
|
878 |
+
$key = apply_filters( 'import_post_meta_key', $meta['key'], $post_id, $post );
|
879 |
+
$value = false;
|
880 |
+
|
881 |
+
if ( '_edit_last' === $key ) {
|
882 |
+
if ( isset( $this->processed_authors[ intval( $meta['value'] ) ] ) ) {
|
883 |
+
$value = $this->processed_authors[ intval( $meta['value'] ) ];
|
884 |
+
} else {
|
885 |
+
$key = false;
|
886 |
+
}
|
887 |
+
}
|
888 |
+
|
889 |
+
if ( $key ) {
|
890 |
+
// Export gets meta straight from the DB so could have a serialized string.
|
891 |
+
if ( ! $value ) {
|
892 |
+
$value = maybe_unserialize( $meta['value'] );
|
893 |
+
}
|
894 |
+
|
895 |
+
add_post_meta( $post_id, wp_slash( $key ), wp_slash_strings_only( $value ) );
|
896 |
+
|
897 |
+
do_action( 'import_post_meta', $post_id, $key, $value );
|
898 |
+
|
899 |
+
// If the post has a featured image, take note of this in case of remap.
|
900 |
+
if ( '_thumbnail_id' === $key ) {
|
901 |
+
$this->featured_images[ $post_id ] = (int) $value;
|
902 |
+
}
|
903 |
+
}
|
904 |
+
}
|
905 |
+
}
|
906 |
+
}
|
907 |
+
|
908 |
+
unset( $this->posts );
|
909 |
+
|
910 |
+
return $result;
|
911 |
+
}
|
912 |
+
|
913 |
+
/**
|
914 |
+
* Attempt to create a new menu item from import data
|
915 |
+
*
|
916 |
+
* Fails for draft, orphaned menu items and those without an associated nav_menu
|
917 |
+
* or an invalid nav_menu term. If the post type or term object which the menu item
|
918 |
+
* represents doesn't exist then the menu item will not be imported (waits until the
|
919 |
+
* end of the import to retry again before discarding).
|
920 |
+
*
|
921 |
+
* @param array $item Menu item details from WXR file
|
922 |
+
*/
|
923 |
+
private function process_menu_item( $item ) {
|
924 |
+
// Skip draft, orphaned menu items.
|
925 |
+
if ( 'draft' === $item['status'] ) {
|
926 |
+
return;
|
927 |
+
}
|
928 |
+
|
929 |
+
$menu_slug = false;
|
930 |
+
if ( isset( $item['terms'] ) ) {
|
931 |
+
// Loop through terms, assume first nav_menu term is correct menu.
|
932 |
+
foreach ( $item['terms'] as $term ) {
|
933 |
+
if ( 'nav_menu' === $term['domain'] ) {
|
934 |
+
$menu_slug = $term['slug'];
|
935 |
+
break;
|
936 |
+
}
|
937 |
+
}
|
938 |
+
}
|
939 |
+
|
940 |
+
// No nav_menu term associated with this menu item.
|
941 |
+
if ( ! $menu_slug ) {
|
942 |
+
$this->output['errors'][] = esc_html__( 'Menu item skipped due to missing menu slug', 'wpr-addons' );
|
943 |
+
|
944 |
+
return;
|
945 |
+
}
|
946 |
+
|
947 |
+
$menu_id = term_exists( $menu_slug, 'nav_menu' );
|
948 |
+
if ( ! $menu_id ) {
|
949 |
+
/* translators: %s: Menu slug. */
|
950 |
+
$this->output['errors'][] = sprintf( esc_html__( 'Menu item skipped due to invalid menu slug: %s', 'wpr-addons' ), $menu_slug );
|
951 |
+
|
952 |
+
return;
|
953 |
+
} else {
|
954 |
+
$menu_id = is_array( $menu_id ) ? $menu_id['term_id'] : $menu_id;
|
955 |
+
}
|
956 |
+
|
957 |
+
$post_meta_key_value = [];
|
958 |
+
foreach ( $item['postmeta'] as $meta ) {
|
959 |
+
$post_meta_key_value[ $meta['key'] ] = $meta['value'];
|
960 |
+
}
|
961 |
+
|
962 |
+
// Duke - Import Menu Items Post Meta
|
963 |
+
$backup_menu_item_meta = [];
|
964 |
+
$backup_menu_item_meta['postmeta'] = $item['postmeta'];
|
965 |
+
|
966 |
+
foreach ( $item['postmeta'] as $meta ) {
|
967 |
+
${$meta['key']} = $meta['value'];
|
968 |
+
}
|
969 |
+
// End.
|
970 |
+
|
971 |
+
$_menu_item_object_id = $post_meta_key_value['_menu_item_object_id'];
|
972 |
+
if ( 'taxonomy' === $post_meta_key_value['_menu_item_type'] && isset( $this->processed_terms[ intval( $_menu_item_object_id ) ] ) ) {
|
973 |
+
$_menu_item_object_id = $this->processed_terms[ intval( $_menu_item_object_id ) ];
|
974 |
+
} elseif ( 'post_type' === $post_meta_key_value['_menu_item_type'] && isset( $this->processed_posts[ intval( $_menu_item_object_id ) ] ) ) {
|
975 |
+
$_menu_item_object_id = $this->processed_posts[ intval( $_menu_item_object_id ) ];
|
976 |
+
} elseif ( 'custom' !== $post_meta_key_value['_menu_item_type'] ) {
|
977 |
+
// Associated object is missing or not imported yet, we'll retry later.
|
978 |
+
$this->missing_menu_items[] = $item;
|
979 |
+
|
980 |
+
return;
|
981 |
+
}
|
982 |
+
|
983 |
+
$_menu_item_menu_item_parent = $post_meta_key_value['_menu_item_menu_item_parent']; // Duke - fix "_menu_item_menu_item_parent" dash was added
|
984 |
+
if ( isset( $this->processed_menu_items[ intval( $_menu_item_menu_item_parent ) ] ) ) {
|
985 |
+
$_menu_item_menu_item_parent = $this->processed_menu_items[ intval( $_menu_item_menu_item_parent ) ];
|
986 |
+
} elseif ( $_menu_item_menu_item_parent ) {
|
987 |
+
$this->menu_item_orphans[ intval( $item['post_id'] ) ] = (int) $_menu_item_menu_item_parent;
|
988 |
+
$_menu_item_menu_item_parent = 0;
|
989 |
+
}
|
990 |
+
|
991 |
+
// wp_update_nav_menu_item expects CSS classes as a space separated string
|
992 |
+
$_menu_item_classes = maybe_unserialize( $post_meta_key_value['_menu_item_classes'] );
|
993 |
+
if ( is_array( $_menu_item_classes ) ) {
|
994 |
+
$_menu_item_classes = implode( ' ', $_menu_item_classes );
|
995 |
+
}
|
996 |
+
|
997 |
+
$args = [
|
998 |
+
'menu-item-object-id' => $_menu_item_object_id,
|
999 |
+
'menu-item-object' => $post_meta_key_value['_menu_item_object'],
|
1000 |
+
'menu-item-parent-id' => $_menu_item_menu_item_parent,
|
1001 |
+
'menu-item-position' => intval( $item['menu_order'] ),
|
1002 |
+
'menu-item-type' => $post_meta_key_value['_menu_item_type'],
|
1003 |
+
'menu-item-title' => $item['post_title'],
|
1004 |
+
'menu-item-url' => $post_meta_key_value['_menu_item_url'],
|
1005 |
+
'menu-item-description' => $item['post_content'],
|
1006 |
+
'menu-item-attr-title' => $item['post_excerpt'],
|
1007 |
+
'menu-item-target' => $post_meta_key_value['_menu_item_target'],
|
1008 |
+
'menu-item-classes' => $_menu_item_classes,
|
1009 |
+
'menu-item-xfn' => $post_meta_key_value['_menu_item_xfn'],
|
1010 |
+
'menu-item-status' => $item['status'],
|
1011 |
+
];
|
1012 |
+
|
1013 |
+
$id = wp_update_nav_menu_item( $menu_id, 0, $args );
|
1014 |
+
if ( $id && ! is_wp_error( $id ) ) {
|
1015 |
+
// Duke - Import Menu Items Post Meta
|
1016 |
+
$menu_item_db_id = $id;
|
1017 |
+
$backup_menu_item_meta['postmeta'] = apply_filters('wordpress_importer_menu_items_meta_import', $backup_menu_item_meta['postmeta'], $id);
|
1018 |
+
$skip_meta_items = [
|
1019 |
+
'_menu_item_type',
|
1020 |
+
'_menu_item_menu_item_parent',
|
1021 |
+
'_menu_item_object_id',
|
1022 |
+
'_menu_item_object',
|
1023 |
+
'_menu_item_target',
|
1024 |
+
'_menu_item_classes',
|
1025 |
+
'_menu_item_xfn',
|
1026 |
+
'_menu_item_url'
|
1027 |
+
];
|
1028 |
+
if ( is_array($backup_menu_item_meta['postmeta']) && !empty($backup_menu_item_meta['postmeta']) ) {
|
1029 |
+
foreach ( $backup_menu_item_meta['postmeta'] as $meta ) {
|
1030 |
+
if ( !in_array($meta['key'], $skip_meta_items) ) {
|
1031 |
+
update_post_meta( $menu_item_db_id, $meta['key'], maybe_unserialize($meta['value']));
|
1032 |
+
}
|
1033 |
+
}
|
1034 |
+
}
|
1035 |
+
// End.
|
1036 |
+
|
1037 |
+
$this->processed_menu_items[ intval( $item['post_id'] ) ] = (int) $id;
|
1038 |
+
}
|
1039 |
+
}
|
1040 |
+
|
1041 |
+
/**
|
1042 |
+
* If fetching attachments is enabled then attempt to create a new attachment
|
1043 |
+
*
|
1044 |
+
* @param array $post Attachment post details from WXR
|
1045 |
+
* @param string $url URL to fetch attachment from
|
1046 |
+
*
|
1047 |
+
* @return int|WP_Error Post ID on success, WP_Error otherwise
|
1048 |
+
*/
|
1049 |
+
private function process_attachment( $post, $url ) {
|
1050 |
+
|
1051 |
+
if ( ! $this->fetch_attachments ) {
|
1052 |
+
return new WP_Error( 'attachment_processing_error', esc_html__( 'Fetching attachments is not enabled', 'wpr-addons' ) );
|
1053 |
+
}
|
1054 |
+
|
1055 |
+
// if the URL is absolute, but does not contain address, then upload it assuming base_site_url.
|
1056 |
+
if ( preg_match( '|^/[\w\W]+$|', $url ) ) {
|
1057 |
+
$url = rtrim( $this->base_url, '/' ) . $url;
|
1058 |
+
}
|
1059 |
+
|
1060 |
+
$upload = $this->fetch_remote_file( $url, $post );
|
1061 |
+
if ( is_wp_error( $upload ) ) {
|
1062 |
+
return $upload;
|
1063 |
+
}
|
1064 |
+
|
1065 |
+
$info = wp_check_filetype( $upload['file'] );
|
1066 |
+
if ( $info ) {
|
1067 |
+
$post['post_mime_type'] = $info['type'];
|
1068 |
+
} else {
|
1069 |
+
return new WP_Error( 'attachment_processing_error', esc_html__( 'Invalid file type', 'wpr-addons' ) );
|
1070 |
+
}
|
1071 |
+
|
1072 |
+
$post['guid'] = $upload['url'];
|
1073 |
+
|
1074 |
+
// As per wp-admin/includes/upload.php.
|
1075 |
+
$post_id = wp_insert_attachment( $post, $upload['file'] );
|
1076 |
+
wp_update_attachment_metadata( $post_id, wp_generate_attachment_metadata( $post_id, $upload['file'] ) );
|
1077 |
+
|
1078 |
+
// Remap resized image URLs, works by stripping the extension and remapping the URL stub.
|
1079 |
+
if ( preg_match( '!^image/!', $info['type'] ) ) {
|
1080 |
+
$parts = pathinfo( $url );
|
1081 |
+
$name = basename( $parts['basename'], ".{$parts['extension']}" ); // PATHINFO_FILENAME in PHP 5.2
|
1082 |
+
|
1083 |
+
$parts_new = pathinfo( $upload['url'] );
|
1084 |
+
$name_new = basename( $parts_new['basename'], ".{$parts_new['extension']}" );
|
1085 |
+
|
1086 |
+
$this->url_remap[ $parts['dirname'] . '/' . $name ] = $parts_new['dirname'] . '/' . $name_new;
|
1087 |
+
}
|
1088 |
+
|
1089 |
+
return $post_id;
|
1090 |
+
}
|
1091 |
+
|
1092 |
+
/**
|
1093 |
+
* Attempt to download a remote file attachment
|
1094 |
+
*
|
1095 |
+
* @param string $url URL of item to fetch
|
1096 |
+
* @param array $post Attachment details
|
1097 |
+
*
|
1098 |
+
* @return array|WP_Error Local file location details on success, WP_Error otherwise
|
1099 |
+
*/
|
1100 |
+
private function fetch_remote_file( $url, $post ) {
|
1101 |
+
// Extract the file name from the URL.
|
1102 |
+
$file_name = basename( parse_url( $url, PHP_URL_PATH ) );
|
1103 |
+
|
1104 |
+
if ( ! $file_name ) {
|
1105 |
+
$file_name = md5( $url );
|
1106 |
+
}
|
1107 |
+
|
1108 |
+
$tmp_file_name = wp_tempnam( $file_name );
|
1109 |
+
if ( ! $tmp_file_name ) {
|
1110 |
+
return new WP_Error( 'import_no_file', esc_html__( 'Could not create temporary file.', 'wpr-addons' ) );
|
1111 |
+
}
|
1112 |
+
|
1113 |
+
// Fetch the remote URL and write it to the placeholder file.
|
1114 |
+
$remote_response = wp_safe_remote_get( $url, [
|
1115 |
+
'timeout' => 300,
|
1116 |
+
'stream' => true,
|
1117 |
+
'filename' => $tmp_file_name,
|
1118 |
+
'headers' => [
|
1119 |
+
'Accept-Encoding' => 'identity',
|
1120 |
+
],
|
1121 |
+
] );
|
1122 |
+
|
1123 |
+
if ( is_wp_error( $remote_response ) ) {
|
1124 |
+
@unlink( $tmp_file_name );
|
1125 |
+
|
1126 |
+
return new WP_Error( 'import_file_error', sprintf( /* translators: 1: WordPress error message, 2: WordPress error code. */ esc_html__( 'Request failed due to an error: %1$s (%2$s)', 'wpr-addons' ), esc_html( $remote_response->get_error_message() ), esc_html( $remote_response->get_error_code() ) ) );
|
1127 |
+
}
|
1128 |
+
|
1129 |
+
$remote_response_code = (int) wp_remote_retrieve_response_code( $remote_response );
|
1130 |
+
|
1131 |
+
// Make sure the fetch was successful.
|
1132 |
+
if ( 200 !== $remote_response_code ) {
|
1133 |
+
@unlink( $tmp_file_name );
|
1134 |
+
|
1135 |
+
return new WP_Error( 'import_file_error', sprintf( /* translators: 1: HTTP error message, 2: HTTP error code. */ esc_html__( 'Remote server returned the following unexpected result: %1$s (%2$s)', 'wpr-addons' ), get_status_header_desc( $remote_response_code ), esc_html( $remote_response_code ) ) );
|
1136 |
+
}
|
1137 |
+
|
1138 |
+
$headers = wp_remote_retrieve_headers( $remote_response );
|
1139 |
+
|
1140 |
+
// Request failed.
|
1141 |
+
if ( ! $headers ) {
|
1142 |
+
@unlink( $tmp_file_name );
|
1143 |
+
|
1144 |
+
return new WP_Error( 'import_file_error', esc_html__( 'Remote server did not respond', 'wpr-addons' ) );
|
1145 |
+
}
|
1146 |
+
|
1147 |
+
$filesize = (int) filesize( $tmp_file_name );
|
1148 |
+
|
1149 |
+
if ( 0 === $filesize ) {
|
1150 |
+
@unlink( $tmp_file_name );
|
1151 |
+
|
1152 |
+
return new WP_Error( 'import_file_error', esc_html__( 'Zero size file downloaded', 'wpr-addons' ) );
|
1153 |
+
}
|
1154 |
+
|
1155 |
+
if ( ! isset( $headers['content-encoding'] ) && isset( $headers['content-length'] ) && $filesize !== (int) $headers['content-length'] ) {
|
1156 |
+
@unlink( $tmp_file_name );
|
1157 |
+
|
1158 |
+
return new WP_Error( 'import_file_error', esc_html__( 'Downloaded file has incorrect size', 'wpr-addons' ) );
|
1159 |
+
}
|
1160 |
+
|
1161 |
+
$max_size = (int) apply_filters( 'import_attachment_size_limit', self::DEFAULT_IMPORT_ATTACHMENT_SIZE_LIMIT );
|
1162 |
+
if ( ! empty( $max_size ) && $filesize > $max_size ) {
|
1163 |
+
@unlink( $tmp_file_name );
|
1164 |
+
|
1165 |
+
/* translators: %s: Max file size. */
|
1166 |
+
return new WP_Error( 'import_file_error', sprintf( esc_html__( 'Remote file is too large, limit is %s', 'wpr-addons' ), size_format( $max_size ) ) );
|
1167 |
+
}
|
1168 |
+
|
1169 |
+
// Override file name with Content-Disposition header value.
|
1170 |
+
if ( ! empty( $headers['content-disposition'] ) ) {
|
1171 |
+
$file_name_from_disposition = self::get_filename_from_disposition( (array) $headers['content-disposition'] );
|
1172 |
+
if ( $file_name_from_disposition ) {
|
1173 |
+
$file_name = $file_name_from_disposition;
|
1174 |
+
}
|
1175 |
+
}
|
1176 |
+
|
1177 |
+
// Set file extension if missing.
|
1178 |
+
$file_ext = pathinfo( $file_name, PATHINFO_EXTENSION );
|
1179 |
+
if ( ! $file_ext && ! empty( $headers['content-type'] ) ) {
|
1180 |
+
$extension = self::get_file_extension_by_mime_type( $headers['content-type'] );
|
1181 |
+
if ( $extension ) {
|
1182 |
+
$file_name = "{$file_name}.{$extension}";
|
1183 |
+
}
|
1184 |
+
}
|
1185 |
+
|
1186 |
+
// Handle the upload like _wp_handle_upload() does.
|
1187 |
+
$wp_filetype = wp_check_filetype_and_ext( $tmp_file_name, $file_name );
|
1188 |
+
$ext = empty( $wp_filetype['ext'] ) ? '' : $wp_filetype['ext'];
|
1189 |
+
$type = empty( $wp_filetype['type'] ) ? '' : $wp_filetype['type'];
|
1190 |
+
$proper_filename = empty( $wp_filetype['proper_filename'] ) ? '' : $wp_filetype['proper_filename'];
|
1191 |
+
|
1192 |
+
// Check to see if wp_check_filetype_and_ext() determined the filename was incorrect.
|
1193 |
+
if ( $proper_filename ) {
|
1194 |
+
$file_name = $proper_filename;
|
1195 |
+
}
|
1196 |
+
|
1197 |
+
if ( ( ! $type || ! $ext ) && ! current_user_can( 'unfiltered_upload' ) ) {
|
1198 |
+
return new WP_Error( 'import_file_error', esc_html__( 'Sorry, this file type is not permitted for security reasons.', 'wpr-addons' ) );
|
1199 |
+
}
|
1200 |
+
|
1201 |
+
$uploads = wp_upload_dir( $post['upload_date'] );
|
1202 |
+
if ( ! ( $uploads && false === $uploads['error'] ) ) {
|
1203 |
+
return new WP_Error( 'upload_dir_error', $uploads['error'] );
|
1204 |
+
}
|
1205 |
+
|
1206 |
+
// Move the file to the uploads dir.
|
1207 |
+
$file_name = wp_unique_filename( $uploads['path'], $file_name );
|
1208 |
+
$new_file = $uploads['path'] . "/$file_name";
|
1209 |
+
$move_new_file = copy( $tmp_file_name, $new_file );
|
1210 |
+
|
1211 |
+
if ( ! $move_new_file ) {
|
1212 |
+
@unlink( $tmp_file_name );
|
1213 |
+
|
1214 |
+
return new WP_Error( 'import_file_error', esc_html__( 'The uploaded file could not be moved', 'wpr-addons' ) );
|
1215 |
+
}
|
1216 |
+
|
1217 |
+
// Set correct file permissions.
|
1218 |
+
$stat = stat( dirname( $new_file ) );
|
1219 |
+
$perms = $stat['mode'] & 0000666;
|
1220 |
+
chmod( $new_file, $perms );
|
1221 |
+
|
1222 |
+
$upload = [
|
1223 |
+
'file' => $new_file,
|
1224 |
+
'url' => $uploads['url'] . "/$file_name",
|
1225 |
+
'type' => $wp_filetype['type'],
|
1226 |
+
'error' => false,
|
1227 |
+
];
|
1228 |
+
|
1229 |
+
// Keep track of the old and new urls so we can substitute them later.
|
1230 |
+
$this->url_remap[ $url ] = $upload['url'];
|
1231 |
+
$this->url_remap[ $post['guid'] ] = $upload['url']; // r13735, really needed?
|
1232 |
+
// Keep track of the destination if the remote url is redirected somewhere else.
|
1233 |
+
if ( isset( $headers['x-final-location'] ) && $headers['x-final-location'] !== $url ) {
|
1234 |
+
$this->url_remap[ $headers['x-final-location'] ] = $upload['url'];
|
1235 |
+
}
|
1236 |
+
|
1237 |
+
return $upload;
|
1238 |
+
}
|
1239 |
+
|
1240 |
+
/**
|
1241 |
+
* Attempt to associate posts and menu items with previously missing parents
|
1242 |
+
*
|
1243 |
+
* An imported post's parent may not have been imported when it was first created
|
1244 |
+
* so try again. Similarly for child menu items and menu items which were missing
|
1245 |
+
* the object (e.g. post) they represent in the menu
|
1246 |
+
*/
|
1247 |
+
private function backfill_parents() {
|
1248 |
+
global $wpdb;
|
1249 |
+
|
1250 |
+
// Find parents for post orphans.
|
1251 |
+
foreach ( $this->post_orphans as $child_id => $parent_id ) {
|
1252 |
+
$local_child_id = false;
|
1253 |
+
$local_parent_id = false;
|
1254 |
+
|
1255 |
+
if ( isset( $this->processed_posts[ $child_id ] ) ) {
|
1256 |
+
$local_child_id = $this->processed_posts[ $child_id ];
|
1257 |
+
}
|
1258 |
+
if ( isset( $this->processed_posts[ $parent_id ] ) ) {
|
1259 |
+
$local_parent_id = $this->processed_posts[ $parent_id ];
|
1260 |
+
}
|
1261 |
+
|
1262 |
+
if ( $local_child_id && $local_parent_id ) {
|
1263 |
+
$wpdb->update( $wpdb->posts, [ 'post_parent' => $local_parent_id ], [ 'ID' => $local_child_id ], '%d', '%d' );
|
1264 |
+
clean_post_cache( $local_child_id );
|
1265 |
+
}
|
1266 |
+
}
|
1267 |
+
|
1268 |
+
// All other posts/terms are imported, retry menu items with missing associated object.
|
1269 |
+
$missing_menu_items = $this->missing_menu_items;
|
1270 |
+
foreach ( $missing_menu_items as $item ) {
|
1271 |
+
$this->process_menu_item( $item );
|
1272 |
+
}
|
1273 |
+
|
1274 |
+
// Find parents for menu item orphans.
|
1275 |
+
foreach ( $this->menu_item_orphans as $child_id => $parent_id ) {
|
1276 |
+
$local_child_id = 0;
|
1277 |
+
$local_parent_id = 0;
|
1278 |
+
if ( isset( $this->processed_menu_items[ $child_id ] ) ) {
|
1279 |
+
$local_child_id = $this->processed_menu_items[ $child_id ];
|
1280 |
+
}
|
1281 |
+
if ( isset( $this->processed_menu_items[ $parent_id ] ) ) {
|
1282 |
+
$local_parent_id = $this->processed_menu_items[ $parent_id ];
|
1283 |
+
}
|
1284 |
+
|
1285 |
+
if ( $local_child_id && $local_parent_id ) {
|
1286 |
+
update_post_meta( $local_child_id, '_menu_item_menu_item_parent', (int) $local_parent_id );
|
1287 |
+
}
|
1288 |
+
}
|
1289 |
+
}
|
1290 |
+
|
1291 |
+
/**
|
1292 |
+
* Use stored mapping information to update old attachment URLs
|
1293 |
+
*/
|
1294 |
+
private function backfill_attachment_urls() {
|
1295 |
+
global $wpdb;
|
1296 |
+
// Make sure we do the longest urls first, in case one is a substring of another.
|
1297 |
+
uksort( $this->url_remap, function ( $a, $b ) {
|
1298 |
+
// Return the difference in length between two strings.
|
1299 |
+
return strlen( $b ) - strlen( $a );
|
1300 |
+
} );
|
1301 |
+
|
1302 |
+
foreach ( $this->url_remap as $from_url => $to_url ) {
|
1303 |
+
// Remap urls in post_content.
|
1304 |
+
$wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->posts} SET post_content = REPLACE(post_content, %s, %s)", $from_url, $to_url ) );
|
1305 |
+
// Remap enclosure urls.
|
1306 |
+
$wpdb->query( $wpdb->prepare( "UPDATE {$wpdb->postmeta} SET meta_value = REPLACE(meta_value, %s, %s) WHERE meta_key='enclosure'", $from_url, $to_url ) );
|
1307 |
+
}
|
1308 |
+
}
|
1309 |
+
|
1310 |
+
/**
|
1311 |
+
* Update _thumbnail_id meta to new, imported attachment IDs
|
1312 |
+
*/
|
1313 |
+
private function remap_featured_images() {
|
1314 |
+
// Cycle through posts that have a featured image.
|
1315 |
+
foreach ( $this->featured_images as $post_id => $value ) {
|
1316 |
+
if ( isset( $this->processed_posts[ $value ] ) ) {
|
1317 |
+
$new_id = $this->processed_posts[ $value ];
|
1318 |
+
// Only update if there's a difference.
|
1319 |
+
if ( $new_id !== $value ) {
|
1320 |
+
update_post_meta( $post_id, '_thumbnail_id', $new_id );
|
1321 |
+
}
|
1322 |
+
}
|
1323 |
+
}
|
1324 |
+
}
|
1325 |
+
|
1326 |
+
/**
|
1327 |
+
* Parse a WXR file
|
1328 |
+
*
|
1329 |
+
* @param string $file Path to WXR file for parsing
|
1330 |
+
*
|
1331 |
+
* @return array Information gathered from the WXR file
|
1332 |
+
*/
|
1333 |
+
private function parse( $file ) {
|
1334 |
+
$parser = new WXR_Parser();
|
1335 |
+
|
1336 |
+
return $parser->parse( $file );
|
1337 |
+
}
|
1338 |
+
|
1339 |
+
/**
|
1340 |
+
* Decide if the given meta key maps to information we will want to import
|
1341 |
+
*
|
1342 |
+
* @param string $key The meta key to check
|
1343 |
+
*
|
1344 |
+
* @return string|bool The key if we do want to import, false if not
|
1345 |
+
*/
|
1346 |
+
private function is_valid_meta_key( $key ) {
|
1347 |
+
// Skip attachment metadata since we'll regenerate it from scratch.
|
1348 |
+
// Skip _edit_lock as not relevant for import
|
1349 |
+
if ( in_array( $key, [ '_wp_attached_file', '_wp_attachment_metadata', '_edit_lock' ] ) ) {
|
1350 |
+
return false;
|
1351 |
+
}
|
1352 |
+
|
1353 |
+
return $key;
|
1354 |
+
}
|
1355 |
+
|
1356 |
+
public function run() {
|
1357 |
+
$this->import( $this->requested_file_path );
|
1358 |
+
|
1359 |
+
return $this->output;
|
1360 |
+
}
|
1361 |
+
|
1362 |
+
public function __construct( $file, $args = [] ) {
|
1363 |
+
$this->requested_file_path = $file;
|
1364 |
+
$this->args = $args;
|
1365 |
+
|
1366 |
+
if ( ! empty( $this->args['fetch_attachments'] ) ) {
|
1367 |
+
$this->fetch_attachments = true;
|
1368 |
+
}
|
1369 |
+
}
|
1370 |
+
}
|
admin/includes/wpr-conditions-manager.php
CHANGED
@@ -1,207 +1,207 @@
|
|
1 |
-
<?php
|
2 |
-
namespace WprAddons\Admin\Includes;
|
3 |
-
|
4 |
-
use WprAddons\Classes\Utilities;
|
5 |
-
|
6 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
-
exit; // Exit if accessed directly.
|
8 |
-
}
|
9 |
-
|
10 |
-
/**
|
11 |
-
* WPR_Conditions_Manager setup
|
12 |
-
*
|
13 |
-
* @since 1.0
|
14 |
-
*/
|
15 |
-
class WPR_Conditions_Manager {
|
16 |
-
|
17 |
-
/**
|
18 |
-
** Header & Footer Conditions
|
19 |
-
*/
|
20 |
-
public static function header_footer_display_conditions( $conditions ) {
|
21 |
-
$template = NULL;
|
22 |
-
|
23 |
-
// Custom
|
24 |
-
if ( wpr_fs()->can_use_premium_code() && defined('WPR_ADDONS_PRO_VERSION') ) {
|
25 |
-
if ( !empty($conditions) ) {
|
26 |
-
|
27 |
-
// Archive Pages (includes search)
|
28 |
-
if ( !is_null( \WprAddonsPro\Classes\Pro_Modules::archive_templates_conditions( $conditions ) ) ) {
|
29 |
-
$template = \WprAddonsPro\Classes\Pro_Modules::archive_templates_conditions( $conditions );
|
30 |
-
}
|
31 |
-
|
32 |
-
// Single Pages
|
33 |
-
if ( !is_null( \WprAddonsPro\Classes\Pro_Modules::single_templates_conditions( $conditions ) ) ) {
|
34 |
-
$template = \WprAddonsPro\Classes\Pro_Modules::single_templates_conditions( $conditions );
|
35 |
-
}
|
36 |
-
|
37 |
-
}
|
38 |
-
} else {
|
39 |
-
$template = Utilities::get_template_slug( $conditions, 'global' );
|
40 |
-
}
|
41 |
-
|
42 |
-
if ( \Elementor\Plugin::$instance->preview->is_preview_mode() ) {
|
43 |
-
$template_type = Utilities::get_wpr_template_type(get_the_ID());
|
44 |
-
|
45 |
-
if ( 'header' === $template_type || 'footer' === $template_type || is_singular('wpr_mega_menu') ) {
|
46 |
-
$template = NULL;
|
47 |
-
}
|
48 |
-
}
|
49 |
-
|
50 |
-
return $template;
|
51 |
-
}
|
52 |
-
|
53 |
-
/**
|
54 |
-
** Canvas Content Conditions
|
55 |
-
*/
|
56 |
-
public static function canvas_page_content_display_conditions() {
|
57 |
-
$template = NULL;
|
58 |
-
|
59 |
-
// Get Conditions
|
60 |
-
if ( class_exists( 'WooCommerce' ) && is_woocommerce() ) {
|
61 |
-
$archives = json_decode( get_option( 'wpr_product_archive_conditions' ), true );
|
62 |
-
$singles = json_decode( get_option( 'wpr_product_single_conditions' ), true );
|
63 |
-
} else {
|
64 |
-
$archives = json_decode( get_option( 'wpr_archive_conditions' ), true );
|
65 |
-
$singles = json_decode( get_option( 'wpr_single_conditions' ), true );
|
66 |
-
}
|
67 |
-
|
68 |
-
if ( empty($archives) && empty($singles) ) {
|
69 |
-
return NULL;
|
70 |
-
}
|
71 |
-
|
72 |
-
// Custom
|
73 |
-
if ( wpr_fs()->can_use_premium_code() && defined('WPR_ADDONS_PRO_VERSION') ) {
|
74 |
-
|
75 |
-
// Archive Pages (includes search)
|
76 |
-
if ( !is_null( \WprAddonsPro\Classes\Pro_Modules::archive_templates_conditions( $archives ) ) ) {
|
77 |
-
$template = \WprAddonsPro\Classes\Pro_Modules::archive_templates_conditions( $archives );
|
78 |
-
}
|
79 |
-
|
80 |
-
// Single Pages
|
81 |
-
if ( !is_null( \WprAddonsPro\Classes\Pro_Modules::single_templates_conditions( $singles ) ) ) {
|
82 |
-
$template = \WprAddonsPro\Classes\Pro_Modules::single_templates_conditions( $singles );
|
83 |
-
}
|
84 |
-
} else {
|
85 |
-
// Archive Pages (includes search)
|
86 |
-
if ( !is_null( WPR_Conditions_Manager::archive_templates_conditions_free($archives) ) ) {
|
87 |
-
$template = WPR_Conditions_Manager::archive_templates_conditions_free($archives);
|
88 |
-
}
|
89 |
-
|
90 |
-
// Single Pages
|
91 |
-
if ( !is_null( WPR_Conditions_Manager::single_templates_conditions_free($singles) ) ) {
|
92 |
-
$template = WPR_Conditions_Manager::single_templates_conditions_free($singles);
|
93 |
-
}
|
94 |
-
}
|
95 |
-
|
96 |
-
return $template;
|
97 |
-
}
|
98 |
-
|
99 |
-
|
100 |
-
/**
|
101 |
-
** Archive Pages Templates Conditions Free
|
102 |
-
*/
|
103 |
-
public static function archive_templates_conditions_free( $conditions ) {
|
104 |
-
$term_id = '';
|
105 |
-
$term_name = '';
|
106 |
-
$queried_object = get_queried_object();
|
107 |
-
|
108 |
-
// Get Terms
|
109 |
-
if ( ! is_null( $queried_object ) ) {
|
110 |
-
if ( isset( $queried_object->term_id ) && isset( $queried_object->taxonomy ) ) {
|
111 |
-
$term_id = $queried_object->term_id;
|
112 |
-
$term_name = $queried_object->taxonomy;
|
113 |
-
}
|
114 |
-
}
|
115 |
-
|
116 |
-
// Reset
|
117 |
-
$template = NULL;
|
118 |
-
|
119 |
-
// Archive Pages (includes search)
|
120 |
-
if ( is_archive() || is_search() ) {
|
121 |
-
if ( ! is_search() ) {
|
122 |
-
// Author
|
123 |
-
if ( is_author() ) {
|
124 |
-
$template = Utilities::get_template_slug( $conditions, 'archive/author' );
|
125 |
-
// Date
|
126 |
-
} elseif ( is_date() ) {
|
127 |
-
$template = Utilities::get_template_slug( $conditions, 'archive/date' );
|
128 |
-
// Category
|
129 |
-
} elseif ( is_category() ) {
|
130 |
-
$template = Utilities::get_template_slug( $conditions, 'archive/categories', $term_id );
|
131 |
-
// Tag
|
132 |
-
} elseif ( is_tag() ) {
|
133 |
-
$template = Utilities::get_template_slug( $conditions, 'archive/tags', $term_id );
|
134 |
-
// Products
|
135 |
-
} elseif ( class_exists( 'WooCommerce' ) && is_woocommerce() ) {
|
136 |
-
$template = Utilities::get_template_slug( $conditions, 'product_archive/products' );
|
137 |
-
}
|
138 |
-
|
139 |
-
// Search Page
|
140 |
-
} else {
|
141 |
-
$template = Utilities::get_template_slug( $conditions, 'archive/search' );
|
142 |
-
}
|
143 |
-
|
144 |
-
// Posts Page
|
145 |
-
} elseif ( Utilities::is_blog_archive() ) {
|
146 |
-
$template = Utilities::get_template_slug( $conditions, 'archive/posts' );
|
147 |
-
}
|
148 |
-
|
149 |
-
// Global - For All Archives
|
150 |
-
if ( is_null($template) ) {
|
151 |
-
$all_archives = Utilities::get_template_slug( $conditions, 'archive/all_archives' );
|
152 |
-
|
153 |
-
if ( ! is_null($all_archives) ) {
|
154 |
-
if ( class_exists( 'WooCommerce' ) && is_shop() ) {
|
155 |
-
$template = null;
|
156 |
-
} else {
|
157 |
-
if ( is_archive() || is_search() || Utilities::is_blog_archive() ) {
|
158 |
-
$template = $all_archives;
|
159 |
-
}
|
160 |
-
}
|
161 |
-
}
|
162 |
-
}
|
163 |
-
|
164 |
-
return $template;
|
165 |
-
}
|
166 |
-
|
167 |
-
/**
|
168 |
-
** Single Pages Templates Conditions - Free
|
169 |
-
*/
|
170 |
-
public static function single_templates_conditions_free( $conditions ) {
|
171 |
-
global $post;
|
172 |
-
|
173 |
-
// Get Posts
|
174 |
-
$post_id = is_null($post) ? '' : $post->ID;
|
175 |
-
$post_type = is_null($post) ? '' : $post->post_type;
|
176 |
-
|
177 |
-
// Reset
|
178 |
-
$template = NULL;
|
179 |
-
|
180 |
-
// Single Pages
|
181 |
-
if ( is_single() || is_front_page() || is_page() || is_404() ) {
|
182 |
-
|
183 |
-
if ( is_single() ) {
|
184 |
-
// Blog Posts
|
185 |
-
if ( 'post' == $post_type ) {
|
186 |
-
$template = Utilities::get_template_slug( $conditions, 'single/posts', $post_id );
|
187 |
-
} elseif ( 'product' == $post_type ) {
|
188 |
-
$template = Utilities::get_template_slug( $conditions, 'product_single/product', $post_id );
|
189 |
-
}
|
190 |
-
} else {
|
191 |
-
// Front page
|
192 |
-
if ( is_front_page() && ! Utilities::is_blog_archive() ) {//TODO: is it a good check? - is_blog_archive()
|
193 |
-
$template = Utilities::get_template_slug( $conditions, 'single/front_page' );
|
194 |
-
// Error 404 Page
|
195 |
-
} elseif ( is_404() ) {
|
196 |
-
$template = Utilities::get_template_slug( $conditions, 'single/page_404' );
|
197 |
-
// Single Page
|
198 |
-
} elseif ( is_page() ) {
|
199 |
-
$template = Utilities::get_template_slug( $conditions, 'single/pages', $post_id );
|
200 |
-
}
|
201 |
-
}
|
202 |
-
|
203 |
-
}
|
204 |
-
|
205 |
-
return $template;
|
206 |
-
}
|
207 |
}
|
1 |
+
<?php
|
2 |
+
namespace WprAddons\Admin\Includes;
|
3 |
+
|
4 |
+
use WprAddons\Classes\Utilities;
|
5 |
+
|
6 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
+
exit; // Exit if accessed directly.
|
8 |
+
}
|
9 |
+
|
10 |
+
/**
|
11 |
+
* WPR_Conditions_Manager setup
|
12 |
+
*
|
13 |
+
* @since 1.0
|
14 |
+
*/
|
15 |
+
class WPR_Conditions_Manager {
|
16 |
+
|
17 |
+
/**
|
18 |
+
** Header & Footer Conditions
|
19 |
+
*/
|
20 |
+
public static function header_footer_display_conditions( $conditions ) {
|
21 |
+
$template = NULL;
|
22 |
+
|
23 |
+
// Custom
|
24 |
+
if ( wpr_fs()->can_use_premium_code() && defined('WPR_ADDONS_PRO_VERSION') ) {
|
25 |
+
if ( !empty($conditions) ) {
|
26 |
+
|
27 |
+
// Archive Pages (includes search)
|
28 |
+
if ( !is_null( \WprAddonsPro\Classes\Pro_Modules::archive_templates_conditions( $conditions ) ) ) {
|
29 |
+
$template = \WprAddonsPro\Classes\Pro_Modules::archive_templates_conditions( $conditions );
|
30 |
+
}
|
31 |
+
|
32 |
+
// Single Pages
|
33 |
+
if ( !is_null( \WprAddonsPro\Classes\Pro_Modules::single_templates_conditions( $conditions ) ) ) {
|
34 |
+
$template = \WprAddonsPro\Classes\Pro_Modules::single_templates_conditions( $conditions );
|
35 |
+
}
|
36 |
+
|
37 |
+
}
|
38 |
+
} else {
|
39 |
+
$template = Utilities::get_template_slug( $conditions, 'global' );
|
40 |
+
}
|
41 |
+
|
42 |
+
if ( \Elementor\Plugin::$instance->preview->is_preview_mode() ) {
|
43 |
+
$template_type = Utilities::get_wpr_template_type(get_the_ID());
|
44 |
+
|
45 |
+
if ( 'header' === $template_type || 'footer' === $template_type || is_singular('wpr_mega_menu') ) {
|
46 |
+
$template = NULL;
|
47 |
+
}
|
48 |
+
}
|
49 |
+
|
50 |
+
return $template;
|
51 |
+
}
|
52 |
+
|
53 |
+
/**
|
54 |
+
** Canvas Content Conditions
|
55 |
+
*/
|
56 |
+
public static function canvas_page_content_display_conditions() {
|
57 |
+
$template = NULL;
|
58 |
+
|
59 |
+
// Get Conditions
|
60 |
+
if ( class_exists( 'WooCommerce' ) && is_woocommerce() ) {
|
61 |
+
$archives = json_decode( get_option( 'wpr_product_archive_conditions' ), true );
|
62 |
+
$singles = json_decode( get_option( 'wpr_product_single_conditions' ), true );
|
63 |
+
} else {
|
64 |
+
$archives = json_decode( get_option( 'wpr_archive_conditions' ), true );
|
65 |
+
$singles = json_decode( get_option( 'wpr_single_conditions' ), true );
|
66 |
+
}
|
67 |
+
|
68 |
+
if ( empty($archives) && empty($singles) ) {
|
69 |
+
return NULL;
|
70 |
+
}
|
71 |
+
|
72 |
+
// Custom
|
73 |
+
if ( wpr_fs()->can_use_premium_code() && defined('WPR_ADDONS_PRO_VERSION') ) {
|
74 |
+
|
75 |
+
// Archive Pages (includes search)
|
76 |
+
if ( !is_null( \WprAddonsPro\Classes\Pro_Modules::archive_templates_conditions( $archives ) ) ) {
|
77 |
+
$template = \WprAddonsPro\Classes\Pro_Modules::archive_templates_conditions( $archives );
|
78 |
+
}
|
79 |
+
|
80 |
+
// Single Pages
|
81 |
+
if ( !is_null( \WprAddonsPro\Classes\Pro_Modules::single_templates_conditions( $singles ) ) ) {
|
82 |
+
$template = \WprAddonsPro\Classes\Pro_Modules::single_templates_conditions( $singles );
|
83 |
+
}
|
84 |
+
} else {
|
85 |
+
// Archive Pages (includes search)
|
86 |
+
if ( !is_null( WPR_Conditions_Manager::archive_templates_conditions_free($archives) ) ) {
|
87 |
+
$template = WPR_Conditions_Manager::archive_templates_conditions_free($archives);
|
88 |
+
}
|
89 |
+
|
90 |
+
// Single Pages
|
91 |
+
if ( !is_null( WPR_Conditions_Manager::single_templates_conditions_free($singles) ) ) {
|
92 |
+
$template = WPR_Conditions_Manager::single_templates_conditions_free($singles);
|
93 |
+
}
|
94 |
+
}
|
95 |
+
|
96 |
+
return $template;
|
97 |
+
}
|
98 |
+
|
99 |
+
|
100 |
+
/**
|
101 |
+
** Archive Pages Templates Conditions Free
|
102 |
+
*/
|
103 |
+
public static function archive_templates_conditions_free( $conditions ) {
|
104 |
+
$term_id = '';
|
105 |
+
$term_name = '';
|
106 |
+
$queried_object = get_queried_object();
|
107 |
+
|
108 |
+
// Get Terms
|
109 |
+
if ( ! is_null( $queried_object ) ) {
|
110 |
+
if ( isset( $queried_object->term_id ) && isset( $queried_object->taxonomy ) ) {
|
111 |
+
$term_id = $queried_object->term_id;
|
112 |
+
$term_name = $queried_object->taxonomy;
|
113 |
+
}
|
114 |
+
}
|
115 |
+
|
116 |
+
// Reset
|
117 |
+
$template = NULL;
|
118 |
+
|
119 |
+
// Archive Pages (includes search)
|
120 |
+
if ( is_archive() || is_search() ) {
|
121 |
+
if ( ! is_search() ) {
|
122 |
+
// Author
|
123 |
+
if ( is_author() ) {
|
124 |
+
$template = Utilities::get_template_slug( $conditions, 'archive/author' );
|
125 |
+
// Date
|
126 |
+
} elseif ( is_date() ) {
|
127 |
+
$template = Utilities::get_template_slug( $conditions, 'archive/date' );
|
128 |
+
// Category
|
129 |
+
} elseif ( is_category() ) {
|
130 |
+
$template = Utilities::get_template_slug( $conditions, 'archive/categories', $term_id );
|
131 |
+
// Tag
|
132 |
+
} elseif ( is_tag() ) {
|
133 |
+
$template = Utilities::get_template_slug( $conditions, 'archive/tags', $term_id );
|
134 |
+
// Products
|
135 |
+
} elseif ( class_exists( 'WooCommerce' ) && is_woocommerce() ) {
|
136 |
+
$template = Utilities::get_template_slug( $conditions, 'product_archive/products' );
|
137 |
+
}
|
138 |
+
|
139 |
+
// Search Page
|
140 |
+
} else {
|
141 |
+
$template = Utilities::get_template_slug( $conditions, 'archive/search' );
|
142 |
+
}
|
143 |
+
|
144 |
+
// Posts Page
|
145 |
+
} elseif ( Utilities::is_blog_archive() ) {
|
146 |
+
$template = Utilities::get_template_slug( $conditions, 'archive/posts' );
|
147 |
+
}
|
148 |
+
|
149 |
+
// Global - For All Archives
|
150 |
+
if ( is_null($template) ) {
|
151 |
+
$all_archives = Utilities::get_template_slug( $conditions, 'archive/all_archives' );
|
152 |
+
|
153 |
+
if ( ! is_null($all_archives) ) {
|
154 |
+
if ( class_exists( 'WooCommerce' ) && is_shop() ) {
|
155 |
+
$template = null;
|
156 |
+
} else {
|
157 |
+
if ( is_archive() || is_search() || Utilities::is_blog_archive() ) {
|
158 |
+
$template = $all_archives;
|
159 |
+
}
|
160 |
+
}
|
161 |
+
}
|
162 |
+
}
|
163 |
+
|
164 |
+
return $template;
|
165 |
+
}
|
166 |
+
|
167 |
+
/**
|
168 |
+
** Single Pages Templates Conditions - Free
|
169 |
+
*/
|
170 |
+
public static function single_templates_conditions_free( $conditions ) {
|
171 |
+
global $post;
|
172 |
+
|
173 |
+
// Get Posts
|
174 |
+
$post_id = is_null($post) ? '' : $post->ID;
|
175 |
+
$post_type = is_null($post) ? '' : $post->post_type;
|
176 |
+
|
177 |
+
// Reset
|
178 |
+
$template = NULL;
|
179 |
+
|
180 |
+
// Single Pages
|
181 |
+
if ( is_single() || is_front_page() || is_page() || is_404() ) {
|
182 |
+
|
183 |
+
if ( is_single() ) {
|
184 |
+
// Blog Posts
|
185 |
+
if ( 'post' == $post_type ) {
|
186 |
+
$template = Utilities::get_template_slug( $conditions, 'single/posts', $post_id );
|
187 |
+
} elseif ( 'product' == $post_type ) {
|
188 |
+
$template = Utilities::get_template_slug( $conditions, 'product_single/product', $post_id );
|
189 |
+
}
|
190 |
+
} else {
|
191 |
+
// Front page
|
192 |
+
if ( is_front_page() && ! Utilities::is_blog_archive() ) {//TODO: is it a good check? - is_blog_archive()
|
193 |
+
$template = Utilities::get_template_slug( $conditions, 'single/front_page' );
|
194 |
+
// Error 404 Page
|
195 |
+
} elseif ( is_404() ) {
|
196 |
+
$template = Utilities::get_template_slug( $conditions, 'single/page_404' );
|
197 |
+
// Single Page
|
198 |
+
} elseif ( is_page() ) {
|
199 |
+
$template = Utilities::get_template_slug( $conditions, 'single/pages', $post_id );
|
200 |
+
}
|
201 |
+
}
|
202 |
+
|
203 |
+
}
|
204 |
+
|
205 |
+
return $template;
|
206 |
+
}
|
207 |
}
|
admin/includes/wpr-render-templates.php
CHANGED
@@ -1,251 +1,251 @@
|
|
1 |
-
<?php
|
2 |
-
namespace WprAddons\Admin\Includes;
|
3 |
-
|
4 |
-
use WprAddons\Classes\Utilities;
|
5 |
-
|
6 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
-
exit; // Exit if accessed directly.
|
8 |
-
}
|
9 |
-
|
10 |
-
/**
|
11 |
-
* WPR_Render_Templates setup
|
12 |
-
*
|
13 |
-
* @since 1.0
|
14 |
-
*/
|
15 |
-
class WPR_Render_Templates {
|
16 |
-
|
17 |
-
/**
|
18 |
-
** Instance of Elemenntor Frontend class.
|
19 |
-
*
|
20 |
-
** @var \Elementor\Frontend()
|
21 |
-
*/
|
22 |
-
private static $elementor_instance;
|
23 |
-
|
24 |
-
/**
|
25 |
-
** Get Current Theme.
|
26 |
-
*/
|
27 |
-
public $current_theme;
|
28 |
-
|
29 |
-
/**
|
30 |
-
** Royal Themes Array.
|
31 |
-
*/
|
32 |
-
public $royal_themes;
|
33 |
-
|
34 |
-
|
35 |
-
/**
|
36 |
-
** Constructor
|
37 |
-
*/
|
38 |
-
public function __construct( $only_hf = false ) {
|
39 |
-
|
40 |
-
// Elementor Frontend
|
41 |
-
self::$elementor_instance = \Elementor\Plugin::instance();
|
42 |
-
|
43 |
-
// Ative Theme
|
44 |
-
$this->current_theme = get_template();
|
45 |
-
|
46 |
-
// Royal Themes
|
47 |
-
$this->royal_themes = ['ashe', 'ashe-pro', 'ashe-pro-premium', 'bard', 'bard-pro', 'bard-pro-premium'];
|
48 |
-
|
49 |
-
// Popular Themes
|
50 |
-
if ( 'astra' === $this->current_theme ) {
|
51 |
-
require_once(__DIR__ . '/../templates/views/astra/class-astra-compat.php');
|
52 |
-
|
53 |
-
} elseif ( 'generatepress' === $this->current_theme ) {
|
54 |
-
require_once(__DIR__ . '/../templates/views/generatepress/class-generatepress-compat.php');
|
55 |
-
|
56 |
-
} elseif ( 'oceanwp' === $this->current_theme ) {
|
57 |
-
require_once(__DIR__ . '/../templates/views/oceanwp/class-oceanwp-compat.php');
|
58 |
-
|
59 |
-
} elseif ( 'storefront' === $this->current_theme ) {
|
60 |
-
require_once(__DIR__ . '/../templates/views/storefront/class-storefront-compat.php');
|
61 |
-
|
62 |
-
// Other Themes
|
63 |
-
} else {
|
64 |
-
add_action( 'wp', [ $this, 'global_compatibility' ] );
|
65 |
-
}
|
66 |
-
|
67 |
-
// Scripts and Styles
|
68 |
-
add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_scripts' ] );
|
69 |
-
|
70 |
-
// Theme Builder
|
71 |
-
if ( !$only_hf ) { // Prevent Loading in Header or Footer Templates
|
72 |
-
add_filter( 'template_include', [ $this, 'convert_to_canvas' ], 12 ); // 12 after WP Pages and WooCommerce.
|
73 |
-
add_action( 'elementor/page_templates/canvas/wpr_print_content', [ $this, 'canvas_page_content_display' ] );
|
74 |
-
}
|
75 |
-
}
|
76 |
-
|
77 |
-
public function global_compatibility() {
|
78 |
-
add_action( 'get_header', [ $this, 'replace_header' ] );
|
79 |
-
add_action( 'elementor/page_templates/canvas/before_content', [ $this, 'add_canvas_header' ] );
|
80 |
-
|
81 |
-
add_action( 'get_footer', [ $this, 'replace_footer' ] );
|
82 |
-
add_action( 'elementor/page_templates/canvas/after_content', [ $this, 'add_canvas_footer' ], 9 );
|
83 |
-
}
|
84 |
-
|
85 |
-
/**
|
86 |
-
** Check if a Template has Conditions
|
87 |
-
*/
|
88 |
-
public function is_template_available( $type ) {
|
89 |
-
if ( 'content' === $type ) {
|
90 |
-
return !is_null(WPR_Conditions_Manager::canvas_page_content_display_conditions()) ? true : false;
|
91 |
-
} else {
|
92 |
-
$conditions = json_decode( get_option('wpr_'. $type .'_conditions', '[]'), true );
|
93 |
-
$template = WPR_Conditions_Manager::header_footer_display_conditions( $conditions );
|
94 |
-
return (!empty( $conditions ) && !is_null($template)) ? true : false;
|
95 |
-
}
|
96 |
-
}
|
97 |
-
|
98 |
-
/**
|
99 |
-
** Header
|
100 |
-
*/
|
101 |
-
public function replace_header() {
|
102 |
-
if ( $this->is_template_available('header') ) {
|
103 |
-
if ( ! in_array($this->current_theme, $this->royal_themes) ) {
|
104 |
-
require __DIR__ . '/../templates/views/theme-header.php';
|
105 |
-
} else {
|
106 |
-
require __DIR__ . '/../templates/views/royal/theme-header-royal.php';
|
107 |
-
}
|
108 |
-
|
109 |
-
$templates = [];
|
110 |
-
$templates[] = 'header.php';
|
111 |
-
|
112 |
-
remove_all_actions( 'wp_head' ); // Avoid running wp_head hooks again.
|
113 |
-
|
114 |
-
ob_start();
|
115 |
-
locate_template( $templates, true );
|
116 |
-
ob_get_clean();
|
117 |
-
}
|
118 |
-
}
|
119 |
-
|
120 |
-
public function add_canvas_header() {
|
121 |
-
if ( $this->is_template_available('header') ) {
|
122 |
-
$conditions = json_decode( get_option('wpr_header_conditions', '[]'), true );
|
123 |
-
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
124 |
-
$template_id = Utilities::get_template_id($template_slug);
|
125 |
-
$show_on_canvas = get_post_meta($template_id, 'wpr_header_show_on_canvas', true);
|
126 |
-
|
127 |
-
if ( !empty($show_on_canvas) && 'true' === $show_on_canvas && 0 === strpos($template_slug, 'user-header-') ) {
|
128 |
-
Utilities::render_elementor_template($template_slug);
|
129 |
-
}
|
130 |
-
}
|
131 |
-
}
|
132 |
-
|
133 |
-
/**
|
134 |
-
** Footer
|
135 |
-
*/
|
136 |
-
public function replace_footer() {
|
137 |
-
if ( $this->is_template_available('footer') ) {
|
138 |
-
if ( ! in_array($this->current_theme, $this->royal_themes) ) {
|
139 |
-
require __DIR__ . '/../templates/views/theme-footer.php';
|
140 |
-
} else {
|
141 |
-
require __DIR__ . '/../templates/views/royal/theme-footer-royal.php';
|
142 |
-
}
|
143 |
-
|
144 |
-
$templates = [];
|
145 |
-
$templates[] = 'footer.php';
|
146 |
-
|
147 |
-
remove_all_actions( 'wp_footer' ); // Avoid running wp_footer hooks again.
|
148 |
-
|
149 |
-
ob_start();
|
150 |
-
locate_template( $templates, true );
|
151 |
-
ob_get_clean();
|
152 |
-
}
|
153 |
-
}
|
154 |
-
|
155 |
-
public function add_canvas_footer() {
|
156 |
-
if ( $this->is_template_available('footer') ) {
|
157 |
-
$conditions = json_decode( get_option('wpr_footer_conditions', '[]'), true );
|
158 |
-
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
159 |
-
$template_id = Utilities::get_template_id($template_slug);
|
160 |
-
$show_on_canvas = get_post_meta($template_id, 'wpr_footer_show_on_canvas', true);
|
161 |
-
|
162 |
-
if ( !empty($show_on_canvas) && 'true' === $show_on_canvas && 0 === strpos($template_slug, 'user-footer-') ) {
|
163 |
-
Utilities::render_elementor_template($template_slug);
|
164 |
-
}
|
165 |
-
}
|
166 |
-
}
|
167 |
-
|
168 |
-
public function convert_to_canvas( $template ) {
|
169 |
-
$is_theme_builder_edit = \Elementor\Plugin::$instance->preview->is_preview_mode() && Utilities::is_theme_builder_template() ? true : false;
|
170 |
-
$_wp_page_template = get_post_meta(get_the_ID(), '_wp_page_template', true);
|
171 |
-
|
172 |
-
if ( $this->is_template_available('content') || $is_theme_builder_edit ) {
|
173 |
-
if ( (is_page() || is_single()) && 'elementor_canvas' === $_wp_page_template && !$is_theme_builder_edit ) {
|
174 |
-
return $template;
|
175 |
-
} else {
|
176 |
-
return WPR_ADDONS_PATH . 'admin/templates/wpr-canvas.php';
|
177 |
-
}
|
178 |
-
} else {
|
179 |
-
return $template;
|
180 |
-
}
|
181 |
-
}
|
182 |
-
|
183 |
-
/**
|
184 |
-
** Theme Builder Content Display
|
185 |
-
*/
|
186 |
-
public function canvas_page_content_display() {
|
187 |
-
// Get Template
|
188 |
-
$template = WPR_Conditions_Manager::canvas_page_content_display_conditions();
|
189 |
-
|
190 |
-
// Display Template
|
191 |
-
Utilities::render_elementor_template( $template );
|
192 |
-
}
|
193 |
-
|
194 |
-
/**
|
195 |
-
* Enqueue styles and scripts.
|
196 |
-
*/
|
197 |
-
public function enqueue_scripts() {
|
198 |
-
|
199 |
-
if ( class_exists( '\Elementor\Plugin' ) ) {
|
200 |
-
$elementor = \Elementor\Plugin::instance();
|
201 |
-
$elementor->frontend->enqueue_styles();
|
202 |
-
}
|
203 |
-
|
204 |
-
if ( class_exists( '\ElementorPro\Plugin' ) ) {
|
205 |
-
$elementor_pro = \ElementorPro\Plugin::instance();
|
206 |
-
$elementor_pro->enqueue_styles();
|
207 |
-
}
|
208 |
-
|
209 |
-
// Load Header Template CSS File
|
210 |
-
$heder_conditions = json_decode( get_option('wpr_header_conditions', '[]'), true );
|
211 |
-
$header_template_id = Utilities::get_template_id(WPR_Conditions_Manager::header_footer_display_conditions($heder_conditions));
|
212 |
-
|
213 |
-
if ( false !== $header_template_id ) {
|
214 |
-
if ( class_exists( '\Elementor\Core\Files\CSS\Post' ) ) {
|
215 |
-
$header_css_file = new \Elementor\Core\Files\CSS\Post( $header_template_id );
|
216 |
-
} elseif ( class_exists( '\Elementor\Post_CSS_File' ) ) {
|
217 |
-
$header_css_file = new \Elementor\Post_CSS_File( $header_template_id );
|
218 |
-
}
|
219 |
-
|
220 |
-
$header_css_file->enqueue();
|
221 |
-
}
|
222 |
-
|
223 |
-
// Load Footer Template CSS File
|
224 |
-
$footer_conditions = json_decode( get_option('wpr_footer_conditions', '[]'), true );
|
225 |
-
$footer_template_id = Utilities::get_template_id(WPR_Conditions_Manager::header_footer_display_conditions($footer_conditions));
|
226 |
-
|
227 |
-
if ( false !== $footer_template_id ) {
|
228 |
-
if ( class_exists( '\Elementor\Core\Files\CSS\Post' ) ) {
|
229 |
-
$footer_css_file = new \Elementor\Core\Files\CSS\Post( $footer_template_id );
|
230 |
-
} elseif ( class_exists( '\Elementor\Post_CSS_File' ) ) {
|
231 |
-
$footer_css_file = new \Elementor\Post_CSS_File( $footer_template_id );
|
232 |
-
}
|
233 |
-
|
234 |
-
$footer_css_file->enqueue();
|
235 |
-
}
|
236 |
-
|
237 |
-
// Load Canvas Content Template CSS File
|
238 |
-
$canvas_template_id = Utilities::get_template_id(WPR_Conditions_Manager::canvas_page_content_display_conditions());
|
239 |
-
|
240 |
-
if ( false !== $canvas_template_id ) {
|
241 |
-
if ( class_exists( '\Elementor\Core\Files\CSS\Post' ) ) {
|
242 |
-
$footer_css_file = new \Elementor\Core\Files\CSS\Post( $canvas_template_id );
|
243 |
-
} elseif ( class_exists( '\Elementor\Post_CSS_File' ) ) {
|
244 |
-
$footer_css_file = new \Elementor\Post_CSS_File( $canvas_template_id );
|
245 |
-
}
|
246 |
-
|
247 |
-
$footer_css_file->enqueue();
|
248 |
-
}
|
249 |
-
}
|
250 |
-
|
251 |
}
|
1 |
+
<?php
|
2 |
+
namespace WprAddons\Admin\Includes;
|
3 |
+
|
4 |
+
use WprAddons\Classes\Utilities;
|
5 |
+
|
6 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
+
exit; // Exit if accessed directly.
|
8 |
+
}
|
9 |
+
|
10 |
+
/**
|
11 |
+
* WPR_Render_Templates setup
|
12 |
+
*
|
13 |
+
* @since 1.0
|
14 |
+
*/
|
15 |
+
class WPR_Render_Templates {
|
16 |
+
|
17 |
+
/**
|
18 |
+
** Instance of Elemenntor Frontend class.
|
19 |
+
*
|
20 |
+
** @var \Elementor\Frontend()
|
21 |
+
*/
|
22 |
+
private static $elementor_instance;
|
23 |
+
|
24 |
+
/**
|
25 |
+
** Get Current Theme.
|
26 |
+
*/
|
27 |
+
public $current_theme;
|
28 |
+
|
29 |
+
/**
|
30 |
+
** Royal Themes Array.
|
31 |
+
*/
|
32 |
+
public $royal_themes;
|
33 |
+
|
34 |
+
|
35 |
+
/**
|
36 |
+
** Constructor
|
37 |
+
*/
|
38 |
+
public function __construct( $only_hf = false ) {
|
39 |
+
|
40 |
+
// Elementor Frontend
|
41 |
+
self::$elementor_instance = \Elementor\Plugin::instance();
|
42 |
+
|
43 |
+
// Ative Theme
|
44 |
+
$this->current_theme = get_template();
|
45 |
+
|
46 |
+
// Royal Themes
|
47 |
+
$this->royal_themes = ['ashe', 'ashe-pro', 'ashe-pro-premium', 'bard', 'bard-pro', 'bard-pro-premium'];
|
48 |
+
|
49 |
+
// Popular Themes
|
50 |
+
if ( 'astra' === $this->current_theme ) {
|
51 |
+
require_once(__DIR__ . '/../templates/views/astra/class-astra-compat.php');
|
52 |
+
|
53 |
+
} elseif ( 'generatepress' === $this->current_theme ) {
|
54 |
+
require_once(__DIR__ . '/../templates/views/generatepress/class-generatepress-compat.php');
|
55 |
+
|
56 |
+
} elseif ( 'oceanwp' === $this->current_theme ) {
|
57 |
+
require_once(__DIR__ . '/../templates/views/oceanwp/class-oceanwp-compat.php');
|
58 |
+
|
59 |
+
} elseif ( 'storefront' === $this->current_theme ) {
|
60 |
+
require_once(__DIR__ . '/../templates/views/storefront/class-storefront-compat.php');
|
61 |
+
|
62 |
+
// Other Themes
|
63 |
+
} else {
|
64 |
+
add_action( 'wp', [ $this, 'global_compatibility' ] );
|
65 |
+
}
|
66 |
+
|
67 |
+
// Scripts and Styles
|
68 |
+
add_action( 'wp_enqueue_scripts', [ $this, 'enqueue_scripts' ] );
|
69 |
+
|
70 |
+
// Theme Builder
|
71 |
+
if ( !$only_hf ) { // Prevent Loading in Header or Footer Templates
|
72 |
+
add_filter( 'template_include', [ $this, 'convert_to_canvas' ], 12 ); // 12 after WP Pages and WooCommerce.
|
73 |
+
add_action( 'elementor/page_templates/canvas/wpr_print_content', [ $this, 'canvas_page_content_display' ] );
|
74 |
+
}
|
75 |
+
}
|
76 |
+
|
77 |
+
public function global_compatibility() {
|
78 |
+
add_action( 'get_header', [ $this, 'replace_header' ] );
|
79 |
+
add_action( 'elementor/page_templates/canvas/before_content', [ $this, 'add_canvas_header' ] );
|
80 |
+
|
81 |
+
add_action( 'get_footer', [ $this, 'replace_footer' ] );
|
82 |
+
add_action( 'elementor/page_templates/canvas/after_content', [ $this, 'add_canvas_footer' ], 9 );
|
83 |
+
}
|
84 |
+
|
85 |
+
/**
|
86 |
+
** Check if a Template has Conditions
|
87 |
+
*/
|
88 |
+
public function is_template_available( $type ) {
|
89 |
+
if ( 'content' === $type ) {
|
90 |
+
return !is_null(WPR_Conditions_Manager::canvas_page_content_display_conditions()) ? true : false;
|
91 |
+
} else {
|
92 |
+
$conditions = json_decode( get_option('wpr_'. $type .'_conditions', '[]'), true );
|
93 |
+
$template = WPR_Conditions_Manager::header_footer_display_conditions( $conditions );
|
94 |
+
return (!empty( $conditions ) && !is_null($template)) ? true : false;
|
95 |
+
}
|
96 |
+
}
|
97 |
+
|
98 |
+
/**
|
99 |
+
** Header
|
100 |
+
*/
|
101 |
+
public function replace_header() {
|
102 |
+
if ( $this->is_template_available('header') ) {
|
103 |
+
if ( ! in_array($this->current_theme, $this->royal_themes) ) {
|
104 |
+
require __DIR__ . '/../templates/views/theme-header.php';
|
105 |
+
} else {
|
106 |
+
require __DIR__ . '/../templates/views/royal/theme-header-royal.php';
|
107 |
+
}
|
108 |
+
|
109 |
+
$templates = [];
|
110 |
+
$templates[] = 'header.php';
|
111 |
+
|
112 |
+
remove_all_actions( 'wp_head' ); // Avoid running wp_head hooks again.
|
113 |
+
|
114 |
+
ob_start();
|
115 |
+
locate_template( $templates, true );
|
116 |
+
ob_get_clean();
|
117 |
+
}
|
118 |
+
}
|
119 |
+
|
120 |
+
public function add_canvas_header() {
|
121 |
+
if ( $this->is_template_available('header') ) {
|
122 |
+
$conditions = json_decode( get_option('wpr_header_conditions', '[]'), true );
|
123 |
+
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
124 |
+
$template_id = Utilities::get_template_id($template_slug);
|
125 |
+
$show_on_canvas = get_post_meta($template_id, 'wpr_header_show_on_canvas', true);
|
126 |
+
|
127 |
+
if ( !empty($show_on_canvas) && 'true' === $show_on_canvas && 0 === strpos($template_slug, 'user-header-') ) {
|
128 |
+
Utilities::render_elementor_template($template_slug);
|
129 |
+
}
|
130 |
+
}
|
131 |
+
}
|
132 |
+
|
133 |
+
/**
|
134 |
+
** Footer
|
135 |
+
*/
|
136 |
+
public function replace_footer() {
|
137 |
+
if ( $this->is_template_available('footer') ) {
|
138 |
+
if ( ! in_array($this->current_theme, $this->royal_themes) ) {
|
139 |
+
require __DIR__ . '/../templates/views/theme-footer.php';
|
140 |
+
} else {
|
141 |
+
require __DIR__ . '/../templates/views/royal/theme-footer-royal.php';
|
142 |
+
}
|
143 |
+
|
144 |
+
$templates = [];
|
145 |
+
$templates[] = 'footer.php';
|
146 |
+
|
147 |
+
remove_all_actions( 'wp_footer' ); // Avoid running wp_footer hooks again.
|
148 |
+
|
149 |
+
ob_start();
|
150 |
+
locate_template( $templates, true );
|
151 |
+
ob_get_clean();
|
152 |
+
}
|
153 |
+
}
|
154 |
+
|
155 |
+
public function add_canvas_footer() {
|
156 |
+
if ( $this->is_template_available('footer') ) {
|
157 |
+
$conditions = json_decode( get_option('wpr_footer_conditions', '[]'), true );
|
158 |
+
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
159 |
+
$template_id = Utilities::get_template_id($template_slug);
|
160 |
+
$show_on_canvas = get_post_meta($template_id, 'wpr_footer_show_on_canvas', true);
|
161 |
+
|
162 |
+
if ( !empty($show_on_canvas) && 'true' === $show_on_canvas && 0 === strpos($template_slug, 'user-footer-') ) {
|
163 |
+
Utilities::render_elementor_template($template_slug);
|
164 |
+
}
|
165 |
+
}
|
166 |
+
}
|
167 |
+
|
168 |
+
public function convert_to_canvas( $template ) {
|
169 |
+
$is_theme_builder_edit = \Elementor\Plugin::$instance->preview->is_preview_mode() && Utilities::is_theme_builder_template() ? true : false;
|
170 |
+
$_wp_page_template = get_post_meta(get_the_ID(), '_wp_page_template', true);
|
171 |
+
|
172 |
+
if ( $this->is_template_available('content') || $is_theme_builder_edit ) {
|
173 |
+
if ( (is_page() || is_single()) && 'elementor_canvas' === $_wp_page_template && !$is_theme_builder_edit ) {
|
174 |
+
return $template;
|
175 |
+
} else {
|
176 |
+
return WPR_ADDONS_PATH . 'admin/templates/wpr-canvas.php';
|
177 |
+
}
|
178 |
+
} else {
|
179 |
+
return $template;
|
180 |
+
}
|
181 |
+
}
|
182 |
+
|
183 |
+
/**
|
184 |
+
** Theme Builder Content Display
|
185 |
+
*/
|
186 |
+
public function canvas_page_content_display() {
|
187 |
+
// Get Template
|
188 |
+
$template = WPR_Conditions_Manager::canvas_page_content_display_conditions();
|
189 |
+
|
190 |
+
// Display Template
|
191 |
+
Utilities::render_elementor_template( $template );
|
192 |
+
}
|
193 |
+
|
194 |
+
/**
|
195 |
+
* Enqueue styles and scripts.
|
196 |
+
*/
|
197 |
+
public function enqueue_scripts() {
|
198 |
+
|
199 |
+
if ( class_exists( '\Elementor\Plugin' ) ) {
|
200 |
+
$elementor = \Elementor\Plugin::instance();
|
201 |
+
$elementor->frontend->enqueue_styles();
|
202 |
+
}
|
203 |
+
|
204 |
+
if ( class_exists( '\ElementorPro\Plugin' ) ) {
|
205 |
+
$elementor_pro = \ElementorPro\Plugin::instance();
|
206 |
+
$elementor_pro->enqueue_styles();
|
207 |
+
}
|
208 |
+
|
209 |
+
// Load Header Template CSS File
|
210 |
+
$heder_conditions = json_decode( get_option('wpr_header_conditions', '[]'), true );
|
211 |
+
$header_template_id = Utilities::get_template_id(WPR_Conditions_Manager::header_footer_display_conditions($heder_conditions));
|
212 |
+
|
213 |
+
if ( false !== $header_template_id ) {
|
214 |
+
if ( class_exists( '\Elementor\Core\Files\CSS\Post' ) ) {
|
215 |
+
$header_css_file = new \Elementor\Core\Files\CSS\Post( $header_template_id );
|
216 |
+
} elseif ( class_exists( '\Elementor\Post_CSS_File' ) ) {
|
217 |
+
$header_css_file = new \Elementor\Post_CSS_File( $header_template_id );
|
218 |
+
}
|
219 |
+
|
220 |
+
$header_css_file->enqueue();
|
221 |
+
}
|
222 |
+
|
223 |
+
// Load Footer Template CSS File
|
224 |
+
$footer_conditions = json_decode( get_option('wpr_footer_conditions', '[]'), true );
|
225 |
+
$footer_template_id = Utilities::get_template_id(WPR_Conditions_Manager::header_footer_display_conditions($footer_conditions));
|
226 |
+
|
227 |
+
if ( false !== $footer_template_id ) {
|
228 |
+
if ( class_exists( '\Elementor\Core\Files\CSS\Post' ) ) {
|
229 |
+
$footer_css_file = new \Elementor\Core\Files\CSS\Post( $footer_template_id );
|
230 |
+
} elseif ( class_exists( '\Elementor\Post_CSS_File' ) ) {
|
231 |
+
$footer_css_file = new \Elementor\Post_CSS_File( $footer_template_id );
|
232 |
+
}
|
233 |
+
|
234 |
+
$footer_css_file->enqueue();
|
235 |
+
}
|
236 |
+
|
237 |
+
// Load Canvas Content Template CSS File
|
238 |
+
$canvas_template_id = Utilities::get_template_id(WPR_Conditions_Manager::canvas_page_content_display_conditions());
|
239 |
+
|
240 |
+
if ( false !== $canvas_template_id ) {
|
241 |
+
if ( class_exists( '\Elementor\Core\Files\CSS\Post' ) ) {
|
242 |
+
$footer_css_file = new \Elementor\Core\Files\CSS\Post( $canvas_template_id );
|
243 |
+
} elseif ( class_exists( '\Elementor\Post_CSS_File' ) ) {
|
244 |
+
$footer_css_file = new \Elementor\Post_CSS_File( $canvas_template_id );
|
245 |
+
}
|
246 |
+
|
247 |
+
$footer_css_file->enqueue();
|
248 |
+
}
|
249 |
+
}
|
250 |
+
|
251 |
}
|
admin/includes/wpr-templates-actions.php
CHANGED
@@ -1,314 +1,314 @@
|
|
1 |
-
<?php
|
2 |
-
namespace WprAddons\Admin\Includes;
|
3 |
-
|
4 |
-
use WprAddons\Plugin;
|
5 |
-
use Elementor\TemplateLibrary\Source_Base;
|
6 |
-
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
|
7 |
-
use WprAddons\Classes\Utilities;
|
8 |
-
|
9 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
-
exit; // Exit if accessed directly.
|
11 |
-
}
|
12 |
-
|
13 |
-
|
14 |
-
/**
|
15 |
-
* WPR_Templates_Actions setup
|
16 |
-
*
|
17 |
-
* @since 1.0
|
18 |
-
*/
|
19 |
-
class WPR_Templates_Actions {
|
20 |
-
|
21 |
-
/**
|
22 |
-
** Constructor
|
23 |
-
*/
|
24 |
-
public function __construct() {
|
25 |
-
|
26 |
-
// Save Conditions
|
27 |
-
add_action( 'wp_ajax_wpr_save_template_conditions', [ $this, 'wpr_save_template_conditions' ] );
|
28 |
-
|
29 |
-
// Create Template
|
30 |
-
add_action( 'wp_ajax_wpr_create_template', [ $this, 'wpr_create_template' ] );
|
31 |
-
|
32 |
-
// Import Library Template
|
33 |
-
add_action( 'wp_ajax_wpr_import_library_template', [ $this, 'wpr_import_library_template' ] );
|
34 |
-
|
35 |
-
// Reset Template
|
36 |
-
add_action( 'wp_ajax_wpr_delete_template', [ $this, 'wpr_delete_template' ] );
|
37 |
-
|
38 |
-
// Register Elementor AJAX Actions
|
39 |
-
add_action( 'elementor/ajax/register_actions', [ $this, 'register_elementor_ajax_actions' ] );
|
40 |
-
|
41 |
-
// Enqueue Scripts
|
42 |
-
add_action( 'admin_enqueue_scripts', [ $this, 'templates_library_scripts' ] );
|
43 |
-
|
44 |
-
}
|
45 |
-
|
46 |
-
/**
|
47 |
-
** Save Template Conditions
|
48 |
-
*/
|
49 |
-
public function wpr_save_template_conditions() {
|
50 |
-
$template = isset($_POST['template']) ? sanitize_text_field(wp_unslash($_POST['template'])): false;
|
51 |
-
|
52 |
-
// Header
|
53 |
-
if ( isset($_POST['wpr_header_conditions']) ) {
|
54 |
-
update_option( 'wpr_header_conditions', $this->sanitize_conditions($_POST['wpr_header_conditions']) ); // phpcs:ignore
|
55 |
-
|
56 |
-
$wpr_header_show_on_canvas = isset($_POST['wpr_header_show_on_canvas']) ? sanitize_text_field(wp_unslash($_POST['wpr_header_show_on_canvas'])): false;
|
57 |
-
if ( $wpr_header_show_on_canvas && $template ) {
|
58 |
-
update_post_meta( Utilities::get_template_id($template), 'wpr_header_show_on_canvas', $wpr_header_show_on_canvas );
|
59 |
-
}
|
60 |
-
}
|
61 |
-
|
62 |
-
// Footer
|
63 |
-
if ( isset($_POST['wpr_footer_conditions']) ) {
|
64 |
-
update_option( 'wpr_footer_conditions', $this->sanitize_conditions($_POST['wpr_footer_conditions']) ); // phpcs:ignore
|
65 |
-
|
66 |
-
$wpr_footer_show_on_canvas = isset($_POST['wpr_footer_show_on_canvas']) ? sanitize_text_field(wp_unslash($_POST['wpr_footer_show_on_canvas'])): false;
|
67 |
-
if ( $wpr_footer_show_on_canvas && $template ) {
|
68 |
-
update_post_meta( Utilities::get_template_id($template), 'wpr_footer_show_on_canvas', $wpr_footer_show_on_canvas );
|
69 |
-
}
|
70 |
-
}
|
71 |
-
|
72 |
-
// Archive
|
73 |
-
if ( isset($_POST['wpr_archive_conditions']) ) {
|
74 |
-
update_option( 'wpr_archive_conditions', $this->sanitize_conditions($_POST['wpr_archive_conditions']) ); // phpcs:ignore
|
75 |
-
}
|
76 |
-
|
77 |
-
// Single
|
78 |
-
if ( isset($_POST['wpr_single_conditions']) ) {
|
79 |
-
update_option( 'wpr_single_conditions', $this->sanitize_conditions($_POST['wpr_single_conditions']) ); // phpcs:ignore
|
80 |
-
}
|
81 |
-
|
82 |
-
// Product Archive
|
83 |
-
if ( isset($_POST['wpr_product_archive_conditions']) ) {
|
84 |
-
update_option( 'wpr_product_archive_conditions', $this->sanitize_conditions($_POST['wpr_product_archive_conditions']) ); // phpcs:ignore
|
85 |
-
}
|
86 |
-
|
87 |
-
// Product Single
|
88 |
-
if ( isset($_POST['wpr_product_single_conditions']) ) {
|
89 |
-
update_option( 'wpr_product_single_conditions', $this->sanitize_conditions($_POST['wpr_product_single_conditions']) ); // phpcs:ignore
|
90 |
-
}
|
91 |
-
|
92 |
-
// Popup
|
93 |
-
if ( isset($_POST['wpr_popup_conditions']) ) {
|
94 |
-
update_option( 'wpr_popup_conditions', $this->sanitize_conditions($_POST['wpr_popup_conditions']) ); // phpcs:ignore
|
95 |
-
}
|
96 |
-
}
|
97 |
-
|
98 |
-
public function sanitize_conditions( $data ) {
|
99 |
-
return wp_unslash( json_encode( array_filter( json_decode(stripcslashes($data), true) ) ) );
|
100 |
-
}
|
101 |
-
|
102 |
-
/**
|
103 |
-
** Create Template
|
104 |
-
*/
|
105 |
-
public function wpr_create_template() {
|
106 |
-
$user_template_type = isset($_POST['user_template_type']) ? sanitize_text_field(wp_unslash($_POST['user_template_type'])): false;
|
107 |
-
$user_template_library = isset($_POST['user_template_library']) ? sanitize_text_field(wp_unslash($_POST['user_template_library'])): false;
|
108 |
-
$user_template_title = isset($_POST['user_template_title']) ? sanitize_text_field(wp_unslash($_POST['user_template_title'])): false;
|
109 |
-
$user_template_slug = isset($_POST['user_template_slug']) ? sanitize_text_field(wp_unslash($_POST['user_template_slug'])): false;
|
110 |
-
|
111 |
-
if ( $user_template_title ) {
|
112 |
-
// Create
|
113 |
-
$template_id = wp_insert_post(array (
|
114 |
-
'post_type' => $user_template_library,
|
115 |
-
'post_title' => $user_template_title,
|
116 |
-
'post_name' => $user_template_slug,
|
117 |
-
'post_content' => '',
|
118 |
-
'post_status' => 'publish'
|
119 |
-
));
|
120 |
-
|
121 |
-
// Set Types
|
122 |
-
if ( 'wpr_templates' === $_POST['user_template_library'] ) {
|
123 |
-
|
124 |
-
wp_set_object_terms( $template_id, [$user_template_type, 'user'], 'wpr_template_type' );
|
125 |
-
|
126 |
-
if ( 'popup' === $_POST['user_template_type'] ) {
|
127 |
-
update_post_meta( $template_id, '_elementor_template_type', 'wpr-popups' );
|
128 |
-
} else {
|
129 |
-
if ( 'header' === $_POST['user_template_type'] ) {
|
130 |
-
update_post_meta( $template_id, '_elementor_template_type', 'wpr-theme-builder-header' );
|
131 |
-
} elseif ( 'footer' === $_POST['user_template_type'] ) {
|
132 |
-
update_post_meta( $template_id, '_elementor_template_type', 'wpr-theme-builder-footer' );
|
133 |
-
} else {
|
134 |
-
update_post_meta( $template_id, '_elementor_template_type', 'wpr-theme-builder' );
|
135 |
-
}
|
136 |
-
|
137 |
-
update_post_meta( $template_id, '_wpr_template_type', $user_template_type );
|
138 |
-
}
|
139 |
-
} else {
|
140 |
-
update_post_meta( $template_id, '_elementor_template_type', 'page' );
|
141 |
-
}
|
142 |
-
|
143 |
-
// Set Canvas Template
|
144 |
-
update_post_meta( $template_id, '_wp_page_template', 'elementor_canvas' ); //tmp - maybe set for wpr_templates only
|
145 |
-
|
146 |
-
// Send ID to JS
|
147 |
-
echo esc_html($template_id);
|
148 |
-
}
|
149 |
-
}
|
150 |
-
|
151 |
-
/**
|
152 |
-
** Import Library Template
|
153 |
-
*/
|
154 |
-
public function wpr_import_library_template() {
|
155 |
-
$source = new WPR_Library_Source();
|
156 |
-
$slug = isset($_POST['slug']) ? sanitize_text_field(wp_unslash($_POST['slug'])): '';
|
157 |
-
|
158 |
-
$data = $source->get_data([
|
159 |
-
'template_id' => $slug
|
160 |
-
]);
|
161 |
-
|
162 |
-
echo json_encode($data);
|
163 |
-
}
|
164 |
-
|
165 |
-
/**
|
166 |
-
** Reset Template
|
167 |
-
*/
|
168 |
-
public function wpr_delete_template() {
|
169 |
-
$template_slug = isset($_POST['template_slug']) ? sanitize_text_field(wp_unslash($_POST['template_slug'])): '';
|
170 |
-
$template_library = isset($_POST['template_library']) ? sanitize_text_field(wp_unslash($_POST['template_library'])): '';
|
171 |
-
|
172 |
-
$post = get_page_by_path( $template_slug, OBJECT, $template_library );
|
173 |
-
wp_delete_post( $post->ID, true );
|
174 |
-
}
|
175 |
-
|
176 |
-
/**
|
177 |
-
** Enqueue Scripts and Styles
|
178 |
-
*/
|
179 |
-
public function templates_library_scripts( $hook ) {
|
180 |
-
|
181 |
-
// Get Plugin Version
|
182 |
-
$version = Plugin::instance()->get_version();
|
183 |
-
|
184 |
-
// Deny if NOT Plugin Page
|
185 |
-
if ( 'toplevel_page_wpr-addons' == $hook || strpos($hook, 'wpr-theme-builder') || strpos($hook, 'wpr-popups') ) {
|
186 |
-
|
187 |
-
// Color Picker
|
188 |
-
wp_enqueue_style( 'wp-color-picker' );
|
189 |
-
wp_enqueue_script( 'wp-color-picker-alpha', WPR_ADDONS_URL .'assets/js/admin/lib/wp-color-picker-alpha.min.js', ['jquery', 'wp-color-picker'], $version, true );
|
190 |
-
|
191 |
-
// Media Upload
|
192 |
-
if ( ! did_action( 'wp_enqueue_media' ) ) {
|
193 |
-
wp_enqueue_media();
|
194 |
-
}
|
195 |
-
|
196 |
-
// enqueue CSS
|
197 |
-
wp_enqueue_style( 'wpr-plugin-options-css', WPR_ADDONS_URL .'assets/css/admin/plugin-options.css', [], $version );
|
198 |
-
|
199 |
-
// enqueue JS
|
200 |
-
wp_enqueue_script( 'wpr-plugin-options-js', WPR_ADDONS_URL .'assets/js/admin/plugin-options.js', ['jquery'], $version );
|
201 |
-
|
202 |
-
}
|
203 |
-
|
204 |
-
if ( strpos($hook, 'wpr-templates-kit') ) {
|
205 |
-
wp_enqueue_style( 'wpr-templates-kit-css', WPR_ADDONS_URL .'assets/css/admin/templates-kit.css', [], $version );
|
206 |
-
wp_enqueue_script( 'wpr-templates-kit-js', WPR_ADDONS_URL .'assets/js/admin/templates-kit.js', ['jquery', 'updates'], $version );
|
207 |
-
}
|
208 |
-
|
209 |
-
if ( strpos($hook, 'wpr-premade-blocks') ) {
|
210 |
-
wp_enqueue_style( 'wpr-premade-blocks-css', WPR_ADDONS_URL .'assets/css/admin/premade-blocks.css', [], $version );
|
211 |
-
|
212 |
-
wp_enqueue_script( 'wpr-macy-js', WPR_ADDONS_URL .'assets/js/lib/macy/macy.js', ['jquery'], $version );
|
213 |
-
wp_enqueue_script( 'wpr-premade-blocks-js', WPR_ADDONS_URL .'assets/js/admin/premade-blocks.js', ['jquery'], $version );
|
214 |
-
}
|
215 |
-
}
|
216 |
-
|
217 |
-
/**
|
218 |
-
** Register Elementor AJAX Actions
|
219 |
-
*/
|
220 |
-
public function register_elementor_ajax_actions( Ajax $ajax ) {
|
221 |
-
|
222 |
-
// Elementor Search Data
|
223 |
-
$ajax->register_ajax_action( 'wpr_elementor_search_data', function( $data ) {
|
224 |
-
// Freemius OptIn
|
225 |
-
if ( ! (wpr_fs()->is_registered() && wpr_fs()->is_tracking_allowed() || wpr_fs()->is_pending_activation() )) {
|
226 |
-
return;
|
227 |
-
}
|
228 |
-
|
229 |
-
if ( strlen($data['search_query']) > 25 ) {
|
230 |
-
return;
|
231 |
-
}
|
232 |
-
|
233 |
-
// Send Search Query
|
234 |
-
wp_remote_post( 'https://reastats.kinsta.cloud/wp-json/elementor-search/data', [
|
235 |
-
'body' => [
|
236 |
-
'search_query' => $data['search_query']
|
237 |
-
]
|
238 |
-
] );
|
239 |
-
} );
|
240 |
-
}
|
241 |
-
}
|
242 |
-
|
243 |
-
/**
|
244 |
-
* WPR_Templates_Actions setup
|
245 |
-
*
|
246 |
-
* @since 1.0
|
247 |
-
*/
|
248 |
-
class WPR_Library_Source extends \Elementor\TemplateLibrary\Source_Base {
|
249 |
-
|
250 |
-
public function get_id() {
|
251 |
-
return 'wpr-layout-manager';
|
252 |
-
}
|
253 |
-
|
254 |
-
public function get_title() {
|
255 |
-
return 'WPR Layout Manager';
|
256 |
-
}
|
257 |
-
|
258 |
-
public function register_data() {}
|
259 |
-
|
260 |
-
public function save_item( $template_data ) {
|
261 |
-
return new \WP_Error( 'invalid_request', 'Cannot save template to a WPR layout manager' );
|
262 |
-
}
|
263 |
-
|
264 |
-
public function update_item( $new_data ) {
|
265 |
-
return new \WP_Error( 'invalid_request', 'Cannot update template to a WPR layout manager' );
|
266 |
-
}
|
267 |
-
|
268 |
-
public function delete_template( $template_id ) {
|
269 |
-
return new \WP_Error( 'invalid_request', 'Cannot delete template from a WPR layout manager' );
|
270 |
-
}
|
271 |
-
|
272 |
-
public function export_template( $template_id ) {
|
273 |
-
return new \WP_Error( 'invalid_request', 'Cannot export template from a WPR layout manager' );
|
274 |
-
}
|
275 |
-
|
276 |
-
public function get_items( $args = [] ) {
|
277 |
-
return [];
|
278 |
-
}
|
279 |
-
|
280 |
-
public function get_item( $template_id ) {
|
281 |
-
$templates = $this->get_items();
|
282 |
-
|
283 |
-
return $templates[ $template_id ];
|
284 |
-
}
|
285 |
-
|
286 |
-
public function request_template_data( $template_id ) {
|
287 |
-
if ( empty( $template_id ) ) {
|
288 |
-
return;
|
289 |
-
}
|
290 |
-
|
291 |
-
$response = wp_remote_get( 'https://royal-elementor-addons.com/library/premade-styles/'. $template_id .'.json', [
|
292 |
-
'timeout' => 60,
|
293 |
-
'sslverify' => false
|
294 |
-
] );
|
295 |
-
|
296 |
-
return wp_remote_retrieve_body( $response );
|
297 |
-
}
|
298 |
-
|
299 |
-
public function get_data( array $args ) {//TODO: FIX - This function imports placeholder images in library
|
300 |
-
$data = $this->request_template_data( $args['template_id'] );
|
301 |
-
|
302 |
-
$data = json_decode( $data, true );
|
303 |
-
|
304 |
-
if ( empty( $data ) || empty( $data['content'] ) ) {
|
305 |
-
throw new \Exception( 'Template does not have any content' );
|
306 |
-
}
|
307 |
-
|
308 |
-
$data['content'] = $this->replace_elements_ids( $data['content'] );
|
309 |
-
$data['content'] = $this->process_export_import_content( $data['content'], 'on_import' );
|
310 |
-
|
311 |
-
return $data;
|
312 |
-
}
|
313 |
-
|
314 |
}
|
1 |
+
<?php
|
2 |
+
namespace WprAddons\Admin\Includes;
|
3 |
+
|
4 |
+
use WprAddons\Plugin;
|
5 |
+
use Elementor\TemplateLibrary\Source_Base;
|
6 |
+
use Elementor\Core\Common\Modules\Ajax\Module as Ajax;
|
7 |
+
use WprAddons\Classes\Utilities;
|
8 |
+
|
9 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
10 |
+
exit; // Exit if accessed directly.
|
11 |
+
}
|
12 |
+
|
13 |
+
|
14 |
+
/**
|
15 |
+
* WPR_Templates_Actions setup
|
16 |
+
*
|
17 |
+
* @since 1.0
|
18 |
+
*/
|
19 |
+
class WPR_Templates_Actions {
|
20 |
+
|
21 |
+
/**
|
22 |
+
** Constructor
|
23 |
+
*/
|
24 |
+
public function __construct() {
|
25 |
+
|
26 |
+
// Save Conditions
|
27 |
+
add_action( 'wp_ajax_wpr_save_template_conditions', [ $this, 'wpr_save_template_conditions' ] );
|
28 |
+
|
29 |
+
// Create Template
|
30 |
+
add_action( 'wp_ajax_wpr_create_template', [ $this, 'wpr_create_template' ] );
|
31 |
+
|
32 |
+
// Import Library Template
|
33 |
+
add_action( 'wp_ajax_wpr_import_library_template', [ $this, 'wpr_import_library_template' ] );
|
34 |
+
|
35 |
+
// Reset Template
|
36 |
+
add_action( 'wp_ajax_wpr_delete_template', [ $this, 'wpr_delete_template' ] );
|
37 |
+
|
38 |
+
// Register Elementor AJAX Actions
|
39 |
+
add_action( 'elementor/ajax/register_actions', [ $this, 'register_elementor_ajax_actions' ] );
|
40 |
+
|
41 |
+
// Enqueue Scripts
|
42 |
+
add_action( 'admin_enqueue_scripts', [ $this, 'templates_library_scripts' ] );
|
43 |
+
|
44 |
+
}
|
45 |
+
|
46 |
+
/**
|
47 |
+
** Save Template Conditions
|
48 |
+
*/
|
49 |
+
public function wpr_save_template_conditions() {
|
50 |
+
$template = isset($_POST['template']) ? sanitize_text_field(wp_unslash($_POST['template'])): false;
|
51 |
+
|
52 |
+
// Header
|
53 |
+
if ( isset($_POST['wpr_header_conditions']) ) {
|
54 |
+
update_option( 'wpr_header_conditions', $this->sanitize_conditions($_POST['wpr_header_conditions']) ); // phpcs:ignore
|
55 |
+
|
56 |
+
$wpr_header_show_on_canvas = isset($_POST['wpr_header_show_on_canvas']) ? sanitize_text_field(wp_unslash($_POST['wpr_header_show_on_canvas'])): false;
|
57 |
+
if ( $wpr_header_show_on_canvas && $template ) {
|
58 |
+
update_post_meta( Utilities::get_template_id($template), 'wpr_header_show_on_canvas', $wpr_header_show_on_canvas );
|
59 |
+
}
|
60 |
+
}
|
61 |
+
|
62 |
+
// Footer
|
63 |
+
if ( isset($_POST['wpr_footer_conditions']) ) {
|
64 |
+
update_option( 'wpr_footer_conditions', $this->sanitize_conditions($_POST['wpr_footer_conditions']) ); // phpcs:ignore
|
65 |
+
|
66 |
+
$wpr_footer_show_on_canvas = isset($_POST['wpr_footer_show_on_canvas']) ? sanitize_text_field(wp_unslash($_POST['wpr_footer_show_on_canvas'])): false;
|
67 |
+
if ( $wpr_footer_show_on_canvas && $template ) {
|
68 |
+
update_post_meta( Utilities::get_template_id($template), 'wpr_footer_show_on_canvas', $wpr_footer_show_on_canvas );
|
69 |
+
}
|
70 |
+
}
|
71 |
+
|
72 |
+
// Archive
|
73 |
+
if ( isset($_POST['wpr_archive_conditions']) ) {
|
74 |
+
update_option( 'wpr_archive_conditions', $this->sanitize_conditions($_POST['wpr_archive_conditions']) ); // phpcs:ignore
|
75 |
+
}
|
76 |
+
|
77 |
+
// Single
|
78 |
+
if ( isset($_POST['wpr_single_conditions']) ) {
|
79 |
+
update_option( 'wpr_single_conditions', $this->sanitize_conditions($_POST['wpr_single_conditions']) ); // phpcs:ignore
|
80 |
+
}
|
81 |
+
|
82 |
+
// Product Archive
|
83 |
+
if ( isset($_POST['wpr_product_archive_conditions']) ) {
|
84 |
+
update_option( 'wpr_product_archive_conditions', $this->sanitize_conditions($_POST['wpr_product_archive_conditions']) ); // phpcs:ignore
|
85 |
+
}
|
86 |
+
|
87 |
+
// Product Single
|
88 |
+
if ( isset($_POST['wpr_product_single_conditions']) ) {
|
89 |
+
update_option( 'wpr_product_single_conditions', $this->sanitize_conditions($_POST['wpr_product_single_conditions']) ); // phpcs:ignore
|
90 |
+
}
|
91 |
+
|
92 |
+
// Popup
|
93 |
+
if ( isset($_POST['wpr_popup_conditions']) ) {
|
94 |
+
update_option( 'wpr_popup_conditions', $this->sanitize_conditions($_POST['wpr_popup_conditions']) ); // phpcs:ignore
|
95 |
+
}
|
96 |
+
}
|
97 |
+
|
98 |
+
public function sanitize_conditions( $data ) {
|
99 |
+
return wp_unslash( json_encode( array_filter( json_decode(stripcslashes($data), true) ) ) );
|
100 |
+
}
|
101 |
+
|
102 |
+
/**
|
103 |
+
** Create Template
|
104 |
+
*/
|
105 |
+
public function wpr_create_template() {
|
106 |
+
$user_template_type = isset($_POST['user_template_type']) ? sanitize_text_field(wp_unslash($_POST['user_template_type'])): false;
|
107 |
+
$user_template_library = isset($_POST['user_template_library']) ? sanitize_text_field(wp_unslash($_POST['user_template_library'])): false;
|
108 |
+
$user_template_title = isset($_POST['user_template_title']) ? sanitize_text_field(wp_unslash($_POST['user_template_title'])): false;
|
109 |
+
$user_template_slug = isset($_POST['user_template_slug']) ? sanitize_text_field(wp_unslash($_POST['user_template_slug'])): false;
|
110 |
+
|
111 |
+
if ( $user_template_title ) {
|
112 |
+
// Create
|
113 |
+
$template_id = wp_insert_post(array (
|
114 |
+
'post_type' => $user_template_library,
|
115 |
+
'post_title' => $user_template_title,
|
116 |
+
'post_name' => $user_template_slug,
|
117 |
+
'post_content' => '',
|
118 |
+
'post_status' => 'publish'
|
119 |
+
));
|
120 |
+
|
121 |
+
// Set Types
|
122 |
+
if ( 'wpr_templates' === $_POST['user_template_library'] ) {
|
123 |
+
|
124 |
+
wp_set_object_terms( $template_id, [$user_template_type, 'user'], 'wpr_template_type' );
|
125 |
+
|
126 |
+
if ( 'popup' === $_POST['user_template_type'] ) {
|
127 |
+
update_post_meta( $template_id, '_elementor_template_type', 'wpr-popups' );
|
128 |
+
} else {
|
129 |
+
if ( 'header' === $_POST['user_template_type'] ) {
|
130 |
+
update_post_meta( $template_id, '_elementor_template_type', 'wpr-theme-builder-header' );
|
131 |
+
} elseif ( 'footer' === $_POST['user_template_type'] ) {
|
132 |
+
update_post_meta( $template_id, '_elementor_template_type', 'wpr-theme-builder-footer' );
|
133 |
+
} else {
|
134 |
+
update_post_meta( $template_id, '_elementor_template_type', 'wpr-theme-builder' );
|
135 |
+
}
|
136 |
+
|
137 |
+
update_post_meta( $template_id, '_wpr_template_type', $user_template_type );
|
138 |
+
}
|
139 |
+
} else {
|
140 |
+
update_post_meta( $template_id, '_elementor_template_type', 'page' );
|
141 |
+
}
|
142 |
+
|
143 |
+
// Set Canvas Template
|
144 |
+
update_post_meta( $template_id, '_wp_page_template', 'elementor_canvas' ); //tmp - maybe set for wpr_templates only
|
145 |
+
|
146 |
+
// Send ID to JS
|
147 |
+
echo esc_html($template_id);
|
148 |
+
}
|
149 |
+
}
|
150 |
+
|
151 |
+
/**
|
152 |
+
** Import Library Template
|
153 |
+
*/
|
154 |
+
public function wpr_import_library_template() {
|
155 |
+
$source = new WPR_Library_Source();
|
156 |
+
$slug = isset($_POST['slug']) ? sanitize_text_field(wp_unslash($_POST['slug'])): '';
|
157 |
+
|
158 |
+
$data = $source->get_data([
|
159 |
+
'template_id' => $slug
|
160 |
+
]);
|
161 |
+
|
162 |
+
echo json_encode($data);
|
163 |
+
}
|
164 |
+
|
165 |
+
/**
|
166 |
+
** Reset Template
|
167 |
+
*/
|
168 |
+
public function wpr_delete_template() {
|
169 |
+
$template_slug = isset($_POST['template_slug']) ? sanitize_text_field(wp_unslash($_POST['template_slug'])): '';
|
170 |
+
$template_library = isset($_POST['template_library']) ? sanitize_text_field(wp_unslash($_POST['template_library'])): '';
|
171 |
+
|
172 |
+
$post = get_page_by_path( $template_slug, OBJECT, $template_library );
|
173 |
+
wp_delete_post( $post->ID, true );
|
174 |
+
}
|
175 |
+
|
176 |
+
/**
|
177 |
+
** Enqueue Scripts and Styles
|
178 |
+
*/
|
179 |
+
public function templates_library_scripts( $hook ) {
|
180 |
+
|
181 |
+
// Get Plugin Version
|
182 |
+
$version = Plugin::instance()->get_version();
|
183 |
+
|
184 |
+
// Deny if NOT Plugin Page
|
185 |
+
if ( 'toplevel_page_wpr-addons' == $hook || strpos($hook, 'wpr-theme-builder') || strpos($hook, 'wpr-popups') ) {
|
186 |
+
|
187 |
+
// Color Picker
|
188 |
+
wp_enqueue_style( 'wp-color-picker' );
|
189 |
+
wp_enqueue_script( 'wp-color-picker-alpha', WPR_ADDONS_URL .'assets/js/admin/lib/wp-color-picker-alpha.min.js', ['jquery', 'wp-color-picker'], $version, true );
|
190 |
+
|
191 |
+
// Media Upload
|
192 |
+
if ( ! did_action( 'wp_enqueue_media' ) ) {
|
193 |
+
wp_enqueue_media();
|
194 |
+
}
|
195 |
+
|
196 |
+
// enqueue CSS
|
197 |
+
wp_enqueue_style( 'wpr-plugin-options-css', WPR_ADDONS_URL .'assets/css/admin/plugin-options.css', [], $version );
|
198 |
+
|
199 |
+
// enqueue JS
|
200 |
+
wp_enqueue_script( 'wpr-plugin-options-js', WPR_ADDONS_URL .'assets/js/admin/plugin-options.js', ['jquery'], $version );
|
201 |
+
|
202 |
+
}
|
203 |
+
|
204 |
+
if ( strpos($hook, 'wpr-templates-kit') ) {
|
205 |
+
wp_enqueue_style( 'wpr-templates-kit-css', WPR_ADDONS_URL .'assets/css/admin/templates-kit.css', [], $version );
|
206 |
+
wp_enqueue_script( 'wpr-templates-kit-js', WPR_ADDONS_URL .'assets/js/admin/templates-kit.js', ['jquery', 'updates'], $version );
|
207 |
+
}
|
208 |
+
|
209 |
+
if ( strpos($hook, 'wpr-premade-blocks') ) {
|
210 |
+
wp_enqueue_style( 'wpr-premade-blocks-css', WPR_ADDONS_URL .'assets/css/admin/premade-blocks.css', [], $version );
|
211 |
+
|
212 |
+
wp_enqueue_script( 'wpr-macy-js', WPR_ADDONS_URL .'assets/js/lib/macy/macy.js', ['jquery'], $version );
|
213 |
+
wp_enqueue_script( 'wpr-premade-blocks-js', WPR_ADDONS_URL .'assets/js/admin/premade-blocks.js', ['jquery'], $version );
|
214 |
+
}
|
215 |
+
}
|
216 |
+
|
217 |
+
/**
|
218 |
+
** Register Elementor AJAX Actions
|
219 |
+
*/
|
220 |
+
public function register_elementor_ajax_actions( Ajax $ajax ) {
|
221 |
+
|
222 |
+
// Elementor Search Data
|
223 |
+
$ajax->register_ajax_action( 'wpr_elementor_search_data', function( $data ) {
|
224 |
+
// Freemius OptIn
|
225 |
+
if ( ! (wpr_fs()->is_registered() && wpr_fs()->is_tracking_allowed() || wpr_fs()->is_pending_activation() )) {
|
226 |
+
return;
|
227 |
+
}
|
228 |
+
|
229 |
+
if ( strlen($data['search_query']) > 25 ) {
|
230 |
+
return;
|
231 |
+
}
|
232 |
+
|
233 |
+
// Send Search Query
|
234 |
+
wp_remote_post( 'https://reastats.kinsta.cloud/wp-json/elementor-search/data', [
|
235 |
+
'body' => [
|
236 |
+
'search_query' => $data['search_query']
|
237 |
+
]
|
238 |
+
] );
|
239 |
+
} );
|
240 |
+
}
|
241 |
+
}
|
242 |
+
|
243 |
+
/**
|
244 |
+
* WPR_Templates_Actions setup
|
245 |
+
*
|
246 |
+
* @since 1.0
|
247 |
+
*/
|
248 |
+
class WPR_Library_Source extends \Elementor\TemplateLibrary\Source_Base {
|
249 |
+
|
250 |
+
public function get_id() {
|
251 |
+
return 'wpr-layout-manager';
|
252 |
+
}
|
253 |
+
|
254 |
+
public function get_title() {
|
255 |
+
return 'WPR Layout Manager';
|
256 |
+
}
|
257 |
+
|
258 |
+
public function register_data() {}
|
259 |
+
|
260 |
+
public function save_item( $template_data ) {
|
261 |
+
return new \WP_Error( 'invalid_request', 'Cannot save template to a WPR layout manager' );
|
262 |
+
}
|
263 |
+
|
264 |
+
public function update_item( $new_data ) {
|
265 |
+
return new \WP_Error( 'invalid_request', 'Cannot update template to a WPR layout manager' );
|
266 |
+
}
|
267 |
+
|
268 |
+
public function delete_template( $template_id ) {
|
269 |
+
return new \WP_Error( 'invalid_request', 'Cannot delete template from a WPR layout manager' );
|
270 |
+
}
|
271 |
+
|
272 |
+
public function export_template( $template_id ) {
|
273 |
+
return new \WP_Error( 'invalid_request', 'Cannot export template from a WPR layout manager' );
|
274 |
+
}
|
275 |
+
|
276 |
+
public function get_items( $args = [] ) {
|
277 |
+
return [];
|
278 |
+
}
|
279 |
+
|
280 |
+
public function get_item( $template_id ) {
|
281 |
+
$templates = $this->get_items();
|
282 |
+
|
283 |
+
return $templates[ $template_id ];
|
284 |
+
}
|
285 |
+
|
286 |
+
public function request_template_data( $template_id ) {
|
287 |
+
if ( empty( $template_id ) ) {
|
288 |
+
return;
|
289 |
+
}
|
290 |
+
|
291 |
+
$response = wp_remote_get( 'https://royal-elementor-addons.com/library/premade-styles/'. $template_id .'.json', [
|
292 |
+
'timeout' => 60,
|
293 |
+
'sslverify' => false
|
294 |
+
] );
|
295 |
+
|
296 |
+
return wp_remote_retrieve_body( $response );
|
297 |
+
}
|
298 |
+
|
299 |
+
public function get_data( array $args ) {//TODO: FIX - This function imports placeholder images in library
|
300 |
+
$data = $this->request_template_data( $args['template_id'] );
|
301 |
+
|
302 |
+
$data = json_decode( $data, true );
|
303 |
+
|
304 |
+
if ( empty( $data ) || empty( $data['content'] ) ) {
|
305 |
+
throw new \Exception( 'Template does not have any content' );
|
306 |
+
}
|
307 |
+
|
308 |
+
$data['content'] = $this->replace_elements_ids( $data['content'] );
|
309 |
+
$data['content'] = $this->process_export_import_content( $data['content'], 'on_import' );
|
310 |
+
|
311 |
+
return $data;
|
312 |
+
}
|
313 |
+
|
314 |
}
|
admin/includes/wpr-templates-library.php
CHANGED
@@ -1,134 +1,134 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
-
exit; // Exit if accessed directly.
|
5 |
-
}
|
6 |
-
|
7 |
-
use WprAddons\Admin\Includes\WPR_Render_Templates;
|
8 |
-
use WprAddons\Admin\Includes\WPR_Templates_Shortcode;
|
9 |
-
use WprAddons\Admin\Includes\WPR_Templates_Modal_Popups;
|
10 |
-
use WprAddons\Admin\Includes\WPR_Templates_Actions;
|
11 |
-
use WprAddons\Admin\Templates\WPR_Templates_Library_Blocks;
|
12 |
-
use WprAddons\Admin\Templates\WPR_Templates_Library_Popups;
|
13 |
-
use WprAddons\Admin\Templates\WPR_Templates_Library_Pages;
|
14 |
-
use WprAddons\Classes\Utilities;
|
15 |
-
|
16 |
-
/**
|
17 |
-
* WPR_Templates_Library setup
|
18 |
-
*
|
19 |
-
* @since 1.0
|
20 |
-
*/
|
21 |
-
class WPR_Templates_Library {
|
22 |
-
|
23 |
-
/**
|
24 |
-
** Constructor
|
25 |
-
*/
|
26 |
-
public function __construct() {
|
27 |
-
|
28 |
-
// Register CPTs
|
29 |
-
add_action( 'init', [ $this, 'register_templates_library_cpt' ] );
|
30 |
-
add_action( 'template_redirect', [ $this, 'block_template_frontend' ] );
|
31 |
-
add_action( 'current_screen', [ $this, 'redirect_to_options_page' ] );
|
32 |
-
|
33 |
-
// Templates Shortcode
|
34 |
-
new WPR_Templates_Shortcode();
|
35 |
-
|
36 |
-
// Init Popups
|
37 |
-
new WPR_Templates_Modal_Popups();
|
38 |
-
|
39 |
-
// Init Theme Builder
|
40 |
-
new WPR_Render_Templates();
|
41 |
-
|
42 |
-
// Template Actions
|
43 |
-
new WPR_Templates_Actions();
|
44 |
-
|
45 |
-
// Add Blocks to Library
|
46 |
-
new WPR_Templates_Library_Blocks();
|
47 |
-
|
48 |
-
// Add Popups to Library
|
49 |
-
new WPR_Templates_Library_Popups();
|
50 |
-
|
51 |
-
// Add Pages to Library
|
52 |
-
// new WPR_Templates_Library_Pages();
|
53 |
-
|
54 |
-
// Enable Elementor for 'wpr_templates'
|
55 |
-
$this->add_elementor_cpt_support();
|
56 |
-
|
57 |
-
}
|
58 |
-
|
59 |
-
/**
|
60 |
-
** Register Templates Library
|
61 |
-
*/
|
62 |
-
public function redirect_to_options_page() {
|
63 |
-
if ( get_current_screen()->post_type == 'wpr_templates' && isset($_GET['action']) && $_GET['action'] == 'edit' ) {
|
64 |
-
$elementor_template_type = isset($_GET['post']) ? sanitize_text_field(wp_unslash($_GET['post'])) : '';
|
65 |
-
|
66 |
-
if ( 'wpr-popups' === Utilities::get_elementor_template_type( $elementor_template_type ) ) {
|
67 |
-
wp_redirect('admin.php?page=wpr-popups');
|
68 |
-
} else {
|
69 |
-
wp_redirect('admin.php?page=wpr-theme-builder');
|
70 |
-
}
|
71 |
-
}
|
72 |
-
}
|
73 |
-
|
74 |
-
public function register_templates_library_cpt() {
|
75 |
-
|
76 |
-
$args = array(
|
77 |
-
'label' => esc_html__( 'Royal Templates', 'wpr-addons' ),
|
78 |
-
'public' => true,
|
79 |
-
'rewrite' => false,
|
80 |
-
'show_ui' => true,
|
81 |
-
'show_in_menu' => false,
|
82 |
-
'show_in_nav_menus' => false,
|
83 |
-
'exclude_from_search' => true,
|
84 |
-
'capability_type' => 'post',
|
85 |
-
'hierarchical' => false,
|
86 |
-
);
|
87 |
-
|
88 |
-
register_post_type( 'wpr_templates', $args );
|
89 |
-
|
90 |
-
$tax_args = [
|
91 |
-
'hierarchical' => true,
|
92 |
-
'show_ui' => true,
|
93 |
-
'show_in_nav_menus' => false,
|
94 |
-
'show_admin_column' => true,
|
95 |
-
'query_var' => is_admin(),
|
96 |
-
'rewrite' => false,
|
97 |
-
'public' => false,
|
98 |
-
];
|
99 |
-
|
100 |
-
register_taxonomy( 'wpr_template_type', 'wpr_templates', $tax_args );
|
101 |
-
|
102 |
-
}
|
103 |
-
|
104 |
-
/**
|
105 |
-
** Don't display on the frontend for non edit_posts capable users
|
106 |
-
*/
|
107 |
-
public function block_template_frontend() {
|
108 |
-
if ( is_singular( 'wpr_templates' ) && ! current_user_can( 'edit_posts' ) ) {
|
109 |
-
wp_redirect( site_url(), 301 );
|
110 |
-
die;
|
111 |
-
}
|
112 |
-
}
|
113 |
-
|
114 |
-
/**
|
115 |
-
*** Add elementor support for wpr_templates.
|
116 |
-
**/
|
117 |
-
function add_elementor_cpt_support() {
|
118 |
-
if ( ! is_admin() ) {
|
119 |
-
return;
|
120 |
-
}
|
121 |
-
|
122 |
-
$cpt_support = get_option( 'elementor_cpt_support' );
|
123 |
-
|
124 |
-
if ( ! $cpt_support ) {
|
125 |
-
update_option( 'elementor_cpt_support', ['post', 'page', 'wpr_templates'] );
|
126 |
-
} elseif ( ! in_array( 'wpr_templates', $cpt_support ) ) {
|
127 |
-
$cpt_support[] = 'wpr_templates';
|
128 |
-
update_option( 'elementor_cpt_support', $cpt_support );
|
129 |
-
}
|
130 |
-
}
|
131 |
-
|
132 |
-
}
|
133 |
-
|
134 |
new WPR_Templates_Library();
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
exit; // Exit if accessed directly.
|
5 |
+
}
|
6 |
+
|
7 |
+
use WprAddons\Admin\Includes\WPR_Render_Templates;
|
8 |
+
use WprAddons\Admin\Includes\WPR_Templates_Shortcode;
|
9 |
+
use WprAddons\Admin\Includes\WPR_Templates_Modal_Popups;
|
10 |
+
use WprAddons\Admin\Includes\WPR_Templates_Actions;
|
11 |
+
use WprAddons\Admin\Templates\WPR_Templates_Library_Blocks;
|
12 |
+
use WprAddons\Admin\Templates\WPR_Templates_Library_Popups;
|
13 |
+
use WprAddons\Admin\Templates\WPR_Templates_Library_Pages;
|
14 |
+
use WprAddons\Classes\Utilities;
|
15 |
+
|
16 |
+
/**
|
17 |
+
* WPR_Templates_Library setup
|
18 |
+
*
|
19 |
+
* @since 1.0
|
20 |
+
*/
|
21 |
+
class WPR_Templates_Library {
|
22 |
+
|
23 |
+
/**
|
24 |
+
** Constructor
|
25 |
+
*/
|
26 |
+
public function __construct() {
|
27 |
+
|
28 |
+
// Register CPTs
|
29 |
+
add_action( 'init', [ $this, 'register_templates_library_cpt' ] );
|
30 |
+
add_action( 'template_redirect', [ $this, 'block_template_frontend' ] );
|
31 |
+
add_action( 'current_screen', [ $this, 'redirect_to_options_page' ] );
|
32 |
+
|
33 |
+
// Templates Shortcode
|
34 |
+
new WPR_Templates_Shortcode();
|
35 |
+
|
36 |
+
// Init Popups
|
37 |
+
new WPR_Templates_Modal_Popups();
|
38 |
+
|
39 |
+
// Init Theme Builder
|
40 |
+
new WPR_Render_Templates();
|
41 |
+
|
42 |
+
// Template Actions
|
43 |
+
new WPR_Templates_Actions();
|
44 |
+
|
45 |
+
// Add Blocks to Library
|
46 |
+
new WPR_Templates_Library_Blocks();
|
47 |
+
|
48 |
+
// Add Popups to Library
|
49 |
+
new WPR_Templates_Library_Popups();
|
50 |
+
|
51 |
+
// Add Pages to Library
|
52 |
+
// new WPR_Templates_Library_Pages();
|
53 |
+
|
54 |
+
// Enable Elementor for 'wpr_templates'
|
55 |
+
$this->add_elementor_cpt_support();
|
56 |
+
|
57 |
+
}
|
58 |
+
|
59 |
+
/**
|
60 |
+
** Register Templates Library
|
61 |
+
*/
|
62 |
+
public function redirect_to_options_page() {
|
63 |
+
if ( get_current_screen()->post_type == 'wpr_templates' && isset($_GET['action']) && $_GET['action'] == 'edit' ) {
|
64 |
+
$elementor_template_type = isset($_GET['post']) ? sanitize_text_field(wp_unslash($_GET['post'])) : '';
|
65 |
+
|
66 |
+
if ( 'wpr-popups' === Utilities::get_elementor_template_type( $elementor_template_type ) ) {
|
67 |
+
wp_redirect('admin.php?page=wpr-popups');
|
68 |
+
} else {
|
69 |
+
wp_redirect('admin.php?page=wpr-theme-builder');
|
70 |
+
}
|
71 |
+
}
|
72 |
+
}
|
73 |
+
|
74 |
+
public function register_templates_library_cpt() {
|
75 |
+
|
76 |
+
$args = array(
|
77 |
+
'label' => esc_html__( 'Royal Templates', 'wpr-addons' ),
|
78 |
+
'public' => true,
|
79 |
+
'rewrite' => false,
|
80 |
+
'show_ui' => true,
|
81 |
+
'show_in_menu' => false,
|
82 |
+
'show_in_nav_menus' => false,
|
83 |
+
'exclude_from_search' => true,
|
84 |
+
'capability_type' => 'post',
|
85 |
+
'hierarchical' => false,
|
86 |
+
);
|
87 |
+
|
88 |
+
register_post_type( 'wpr_templates', $args );
|
89 |
+
|
90 |
+
$tax_args = [
|
91 |
+
'hierarchical' => true,
|
92 |
+
'show_ui' => true,
|
93 |
+
'show_in_nav_menus' => false,
|
94 |
+
'show_admin_column' => true,
|
95 |
+
'query_var' => is_admin(),
|
96 |
+
'rewrite' => false,
|
97 |
+
'public' => false,
|
98 |
+
];
|
99 |
+
|
100 |
+
register_taxonomy( 'wpr_template_type', 'wpr_templates', $tax_args );
|
101 |
+
|
102 |
+
}
|
103 |
+
|
104 |
+
/**
|
105 |
+
** Don't display on the frontend for non edit_posts capable users
|
106 |
+
*/
|
107 |
+
public function block_template_frontend() {
|
108 |
+
if ( is_singular( 'wpr_templates' ) && ! current_user_can( 'edit_posts' ) ) {
|
109 |
+
wp_redirect( site_url(), 301 );
|
110 |
+
die;
|
111 |
+
}
|
112 |
+
}
|
113 |
+
|
114 |
+
/**
|
115 |
+
*** Add elementor support for wpr_templates.
|
116 |
+
**/
|
117 |
+
function add_elementor_cpt_support() {
|
118 |
+
if ( ! is_admin() ) {
|
119 |
+
return;
|
120 |
+
}
|
121 |
+
|
122 |
+
$cpt_support = get_option( 'elementor_cpt_support' );
|
123 |
+
|
124 |
+
if ( ! $cpt_support ) {
|
125 |
+
update_option( 'elementor_cpt_support', ['post', 'page', 'wpr_templates'] );
|
126 |
+
} elseif ( ! in_array( 'wpr_templates', $cpt_support ) ) {
|
127 |
+
$cpt_support[] = 'wpr_templates';
|
128 |
+
update_option( 'elementor_cpt_support', $cpt_support );
|
129 |
+
}
|
130 |
+
}
|
131 |
+
|
132 |
+
}
|
133 |
+
|
134 |
new WPR_Templates_Library();
|
admin/includes/wpr-templates-loop.php
CHANGED
@@ -1,365 +1,365 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
namespace WprAddons\Admin\Includes;
|
4 |
-
|
5 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
-
exit; // Exit if accessed directly.
|
7 |
-
}
|
8 |
-
|
9 |
-
use WprAddons\Classes\Utilities;
|
10 |
-
|
11 |
-
/**
|
12 |
-
** WPR_Templates_Loop setup
|
13 |
-
*/
|
14 |
-
class WPR_Templates_Loop {
|
15 |
-
|
16 |
-
/**
|
17 |
-
** Loop Through Custom Templates
|
18 |
-
*/
|
19 |
-
public static function render_theme_builder_templates( $template ) {
|
20 |
-
// WP_Query arguments
|
21 |
-
$args = array (
|
22 |
-
'post_type' => array( 'wpr_templates' ),
|
23 |
-
'post_status' => array( 'publish' ),
|
24 |
-
'posts_per_page' => -1,
|
25 |
-
'tax_query' => array(
|
26 |
-
array(
|
27 |
-
'taxonomy' => 'wpr_template_type',
|
28 |
-
'field' => 'slug',
|
29 |
-
'terms' => [ $template, 'user' ],
|
30 |
-
'operator' => 'AND'
|
31 |
-
)
|
32 |
-
)
|
33 |
-
);
|
34 |
-
|
35 |
-
// The Query
|
36 |
-
$user_templates = get_posts( $args );
|
37 |
-
|
38 |
-
// The Loop
|
39 |
-
echo '<ul class="wpr-'. esc_attr($template) .'-templates-list wpr-my-templates-list" data-pro="'. esc_attr(wpr_fs()->can_use_premium_code()) .'">';
|
40 |
-
|
41 |
-
if ( ! empty( $user_templates ) ) {
|
42 |
-
foreach ( $user_templates as $user_template ) {
|
43 |
-
$slug = $user_template->post_name;
|
44 |
-
$edit_url = str_replace( 'edit', 'elementor', get_edit_post_link( $user_template->ID ) );
|
45 |
-
$show_on_canvas = get_post_meta(Utilities::get_template_id($slug), 'wpr_'. $template .'_show_on_canvas', true);
|
46 |
-
|
47 |
-
echo '<li>';
|
48 |
-
echo '<h3 class="wpr-title">'. esc_html($user_template->post_title) .'</h3>';
|
49 |
-
|
50 |
-
echo '<div class="wpr-action-buttons">';
|
51 |
-
// Activate
|
52 |
-
echo '<span class="wpr-template-conditions button button-primary" data-slug="'. esc_attr($slug) .'" data-show-on-canvas="'. esc_attr($show_on_canvas) .'">'. esc_html__( 'Manage Conditions', 'wpr-addons' ) .'</span>';
|
53 |
-
// Edit
|
54 |
-
echo '<a href="'. esc_url($edit_url) .'" class="wpr-edit-template button button-primary">'. esc_html__( 'Edit Template', 'wpr-addons' ) .'</a>';
|
55 |
-
// Delete
|
56 |
-
echo '<span class="wpr-delete-template button button-primary" data-slug="'. esc_attr($slug) .'" data-warning="'. esc_html__( 'Are you sure you want to delete this template?', 'wpr-addons' ) .'"><span class="dashicons dashicons-no-alt"></span></span>';
|
57 |
-
echo '</div>';
|
58 |
-
echo '</li>';
|
59 |
-
}
|
60 |
-
} else {
|
61 |
-
echo '<li class="wpr-no-templates">You don\'t have any templates yet!</li>';
|
62 |
-
}
|
63 |
-
|
64 |
-
echo '</ul>';
|
65 |
-
|
66 |
-
// Restore original Post Data
|
67 |
-
wp_reset_postdata();
|
68 |
-
|
69 |
-
}
|
70 |
-
|
71 |
-
/**
|
72 |
-
** Loop Through My Templates
|
73 |
-
*/
|
74 |
-
public static function render_elementor_saved_templates() {
|
75 |
-
|
76 |
-
// WP_Query arguments
|
77 |
-
$args = array (
|
78 |
-
'post_type' => array( 'elementor_library' ),
|
79 |
-
'post_status' => array( 'publish' ),
|
80 |
-
'meta_key' => '_elementor_template_type',
|
81 |
-
'meta_value' => ['page', 'section'],
|
82 |
-
'numberposts' => -1
|
83 |
-
);
|
84 |
-
|
85 |
-
// The Query
|
86 |
-
$user_templates = get_posts( $args );
|
87 |
-
|
88 |
-
// My Templates List
|
89 |
-
echo '<ul class="wpr-my-templates-list striped">';
|
90 |
-
|
91 |
-
// The Loop
|
92 |
-
if ( ! empty( $user_templates ) ) {
|
93 |
-
foreach ( $user_templates as $user_template ) {
|
94 |
-
// Edit URL
|
95 |
-
$edit_url = str_replace( 'edit', 'elementor', get_edit_post_link( $user_template->ID ) );
|
96 |
-
|
97 |
-
// List
|
98 |
-
echo '<li>';
|
99 |
-
echo '<h3 class="wpr-title">'. esc_html($user_template->post_title) .'</h3>';
|
100 |
-
|
101 |
-
echo '<span class="wpr-action-buttons">';
|
102 |
-
echo '<a href="'. esc_url($edit_url) .'" class="wpr-edit-template button button-primary">'. esc_html__( 'Edit', 'wpr-addons' ) .'</a>';
|
103 |
-
echo '<span class="wpr-delete-template button button-primary" data-slug="'. esc_attr($user_template->post_name) .'" data-warning="'. esc_html__( 'Are you sure you want to delete this template?', 'wpr-addons' ) .'"><span class="dashicons dashicons-no-alt"></span></span>';
|
104 |
-
echo '</span>';
|
105 |
-
echo '</li>';
|
106 |
-
}
|
107 |
-
} else {
|
108 |
-
echo '<li class="wpr-no-templates">You don\'t have any templates yet!</li>';
|
109 |
-
}
|
110 |
-
|
111 |
-
echo '</ul>';
|
112 |
-
|
113 |
-
// Restore original Post Data
|
114 |
-
wp_reset_postdata();
|
115 |
-
}
|
116 |
-
|
117 |
-
/**
|
118 |
-
** Render Conditions Popup
|
119 |
-
*/
|
120 |
-
public static function render_conditions_popup( $canvas = false ) {
|
121 |
-
|
122 |
-
// Active Tab
|
123 |
-
$active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( wp_unslash( $_GET['tab'] ) ) : 'wpr_tab_header';
|
124 |
-
|
125 |
-
?>
|
126 |
-
|
127 |
-
<div class="wpr-condition-popup-wrap wpr-admin-popup-wrap">
|
128 |
-
<div class="wpr-condition-popup wpr-admin-popup">
|
129 |
-
<header>
|
130 |
-
<h2><?php esc_html_e( 'Where Do You Want to Display Your Template?', 'wpr-addons' ); ?></h2>
|
131 |
-
<p>
|
132 |
-
<?php esc_html_e( 'Set the conditions that determine where your Template is used throughout your site.', 'wpr-addons' ); ?><br>
|
133 |
-
<?php esc_html_e( 'For example, choose \'Entire Site\' to display the template across your site.', 'wpr-addons' ); ?>
|
134 |
-
</p>
|
135 |
-
</header>
|
136 |
-
<span class="close-popup dashicons dashicons-no-alt"></span>
|
137 |
-
|
138 |
-
<!-- Conditions -->
|
139 |
-
<div class="wpr-conditions-wrap">
|
140 |
-
<div class="wpr-conditions-sample">
|
141 |
-
<?php if ( wpr_fs()->can_use_premium_code() ) : ?>
|
142 |
-
<!-- Global -->
|
143 |
-
<select name="global_condition_select" class="global-condition-select">
|
144 |
-
<option value="global"><?php esc_html_e( 'Entire Site', 'wpr-addons' ); ?></option>
|
145 |
-
<option value="archive"><?php esc_html_e( 'Archives', 'wpr-addons' ); ?></option>
|
146 |
-
<option value="single"><?php esc_html_e( 'Singular', 'wpr-addons' ); ?></option>
|
147 |
-
</select>
|
148 |
-
|
149 |
-
<!-- Archive -->
|
150 |
-
<select name="archives_condition_select" class="archives-condition-select">
|
151 |
-
<?php if ( 'wpr_tab_header' === $active_tab || 'wpr_tab_footer' === $active_tab ) : ?>
|
152 |
-
<option value="all_archives"><?php esc_html_e( 'All Archives', 'wpr-addons' ); ?></option>
|
153 |
-
<option value="posts"><?php esc_html_e( 'Posts Archive', 'wpr-addons' ); ?></option>
|
154 |
-
<option value="author"><?php esc_html_e( 'Author Archive', 'wpr-addons' ); ?></option>
|
155 |
-
<option value="date"><?php esc_html_e( 'Date Archive', 'wpr-addons' ); ?></option>
|
156 |
-
<option value="search"><?php esc_html_e( 'Search Results', 'wpr-addons' ); ?></option>
|
157 |
-
<option value="categories" class="custom-ids"><?php esc_html_e( 'Post Categories', 'wpr-addons' ); ?></option>
|
158 |
-
<option value="tags" class="custom-ids"><?php esc_html_e( 'Post Tags', 'wpr-addons' ); ?></option>
|
159 |
-
<?php // Custom Taxonomies
|
160 |
-
$custom_taxonomies = Utilities::get_custom_types_of( 'tax', true );
|
161 |
-
foreach ($custom_taxonomies as $key => $value) {
|
162 |
-
if ( class_exists( 'WooCommerce' ) && 'product_cat' === $key ) {
|
163 |
-
echo '<option value="products">'. esc_html__( 'Products Archive', 'wpr-addons' ) .'</option>';
|
164 |
-
}
|
165 |
-
|
166 |
-
// List Taxonomies
|
167 |
-
echo '<option value="'. esc_attr($key) .'" class="custom-type-ids">'. esc_html($value) .'</option>';
|
168 |
-
}
|
169 |
-
?>
|
170 |
-
<?php else: ?>
|
171 |
-
<?php if ( 'wpr_tab_archive' === $active_tab ) : ?>
|
172 |
-
<option value="all_archives"><?php esc_html_e( 'All Archives', 'wpr-addons' ); ?></option>
|
173 |
-
<option value="posts"><?php esc_html_e( 'Posts Archive', 'wpr-addons' ); ?></option>
|
174 |
-
<option value="author"><?php esc_html_e( 'Author Archive', 'wpr-addons' ); ?></option>
|
175 |
-
<option value="date"><?php esc_html_e( 'Date Archive', 'wpr-addons' ); ?></option>
|
176 |
-
<option value="search"><?php esc_html_e( 'Search Results', 'wpr-addons' ); ?></option>
|
177 |
-
<option value="categories" class="custom-ids"><?php esc_html_e( 'Post Categories', 'wpr-addons' ); ?></option>
|
178 |
-
<option value="tags" class="custom-ids"><?php esc_html_e( 'Post Tags', 'wpr-addons' ); ?></option>
|
179 |
-
<?php elseif ( 'wpr_tab_product_archive' === $active_tab ): ?>
|
180 |
-
<option value="products"><?php esc_html_e( 'Products Archive', 'wpr-addons' ); ?></option>
|
181 |
-
<option value="product_cat" class="custom-type-ids"><?php esc_html_e( 'Products Categories', 'wpr-addons' ); ?></option>
|
182 |
-
<option value="product_tag" class="custom-type-ids"><?php esc_html_e( 'Products Tags', 'wpr-addons' ); ?></option>
|
183 |
-
<?php endif; ?>
|
184 |
-
<?php endif; ?>
|
185 |
-
</select>
|
186 |
-
|
187 |
-
<!-- Single -->
|
188 |
-
<select name="singles_condition_select" class="singles-condition-select">
|
189 |
-
<?php if ( 'wpr_tab_header' === $active_tab || 'wpr_tab_footer' === $active_tab ) : ?>
|
190 |
-
<option value="front_page"><?php esc_html_e( 'Front Page', 'wpr-addons' ); ?></option>
|
191 |
-
<option value="page_404"><?php esc_html_e( '404 Page', 'wpr-addons' ); ?></option>
|
192 |
-
<option value="pages" class="custom-ids"><?php esc_html_e( 'Pages', 'wpr-addons' ); ?></option>
|
193 |
-
<option value="posts" class="custom-ids"><?php esc_html_e( 'Posts', 'wpr-addons' ); ?></option>
|
194 |
-
<?php // Custom Post Types
|
195 |
-
$custom_taxonomies = Utilities::get_custom_types_of( 'post', true );
|
196 |
-
foreach ($custom_taxonomies as $key => $value) {
|
197 |
-
echo '<option value="'. esc_attr($key) .'" class="custom-type-ids">'. esc_html($value) .'</option>';
|
198 |
-
}
|
199 |
-
?>
|
200 |
-
<?php else: ?>
|
201 |
-
<?php if ( 'wpr_tab_single' === $active_tab ) : ?>
|
202 |
-
<option value="front_page"><?php esc_html_e( 'Front Page', 'wpr-addons' ); ?></option>
|
203 |
-
<option value="page_404"><?php esc_html_e( '404 Page', 'wpr-addons' ); ?></option>
|
204 |
-
<option value="pages" class="custom-ids"><?php esc_html_e( 'Pages', 'wpr-addons' ); ?></option>
|
205 |
-
<option value="posts" class="custom-ids"><?php esc_html_e( 'Posts', 'wpr-addons' ); ?></option>
|
206 |
-
<?php elseif ( 'wpr_tab_product_single' === $active_tab ): ?>
|
207 |
-
<option value="product" class="custom-type-ids"><?php esc_html_e( 'Products', 'wpr-addons' ); ?></option>
|
208 |
-
<?php endif; ?>
|
209 |
-
<?php endif; ?>
|
210 |
-
</select>
|
211 |
-
|
212 |
-
<input type="text" placeholder="<?php esc_html_e( 'Enter comma separated IDs', 'wpr-addons' ); ?>" name="condition_input_ids" class="wpr-condition-input-ids">
|
213 |
-
<span class="wpr-delete-template-conditions dashicons dashicons-no-alt"></span>
|
214 |
-
|
215 |
-
<?php else: // Free user conditions ?>
|
216 |
-
|
217 |
-
<!-- Global -->
|
218 |
-
<select name="global_condition_select" class="global-condition-select">
|
219 |
-
<option value="global"><?php esc_html_e( 'Entire Site', 'wpr-addons' ); ?></option>
|
220 |
-
<option value="archive"><?php esc_html_e( 'Archives (Pro)', 'wpr-addons' ); ?></option>
|
221 |
-
<option value="single"><?php esc_html_e( 'Singular (Pro)', 'wpr-addons' ); ?></option>
|
222 |
-
</select>
|
223 |
-
|
224 |
-
<!-- Archive -->
|
225 |
-
<select name="archives_condition_select" class="archives-condition-select">
|
226 |
-
<?php if ( 'wpr_tab_header' === $active_tab || 'wpr_tab_footer' === $active_tab ) : ?>
|
227 |
-
<option value="all_archives"><?php esc_html_e( 'All Archives (Pro)', 'wpr-addons' ); ?></option>
|
228 |
-
<option value="posts"><?php esc_html_e( 'Posts Archive (Pro)', 'wpr-addons' ); ?></option>
|
229 |
-
<option value="author"><?php esc_html_e( 'Author Archive (Pro)', 'wpr-addons' ); ?></option>
|
230 |
-
<option value="date"><?php esc_html_e( 'Date Archive (Pro)', 'wpr-addons' ); ?></option>
|
231 |
-
<option value="search"><?php esc_html_e( 'Search Results (Pro)', 'wpr-addons' ); ?></option>
|
232 |
-
<option value="categories" class="custom-ids"><?php esc_html_e( 'Post Categories (Pro)', 'wpr-addons' ); ?></option>
|
233 |
-
<option value="tags" class="custom-ids"><?php esc_html_e( 'Post Tags (Pro)', 'wpr-addons' ); ?></option>
|
234 |
-
<?php // Custom Taxonomies
|
235 |
-
$custom_taxonomies = Utilities::get_custom_types_of( 'tax', true );
|
236 |
-
foreach ($custom_taxonomies as $key => $value) {
|
237 |
-
if ( class_exists( 'WooCommerce' ) && 'product_cat' === $key ) {
|
238 |
-
echo '<option value="products">'. esc_html__( 'Products Archive (Pro)', 'wpr-addons' ) .'</option>';
|
239 |
-
}
|
240 |
-
|
241 |
-
// List Taxonomies
|
242 |
-
echo '<option value="'. esc_attr($key) .'" class="custom-type-ids">'. esc_html($value) .' (Pro)</option>';
|
243 |
-
}
|
244 |
-
?>
|
245 |
-
<?php else: ?>
|
246 |
-
<?php if ( 'wpr_tab_archive' === $active_tab ) : ?>
|
247 |
-
<option value="all_archives"><?php esc_html_e( 'All Archives', 'wpr-addons' ); ?></option>
|
248 |
-
<option value="posts"><?php esc_html_e( 'Posts Archive', 'wpr-addons' ); ?></option>
|
249 |
-
<option value="author"><?php esc_html_e( 'Author Archive', 'wpr-addons' ); ?></option>
|
250 |
-
<option value="date"><?php esc_html_e( 'Date Archive', 'wpr-addons' ); ?></option>
|
251 |
-
<option value="search"><?php esc_html_e( 'Search Results', 'wpr-addons' ); ?></option>
|
252 |
-
<option value="categories" class="custom-ids"><?php esc_html_e( 'Post Categories', 'wpr-addons' ); ?></option>
|
253 |
-
<option value="tags" class="custom-ids"><?php esc_html_e( 'Post Tags', 'wpr-addons' ); ?></option>
|
254 |
-
<?php elseif ( 'wpr_tab_product_archive' === $active_tab ): ?>
|
255 |
-
<option value="products"><?php esc_html_e( 'Products Archive', 'wpr-addons' ); ?></option>
|
256 |
-
<option value="product_cat" class="custom-type-ids"><?php esc_html_e( 'Products Categories (Pro)', 'wpr-addons' ); ?></option>
|
257 |
-
<option value="product_tag" class="custom-type-ids"><?php esc_html_e( 'Products Tags (Pro)', 'wpr-addons' ); ?></option>
|
258 |
-
<?php endif; ?>
|
259 |
-
<?php endif; ?>
|
260 |
-
</select>
|
261 |
-
|
262 |
-
<!-- Single -->
|
263 |
-
<select name="singles_condition_select" class="singles-condition-select">
|
264 |
-
<?php if ( 'wpr_tab_header' === $active_tab || 'wpr_tab_footer' === $active_tab ) : ?>
|
265 |
-
<option value="front_page"><?php esc_html_e( 'Front Page (Pro)', 'wpr-addons' ); ?></option>
|
266 |
-
<option value="page_404"><?php esc_html_e( '404 Page (Pro)', 'wpr-addons' ); ?></option>
|
267 |
-
<option value="pages" class="custom-ids"><?php esc_html_e( 'Pages (Pro)', 'wpr-addons' ); ?></option>
|
268 |
-
<option value="posts" class="custom-ids"><?php esc_html_e( 'Posts (Pro)', 'wpr-addons' ); ?></option>
|
269 |
-
<?php // Custom Post Types
|
270 |
-
$custom_taxonomies = Utilities::get_custom_types_of( 'post', true );
|
271 |
-
foreach ($custom_taxonomies as $key => $value) {
|
272 |
-
echo '<option value="'. esc_attr($key) .'" class="custom-type-ids">'. esc_html($value) .' (Pro)</option>';
|
273 |
-
}
|
274 |
-
?>
|
275 |
-
<?php else: ?>
|
276 |
-
<?php if ( 'wpr_tab_single' === $active_tab ) : ?>
|
277 |
-
<option value="front_page"><?php esc_html_e( 'Front Page', 'wpr-addons' ); ?></option>
|
278 |
-
<option value="page_404"><?php esc_html_e( '404 Page', 'wpr-addons' ); ?></option>
|
279 |
-
<option value="pages" class="custom-ids"><?php esc_html_e( 'Pages', 'wpr-addons' ); ?></option>
|
280 |
-
<option value="posts" class="custom-ids"><?php esc_html_e( 'Posts', 'wpr-addons' ); ?></option>
|
281 |
-
<?php elseif ( 'wpr_tab_product_single' === $active_tab ): ?>
|
282 |
-
<option value="product" class="custom-type-ids"><?php esc_html_e( 'Products', 'wpr-addons' ); ?></option>
|
283 |
-
<?php endif; ?>
|
284 |
-
<?php endif; ?>
|
285 |
-
</select>
|
286 |
-
|
287 |
-
<input type="text" placeholder="<?php esc_html_e( 'Enter comma separated IDs (Pro)', 'wpr-addons' ); ?>" name="condition_input_ids" class="wpr-condition-input-ids">
|
288 |
-
<span class="wpr-delete-template-conditions dashicons dashicons-no-alt"></span>
|
289 |
-
|
290 |
-
<?php endif; ?>
|
291 |
-
</div>
|
292 |
-
</div>
|
293 |
-
|
294 |
-
<?php if ( $canvas ) : ?>
|
295 |
-
<div class="wpr-canvas-condition wpr-setting-custom-ckbox">
|
296 |
-
<span><?php esc_html_e( 'Show this template on Elementor Canvas pages', 'wpr-addons' ); ?></span>
|
297 |
-
<input type="checkbox" name="wpr-show-on-canvas" id="wpr-show-on-canvas">
|
298 |
-
<label for="wpr-show-on-canvas"></label>
|
299 |
-
</div>
|
300 |
-
<?php endif; ?>
|
301 |
-
|
302 |
-
<?php
|
303 |
-
|
304 |
-
|
305 |
-
// Pro Notice
|
306 |
-
if ( ! wpr_fs()->can_use_premium_code() ) {
|
307 |
-
echo '<span style="color: #7f8b96;"><br>Conditions are fully suppoted in the <strong><a href="https://royal-elementor-addons.com/?ref=rea-plugin-backend-conditions-upgrade-pro#purchasepro" target="_blank">Pro version</a></strong></span>';
|
308 |
-
// echo '<span style="color: #7f8b96;"><br>Conditions are fully suppoted in the <strong><a href="'. admin_url('admin.php?page=wpr-addons-pricing') .'" target="_blank">Pro version</a></strong></span>';
|
309 |
-
}
|
310 |
-
|
311 |
-
?>
|
312 |
-
|
313 |
-
<!-- Action Buttons -->
|
314 |
-
<span class="wpr-add-conditions"><?php esc_html_e( 'Add Conditions', 'wpr-addons' ); ?></span>
|
315 |
-
<span class="wpr-save-conditions"><?php esc_html_e( 'Save Conditions', 'wpr-addons' ); ?></span>
|
316 |
-
|
317 |
-
</div>
|
318 |
-
</div>
|
319 |
-
|
320 |
-
<?php
|
321 |
-
}
|
322 |
-
|
323 |
-
|
324 |
-
/**
|
325 |
-
** Render Create Template Popup
|
326 |
-
*/
|
327 |
-
public static function render_create_template_popup() {
|
328 |
-
?>
|
329 |
-
|
330 |
-
<!-- Custom Template Popup -->
|
331 |
-
<div class="wpr-user-template-popup-wrap wpr-admin-popup-wrap">
|
332 |
-
<div class="wpr-user-template-popup wpr-admin-popup">
|
333 |
-
<header>
|
334 |
-
<h2><?php esc_html_e( 'Templates Help You Work Efficiently!', 'wpr-addons' ); ?></h2>
|
335 |
-
<p><?php esc_html_e( 'Use templates to create the different pieces of your site, and reuse them with one click whenever needed.', 'wpr-addons' ); ?></p>
|
336 |
-
</header>
|
337 |
-
|
338 |
-
<input type="text" name="user_template_title" class="wpr-user-template-title" placeholder="<?php esc_html_e( 'Enter Template Title', 'wpr-addons' ); ?>">
|
339 |
-
<input type="hidden" name="user_template_type" class="user-template-type">
|
340 |
-
<span class="wpr-create-template"><?php esc_html_e( 'Create Template', 'wpr-addons' ); ?></span>
|
341 |
-
<span class="close-popup dashicons dashicons-no-alt"></span>
|
342 |
-
</div>
|
343 |
-
</div>
|
344 |
-
|
345 |
-
<?php
|
346 |
-
}
|
347 |
-
|
348 |
-
/**
|
349 |
-
** Check if Library Template Exists
|
350 |
-
*/
|
351 |
-
public static function template_exists( $slug ) {
|
352 |
-
$result = false;
|
353 |
-
$wpr_templates = get_posts( ['post_type' => 'wpr_templates', 'posts_per_page' => '-1'] );
|
354 |
-
|
355 |
-
foreach ( $wpr_templates as $post ) {
|
356 |
-
|
357 |
-
if ( $slug === $post->post_name ) {
|
358 |
-
$result = true;
|
359 |
-
}
|
360 |
-
}
|
361 |
-
|
362 |
-
return $result;
|
363 |
-
}
|
364 |
-
|
365 |
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WprAddons\Admin\Includes;
|
4 |
+
|
5 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
+
exit; // Exit if accessed directly.
|
7 |
+
}
|
8 |
+
|
9 |
+
use WprAddons\Classes\Utilities;
|
10 |
+
|
11 |
+
/**
|
12 |
+
** WPR_Templates_Loop setup
|
13 |
+
*/
|
14 |
+
class WPR_Templates_Loop {
|
15 |
+
|
16 |
+
/**
|
17 |
+
** Loop Through Custom Templates
|
18 |
+
*/
|
19 |
+
public static function render_theme_builder_templates( $template ) {
|
20 |
+
// WP_Query arguments
|
21 |
+
$args = array (
|
22 |
+
'post_type' => array( 'wpr_templates' ),
|
23 |
+
'post_status' => array( 'publish' ),
|
24 |
+
'posts_per_page' => -1,
|
25 |
+
'tax_query' => array(
|
26 |
+
array(
|
27 |
+
'taxonomy' => 'wpr_template_type',
|
28 |
+
'field' => 'slug',
|
29 |
+
'terms' => [ $template, 'user' ],
|
30 |
+
'operator' => 'AND'
|
31 |
+
)
|
32 |
+
)
|
33 |
+
);
|
34 |
+
|
35 |
+
// The Query
|
36 |
+
$user_templates = get_posts( $args );
|
37 |
+
|
38 |
+
// The Loop
|
39 |
+
echo '<ul class="wpr-'. esc_attr($template) .'-templates-list wpr-my-templates-list" data-pro="'. esc_attr(wpr_fs()->can_use_premium_code()) .'">';
|
40 |
+
|
41 |
+
if ( ! empty( $user_templates ) ) {
|
42 |
+
foreach ( $user_templates as $user_template ) {
|
43 |
+
$slug = $user_template->post_name;
|
44 |
+
$edit_url = str_replace( 'edit', 'elementor', get_edit_post_link( $user_template->ID ) );
|
45 |
+
$show_on_canvas = get_post_meta(Utilities::get_template_id($slug), 'wpr_'. $template .'_show_on_canvas', true);
|
46 |
+
|
47 |
+
echo '<li>';
|
48 |
+
echo '<h3 class="wpr-title">'. esc_html($user_template->post_title) .'</h3>';
|
49 |
+
|
50 |
+
echo '<div class="wpr-action-buttons">';
|
51 |
+
// Activate
|
52 |
+
echo '<span class="wpr-template-conditions button button-primary" data-slug="'. esc_attr($slug) .'" data-show-on-canvas="'. esc_attr($show_on_canvas) .'">'. esc_html__( 'Manage Conditions', 'wpr-addons' ) .'</span>';
|
53 |
+
// Edit
|
54 |
+
echo '<a href="'. esc_url($edit_url) .'" class="wpr-edit-template button button-primary">'. esc_html__( 'Edit Template', 'wpr-addons' ) .'</a>';
|
55 |
+
// Delete
|
56 |
+
echo '<span class="wpr-delete-template button button-primary" data-slug="'. esc_attr($slug) .'" data-warning="'. esc_html__( 'Are you sure you want to delete this template?', 'wpr-addons' ) .'"><span class="dashicons dashicons-no-alt"></span></span>';
|
57 |
+
echo '</div>';
|
58 |
+
echo '</li>';
|
59 |
+
}
|
60 |
+
} else {
|
61 |
+
echo '<li class="wpr-no-templates">You don\'t have any templates yet!</li>';
|
62 |
+
}
|
63 |
+
|
64 |
+
echo '</ul>';
|
65 |
+
|
66 |
+
// Restore original Post Data
|
67 |
+
wp_reset_postdata();
|
68 |
+
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
** Loop Through My Templates
|
73 |
+
*/
|
74 |
+
public static function render_elementor_saved_templates() {
|
75 |
+
|
76 |
+
// WP_Query arguments
|
77 |
+
$args = array (
|
78 |
+
'post_type' => array( 'elementor_library' ),
|
79 |
+
'post_status' => array( 'publish' ),
|
80 |
+
'meta_key' => '_elementor_template_type',
|
81 |
+
'meta_value' => ['page', 'section'],
|
82 |
+
'numberposts' => -1
|
83 |
+
);
|
84 |
+
|
85 |
+
// The Query
|
86 |
+
$user_templates = get_posts( $args );
|
87 |
+
|
88 |
+
// My Templates List
|
89 |
+
echo '<ul class="wpr-my-templates-list striped">';
|
90 |
+
|
91 |
+
// The Loop
|
92 |
+
if ( ! empty( $user_templates ) ) {
|
93 |
+
foreach ( $user_templates as $user_template ) {
|
94 |
+
// Edit URL
|
95 |
+
$edit_url = str_replace( 'edit', 'elementor', get_edit_post_link( $user_template->ID ) );
|
96 |
+
|
97 |
+
// List
|
98 |
+
echo '<li>';
|
99 |
+
echo '<h3 class="wpr-title">'. esc_html($user_template->post_title) .'</h3>';
|
100 |
+
|
101 |
+
echo '<span class="wpr-action-buttons">';
|
102 |
+
echo '<a href="'. esc_url($edit_url) .'" class="wpr-edit-template button button-primary">'. esc_html__( 'Edit', 'wpr-addons' ) .'</a>';
|
103 |
+
echo '<span class="wpr-delete-template button button-primary" data-slug="'. esc_attr($user_template->post_name) .'" data-warning="'. esc_html__( 'Are you sure you want to delete this template?', 'wpr-addons' ) .'"><span class="dashicons dashicons-no-alt"></span></span>';
|
104 |
+
echo '</span>';
|
105 |
+
echo '</li>';
|
106 |
+
}
|
107 |
+
} else {
|
108 |
+
echo '<li class="wpr-no-templates">You don\'t have any templates yet!</li>';
|
109 |
+
}
|
110 |
+
|
111 |
+
echo '</ul>';
|
112 |
+
|
113 |
+
// Restore original Post Data
|
114 |
+
wp_reset_postdata();
|
115 |
+
}
|
116 |
+
|
117 |
+
/**
|
118 |
+
** Render Conditions Popup
|
119 |
+
*/
|
120 |
+
public static function render_conditions_popup( $canvas = false ) {
|
121 |
+
|
122 |
+
// Active Tab
|
123 |
+
$active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( wp_unslash( $_GET['tab'] ) ) : 'wpr_tab_header';
|
124 |
+
|
125 |
+
?>
|
126 |
+
|
127 |
+
<div class="wpr-condition-popup-wrap wpr-admin-popup-wrap">
|
128 |
+
<div class="wpr-condition-popup wpr-admin-popup">
|
129 |
+
<header>
|
130 |
+
<h2><?php esc_html_e( 'Where Do You Want to Display Your Template?', 'wpr-addons' ); ?></h2>
|
131 |
+
<p>
|
132 |
+
<?php esc_html_e( 'Set the conditions that determine where your Template is used throughout your site.', 'wpr-addons' ); ?><br>
|
133 |
+
<?php esc_html_e( 'For example, choose \'Entire Site\' to display the template across your site.', 'wpr-addons' ); ?>
|
134 |
+
</p>
|
135 |
+
</header>
|
136 |
+
<span class="close-popup dashicons dashicons-no-alt"></span>
|
137 |
+
|
138 |
+
<!-- Conditions -->
|
139 |
+
<div class="wpr-conditions-wrap">
|
140 |
+
<div class="wpr-conditions-sample">
|
141 |
+
<?php if ( wpr_fs()->can_use_premium_code() ) : ?>
|
142 |
+
<!-- Global -->
|
143 |
+
<select name="global_condition_select" class="global-condition-select">
|
144 |
+
<option value="global"><?php esc_html_e( 'Entire Site', 'wpr-addons' ); ?></option>
|
145 |
+
<option value="archive"><?php esc_html_e( 'Archives', 'wpr-addons' ); ?></option>
|
146 |
+
<option value="single"><?php esc_html_e( 'Singular', 'wpr-addons' ); ?></option>
|
147 |
+
</select>
|
148 |
+
|
149 |
+
<!-- Archive -->
|
150 |
+
<select name="archives_condition_select" class="archives-condition-select">
|
151 |
+
<?php if ( 'wpr_tab_header' === $active_tab || 'wpr_tab_footer' === $active_tab ) : ?>
|
152 |
+
<option value="all_archives"><?php esc_html_e( 'All Archives', 'wpr-addons' ); ?></option>
|
153 |
+
<option value="posts"><?php esc_html_e( 'Posts Archive', 'wpr-addons' ); ?></option>
|
154 |
+
<option value="author"><?php esc_html_e( 'Author Archive', 'wpr-addons' ); ?></option>
|
155 |
+
<option value="date"><?php esc_html_e( 'Date Archive', 'wpr-addons' ); ?></option>
|
156 |
+
<option value="search"><?php esc_html_e( 'Search Results', 'wpr-addons' ); ?></option>
|
157 |
+
<option value="categories" class="custom-ids"><?php esc_html_e( 'Post Categories', 'wpr-addons' ); ?></option>
|
158 |
+
<option value="tags" class="custom-ids"><?php esc_html_e( 'Post Tags', 'wpr-addons' ); ?></option>
|
159 |
+
<?php // Custom Taxonomies
|
160 |
+
$custom_taxonomies = Utilities::get_custom_types_of( 'tax', true );
|
161 |
+
foreach ($custom_taxonomies as $key => $value) {
|
162 |
+
if ( class_exists( 'WooCommerce' ) && 'product_cat' === $key ) {
|
163 |
+
echo '<option value="products">'. esc_html__( 'Products Archive', 'wpr-addons' ) .'</option>';
|
164 |
+
}
|
165 |
+
|
166 |
+
// List Taxonomies
|
167 |
+
echo '<option value="'. esc_attr($key) .'" class="custom-type-ids">'. esc_html($value) .'</option>';
|
168 |
+
}
|
169 |
+
?>
|
170 |
+
<?php else: ?>
|
171 |
+
<?php if ( 'wpr_tab_archive' === $active_tab ) : ?>
|
172 |
+
<option value="all_archives"><?php esc_html_e( 'All Archives', 'wpr-addons' ); ?></option>
|
173 |
+
<option value="posts"><?php esc_html_e( 'Posts Archive', 'wpr-addons' ); ?></option>
|
174 |
+
<option value="author"><?php esc_html_e( 'Author Archive', 'wpr-addons' ); ?></option>
|
175 |
+
<option value="date"><?php esc_html_e( 'Date Archive', 'wpr-addons' ); ?></option>
|
176 |
+
<option value="search"><?php esc_html_e( 'Search Results', 'wpr-addons' ); ?></option>
|
177 |
+
<option value="categories" class="custom-ids"><?php esc_html_e( 'Post Categories', 'wpr-addons' ); ?></option>
|
178 |
+
<option value="tags" class="custom-ids"><?php esc_html_e( 'Post Tags', 'wpr-addons' ); ?></option>
|
179 |
+
<?php elseif ( 'wpr_tab_product_archive' === $active_tab ): ?>
|
180 |
+
<option value="products"><?php esc_html_e( 'Products Archive', 'wpr-addons' ); ?></option>
|
181 |
+
<option value="product_cat" class="custom-type-ids"><?php esc_html_e( 'Products Categories', 'wpr-addons' ); ?></option>
|
182 |
+
<option value="product_tag" class="custom-type-ids"><?php esc_html_e( 'Products Tags', 'wpr-addons' ); ?></option>
|
183 |
+
<?php endif; ?>
|
184 |
+
<?php endif; ?>
|
185 |
+
</select>
|
186 |
+
|
187 |
+
<!-- Single -->
|
188 |
+
<select name="singles_condition_select" class="singles-condition-select">
|
189 |
+
<?php if ( 'wpr_tab_header' === $active_tab || 'wpr_tab_footer' === $active_tab ) : ?>
|
190 |
+
<option value="front_page"><?php esc_html_e( 'Front Page', 'wpr-addons' ); ?></option>
|
191 |
+
<option value="page_404"><?php esc_html_e( '404 Page', 'wpr-addons' ); ?></option>
|
192 |
+
<option value="pages" class="custom-ids"><?php esc_html_e( 'Pages', 'wpr-addons' ); ?></option>
|
193 |
+
<option value="posts" class="custom-ids"><?php esc_html_e( 'Posts', 'wpr-addons' ); ?></option>
|
194 |
+
<?php // Custom Post Types
|
195 |
+
$custom_taxonomies = Utilities::get_custom_types_of( 'post', true );
|
196 |
+
foreach ($custom_taxonomies as $key => $value) {
|
197 |
+
echo '<option value="'. esc_attr($key) .'" class="custom-type-ids">'. esc_html($value) .'</option>';
|
198 |
+
}
|
199 |
+
?>
|
200 |
+
<?php else: ?>
|
201 |
+
<?php if ( 'wpr_tab_single' === $active_tab ) : ?>
|
202 |
+
<option value="front_page"><?php esc_html_e( 'Front Page', 'wpr-addons' ); ?></option>
|
203 |
+
<option value="page_404"><?php esc_html_e( '404 Page', 'wpr-addons' ); ?></option>
|
204 |
+
<option value="pages" class="custom-ids"><?php esc_html_e( 'Pages', 'wpr-addons' ); ?></option>
|
205 |
+
<option value="posts" class="custom-ids"><?php esc_html_e( 'Posts', 'wpr-addons' ); ?></option>
|
206 |
+
<?php elseif ( 'wpr_tab_product_single' === $active_tab ): ?>
|
207 |
+
<option value="product" class="custom-type-ids"><?php esc_html_e( 'Products', 'wpr-addons' ); ?></option>
|
208 |
+
<?php endif; ?>
|
209 |
+
<?php endif; ?>
|
210 |
+
</select>
|
211 |
+
|
212 |
+
<input type="text" placeholder="<?php esc_html_e( 'Enter comma separated IDs', 'wpr-addons' ); ?>" name="condition_input_ids" class="wpr-condition-input-ids">
|
213 |
+
<span class="wpr-delete-template-conditions dashicons dashicons-no-alt"></span>
|
214 |
+
|
215 |
+
<?php else: // Free user conditions ?>
|
216 |
+
|
217 |
+
<!-- Global -->
|
218 |
+
<select name="global_condition_select" class="global-condition-select">
|
219 |
+
<option value="global"><?php esc_html_e( 'Entire Site', 'wpr-addons' ); ?></option>
|
220 |
+
<option value="archive"><?php esc_html_e( 'Archives (Pro)', 'wpr-addons' ); ?></option>
|
221 |
+
<option value="single"><?php esc_html_e( 'Singular (Pro)', 'wpr-addons' ); ?></option>
|
222 |
+
</select>
|
223 |
+
|
224 |
+
<!-- Archive -->
|
225 |
+
<select name="archives_condition_select" class="archives-condition-select">
|
226 |
+
<?php if ( 'wpr_tab_header' === $active_tab || 'wpr_tab_footer' === $active_tab ) : ?>
|
227 |
+
<option value="all_archives"><?php esc_html_e( 'All Archives (Pro)', 'wpr-addons' ); ?></option>
|
228 |
+
<option value="posts"><?php esc_html_e( 'Posts Archive (Pro)', 'wpr-addons' ); ?></option>
|
229 |
+
<option value="author"><?php esc_html_e( 'Author Archive (Pro)', 'wpr-addons' ); ?></option>
|
230 |
+
<option value="date"><?php esc_html_e( 'Date Archive (Pro)', 'wpr-addons' ); ?></option>
|
231 |
+
<option value="search"><?php esc_html_e( 'Search Results (Pro)', 'wpr-addons' ); ?></option>
|
232 |
+
<option value="categories" class="custom-ids"><?php esc_html_e( 'Post Categories (Pro)', 'wpr-addons' ); ?></option>
|
233 |
+
<option value="tags" class="custom-ids"><?php esc_html_e( 'Post Tags (Pro)', 'wpr-addons' ); ?></option>
|
234 |
+
<?php // Custom Taxonomies
|
235 |
+
$custom_taxonomies = Utilities::get_custom_types_of( 'tax', true );
|
236 |
+
foreach ($custom_taxonomies as $key => $value) {
|
237 |
+
if ( class_exists( 'WooCommerce' ) && 'product_cat' === $key ) {
|
238 |
+
echo '<option value="products">'. esc_html__( 'Products Archive (Pro)', 'wpr-addons' ) .'</option>';
|
239 |
+
}
|
240 |
+
|
241 |
+
// List Taxonomies
|
242 |
+
echo '<option value="'. esc_attr($key) .'" class="custom-type-ids">'. esc_html($value) .' (Pro)</option>';
|
243 |
+
}
|
244 |
+
?>
|
245 |
+
<?php else: ?>
|
246 |
+
<?php if ( 'wpr_tab_archive' === $active_tab ) : ?>
|
247 |
+
<option value="all_archives"><?php esc_html_e( 'All Archives', 'wpr-addons' ); ?></option>
|
248 |
+
<option value="posts"><?php esc_html_e( 'Posts Archive', 'wpr-addons' ); ?></option>
|
249 |
+
<option value="author"><?php esc_html_e( 'Author Archive', 'wpr-addons' ); ?></option>
|
250 |
+
<option value="date"><?php esc_html_e( 'Date Archive', 'wpr-addons' ); ?></option>
|
251 |
+
<option value="search"><?php esc_html_e( 'Search Results', 'wpr-addons' ); ?></option>
|
252 |
+
<option value="categories" class="custom-ids"><?php esc_html_e( 'Post Categories', 'wpr-addons' ); ?></option>
|
253 |
+
<option value="tags" class="custom-ids"><?php esc_html_e( 'Post Tags', 'wpr-addons' ); ?></option>
|
254 |
+
<?php elseif ( 'wpr_tab_product_archive' === $active_tab ): ?>
|
255 |
+
<option value="products"><?php esc_html_e( 'Products Archive', 'wpr-addons' ); ?></option>
|
256 |
+
<option value="product_cat" class="custom-type-ids"><?php esc_html_e( 'Products Categories (Pro)', 'wpr-addons' ); ?></option>
|
257 |
+
<option value="product_tag" class="custom-type-ids"><?php esc_html_e( 'Products Tags (Pro)', 'wpr-addons' ); ?></option>
|
258 |
+
<?php endif; ?>
|
259 |
+
<?php endif; ?>
|
260 |
+
</select>
|
261 |
+
|
262 |
+
<!-- Single -->
|
263 |
+
<select name="singles_condition_select" class="singles-condition-select">
|
264 |
+
<?php if ( 'wpr_tab_header' === $active_tab || 'wpr_tab_footer' === $active_tab ) : ?>
|
265 |
+
<option value="front_page"><?php esc_html_e( 'Front Page (Pro)', 'wpr-addons' ); ?></option>
|
266 |
+
<option value="page_404"><?php esc_html_e( '404 Page (Pro)', 'wpr-addons' ); ?></option>
|
267 |
+
<option value="pages" class="custom-ids"><?php esc_html_e( 'Pages (Pro)', 'wpr-addons' ); ?></option>
|
268 |
+
<option value="posts" class="custom-ids"><?php esc_html_e( 'Posts (Pro)', 'wpr-addons' ); ?></option>
|
269 |
+
<?php // Custom Post Types
|
270 |
+
$custom_taxonomies = Utilities::get_custom_types_of( 'post', true );
|
271 |
+
foreach ($custom_taxonomies as $key => $value) {
|
272 |
+
echo '<option value="'. esc_attr($key) .'" class="custom-type-ids">'. esc_html($value) .' (Pro)</option>';
|
273 |
+
}
|
274 |
+
?>
|
275 |
+
<?php else: ?>
|
276 |
+
<?php if ( 'wpr_tab_single' === $active_tab ) : ?>
|
277 |
+
<option value="front_page"><?php esc_html_e( 'Front Page', 'wpr-addons' ); ?></option>
|
278 |
+
<option value="page_404"><?php esc_html_e( '404 Page', 'wpr-addons' ); ?></option>
|
279 |
+
<option value="pages" class="custom-ids"><?php esc_html_e( 'Pages', 'wpr-addons' ); ?></option>
|
280 |
+
<option value="posts" class="custom-ids"><?php esc_html_e( 'Posts', 'wpr-addons' ); ?></option>
|
281 |
+
<?php elseif ( 'wpr_tab_product_single' === $active_tab ): ?>
|
282 |
+
<option value="product" class="custom-type-ids"><?php esc_html_e( 'Products', 'wpr-addons' ); ?></option>
|
283 |
+
<?php endif; ?>
|
284 |
+
<?php endif; ?>
|
285 |
+
</select>
|
286 |
+
|
287 |
+
<input type="text" placeholder="<?php esc_html_e( 'Enter comma separated IDs (Pro)', 'wpr-addons' ); ?>" name="condition_input_ids" class="wpr-condition-input-ids">
|
288 |
+
<span class="wpr-delete-template-conditions dashicons dashicons-no-alt"></span>
|
289 |
+
|
290 |
+
<?php endif; ?>
|
291 |
+
</div>
|
292 |
+
</div>
|
293 |
+
|
294 |
+
<?php if ( $canvas ) : ?>
|
295 |
+
<div class="wpr-canvas-condition wpr-setting-custom-ckbox">
|
296 |
+
<span><?php esc_html_e( 'Show this template on Elementor Canvas pages', 'wpr-addons' ); ?></span>
|
297 |
+
<input type="checkbox" name="wpr-show-on-canvas" id="wpr-show-on-canvas">
|
298 |
+
<label for="wpr-show-on-canvas"></label>
|
299 |
+
</div>
|
300 |
+
<?php endif; ?>
|
301 |
+
|
302 |
+
<?php
|
303 |
+
|
304 |
+
|
305 |
+
// Pro Notice
|
306 |
+
if ( ! wpr_fs()->can_use_premium_code() ) {
|
307 |
+
echo '<span style="color: #7f8b96;"><br>Conditions are fully suppoted in the <strong><a href="https://royal-elementor-addons.com/?ref=rea-plugin-backend-conditions-upgrade-pro#purchasepro" target="_blank">Pro version</a></strong></span>';
|
308 |
+
// echo '<span style="color: #7f8b96;"><br>Conditions are fully suppoted in the <strong><a href="'. admin_url('admin.php?page=wpr-addons-pricing') .'" target="_blank">Pro version</a></strong></span>';
|
309 |
+
}
|
310 |
+
|
311 |
+
?>
|
312 |
+
|
313 |
+
<!-- Action Buttons -->
|
314 |
+
<span class="wpr-add-conditions"><?php esc_html_e( 'Add Conditions', 'wpr-addons' ); ?></span>
|
315 |
+
<span class="wpr-save-conditions"><?php esc_html_e( 'Save Conditions', 'wpr-addons' ); ?></span>
|
316 |
+
|
317 |
+
</div>
|
318 |
+
</div>
|
319 |
+
|
320 |
+
<?php
|
321 |
+
}
|
322 |
+
|
323 |
+
|
324 |
+
/**
|
325 |
+
** Render Create Template Popup
|
326 |
+
*/
|
327 |
+
public static function render_create_template_popup() {
|
328 |
+
?>
|
329 |
+
|
330 |
+
<!-- Custom Template Popup -->
|
331 |
+
<div class="wpr-user-template-popup-wrap wpr-admin-popup-wrap">
|
332 |
+
<div class="wpr-user-template-popup wpr-admin-popup">
|
333 |
+
<header>
|
334 |
+
<h2><?php esc_html_e( 'Templates Help You Work Efficiently!', 'wpr-addons' ); ?></h2>
|
335 |
+
<p><?php esc_html_e( 'Use templates to create the different pieces of your site, and reuse them with one click whenever needed.', 'wpr-addons' ); ?></p>
|
336 |
+
</header>
|
337 |
+
|
338 |
+
<input type="text" name="user_template_title" class="wpr-user-template-title" placeholder="<?php esc_html_e( 'Enter Template Title', 'wpr-addons' ); ?>">
|
339 |
+
<input type="hidden" name="user_template_type" class="user-template-type">
|
340 |
+
<span class="wpr-create-template"><?php esc_html_e( 'Create Template', 'wpr-addons' ); ?></span>
|
341 |
+
<span class="close-popup dashicons dashicons-no-alt"></span>
|
342 |
+
</div>
|
343 |
+
</div>
|
344 |
+
|
345 |
+
<?php
|
346 |
+
}
|
347 |
+
|
348 |
+
/**
|
349 |
+
** Check if Library Template Exists
|
350 |
+
*/
|
351 |
+
public static function template_exists( $slug ) {
|
352 |
+
$result = false;
|
353 |
+
$wpr_templates = get_posts( ['post_type' => 'wpr_templates', 'posts_per_page' => '-1'] );
|
354 |
+
|
355 |
+
foreach ( $wpr_templates as $post ) {
|
356 |
+
|
357 |
+
if ( $slug === $post->post_name ) {
|
358 |
+
$result = true;
|
359 |
+
}
|
360 |
+
}
|
361 |
+
|
362 |
+
return $result;
|
363 |
+
}
|
364 |
+
|
365 |
}
|
admin/includes/wpr-templates-modal-popups.php
CHANGED
@@ -1,234 +1,234 @@
|
|
1 |
-
<?php
|
2 |
-
namespace WprAddons\Admin\Includes;
|
3 |
-
|
4 |
-
use WprAddons\Plugin;
|
5 |
-
use WprAddons\Classes\Utilities;
|
6 |
-
|
7 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
8 |
-
exit; // Exit if accessed directly.
|
9 |
-
}
|
10 |
-
|
11 |
-
/**
|
12 |
-
* WPR_Templates_Modal_Popups setup
|
13 |
-
*
|
14 |
-
* @since 1.0
|
15 |
-
*/
|
16 |
-
class WPR_Templates_Modal_Popups {
|
17 |
-
|
18 |
-
/**
|
19 |
-
** Instance of Elemenntor Frontend class.
|
20 |
-
*
|
21 |
-
** @var \Elementor\Frontend()
|
22 |
-
*/
|
23 |
-
private static $elementor_instance;
|
24 |
-
|
25 |
-
/**
|
26 |
-
** Constructor
|
27 |
-
*/
|
28 |
-
public function __construct() {
|
29 |
-
// Elementor Frontend
|
30 |
-
self::$elementor_instance = \Elementor\Plugin::instance();
|
31 |
-
|
32 |
-
add_action( 'template_include', [ $this, 'set_post_type_template' ], 9999 );
|
33 |
-
|
34 |
-
add_action( 'wp_footer', [ $this, 'render_popups' ] );
|
35 |
-
}
|
36 |
-
|
37 |
-
/**
|
38 |
-
* Set blank template for editor
|
39 |
-
*/
|
40 |
-
public function set_post_type_template( $template ) {
|
41 |
-
|
42 |
-
if ( is_singular( 'wpr_templates' ) ) {
|
43 |
-
if ( 'wpr-popups' === Utilities::get_elementor_template_type(get_the_ID()) && self::$elementor_instance->preview->is_preview_mode() ) {
|
44 |
-
$template = WPR_ADDONS_PATH . 'modules/popup/editor.php';
|
45 |
-
}
|
46 |
-
|
47 |
-
return $template;
|
48 |
-
}
|
49 |
-
|
50 |
-
return $template;
|
51 |
-
}
|
52 |
-
|
53 |
-
/**
|
54 |
-
** Popups
|
55 |
-
*/
|
56 |
-
public function render_popups() {
|
57 |
-
$conditions = json_decode( get_option('wpr_popup_conditions'), true );
|
58 |
-
|
59 |
-
if ( ! empty( $conditions ) ) {
|
60 |
-
$conditions = $this->reverse_template_conditions( $conditions );
|
61 |
-
|
62 |
-
// Global
|
63 |
-
if ( isset( $conditions['global'] ) ) {
|
64 |
-
WPR_Templates_Modal_Popups::display_popups_by_location( $conditions, 'global' );
|
65 |
-
}
|
66 |
-
|
67 |
-
// Custom
|
68 |
-
if ( wpr_fs()->can_use_premium_code() ) {
|
69 |
-
// Archive
|
70 |
-
\WprAddonsPro\Classes\Pro_Modules::archive_pages_popup_conditions( $conditions );
|
71 |
-
|
72 |
-
// Single
|
73 |
-
\WprAddonsPro\Classes\Pro_Modules::single_pages_popup_conditions( $conditions );
|
74 |
-
}
|
75 |
-
|
76 |
-
|
77 |
-
// Enqueue ScrolBar JS //TODO - check if displayed multiple times
|
78 |
-
wp_enqueue_script( 'wpr-popup-scroll-js', WPR_ADDONS_URL .'assets/js/lib/perfect-scrollbar/perfect-scrollbar.min.js', [ 'jquery' ], '0.4.9' );
|
79 |
-
}
|
80 |
-
}
|
81 |
-
|
82 |
-
/**
|
83 |
-
** Reverse Template Conditions
|
84 |
-
*/
|
85 |
-
public function reverse_template_conditions( $conditions ) {
|
86 |
-
$reverse = [];
|
87 |
-
|
88 |
-
foreach ( $conditions as $key => $condition ) {
|
89 |
-
foreach( $condition as $location ) {
|
90 |
-
if ( ! isset( $reverse[$location] ) ) {
|
91 |
-
$reverse[$location] = [ $key ];
|
92 |
-
} else {
|
93 |
-
array_push( $reverse[$location], $key );
|
94 |
-
}
|
95 |
-
}
|
96 |
-
}
|
97 |
-
|
98 |
-
return $reverse;
|
99 |
-
}
|
100 |
-
|
101 |
-
/**
|
102 |
-
** Display Popups by Location
|
103 |
-
*/
|
104 |
-
public static function display_popups_by_location( $conditions, $page ) {
|
105 |
-
foreach ( $conditions[$page] as $key => $popup ) {
|
106 |
-
WPR_Templates_Modal_Popups::render_popup_content( $popup );
|
107 |
-
}
|
108 |
-
}
|
109 |
-
|
110 |
-
/**
|
111 |
-
** Display Elementor Content
|
112 |
-
*/
|
113 |
-
public static function render_popup_content( $slug ) {
|
114 |
-
$template_name = '';
|
115 |
-
|
116 |
-
$template_id = Utilities::get_template_id( $slug );
|
117 |
-
$get_settings = WPR_Templates_Modal_Popups::get_template_settings( $slug );
|
118 |
-
$get_elementor_content = self::$elementor_instance->frontend->get_builder_content( $template_id, false );
|
119 |
-
|
120 |
-
if ( '' === $get_elementor_content ) {
|
121 |
-
return;
|
122 |
-
}
|
123 |
-
|
124 |
-
// Encode Settings
|
125 |
-
$get_encoded_settings = ! empty( $get_settings ) ? wp_json_encode( $get_settings ) : '[]';
|
126 |
-
|
127 |
-
// Template Settings Attribute
|
128 |
-
$template_settings_attr = "data-settings='". esc_attr($get_encoded_settings) ."'";
|
129 |
-
|
130 |
-
// Return if NOT available for current user
|
131 |
-
if ( ! WPR_Templates_Modal_Popups::check_available_user_roles( $get_settings['popup_show_for_roles'] ) ) {
|
132 |
-
return;
|
133 |
-
}
|
134 |
-
|
135 |
-
if ( ! self::$elementor_instance->preview->is_preview_mode() ) {
|
136 |
-
echo '<div id="wpr-popup-id-'. esc_attr($template_id) .'" class="wpr-template-popup" '. $template_settings_attr .'>'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
137 |
-
echo '<div class="wpr-template-popup-inner">';
|
138 |
-
|
139 |
-
// Popup Overlay & Close Button
|
140 |
-
echo '<div class="wpr-popup-overlay"></div>';
|
141 |
-
|
142 |
-
// Template Container
|
143 |
-
echo '<div class="wpr-popup-container">';
|
144 |
-
|
145 |
-
// Close Button
|
146 |
-
echo '<div class="wpr-popup-close-btn"><i class="eicon-close"></i></div>';
|
147 |
-
|
148 |
-
// Elementor Template Content
|
149 |
-
echo '<div class="wpr-popup-container-inner">';
|
150 |
-
echo ''. $get_elementor_content; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
151 |
-
echo '</div>';
|
152 |
-
|
153 |
-
echo '</div>';
|
154 |
-
|
155 |
-
echo '</div>';
|
156 |
-
echo '</div>';
|
157 |
-
}
|
158 |
-
}
|
159 |
-
|
160 |
-
/**
|
161 |
-
** Get Template Settings
|
162 |
-
*/
|
163 |
-
public static function get_template_settings( $slug ) {
|
164 |
-
$settings = [];
|
165 |
-
$defaults = [];
|
166 |
-
|
167 |
-
$template_id = Utilities::get_template_id( $slug );
|
168 |
-
$meta_settings = get_post_meta( $template_id, '_elementor_page_settings', true );
|
169 |
-
|
170 |
-
$popup_defaults = [
|
171 |
-
'popup_trigger' => 'load',
|
172 |
-
'popup_load_delay' => 1,
|
173 |
-
'popup_scroll_progress' => 10,
|
174 |
-
'popup_inactivity_time' => 15,
|
175 |
-
'popup_element_scroll' => '',
|
176 |
-
'popup_custom_trigger' => '',
|
177 |
-
'popup_specific_date' => date( 'Y-m-d H:i', strtotime( '+1 month' ) + ( get_option( 'gmt_offset' ) * HOUR_IN_SECONDS ) ),
|
178 |
-
'popup_stop_after_date' => false,
|
179 |
-
'popup_stop_after_date_select' => date( 'Y-m-d H:i', strtotime( '+1 day' ) + ( get_option( 'gmt_offset' ) * HOUR_IN_SECONDS ) ),
|
180 |
-
'popup_show_again_delay' => 1,
|
181 |
-
'popup_disable_esc_key' => false,
|
182 |
-
'popup_automatic_close_switch' => false,
|
183 |
-
'popup_automatic_close_delay' => 10,
|
184 |
-
'popup_animation' => 'fade',
|
185 |
-
'popup_animation_duration' => 1,
|
186 |
-
'popup_show_for_roles' => '',
|
187 |
-
'popup_show_via_referral' => false,
|
188 |
-
'popup_referral_keyword' => '',
|
189 |
-
'popup_display_as' => 'modal',
|
190 |
-
'popup_show_on_device' => true,
|
191 |
-
'popup_show_on_device_mobile' => true,
|
192 |
-
'popup_show_on_device_tablet' => true,
|
193 |
-
'popup_disable_page_scroll' => true,
|
194 |
-
'popup_overlay_disable_close' => false,
|
195 |
-
'popup_close_button_display_delay' => 0,
|
196 |
-
];
|
197 |
-
|
198 |
-
// Determine Template
|
199 |
-
if ( strpos( $slug, 'popup') ) {
|
200 |
-
$defaults = $popup_defaults;
|
201 |
-
}
|
202 |
-
|
203 |
-
foreach( $defaults as $option => $value ) {
|
204 |
-
if ( isset($meta_settings[$option]) ) {
|
205 |
-
$settings[$option] = $meta_settings[$option];
|
206 |
-
}
|
207 |
-
}
|
208 |
-
|
209 |
-
return array_merge( $defaults, $settings );
|
210 |
-
}
|
211 |
-
|
212 |
-
/**
|
213 |
-
** Check Available User Rols
|
214 |
-
*/
|
215 |
-
public static function check_available_user_roles( $selected_roles ) {
|
216 |
-
if ( empty( $selected_roles ) ) {
|
217 |
-
return true;
|
218 |
-
}
|
219 |
-
|
220 |
-
$current_user = wp_get_current_user();
|
221 |
-
|
222 |
-
if ( ! empty( $current_user->roles ) ) {
|
223 |
-
$role = $current_user->roles[0];
|
224 |
-
} else {
|
225 |
-
$role = 'guest';
|
226 |
-
}
|
227 |
-
|
228 |
-
if ( in_array( $role, $selected_roles ) ) {
|
229 |
-
return true;
|
230 |
-
}
|
231 |
-
|
232 |
-
return false;
|
233 |
-
}
|
234 |
}
|
1 |
+
<?php
|
2 |
+
namespace WprAddons\Admin\Includes;
|
3 |
+
|
4 |
+
use WprAddons\Plugin;
|
5 |
+
use WprAddons\Classes\Utilities;
|
6 |
+
|
7 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
8 |
+
exit; // Exit if accessed directly.
|
9 |
+
}
|
10 |
+
|
11 |
+
/**
|
12 |
+
* WPR_Templates_Modal_Popups setup
|
13 |
+
*
|
14 |
+
* @since 1.0
|
15 |
+
*/
|
16 |
+
class WPR_Templates_Modal_Popups {
|
17 |
+
|
18 |
+
/**
|
19 |
+
** Instance of Elemenntor Frontend class.
|
20 |
+
*
|
21 |
+
** @var \Elementor\Frontend()
|
22 |
+
*/
|
23 |
+
private static $elementor_instance;
|
24 |
+
|
25 |
+
/**
|
26 |
+
** Constructor
|
27 |
+
*/
|
28 |
+
public function __construct() {
|
29 |
+
// Elementor Frontend
|
30 |
+
self::$elementor_instance = \Elementor\Plugin::instance();
|
31 |
+
|
32 |
+
add_action( 'template_include', [ $this, 'set_post_type_template' ], 9999 );
|
33 |
+
|
34 |
+
add_action( 'wp_footer', [ $this, 'render_popups' ] );
|
35 |
+
}
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Set blank template for editor
|
39 |
+
*/
|
40 |
+
public function set_post_type_template( $template ) {
|
41 |
+
|
42 |
+
if ( is_singular( 'wpr_templates' ) ) {
|
43 |
+
if ( 'wpr-popups' === Utilities::get_elementor_template_type(get_the_ID()) && self::$elementor_instance->preview->is_preview_mode() ) {
|
44 |
+
$template = WPR_ADDONS_PATH . 'modules/popup/editor.php';
|
45 |
+
}
|
46 |
+
|
47 |
+
return $template;
|
48 |
+
}
|
49 |
+
|
50 |
+
return $template;
|
51 |
+
}
|
52 |
+
|
53 |
+
/**
|
54 |
+
** Popups
|
55 |
+
*/
|
56 |
+
public function render_popups() {
|
57 |
+
$conditions = json_decode( get_option('wpr_popup_conditions'), true );
|
58 |
+
|
59 |
+
if ( ! empty( $conditions ) ) {
|
60 |
+
$conditions = $this->reverse_template_conditions( $conditions );
|
61 |
+
|
62 |
+
// Global
|
63 |
+
if ( isset( $conditions['global'] ) ) {
|
64 |
+
WPR_Templates_Modal_Popups::display_popups_by_location( $conditions, 'global' );
|
65 |
+
}
|
66 |
+
|
67 |
+
// Custom
|
68 |
+
if ( wpr_fs()->can_use_premium_code() ) {
|
69 |
+
// Archive
|
70 |
+
\WprAddonsPro\Classes\Pro_Modules::archive_pages_popup_conditions( $conditions );
|
71 |
+
|
72 |
+
// Single
|
73 |
+
\WprAddonsPro\Classes\Pro_Modules::single_pages_popup_conditions( $conditions );
|
74 |
+
}
|
75 |
+
|
76 |
+
|
77 |
+
// Enqueue ScrolBar JS //TODO - check if displayed multiple times
|
78 |
+
wp_enqueue_script( 'wpr-popup-scroll-js', WPR_ADDONS_URL .'assets/js/lib/perfect-scrollbar/perfect-scrollbar.min.js', [ 'jquery' ], '0.4.9' );
|
79 |
+
}
|
80 |
+
}
|
81 |
+
|
82 |
+
/**
|
83 |
+
** Reverse Template Conditions
|
84 |
+
*/
|
85 |
+
public function reverse_template_conditions( $conditions ) {
|
86 |
+
$reverse = [];
|
87 |
+
|
88 |
+
foreach ( $conditions as $key => $condition ) {
|
89 |
+
foreach( $condition as $location ) {
|
90 |
+
if ( ! isset( $reverse[$location] ) ) {
|
91 |
+
$reverse[$location] = [ $key ];
|
92 |
+
} else {
|
93 |
+
array_push( $reverse[$location], $key );
|
94 |
+
}
|
95 |
+
}
|
96 |
+
}
|
97 |
+
|
98 |
+
return $reverse;
|
99 |
+
}
|
100 |
+
|
101 |
+
/**
|
102 |
+
** Display Popups by Location
|
103 |
+
*/
|
104 |
+
public static function display_popups_by_location( $conditions, $page ) {
|
105 |
+
foreach ( $conditions[$page] as $key => $popup ) {
|
106 |
+
WPR_Templates_Modal_Popups::render_popup_content( $popup );
|
107 |
+
}
|
108 |
+
}
|
109 |
+
|
110 |
+
/**
|
111 |
+
** Display Elementor Content
|
112 |
+
*/
|
113 |
+
public static function render_popup_content( $slug ) {
|
114 |
+
$template_name = '';
|
115 |
+
|
116 |
+
$template_id = Utilities::get_template_id( $slug );
|
117 |
+
$get_settings = WPR_Templates_Modal_Popups::get_template_settings( $slug );
|
118 |
+
$get_elementor_content = self::$elementor_instance->frontend->get_builder_content( $template_id, false );
|
119 |
+
|
120 |
+
if ( '' === $get_elementor_content ) {
|
121 |
+
return;
|
122 |
+
}
|
123 |
+
|
124 |
+
// Encode Settings
|
125 |
+
$get_encoded_settings = ! empty( $get_settings ) ? wp_json_encode( $get_settings ) : '[]';
|
126 |
+
|
127 |
+
// Template Settings Attribute
|
128 |
+
$template_settings_attr = "data-settings='". esc_attr($get_encoded_settings) ."'";
|
129 |
+
|
130 |
+
// Return if NOT available for current user
|
131 |
+
if ( ! WPR_Templates_Modal_Popups::check_available_user_roles( $get_settings['popup_show_for_roles'] ) ) {
|
132 |
+
return;
|
133 |
+
}
|
134 |
+
|
135 |
+
if ( ! self::$elementor_instance->preview->is_preview_mode() ) {
|
136 |
+
echo '<div id="wpr-popup-id-'. esc_attr($template_id) .'" class="wpr-template-popup" '. $template_settings_attr .'>'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
137 |
+
echo '<div class="wpr-template-popup-inner">';
|
138 |
+
|
139 |
+
// Popup Overlay & Close Button
|
140 |
+
echo '<div class="wpr-popup-overlay"></div>';
|
141 |
+
|
142 |
+
// Template Container
|
143 |
+
echo '<div class="wpr-popup-container">';
|
144 |
+
|
145 |
+
// Close Button
|
146 |
+
echo '<div class="wpr-popup-close-btn"><i class="eicon-close"></i></div>';
|
147 |
+
|
148 |
+
// Elementor Template Content
|
149 |
+
echo '<div class="wpr-popup-container-inner">';
|
150 |
+
echo ''. $get_elementor_content; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
151 |
+
echo '</div>';
|
152 |
+
|
153 |
+
echo '</div>';
|
154 |
+
|
155 |
+
echo '</div>';
|
156 |
+
echo '</div>';
|
157 |
+
}
|
158 |
+
}
|
159 |
+
|
160 |
+
/**
|
161 |
+
** Get Template Settings
|
162 |
+
*/
|
163 |
+
public static function get_template_settings( $slug ) {
|
164 |
+
$settings = [];
|
165 |
+
$defaults = [];
|
166 |
+
|
167 |
+
$template_id = Utilities::get_template_id( $slug );
|
168 |
+
$meta_settings = get_post_meta( $template_id, '_elementor_page_settings', true );
|
169 |
+
|
170 |
+
$popup_defaults = [
|
171 |
+
'popup_trigger' => 'load',
|
172 |
+
'popup_load_delay' => 1,
|
173 |
+
'popup_scroll_progress' => 10,
|
174 |
+
'popup_inactivity_time' => 15,
|
175 |
+
'popup_element_scroll' => '',
|
176 |
+
'popup_custom_trigger' => '',
|
177 |
+
'popup_specific_date' => date( 'Y-m-d H:i', strtotime( '+1 month' ) + ( get_option( 'gmt_offset' ) * HOUR_IN_SECONDS ) ),
|
178 |
+
'popup_stop_after_date' => false,
|
179 |
+
'popup_stop_after_date_select' => date( 'Y-m-d H:i', strtotime( '+1 day' ) + ( get_option( 'gmt_offset' ) * HOUR_IN_SECONDS ) ),
|
180 |
+
'popup_show_again_delay' => 1,
|
181 |
+
'popup_disable_esc_key' => false,
|
182 |
+
'popup_automatic_close_switch' => false,
|
183 |
+
'popup_automatic_close_delay' => 10,
|
184 |
+
'popup_animation' => 'fade',
|
185 |
+
'popup_animation_duration' => 1,
|
186 |
+
'popup_show_for_roles' => '',
|
187 |
+
'popup_show_via_referral' => false,
|
188 |
+
'popup_referral_keyword' => '',
|
189 |
+
'popup_display_as' => 'modal',
|
190 |
+
'popup_show_on_device' => true,
|
191 |
+
'popup_show_on_device_mobile' => true,
|
192 |
+
'popup_show_on_device_tablet' => true,
|
193 |
+
'popup_disable_page_scroll' => true,
|
194 |
+
'popup_overlay_disable_close' => false,
|
195 |
+
'popup_close_button_display_delay' => 0,
|
196 |
+
];
|
197 |
+
|
198 |
+
// Determine Template
|
199 |
+
if ( strpos( $slug, 'popup') ) {
|
200 |
+
$defaults = $popup_defaults;
|
201 |
+
}
|
202 |
+
|
203 |
+
foreach( $defaults as $option => $value ) {
|
204 |
+
if ( isset($meta_settings[$option]) ) {
|
205 |
+
$settings[$option] = $meta_settings[$option];
|
206 |
+
}
|
207 |
+
}
|
208 |
+
|
209 |
+
return array_merge( $defaults, $settings );
|
210 |
+
}
|
211 |
+
|
212 |
+
/**
|
213 |
+
** Check Available User Rols
|
214 |
+
*/
|
215 |
+
public static function check_available_user_roles( $selected_roles ) {
|
216 |
+
if ( empty( $selected_roles ) ) {
|
217 |
+
return true;
|
218 |
+
}
|
219 |
+
|
220 |
+
$current_user = wp_get_current_user();
|
221 |
+
|
222 |
+
if ( ! empty( $current_user->roles ) ) {
|
223 |
+
$role = $current_user->roles[0];
|
224 |
+
} else {
|
225 |
+
$role = 'guest';
|
226 |
+
}
|
227 |
+
|
228 |
+
if ( in_array( $role, $selected_roles ) ) {
|
229 |
+
return true;
|
230 |
+
}
|
231 |
+
|
232 |
+
return false;
|
233 |
+
}
|
234 |
}
|
admin/includes/wpr-templates-shortcode.php
CHANGED
@@ -1,70 +1,70 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
namespace WprAddons\Admin\Includes;
|
4 |
-
|
5 |
-
use Elementor;
|
6 |
-
|
7 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
8 |
-
exit; // Exit if accessed directly.
|
9 |
-
}
|
10 |
-
|
11 |
-
/**
|
12 |
-
* WPR_Templates_Shortcode setup
|
13 |
-
*
|
14 |
-
* @since 1.0
|
15 |
-
*/
|
16 |
-
class WPR_Templates_Shortcode {
|
17 |
-
|
18 |
-
public function __construct() {
|
19 |
-
add_shortcode( 'wpr-template', [ $this, 'shortcode' ] );
|
20 |
-
|
21 |
-
add_action('elementor/element/after_section_start', [ $this, 'extend_shortcode' ], 10, 3 );
|
22 |
-
}
|
23 |
-
|
24 |
-
public function shortcode( $attributes = [] ) {
|
25 |
-
if ( empty( $attributes['id'] ) ) {
|
26 |
-
return '';
|
27 |
-
}
|
28 |
-
|
29 |
-
$edit_link = '<span class="wpr-template-edit-btn" data-permalink="'. esc_url(get_permalink($attributes['id'])) .'">Edit Template</span>';
|
30 |
-
|
31 |
-
$type = get_post_meta(get_the_ID(), '_wpr_template_type', true);
|
32 |
-
$has_css = 'internal' === get_option( 'elementor_css_print_method' ) || '' !== $type;
|
33 |
-
|
34 |
-
return Elementor\Plugin::instance()->frontend->get_builder_content_for_display( $attributes['id'], $has_css ) . $edit_link;
|
35 |
-
}
|
36 |
-
|
37 |
-
public function extend_shortcode( $section, $section_id, $args ) {
|
38 |
-
if ( $section->get_name() == 'shortcode' && $section_id == 'section_shortcode' ) {
|
39 |
-
$templates_select = [];
|
40 |
-
|
41 |
-
// Get All Templates
|
42 |
-
$templates = get_posts( [
|
43 |
-
'post_type' => array( 'elementor_library' ),
|
44 |
-
'post_status' => array( 'publish' ),
|
45 |
-
'meta_key' => '_elementor_template_type',
|
46 |
-
'meta_value' => ['page', 'section'],
|
47 |
-
'numberposts' => -1
|
48 |
-
] );
|
49 |
-
|
50 |
-
if ( ! empty( $templates ) ) {
|
51 |
-
foreach ( $templates as $template ) {
|
52 |
-
$templates_select[$template->ID] = $template->post_title;
|
53 |
-
}
|
54 |
-
}
|
55 |
-
|
56 |
-
$section->add_control(
|
57 |
-
'select_template' ,
|
58 |
-
[
|
59 |
-
'label' => esc_html__( 'Select Template', 'wpr-addons' ),
|
60 |
-
'type' => Elementor\Controls_Manager::SELECT2,
|
61 |
-
'options' => $templates_select,
|
62 |
-
]
|
63 |
-
);
|
64 |
-
|
65 |
-
// Restore original Post Data
|
66 |
-
wp_reset_postdata();
|
67 |
-
}
|
68 |
-
}
|
69 |
-
|
70 |
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
namespace WprAddons\Admin\Includes;
|
4 |
+
|
5 |
+
use Elementor;
|
6 |
+
|
7 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
8 |
+
exit; // Exit if accessed directly.
|
9 |
+
}
|
10 |
+
|
11 |
+
/**
|
12 |
+
* WPR_Templates_Shortcode setup
|
13 |
+
*
|
14 |
+
* @since 1.0
|
15 |
+
*/
|
16 |
+
class WPR_Templates_Shortcode {
|
17 |
+
|
18 |
+
public function __construct() {
|
19 |
+
add_shortcode( 'wpr-template', [ $this, 'shortcode' ] );
|
20 |
+
|
21 |
+
add_action('elementor/element/after_section_start', [ $this, 'extend_shortcode' ], 10, 3 );
|
22 |
+
}
|
23 |
+
|
24 |
+
public function shortcode( $attributes = [] ) {
|
25 |
+
if ( empty( $attributes['id'] ) ) {
|
26 |
+
return '';
|
27 |
+
}
|
28 |
+
|
29 |
+
$edit_link = '<span class="wpr-template-edit-btn" data-permalink="'. esc_url(get_permalink($attributes['id'])) .'">Edit Template</span>';
|
30 |
+
|
31 |
+
$type = get_post_meta(get_the_ID(), '_wpr_template_type', true);
|
32 |
+
$has_css = 'internal' === get_option( 'elementor_css_print_method' ) || '' !== $type;
|
33 |
+
|
34 |
+
return Elementor\Plugin::instance()->frontend->get_builder_content_for_display( $attributes['id'], $has_css ) . $edit_link;
|
35 |
+
}
|
36 |
+
|
37 |
+
public function extend_shortcode( $section, $section_id, $args ) {
|
38 |
+
if ( $section->get_name() == 'shortcode' && $section_id == 'section_shortcode' ) {
|
39 |
+
$templates_select = [];
|
40 |
+
|
41 |
+
// Get All Templates
|
42 |
+
$templates = get_posts( [
|
43 |
+
'post_type' => array( 'elementor_library' ),
|
44 |
+
'post_status' => array( 'publish' ),
|
45 |
+
'meta_key' => '_elementor_template_type',
|
46 |
+
'meta_value' => ['page', 'section'],
|
47 |
+
'numberposts' => -1
|
48 |
+
] );
|
49 |
+
|
50 |
+
if ( ! empty( $templates ) ) {
|
51 |
+
foreach ( $templates as $template ) {
|
52 |
+
$templates_select[$template->ID] = $template->post_title;
|
53 |
+
}
|
54 |
+
}
|
55 |
+
|
56 |
+
$section->add_control(
|
57 |
+
'select_template' ,
|
58 |
+
[
|
59 |
+
'label' => esc_html__( 'Select Template', 'wpr-addons' ),
|
60 |
+
'type' => Elementor\Controls_Manager::SELECT2,
|
61 |
+
'options' => $templates_select,
|
62 |
+
]
|
63 |
+
);
|
64 |
+
|
65 |
+
// Restore original Post Data
|
66 |
+
wp_reset_postdata();
|
67 |
+
}
|
68 |
+
}
|
69 |
+
|
70 |
}
|
admin/mega-menu.php
CHANGED
@@ -1,376 +1,376 @@
|
|
1 |
-
<?php
|
2 |
-
use WprAddons\Plugin;
|
3 |
-
|
4 |
-
// Register Post Type
|
5 |
-
function register_mega_menu_cpt() {
|
6 |
-
$args = array(
|
7 |
-
'label' => esc_html__( 'Royal Mega Menu', 'wpr-addons' ),
|
8 |
-
'public' => true,
|
9 |
-
'publicly_queryable' => true,
|
10 |
-
'rewrite' => false,
|
11 |
-
'show_ui' => true,
|
12 |
-
'show_in_menu' => false,
|
13 |
-
'show_in_nav_menus' => false,
|
14 |
-
'exclude_from_search' => true,
|
15 |
-
'capability_type' => 'post',
|
16 |
-
'supports' => array( 'title', 'editor', 'elementor' ),
|
17 |
-
'hierarchical' => false,
|
18 |
-
);
|
19 |
-
|
20 |
-
register_post_type( 'wpr_mega_menu', $args );
|
21 |
-
}
|
22 |
-
|
23 |
-
// Convert to Canvas Template
|
24 |
-
function convert_to_canvas_template( $template ) {
|
25 |
-
if ( is_singular('wpr_mega_menu') ) {
|
26 |
-
$template = WPR_ADDONS_PATH . 'admin/templates/wpr-canvas.php';
|
27 |
-
}
|
28 |
-
|
29 |
-
return $template;
|
30 |
-
}
|
31 |
-
|
32 |
-
// Init Mega Menu
|
33 |
-
function init_mega_menu() {
|
34 |
-
register_mega_menu_cpt();
|
35 |
-
add_action( 'template_include', 'convert_to_canvas_template', 9999 );
|
36 |
-
}
|
37 |
-
|
38 |
-
add_action('init', 'init_mega_menu', 999);
|
39 |
-
|
40 |
-
|
41 |
-
// Confinue only for Dashboard Screen
|
42 |
-
if ( !is_admin() ) return;
|
43 |
-
|
44 |
-
// Init Actions
|
45 |
-
add_filter( 'option_elementor_cpt_support', 'add_mega_menu_cpt_support' );
|
46 |
-
add_filter( 'default_option_elementor_cpt_support', 'add_mega_menu_cpt_support' );
|
47 |
-
add_action( 'admin_footer', 'render_settings_popup', 10 );
|
48 |
-
add_action( 'wp_ajax_wpr_create_mega_menu_template', 'wpr_create_mega_menu_template' );
|
49 |
-
add_action( 'wp_ajax_wpr_save_mega_menu_settings', 'wpr_save_mega_menu_settings' );
|
50 |
-
add_action( 'admin_enqueue_scripts', 'enqueue_scripts' );
|
51 |
-
|
52 |
-
// Add Elementor Editor Support
|
53 |
-
function add_mega_menu_cpt_support( $value ) {
|
54 |
-
if ( empty( $value ) ) {
|
55 |
-
$value = [];
|
56 |
-
}
|
57 |
-
|
58 |
-
return array_merge( $value, ['wpr_mega_menu'] );
|
59 |
-
}
|
60 |
-
|
61 |
-
// Create Menu Template
|
62 |
-
function wpr_create_mega_menu_template() {
|
63 |
-
if ( ! current_user_can( 'manage_options' ) ) {
|
64 |
-
return;
|
65 |
-
}
|
66 |
-
|
67 |
-
// $menu_id = intval( $_REQUEST['menu'] );
|
68 |
-
// $menu_item_id = intval( $_REQUEST['item'] );
|
69 |
-
$menu_item_id = intval( $_POST['item_id'] );
|
70 |
-
$mega_menu_id = get_post_meta( $menu_item_id, 'wpr-mega-menu-item', true );
|
71 |
-
|
72 |
-
if ( ! $mega_menu_id ) {
|
73 |
-
|
74 |
-
$mega_menu_id = wp_insert_post( array(
|
75 |
-
'post_title' => 'wpr-mega-menu-item-' . $menu_item_id,
|
76 |
-
'post_status' => 'publish',
|
77 |
-
'post_type' => 'wpr_mega_menu',
|
78 |
-
) );
|
79 |
-
|
80 |
-
update_post_meta( $menu_item_id, 'wpr-mega-menu-item', $mega_menu_id );
|
81 |
-
|
82 |
-
}
|
83 |
-
|
84 |
-
$edit_link = add_query_arg(
|
85 |
-
array(
|
86 |
-
'post' => $mega_menu_id,
|
87 |
-
'action' => 'elementor',
|
88 |
-
),
|
89 |
-
admin_url( 'post.php' )
|
90 |
-
);
|
91 |
-
|
92 |
-
wp_send_json([
|
93 |
-
'data' => [
|
94 |
-
'edit_link' => $edit_link
|
95 |
-
]
|
96 |
-
]);
|
97 |
-
}
|
98 |
-
|
99 |
-
// Render Settings Popup
|
100 |
-
function render_settings_popup() {
|
101 |
-
$screen = get_current_screen();
|
102 |
-
|
103 |
-
if ( 'nav-menus' !== $screen->base ) {
|
104 |
-
return;
|
105 |
-
}
|
106 |
-
|
107 |
-
?>
|
108 |
-
|
109 |
-
<div class="wpr-mm-settings-popup-wrap">
|
110 |
-
<div class="wpr-mm-settings-popup">
|
111 |
-
<div class="wpr-mm-settings-popup-header">
|
112 |
-
<span class="wpr-mm-popup-logo" style="background:url('<?php echo WPR_ADDONS_ASSETS_URL .'img/logo-40x40.png'; ?>') no-repeat center center / contain;">RE</span>
|
113 |
-
<span><?php esc_html_e('Royal Mega Menu', 'wpr-addons'); ?></span>
|
114 |
-
<span class="wpr-mm-popup-title"><?php esc_html_e('Menu Item: ', 'wpr-addons'); ?><span></span></span>
|
115 |
-
<span class="dashicons dashicons-no-alt wpr-mm-settings-close-popup-btn"></span>
|
116 |
-
</div>
|
117 |
-
|
118 |
-
<?php $pro_active = wpr_fs()->can_use_premium_code() ? 'data-pro-active="true"' : 'data-pro-active="false"'; ?>
|
119 |
-
|
120 |
-
<div class="wpr-mm-settings-wrap" <?php echo $pro_active; ?>>
|
121 |
-
<h4><?php esc_html_e('General', 'wpr-addons'); ?></h4>
|
122 |
-
<div class="wpr-mm-setting wpr-mm-setting-switcher">
|
123 |
-
<h4><?php esc_html_e('Enable Mega Menu', 'wpr-addons'); ?></h4>
|
124 |
-
<input type="checkbox" id="wpr_mm_enable">
|
125 |
-
<label for="wpr_mm_enable"></label>
|
126 |
-
</div>
|
127 |
-
<div class="wpr-mm-setting">
|
128 |
-
<h4><?php esc_html_e('Mega Menu Content', 'wpr-addons'); ?></h4>
|
129 |
-
<button class="button button-primary wpr-edit-mega-menu-btn">
|
130 |
-
<i class="eicon-elementor-square" aria-hidden="true"></i>
|
131 |
-
<?php esc_html_e('Edit with Elementor', 'wpr-addons'); ?>
|
132 |
-
</button>
|
133 |
-
</div>
|
134 |
-
<div class="wpr-mm-setting">
|
135 |
-
<h4><?php esc_html_e('Dropdown Position', 'wpr-addons'); ?></h4>
|
136 |
-
<select id="wpr_mm_position">
|
137 |
-
<option value="default"><?php esc_html_e('Default', 'wpr-addons'); ?></option>
|
138 |
-
<option value="relative"><?php esc_html_e('Relative', 'wpr-addons'); ?></option>
|
139 |
-
</select>
|
140 |
-
</div>
|
141 |
-
<div class="wpr-mm-setting">
|
142 |
-
<h4><?php esc_html_e('Dropdown Width', 'wpr-addons'); ?></h4>
|
143 |
-
<select id="wpr_mm_width">
|
144 |
-
<option value="default"><?php esc_html_e('Default', 'wpr-addons'); ?></option>
|
145 |
-
<?php if ( ! wpr_fs()->can_use_premium_code() ) : ?>
|
146 |
-
<option value="pro-st"><?php esc_html_e('Fit to Section (Pro)', 'wpr-addons'); ?></option>
|
147 |
-
<?php else: ?>
|
148 |
-
<option value="stretch"><?php esc_html_e('Fit to Section', 'wpr-addons'); ?></option>
|
149 |
-
<?php endif; ?>
|
150 |
-
<option value="full"><?php esc_html_e('Full Width', 'wpr-addons'); ?></option>
|
151 |
-
<option value="custom"><?php esc_html_e('Custom', 'wpr-addons'); ?></option>
|
152 |
-
</select>
|
153 |
-
</div>
|
154 |
-
<div class="wpr-mm-setting">
|
155 |
-
<h4><?php esc_html_e('Custom Width (px)', 'wpr-addons'); ?></h4>
|
156 |
-
<input type="number" id="wpr_mm_custom_width" value="600">
|
157 |
-
</div>
|
158 |
-
<div class="wpr-mm-setting <?php echo !wpr_fs()->can_use_premium_code() ? 'wpr-mm-pro-setting' : ''; ?>">
|
159 |
-
<h4><?php esc_html_e('Mobile Sub Content', 'wpr-addons'); ?></h4>
|
160 |
-
<div>
|
161 |
-
<select id="wpr_mm_mobile_content">
|
162 |
-
<option value="mega"><?php esc_html_e('Mega Menu', 'wpr-addons'); ?></option>
|
163 |
-
<option value="wp-sub"><?php esc_html_e('WordPress Sub Items', 'wpr-addons'); ?></option>
|
164 |
-
</select>
|
165 |
-
|
166 |
-
<div class="wpr-mm-pro-radio">
|
167 |
-
<input type="radio" name="mc" checked="checked">
|
168 |
-
<label>Mega Menu</label><br>
|
169 |
-
<input type="radio" name="mc">
|
170 |
-
<label>WordPress Sub Items</label>
|
171 |
-
</div>
|
172 |
-
</div>
|
173 |
-
</div>
|
174 |
-
<div class="wpr-mm-setting <?php echo !wpr_fs()->can_use_premium_code() ? 'wpr-mm-pro-setting' : ''; ?>">
|
175 |
-
<h4><?php esc_html_e('Mobile Sub Render', 'wpr-addons'); ?></h4>
|
176 |
-
<div>
|
177 |
-
<select id="wpr_mm_render">
|
178 |
-
<option value="default"><?php esc_html_e('Default', 'wpr-addons'); ?></option>
|
179 |
-
<option value="ajax"><?php esc_html_e('Load with AJAX', 'wpr-addons'); ?></option>
|
180 |
-
</select>
|
181 |
-
|
182 |
-
<div class="wpr-mm-pro-radio">
|
183 |
-
<input type="radio" name="mr" checked="checked">
|
184 |
-
<label>Default</label><br>
|
185 |
-
<input type="radio" name="mr">
|
186 |
-
<label>Load with AJAX</label>
|
187 |
-
</div>
|
188 |
-
</div>
|
189 |
-
</div>
|
190 |
-
|
191 |
-
<br>
|
192 |
-
|
193 |
-
<h4 <?php echo !wpr_fs()->can_use_premium_code() ? 'class="wpr-mm-pro-heading"' : ''; ?>>
|
194 |
-
<?php esc_html_e('Icon', 'wpr-addons'); ?>
|
195 |
-
</h4>
|
196 |
-
<div <?php echo !wpr_fs()->can_use_premium_code() ? 'class="wpr-mm-pro-section"' : ''; ?>>
|
197 |
-
<div class="wpr-mm-setting wpr-mm-setting-icon">
|
198 |
-
<h4><?php esc_html_e('Icon Select', 'wpr-addons'); ?></h4>
|
199 |
-
<div><span class="wpr-mm-active-icon"><i class="fas fa-ban"></i></span><span><i class="fas fa-angle-down"></i></span></div>
|
200 |
-
<input type="text" id="wpr_mm_icon_picker" data-alpha="true" value="">
|
201 |
-
</div>
|
202 |
-
<div class="wpr-mm-setting wpr-mm-setting-color">
|
203 |
-
<h4><?php esc_html_e('Icon Color', 'wpr-addons'); ?></h4>
|
204 |
-
<input type="text" id="wpr_mm_icon_color" data-alpha="true" value="rgba(0,0,0,0.6);">
|
205 |
-
</div>
|
206 |
-
<div class="wpr-mm-setting">
|
207 |
-
<h4><?php esc_html_e('Icon Size (px)', 'wpr-addons'); ?></h4>
|
208 |
-
<input type="number" id="wpr_mm_icon_size" value="14">
|
209 |
-
</div>
|
210 |
-
</div>
|
211 |
-
|
212 |
-
<br>
|
213 |
-
|
214 |
-
<h4 <?php echo !wpr_fs()->can_use_premium_code() ? 'class="wpr-mm-pro-heading"' : ''; ?>>
|
215 |
-
<?php esc_html_e('Badge', 'wpr-addons'); ?>
|
216 |
-
</h4>
|
217 |
-
<div <?php echo !wpr_fs()->can_use_premium_code() ? 'class="wpr-mm-pro-section"' : ''; ?>>
|
218 |
-
<div class="wpr-mm-setting">
|
219 |
-
<h4><?php esc_html_e('Badge Text', 'wpr-addons'); ?></h4>
|
220 |
-
<input type="text" id="wpr_mm_badge_text" value="">
|
221 |
-
</div>
|
222 |
-
<div class="wpr-mm-setting wpr-mm-setting-color">
|
223 |
-
<h4><?php esc_html_e('Badge Text Color', 'wpr-addons'); ?></h4>
|
224 |
-
<input type="text" id="wpr_mm_badge_color" data-alpha="true" value="rgba(0,0,0,0.6);">
|
225 |
-
</div>
|
226 |
-
<div class="wpr-mm-setting wpr-mm-setting-color">
|
227 |
-
<h4><?php esc_html_e('Badge Background Color', 'wpr-addons'); ?></h4>
|
228 |
-
<input type="text" id="wpr_mm_badge_bg_color" data-alpha="true" value="rgba(0,0,0,0.6);">
|
229 |
-
</div>
|
230 |
-
<div class="wpr-mm-setting wpr-mm-setting-switcher">
|
231 |
-
<h4><?php esc_html_e('Enable Animation', 'wpr-addons'); ?></h4>
|
232 |
-
<input type="checkbox" id="wpr_mm_badge_animation">
|
233 |
-
<label for="wpr_mm_badge_animation"></label>
|
234 |
-
</div>
|
235 |
-
</div>
|
236 |
-
</div>
|
237 |
-
|
238 |
-
<div class="wpr-mm-settings-popup-footer">
|
239 |
-
<button class="button wpr-save-mega-menu-btn"><?php esc_html_e('Save', 'wpr-addons'); ?></button>
|
240 |
-
</div>
|
241 |
-
</div>
|
242 |
-
</div>
|
243 |
-
|
244 |
-
<!-- Iframe Popup -->
|
245 |
-
<div class="wpr-mm-editor-popup-wrap">
|
246 |
-
<div class="wpr-mm-editor-close-popup-btn"><span class="dashicons dashicons-no-alt"></span></div>
|
247 |
-
<div class="wpr-mm-editor-popup-iframe"></div>
|
248 |
-
</div>
|
249 |
-
<?php
|
250 |
-
}
|
251 |
-
|
252 |
-
// Save Mega Menu Settings
|
253 |
-
function wpr_save_mega_menu_settings() {
|
254 |
-
if ( isset($_POST['item_settings']) ) {
|
255 |
-
update_post_meta( $_POST['item_id'], 'wpr-mega-menu-settings', $_POST['item_settings'] );
|
256 |
-
}
|
257 |
-
|
258 |
-
wp_send_json_success($_POST['item_settings']);
|
259 |
-
}
|
260 |
-
|
261 |
-
// Get Menu Items Data
|
262 |
-
function get_menu_items_data( $menu_id = false ) {
|
263 |
-
|
264 |
-
if ( ! $menu_id ) {
|
265 |
-
return false;
|
266 |
-
}
|
267 |
-
|
268 |
-
$menu = wp_get_nav_menu_object( $menu_id );
|
269 |
-
|
270 |
-
$menu_items = wp_get_nav_menu_items( $menu );
|
271 |
-
|
272 |
-
if ( ! $menu_items ) {
|
273 |
-
return false;
|
274 |
-
}
|
275 |
-
|
276 |
-
return $menu_items;
|
277 |
-
}
|
278 |
-
|
279 |
-
// Get Mega Menu Item Settings
|
280 |
-
function get_menu_items_settings() {
|
281 |
-
$menu_items = get_menu_items_data( get_selected_menu_id() );
|
282 |
-
|
283 |
-
$settings = [];
|
284 |
-
|
285 |
-
if ( ! $menu_items ) {
|
286 |
-
return [];
|
287 |
-
} else {
|
288 |
-
foreach ( $menu_items as $key => $item_object ) {
|
289 |
-
$item_id = $item_object->ID;
|
290 |
-
|
291 |
-
$item_meta = get_post_meta( $item_id, 'wpr-mega-menu-settings', true );
|
292 |
-
|
293 |
-
if ( !empty($item_meta) ) {
|
294 |
-
$settings[ $item_id ] = $item_meta;
|
295 |
-
} else {
|
296 |
-
$settings[ $item_id ] = [];
|
297 |
-
}
|
298 |
-
}
|
299 |
-
|
300 |
-
return $settings;
|
301 |
-
}
|
302 |
-
}
|
303 |
-
|
304 |
-
/**
|
305 |
-
* Get the Selected menu ID
|
306 |
-
* @author Tom Hemsley (https://wordpress.org/plugins/megamenu/)
|
307 |
-
*/
|
308 |
-
function get_selected_menu_id() {
|
309 |
-
$nav_menus = wp_get_nav_menus( array('orderby' => 'name') );
|
310 |
-
$menu_count = count( $nav_menus );
|
311 |
-
$nav_menu_selected_id = isset( $_REQUEST['menu'] ) ? (int) $_REQUEST['menu'] : 0;
|
312 |
-
$add_new_screen = ( isset( $_GET['menu'] ) && 0 == $_GET['menu'] ) ? true : false;
|
313 |
-
|
314 |
-
$current_menu_id = $nav_menu_selected_id;
|
315 |
-
|
316 |
-
// If we have one theme location, and zero menus, we take them right into editing their first menu
|
317 |
-
$page_count = wp_count_posts( 'page' );
|
318 |
-
$one_theme_location_no_menus = ( 1 == count( get_registered_nav_menus() ) && ! $add_new_screen && empty( $nav_menus ) && ! empty( $page_count->publish ) ) ? true : false;
|
319 |
-
|
320 |
-
// Get recently edited nav menu
|
321 |
-
$recently_edited = absint( get_user_option( 'nav_menu_recently_edited' ) );
|
322 |
-
if ( empty( $recently_edited ) && is_nav_menu( $current_menu_id ) ) {
|
323 |
-
$recently_edited = $current_menu_id;
|
324 |
-
}
|
325 |
-
|
326 |
-
// Use $recently_edited if none are selected
|
327 |
-
if ( empty( $current_menu_id ) && ! isset( $_GET['menu'] ) && is_nav_menu( $recently_edited ) ) {
|
328 |
-
$current_menu_id = $recently_edited;
|
329 |
-
}
|
330 |
-
|
331 |
-
// On deletion of menu, if another menu exists, show it
|
332 |
-
if ( ! $add_new_screen && 0 < $menu_count && isset( $_GET['action'] ) && 'delete' == $_GET['action'] ) {
|
333 |
-
$current_menu_id = $nav_menus[0]->term_id;
|
334 |
-
}
|
335 |
-
|
336 |
-
// Set $current_menu_id to 0 if no menus
|
337 |
-
if ( $one_theme_location_no_menus ) {
|
338 |
-
$current_menu_id = 0;
|
339 |
-
} elseif ( empty( $current_menu_id ) && ! empty( $nav_menus ) && ! $add_new_screen ) {
|
340 |
-
// if we have no selection yet, and we have menus, set to the first one in the list
|
341 |
-
$current_menu_id = $nav_menus[0]->term_id;
|
342 |
-
}
|
343 |
-
|
344 |
-
return $current_menu_id;
|
345 |
-
|
346 |
-
}
|
347 |
-
|
348 |
-
// Enqueue Scripts and Styles
|
349 |
-
function enqueue_scripts( $hook ) {
|
350 |
-
|
351 |
-
// Get Plugin Version
|
352 |
-
$version = Plugin::instance()->get_version();
|
353 |
-
|
354 |
-
// Deny if NOT a Menu Page
|
355 |
-
if ( 'nav-menus.php' == $hook ) {
|
356 |
-
|
357 |
-
// Color Picker
|
358 |
-
wp_enqueue_style( 'wp-color-picker' );
|
359 |
-
wp_enqueue_script( 'wp-color-picker-alpha', WPR_ADDONS_URL .'assets/js/admin/lib/wp-color-picker-alpha.min.js', ['jquery', 'wp-color-picker'], $version, true );
|
360 |
-
|
361 |
-
// Icon Picker
|
362 |
-
wp_enqueue_script( 'wpr-iconpicker-js', WPR_ADDONS_URL .'assets/js/admin/lib/iconpicker/fontawesome-iconpicker.min.js', ['jquery'], $version, true );
|
363 |
-
wp_enqueue_style( 'wpr-iconpicker-css', WPR_ADDONS_URL .'assets/js/admin/lib/iconpicker/fontawesome-iconpicker.min.css', $version, true );
|
364 |
-
wp_enqueue_style( 'wpr-el-fontawesome-css', ELEMENTOR_URL .'assets/lib/font-awesome/css/all.min.css', [], $version );
|
365 |
-
|
366 |
-
// enqueue CSS
|
367 |
-
wp_enqueue_style( 'wpr-mega-menu-css', WPR_ADDONS_URL .'assets/css/admin/mega-menu.css', [], $version );
|
368 |
-
|
369 |
-
// enqueue JS
|
370 |
-
wp_enqueue_script( 'wpr-mega-menu-js', WPR_ADDONS_URL .'assets/js/admin/mega-menu.js', ['jquery'], $version );
|
371 |
-
|
372 |
-
wp_localize_script( 'wpr-mega-menu-js', 'WprMegaMenuSettingsData', get_menu_items_settings() );
|
373 |
-
|
374 |
-
}
|
375 |
-
|
376 |
}
|
1 |
+
<?php
|
2 |
+
use WprAddons\Plugin;
|
3 |
+
|
4 |
+
// Register Post Type
|
5 |
+
function register_mega_menu_cpt() {
|
6 |
+
$args = array(
|
7 |
+
'label' => esc_html__( 'Royal Mega Menu', 'wpr-addons' ),
|
8 |
+
'public' => true,
|
9 |
+
'publicly_queryable' => true,
|
10 |
+
'rewrite' => false,
|
11 |
+
'show_ui' => true,
|
12 |
+
'show_in_menu' => false,
|
13 |
+
'show_in_nav_menus' => false,
|
14 |
+
'exclude_from_search' => true,
|
15 |
+
'capability_type' => 'post',
|
16 |
+
'supports' => array( 'title', 'editor', 'elementor' ),
|
17 |
+
'hierarchical' => false,
|
18 |
+
);
|
19 |
+
|
20 |
+
register_post_type( 'wpr_mega_menu', $args );
|
21 |
+
}
|
22 |
+
|
23 |
+
// Convert to Canvas Template
|
24 |
+
function convert_to_canvas_template( $template ) {
|
25 |
+
if ( is_singular('wpr_mega_menu') ) {
|
26 |
+
$template = WPR_ADDONS_PATH . 'admin/templates/wpr-canvas.php';
|
27 |
+
}
|
28 |
+
|
29 |
+
return $template;
|
30 |
+
}
|
31 |
+
|
32 |
+
// Init Mega Menu
|
33 |
+
function init_mega_menu() {
|
34 |
+
register_mega_menu_cpt();
|
35 |
+
add_action( 'template_include', 'convert_to_canvas_template', 9999 );
|
36 |
+
}
|
37 |
+
|
38 |
+
add_action('init', 'init_mega_menu', 999);
|
39 |
+
|
40 |
+
|
41 |
+
// Confinue only for Dashboard Screen
|
42 |
+
if ( !is_admin() ) return;
|
43 |
+
|
44 |
+
// Init Actions
|
45 |
+
add_filter( 'option_elementor_cpt_support', 'add_mega_menu_cpt_support' );
|
46 |
+
add_filter( 'default_option_elementor_cpt_support', 'add_mega_menu_cpt_support' );
|
47 |
+
add_action( 'admin_footer', 'render_settings_popup', 10 );
|
48 |
+
add_action( 'wp_ajax_wpr_create_mega_menu_template', 'wpr_create_mega_menu_template' );
|
49 |
+
add_action( 'wp_ajax_wpr_save_mega_menu_settings', 'wpr_save_mega_menu_settings' );
|
50 |
+
add_action( 'admin_enqueue_scripts', 'enqueue_scripts' );
|
51 |
+
|
52 |
+
// Add Elementor Editor Support
|
53 |
+
function add_mega_menu_cpt_support( $value ) {
|
54 |
+
if ( empty( $value ) ) {
|
55 |
+
$value = [];
|
56 |
+
}
|
57 |
+
|
58 |
+
return array_merge( $value, ['wpr_mega_menu'] );
|
59 |
+
}
|
60 |
+
|
61 |
+
// Create Menu Template
|
62 |
+
function wpr_create_mega_menu_template() {
|
63 |
+
if ( ! current_user_can( 'manage_options' ) ) {
|
64 |
+
return;
|
65 |
+
}
|
66 |
+
|
67 |
+
// $menu_id = intval( $_REQUEST['menu'] );
|
68 |
+
// $menu_item_id = intval( $_REQUEST['item'] );
|
69 |
+
$menu_item_id = intval( $_POST['item_id'] );
|
70 |
+
$mega_menu_id = get_post_meta( $menu_item_id, 'wpr-mega-menu-item', true );
|
71 |
+
|
72 |
+
if ( ! $mega_menu_id ) {
|
73 |
+
|
74 |
+
$mega_menu_id = wp_insert_post( array(
|
75 |
+
'post_title' => 'wpr-mega-menu-item-' . $menu_item_id,
|
76 |
+
'post_status' => 'publish',
|
77 |
+
'post_type' => 'wpr_mega_menu',
|
78 |
+
) );
|
79 |
+
|
80 |
+
update_post_meta( $menu_item_id, 'wpr-mega-menu-item', $mega_menu_id );
|
81 |
+
|
82 |
+
}
|
83 |
+
|
84 |
+
$edit_link = add_query_arg(
|
85 |
+
array(
|
86 |
+
'post' => $mega_menu_id,
|
87 |
+
'action' => 'elementor',
|
88 |
+
),
|
89 |
+
admin_url( 'post.php' )
|
90 |
+
);
|
91 |
+
|
92 |
+
wp_send_json([
|
93 |
+
'data' => [
|
94 |
+
'edit_link' => $edit_link
|
95 |
+
]
|
96 |
+
]);
|
97 |
+
}
|
98 |
+
|
99 |
+
// Render Settings Popup
|
100 |
+
function render_settings_popup() {
|
101 |
+
$screen = get_current_screen();
|
102 |
+
|
103 |
+
if ( 'nav-menus' !== $screen->base ) {
|
104 |
+
return;
|
105 |
+
}
|
106 |
+
|
107 |
+
?>
|
108 |
+
|
109 |
+
<div class="wpr-mm-settings-popup-wrap">
|
110 |
+
<div class="wpr-mm-settings-popup">
|
111 |
+
<div class="wpr-mm-settings-popup-header">
|
112 |
+
<span class="wpr-mm-popup-logo" style="background:url('<?php echo WPR_ADDONS_ASSETS_URL .'img/logo-40x40.png'; ?>') no-repeat center center / contain;">RE</span>
|
113 |
+
<span><?php esc_html_e('Royal Mega Menu', 'wpr-addons'); ?></span>
|
114 |
+
<span class="wpr-mm-popup-title"><?php esc_html_e('Menu Item: ', 'wpr-addons'); ?><span></span></span>
|
115 |
+
<span class="dashicons dashicons-no-alt wpr-mm-settings-close-popup-btn"></span>
|
116 |
+
</div>
|
117 |
+
|
118 |
+
<?php $pro_active = wpr_fs()->can_use_premium_code() ? 'data-pro-active="true"' : 'data-pro-active="false"'; ?>
|
119 |
+
|
120 |
+
<div class="wpr-mm-settings-wrap" <?php echo $pro_active; ?>>
|
121 |
+
<h4><?php esc_html_e('General', 'wpr-addons'); ?></h4>
|
122 |
+
<div class="wpr-mm-setting wpr-mm-setting-switcher">
|
123 |
+
<h4><?php esc_html_e('Enable Mega Menu', 'wpr-addons'); ?></h4>
|
124 |
+
<input type="checkbox" id="wpr_mm_enable">
|
125 |
+
<label for="wpr_mm_enable"></label>
|
126 |
+
</div>
|
127 |
+
<div class="wpr-mm-setting">
|
128 |
+
<h4><?php esc_html_e('Mega Menu Content', 'wpr-addons'); ?></h4>
|
129 |
+
<button class="button button-primary wpr-edit-mega-menu-btn">
|
130 |
+
<i class="eicon-elementor-square" aria-hidden="true"></i>
|
131 |
+
<?php esc_html_e('Edit with Elementor', 'wpr-addons'); ?>
|
132 |
+
</button>
|
133 |
+
</div>
|
134 |
+
<div class="wpr-mm-setting">
|
135 |
+
<h4><?php esc_html_e('Dropdown Position', 'wpr-addons'); ?></h4>
|
136 |
+
<select id="wpr_mm_position">
|
137 |
+
<option value="default"><?php esc_html_e('Default', 'wpr-addons'); ?></option>
|
138 |
+
<option value="relative"><?php esc_html_e('Relative', 'wpr-addons'); ?></option>
|
139 |
+
</select>
|
140 |
+
</div>
|
141 |
+
<div class="wpr-mm-setting">
|
142 |
+
<h4><?php esc_html_e('Dropdown Width', 'wpr-addons'); ?></h4>
|
143 |
+
<select id="wpr_mm_width">
|
144 |
+
<option value="default"><?php esc_html_e('Default', 'wpr-addons'); ?></option>
|
145 |
+
<?php if ( ! wpr_fs()->can_use_premium_code() ) : ?>
|
146 |
+
<option value="pro-st"><?php esc_html_e('Fit to Section (Pro)', 'wpr-addons'); ?></option>
|
147 |
+
<?php else: ?>
|
148 |
+
<option value="stretch"><?php esc_html_e('Fit to Section', 'wpr-addons'); ?></option>
|
149 |
+
<?php endif; ?>
|
150 |
+
<option value="full"><?php esc_html_e('Full Width', 'wpr-addons'); ?></option>
|
151 |
+
<option value="custom"><?php esc_html_e('Custom', 'wpr-addons'); ?></option>
|
152 |
+
</select>
|
153 |
+
</div>
|
154 |
+
<div class="wpr-mm-setting">
|
155 |
+
<h4><?php esc_html_e('Custom Width (px)', 'wpr-addons'); ?></h4>
|
156 |
+
<input type="number" id="wpr_mm_custom_width" value="600">
|
157 |
+
</div>
|
158 |
+
<div class="wpr-mm-setting <?php echo !wpr_fs()->can_use_premium_code() ? 'wpr-mm-pro-setting' : ''; ?>">
|
159 |
+
<h4><?php esc_html_e('Mobile Sub Content', 'wpr-addons'); ?></h4>
|
160 |
+
<div>
|
161 |
+
<select id="wpr_mm_mobile_content">
|
162 |
+
<option value="mega"><?php esc_html_e('Mega Menu', 'wpr-addons'); ?></option>
|
163 |
+
<option value="wp-sub"><?php esc_html_e('WordPress Sub Items', 'wpr-addons'); ?></option>
|
164 |
+
</select>
|
165 |
+
|
166 |
+
<div class="wpr-mm-pro-radio">
|
167 |
+
<input type="radio" name="mc" checked="checked">
|
168 |
+
<label>Mega Menu</label><br>
|
169 |
+
<input type="radio" name="mc">
|
170 |
+
<label>WordPress Sub Items</label>
|
171 |
+
</div>
|
172 |
+
</div>
|
173 |
+
</div>
|
174 |
+
<div class="wpr-mm-setting <?php echo !wpr_fs()->can_use_premium_code() ? 'wpr-mm-pro-setting' : ''; ?>">
|
175 |
+
<h4><?php esc_html_e('Mobile Sub Render', 'wpr-addons'); ?></h4>
|
176 |
+
<div>
|
177 |
+
<select id="wpr_mm_render">
|
178 |
+
<option value="default"><?php esc_html_e('Default', 'wpr-addons'); ?></option>
|
179 |
+
<option value="ajax"><?php esc_html_e('Load with AJAX', 'wpr-addons'); ?></option>
|
180 |
+
</select>
|
181 |
+
|
182 |
+
<div class="wpr-mm-pro-radio">
|
183 |
+
<input type="radio" name="mr" checked="checked">
|
184 |
+
<label>Default</label><br>
|
185 |
+
<input type="radio" name="mr">
|
186 |
+
<label>Load with AJAX</label>
|
187 |
+
</div>
|
188 |
+
</div>
|
189 |
+
</div>
|
190 |
+
|
191 |
+
<br>
|
192 |
+
|
193 |
+
<h4 <?php echo !wpr_fs()->can_use_premium_code() ? 'class="wpr-mm-pro-heading"' : ''; ?>>
|
194 |
+
<?php esc_html_e('Icon', 'wpr-addons'); ?>
|
195 |
+
</h4>
|
196 |
+
<div <?php echo !wpr_fs()->can_use_premium_code() ? 'class="wpr-mm-pro-section"' : ''; ?>>
|
197 |
+
<div class="wpr-mm-setting wpr-mm-setting-icon">
|
198 |
+
<h4><?php esc_html_e('Icon Select', 'wpr-addons'); ?></h4>
|
199 |
+
<div><span class="wpr-mm-active-icon"><i class="fas fa-ban"></i></span><span><i class="fas fa-angle-down"></i></span></div>
|
200 |
+
<input type="text" id="wpr_mm_icon_picker" data-alpha="true" value="">
|
201 |
+
</div>
|
202 |
+
<div class="wpr-mm-setting wpr-mm-setting-color">
|
203 |
+
<h4><?php esc_html_e('Icon Color', 'wpr-addons'); ?></h4>
|
204 |
+
<input type="text" id="wpr_mm_icon_color" data-alpha="true" value="rgba(0,0,0,0.6);">
|
205 |
+
</div>
|
206 |
+
<div class="wpr-mm-setting">
|
207 |
+
<h4><?php esc_html_e('Icon Size (px)', 'wpr-addons'); ?></h4>
|
208 |
+
<input type="number" id="wpr_mm_icon_size" value="14">
|
209 |
+
</div>
|
210 |
+
</div>
|
211 |
+
|
212 |
+
<br>
|
213 |
+
|
214 |
+
<h4 <?php echo !wpr_fs()->can_use_premium_code() ? 'class="wpr-mm-pro-heading"' : ''; ?>>
|
215 |
+
<?php esc_html_e('Badge', 'wpr-addons'); ?>
|
216 |
+
</h4>
|
217 |
+
<div <?php echo !wpr_fs()->can_use_premium_code() ? 'class="wpr-mm-pro-section"' : ''; ?>>
|
218 |
+
<div class="wpr-mm-setting">
|
219 |
+
<h4><?php esc_html_e('Badge Text', 'wpr-addons'); ?></h4>
|
220 |
+
<input type="text" id="wpr_mm_badge_text" value="">
|
221 |
+
</div>
|
222 |
+
<div class="wpr-mm-setting wpr-mm-setting-color">
|
223 |
+
<h4><?php esc_html_e('Badge Text Color', 'wpr-addons'); ?></h4>
|
224 |
+
<input type="text" id="wpr_mm_badge_color" data-alpha="true" value="rgba(0,0,0,0.6);">
|
225 |
+
</div>
|
226 |
+
<div class="wpr-mm-setting wpr-mm-setting-color">
|
227 |
+
<h4><?php esc_html_e('Badge Background Color', 'wpr-addons'); ?></h4>
|
228 |
+
<input type="text" id="wpr_mm_badge_bg_color" data-alpha="true" value="rgba(0,0,0,0.6);">
|
229 |
+
</div>
|
230 |
+
<div class="wpr-mm-setting wpr-mm-setting-switcher">
|
231 |
+
<h4><?php esc_html_e('Enable Animation', 'wpr-addons'); ?></h4>
|
232 |
+
<input type="checkbox" id="wpr_mm_badge_animation">
|
233 |
+
<label for="wpr_mm_badge_animation"></label>
|
234 |
+
</div>
|
235 |
+
</div>
|
236 |
+
</div>
|
237 |
+
|
238 |
+
<div class="wpr-mm-settings-popup-footer">
|
239 |
+
<button class="button wpr-save-mega-menu-btn"><?php esc_html_e('Save', 'wpr-addons'); ?></button>
|
240 |
+
</div>
|
241 |
+
</div>
|
242 |
+
</div>
|
243 |
+
|
244 |
+
<!-- Iframe Popup -->
|
245 |
+
<div class="wpr-mm-editor-popup-wrap">
|
246 |
+
<div class="wpr-mm-editor-close-popup-btn"><span class="dashicons dashicons-no-alt"></span></div>
|
247 |
+
<div class="wpr-mm-editor-popup-iframe"></div>
|
248 |
+
</div>
|
249 |
+
<?php
|
250 |
+
}
|
251 |
+
|
252 |
+
// Save Mega Menu Settings
|
253 |
+
function wpr_save_mega_menu_settings() {
|
254 |
+
if ( isset($_POST['item_settings']) ) {
|
255 |
+
update_post_meta( $_POST['item_id'], 'wpr-mega-menu-settings', $_POST['item_settings'] );
|
256 |
+
}
|
257 |
+
|
258 |
+
wp_send_json_success($_POST['item_settings']);
|
259 |
+
}
|
260 |
+
|
261 |
+
// Get Menu Items Data
|
262 |
+
function get_menu_items_data( $menu_id = false ) {
|
263 |
+
|
264 |
+
if ( ! $menu_id ) {
|
265 |
+
return false;
|
266 |
+
}
|
267 |
+
|
268 |
+
$menu = wp_get_nav_menu_object( $menu_id );
|
269 |
+
|
270 |
+
$menu_items = wp_get_nav_menu_items( $menu );
|
271 |
+
|
272 |
+
if ( ! $menu_items ) {
|
273 |
+
return false;
|
274 |
+
}
|
275 |
+
|
276 |
+
return $menu_items;
|
277 |
+
}
|
278 |
+
|
279 |
+
// Get Mega Menu Item Settings
|
280 |
+
function get_menu_items_settings() {
|
281 |
+
$menu_items = get_menu_items_data( get_selected_menu_id() );
|
282 |
+
|
283 |
+
$settings = [];
|
284 |
+
|
285 |
+
if ( ! $menu_items ) {
|
286 |
+
return [];
|
287 |
+
} else {
|
288 |
+
foreach ( $menu_items as $key => $item_object ) {
|
289 |
+
$item_id = $item_object->ID;
|
290 |
+
|
291 |
+
$item_meta = get_post_meta( $item_id, 'wpr-mega-menu-settings', true );
|
292 |
+
|
293 |
+
if ( !empty($item_meta) ) {
|
294 |
+
$settings[ $item_id ] = $item_meta;
|
295 |
+
} else {
|
296 |
+
$settings[ $item_id ] = [];
|
297 |
+
}
|
298 |
+
}
|
299 |
+
|
300 |
+
return $settings;
|
301 |
+
}
|
302 |
+
}
|
303 |
+
|
304 |
+
/**
|
305 |
+
* Get the Selected menu ID
|
306 |
+
* @author Tom Hemsley (https://wordpress.org/plugins/megamenu/)
|
307 |
+
*/
|
308 |
+
function get_selected_menu_id() {
|
309 |
+
$nav_menus = wp_get_nav_menus( array('orderby' => 'name') );
|
310 |
+
$menu_count = count( $nav_menus );
|
311 |
+
$nav_menu_selected_id = isset( $_REQUEST['menu'] ) ? (int) $_REQUEST['menu'] : 0;
|
312 |
+
$add_new_screen = ( isset( $_GET['menu'] ) && 0 == $_GET['menu'] ) ? true : false;
|
313 |
+
|
314 |
+
$current_menu_id = $nav_menu_selected_id;
|
315 |
+
|
316 |
+
// If we have one theme location, and zero menus, we take them right into editing their first menu
|
317 |
+
$page_count = wp_count_posts( 'page' );
|
318 |
+
$one_theme_location_no_menus = ( 1 == count( get_registered_nav_menus() ) && ! $add_new_screen && empty( $nav_menus ) && ! empty( $page_count->publish ) ) ? true : false;
|
319 |
+
|
320 |
+
// Get recently edited nav menu
|
321 |
+
$recently_edited = absint( get_user_option( 'nav_menu_recently_edited' ) );
|
322 |
+
if ( empty( $recently_edited ) && is_nav_menu( $current_menu_id ) ) {
|
323 |
+
$recently_edited = $current_menu_id;
|
324 |
+
}
|
325 |
+
|
326 |
+
// Use $recently_edited if none are selected
|
327 |
+
if ( empty( $current_menu_id ) && ! isset( $_GET['menu'] ) && is_nav_menu( $recently_edited ) ) {
|
328 |
+
$current_menu_id = $recently_edited;
|
329 |
+
}
|
330 |
+
|
331 |
+
// On deletion of menu, if another menu exists, show it
|
332 |
+
if ( ! $add_new_screen && 0 < $menu_count && isset( $_GET['action'] ) && 'delete' == $_GET['action'] ) {
|
333 |
+
$current_menu_id = $nav_menus[0]->term_id;
|
334 |
+
}
|
335 |
+
|
336 |
+
// Set $current_menu_id to 0 if no menus
|
337 |
+
if ( $one_theme_location_no_menus ) {
|
338 |
+
$current_menu_id = 0;
|
339 |
+
} elseif ( empty( $current_menu_id ) && ! empty( $nav_menus ) && ! $add_new_screen ) {
|
340 |
+
// if we have no selection yet, and we have menus, set to the first one in the list
|
341 |
+
$current_menu_id = $nav_menus[0]->term_id;
|
342 |
+
}
|
343 |
+
|
344 |
+
return $current_menu_id;
|
345 |
+
|
346 |
+
}
|
347 |
+
|
348 |
+
// Enqueue Scripts and Styles
|
349 |
+
function enqueue_scripts( $hook ) {
|
350 |
+
|
351 |
+
// Get Plugin Version
|
352 |
+
$version = Plugin::instance()->get_version();
|
353 |
+
|
354 |
+
// Deny if NOT a Menu Page
|
355 |
+
if ( 'nav-menus.php' == $hook ) {
|
356 |
+
|
357 |
+
// Color Picker
|
358 |
+
wp_enqueue_style( 'wp-color-picker' );
|
359 |
+
wp_enqueue_script( 'wp-color-picker-alpha', WPR_ADDONS_URL .'assets/js/admin/lib/wp-color-picker-alpha.min.js', ['jquery', 'wp-color-picker'], $version, true );
|
360 |
+
|
361 |
+
// Icon Picker
|
362 |
+
wp_enqueue_script( 'wpr-iconpicker-js', WPR_ADDONS_URL .'assets/js/admin/lib/iconpicker/fontawesome-iconpicker.min.js', ['jquery'], $version, true );
|
363 |
+
wp_enqueue_style( 'wpr-iconpicker-css', WPR_ADDONS_URL .'assets/js/admin/lib/iconpicker/fontawesome-iconpicker.min.css', $version, true );
|
364 |
+
wp_enqueue_style( 'wpr-el-fontawesome-css', ELEMENTOR_URL .'assets/lib/font-awesome/css/all.min.css', [], $version );
|
365 |
+
|
366 |
+
// enqueue CSS
|
367 |
+
wp_enqueue_style( 'wpr-mega-menu-css', WPR_ADDONS_URL .'assets/css/admin/mega-menu.css', [], $version );
|
368 |
+
|
369 |
+
// enqueue JS
|
370 |
+
wp_enqueue_script( 'wpr-mega-menu-js', WPR_ADDONS_URL .'assets/js/admin/mega-menu.js', ['jquery'], $version );
|
371 |
+
|
372 |
+
wp_localize_script( 'wpr-mega-menu-js', 'WprMegaMenuSettingsData', get_menu_items_settings() );
|
373 |
+
|
374 |
+
}
|
375 |
+
|
376 |
}
|
admin/plugin-options.php
CHANGED
@@ -1,566 +1,571 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
-
exit; // Exit if accessed directly.
|
5 |
-
}
|
6 |
-
|
7 |
-
use WprAddons\Admin\Includes\WPR_Templates_Loop;
|
8 |
-
use WprAddonsPro\Admin\Wpr_White_Label;
|
9 |
-
use WprAddons\Classes\Utilities;
|
10 |
-
|
11 |
-
// Register Menus
|
12 |
-
function wpr_addons_add_admin_menu() {
|
13 |
-
$menu_icon = !empty(get_option('wpr_wl_plugin_logo')) ? 'dashicons-admin-generic' : 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOTciIGhlaWdodD0iNzUiIHZpZXdCb3g9IjAgMCA5NyA3NSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAuMDM2NDA4NiAyMy4yODlDLTAuNTc1NDkgMTguNTIxIDYuNjg4NzMgMTYuMzY2NiA5LjU0OSAyMC40Njc4TDQyLjgzNjUgNjguMTk3MkM0NC45MTgxIDcxLjE4MiA0Mi40NDk0IDc1IDM4LjQzNzggNzVIMTEuMjc1NkM4LjY1NDc1IDc1IDYuNDUyNjQgNzMuMjg1NSA2LjE2MTcgNzEuMDE4NEwwLjAzNjQwODYgMjMuMjg5WiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTk2Ljk2MzYgMjMuMjg5Qzk3LjU3NTUgMTguNTIxIDkwLjMxMTMgMTYuMzY2NiA4Ny40NTEgMjAuNDY3OEw1NC4xNjM1IDY4LjE5NzJDNTIuMDgxOCA3MS4xODIgNTQuNTUwNiA3NSA1OC41NjIyIDc1SDg1LjcyNDRDODguMzQ1MiA3NSA5MC41NDc0IDczLjI4NTUgOTAuODM4MyA3MS4wMTg0TDk2Ljk2MzYgMjMuMjg5WiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTUzLjI0MTIgNC40ODUyN0M1My4yNDEyIC0wLjI3MDc2MSA0NS44NDg1IC0xLjc0ODAzIDQzLjQ2NTEgMi41MzE3NEw2LjY4OTkxIDY4LjU2NzdDNS4wMzM0OSA3MS41NDIxIDcuNTIyNzIgNzUgMTEuMzIwMyA3NUg0OC4wOTU1QzUwLjkzNzQgNzUgNTMuMjQxMiA3Mi45OTQ4IDUzLjI0MTIgNzAuNTIxMlY0LjQ4NTI3WiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTQzLjc1ODggNC40ODUyN0M0My43NTg4IC0wLjI3MDc2MSA1MS4xNTE1IC0xLjc0ODAzIDUzLjUzNDkgMi41MzE3NEw5MC4zMTAxIDY4LjU2NzdDOTEuOTY2NSA3MS41NDIxIDg5LjQ3NzMgNzUgODUuNjc5NyA3NUg0OC45MDQ1QzQ2LjA2MjYgNzUgNDMuNzU4OCA3Mi45OTQ4IDQzLjc1ODggNzAuNTIxMlY0LjQ4NTI3WiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==';
|
14 |
-
add_menu_page( Utilities::get_plugin_name(), Utilities::get_plugin_name(), 'manage_options', 'wpr-addons', 'wpr_addons_settings_page', $menu_icon, '58.6' );
|
15 |
-
|
16 |
-
add_action( 'admin_init', 'wpr_register_addons_settings' );
|
17 |
-
add_filter( 'plugin_action_links_'. WPR_ADDONS_PLUGIN_BASE, 'wpr_settings_link' );
|
18 |
-
}
|
19 |
-
add_action( 'admin_menu', 'wpr_addons_add_admin_menu' );
|
20 |
-
|
21 |
-
// Add Settings page link to plugins screen
|
22 |
-
function wpr_settings_link( $links ) {
|
23 |
-
$settings_link = '<a href="admin.php?page=wpr-addons">Settings</a>';
|
24 |
-
array_push( $links, $settings_link );
|
25 |
-
|
26 |
-
if ( !is_plugin_installed('wpr-addons-pro/wpr-addons-pro.php') ) {
|
27 |
-
$links[] = '<a href="https://royal-elementor-addons.com/?ref=rea-plugin-backend-wpplugindashboard-upgrade-pro#purchasepro" style="color:#93003c;font-weight:700" target="_blank">' . esc_html__('Go Pro', 'wpr-addons') . '</a>';
|
28 |
-
}
|
29 |
-
|
30 |
-
return $links;
|
31 |
-
}
|
32 |
-
|
33 |
-
function is_plugin_installed($file) {
|
34 |
-
$installed_plugins = [];
|
35 |
-
|
36 |
-
foreach( get_plugins() as $slug => $plugin_info ) {
|
37 |
-
array_push($installed_plugins, $slug);
|
38 |
-
}
|
39 |
-
|
40 |
-
if ( in_array($file, $installed_plugins) ) {
|
41 |
-
return true;
|
42 |
-
} else {
|
43 |
-
return false;
|
44 |
-
}
|
45 |
-
}
|
46 |
-
|
47 |
-
// Register Settings
|
48 |
-
function wpr_register_addons_settings() {
|
49 |
-
// WooCommerce
|
50 |
-
register_setting( 'wpr-settings', 'wpr_override_woo_templates' );
|
51 |
-
register_setting( 'wpr-settings', 'wpr_enable_product_image_zoom' );
|
52 |
-
register_setting( 'wpr-settings', 'wpr_enable_woo_flexslider_navigation' );
|
53 |
-
register_setting( 'wpr-settings', 'wpr_woo_shop_ppp' );
|
54 |
-
register_setting( 'wpr-settings', 'wpr_woo_shop_cat_ppp' );
|
55 |
-
register_setting( 'wpr-settings', 'wpr_woo_shop_tag_ppp' );
|
56 |
-
|
57 |
-
// Integrations
|
58 |
-
register_setting( 'wpr-settings', 'wpr_google_map_api_key' );
|
59 |
-
register_setting( 'wpr-settings', 'wpr_mailchimp_api_key' );
|
60 |
-
|
61 |
-
// Lightbox
|
62 |
-
register_setting( 'wpr-settings', 'wpr_lb_bg_color' );
|
63 |
-
register_setting( 'wpr-settings', 'wpr_lb_toolbar_color' );
|
64 |
-
register_setting( 'wpr-settings', 'wpr_lb_caption_color' );
|
65 |
-
register_setting( 'wpr-settings', 'wpr_lb_gallery_color' );
|
66 |
-
register_setting( 'wpr-settings', 'wpr_lb_pb_color' );
|
67 |
-
register_setting( 'wpr-settings', 'wpr_lb_ui_color' );
|
68 |
-
register_setting( 'wpr-settings', 'wpr_lb_ui_hr_color' );
|
69 |
-
register_setting( 'wpr-settings', 'wpr_lb_text_color' );
|
70 |
-
register_setting( 'wpr-settings', 'wpr_lb_icon_size' );
|
71 |
-
register_setting( 'wpr-settings', 'wpr_lb_arrow_size' );
|
72 |
-
register_setting( 'wpr-settings', 'wpr_lb_text_size' );
|
73 |
-
|
74 |
-
// White Label
|
75 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_logo' );
|
76 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_name' );
|
77 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_desc' );
|
78 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_author' );
|
79 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_website' );
|
80 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_links' );
|
81 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_hide_elements_tab' );
|
82 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_hide_extensions_tab' );
|
83 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_hide_settings_tab' );
|
84 |
-
register_setting( 'wpr-wh-settings', 'wpr_wl_hide_white_label_tab' );
|
85 |
-
|
86 |
-
// Extensions
|
87 |
-
register_setting('wpr-extension-settings', 'wpr-particles');
|
88 |
-
register_setting('wpr-extension-settings', 'wpr-parallax-background');
|
89 |
-
register_setting('wpr-extension-settings', 'wpr-parallax-multi-layer');
|
90 |
-
register_setting('wpr-extension-settings', 'wpr-sticky-section');
|
91 |
-
|
92 |
-
// Element Toggle
|
93 |
-
register_setting( 'wpr-elements-settings', 'wpr-element-toggle-all', [ 'default' => 'on' ] );
|
94 |
-
|
95 |
-
// Widgets
|
96 |
-
foreach ( Utilities::get_registered_modules() as $title => $data ) {
|
97 |
-
$slug = $data[0];
|
98 |
-
register_setting( 'wpr-elements-settings', 'wpr-element-'. $slug, [ 'default' => 'on' ] );
|
99 |
-
}
|
100 |
-
|
101 |
-
// Theme Builder
|
102 |
-
foreach ( Utilities::get_theme_builder_modules() as $title => $data ) {
|
103 |
-
$slug = $data[0];
|
104 |
-
register_setting( 'wpr-elements-settings', 'wpr-element-'. $slug, [ 'default' => 'on' ] );
|
105 |
-
}
|
106 |
-
|
107 |
-
|
108 |
-
// WooCommerce Builder
|
109 |
-
foreach ( Utilities::get_woocommerce_builder_modules() as $title => $data ) {
|
110 |
-
$slug = $data[0];
|
111 |
-
register_setting( 'wpr-elements-settings', 'wpr-element-'. $slug, [ 'default' => 'on' ] );
|
112 |
-
}
|
113 |
-
|
114 |
-
}
|
115 |
-
|
116 |
-
function wpr_addons_settings_page() {
|
117 |
-
|
118 |
-
?>
|
119 |
-
|
120 |
-
<div class="wrap wpr-settings-page-wrap">
|
121 |
-
|
122 |
-
<div class="wpr-settings-page-header">
|
123 |
-
<h1><?php echo esc_html(Utilities::get_plugin_name(true)); ?></h1>
|
124 |
-
<p><?php esc_html_e( 'The most powerful Elementor Addons in the universe.', 'wpr-addons' ); ?></p>
|
125 |
-
|
126 |
-
<?php if ( empty(get_option('wpr_wl_plugin_links')) ) : ?>
|
127 |
-
<div class="wpr-preview-buttons">
|
128 |
-
<a href="https://royal-elementor-addons.com/?ref=rea-plugin-backend-plugin-prev-btn#widgets" target="_blank" class="button wpr-options-button">
|
129 |
-
<span><?php echo esc_html__( 'View Plugin Demo', 'wpr-addons' ); ?></span>
|
130 |
-
<span class="dashicons dashicons-external"></span>
|
131 |
-
</a>
|
132 |
-
|
133 |
-
<a href="https://www.youtube.com/watch?v=rkYQfn3tUc0" class="wpr-options-button button" target="_blank">
|
134 |
-
<?php echo esc_html__( 'How to use Widgets', 'wpr-addons' ); ?>
|
135 |
-
<span class="dashicons dashicons-video-alt3"></span>
|
136 |
-
</a>
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
<?php
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
<?php
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
<?php
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
<?php
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
|
205 |
-
<
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
echo '
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
</div>
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
echo '
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
$
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
echo '
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
<
|
322 |
-
<
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
<
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
<
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
<
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
<
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
<
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
<div class="wpr-setting">
|
410 |
-
<h4><?php esc_html_e( '
|
411 |
-
<input type="text" name="
|
412 |
-
</div>
|
413 |
-
|
414 |
-
<div class="wpr-setting">
|
415 |
-
<h4><?php esc_html_e( '
|
416 |
-
<input type="text" name="
|
417 |
-
</div>
|
418 |
-
|
419 |
-
<div class="wpr-setting">
|
420 |
-
<h4><?php esc_html_e( '
|
421 |
-
<input type="text" name="
|
422 |
-
</div>
|
423 |
-
|
424 |
-
<div class="wpr-setting">
|
425 |
-
<h4><?php esc_html_e( '
|
426 |
-
<input type="text" name="
|
427 |
-
</div>
|
428 |
-
|
429 |
-
<div class="wpr-setting">
|
430 |
-
<h4><?php esc_html_e( '
|
431 |
-
<input type="text" name="
|
432 |
-
</div>
|
433 |
-
|
434 |
-
<div class="wpr-setting">
|
435 |
-
<h4><?php esc_html_e( 'UI
|
436 |
-
<input type="text" name="
|
437 |
-
</div>
|
438 |
-
|
439 |
-
<div class="wpr-setting">
|
440 |
-
<h4><?php esc_html_e( '
|
441 |
-
<input type="text" name="
|
442 |
-
</div>
|
443 |
-
|
444 |
-
<div class="wpr-setting">
|
445 |
-
<h4><?php esc_html_e( '
|
446 |
-
<input type="
|
447 |
-
</div>
|
448 |
-
|
449 |
-
<div class="wpr-setting">
|
450 |
-
<h4><?php esc_html_e( '
|
451 |
-
<input type="number" name="
|
452 |
-
</div>
|
453 |
-
|
454 |
-
<div class="wpr-setting">
|
455 |
-
<h4><?php esc_html_e( '
|
456 |
-
<input type="number" name="
|
457 |
-
</div>
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
echo '<
|
494 |
-
|
495 |
-
|
496 |
-
echo '<
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
function
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
|
|
|
|
|
|
|
|
|
|
566 |
add_action( 'admin_head', 'wpr_redirect_upgrade_page' );
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
exit; // Exit if accessed directly.
|
5 |
+
}
|
6 |
+
|
7 |
+
use WprAddons\Admin\Includes\WPR_Templates_Loop;
|
8 |
+
use WprAddonsPro\Admin\Wpr_White_Label;
|
9 |
+
use WprAddons\Classes\Utilities;
|
10 |
+
|
11 |
+
// Register Menus
|
12 |
+
function wpr_addons_add_admin_menu() {
|
13 |
+
$menu_icon = !empty(get_option('wpr_wl_plugin_logo')) ? 'dashicons-admin-generic' : 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOTciIGhlaWdodD0iNzUiIHZpZXdCb3g9IjAgMCA5NyA3NSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTAuMDM2NDA4NiAyMy4yODlDLTAuNTc1NDkgMTguNTIxIDYuNjg4NzMgMTYuMzY2NiA5LjU0OSAyMC40Njc4TDQyLjgzNjUgNjguMTk3MkM0NC45MTgxIDcxLjE4MiA0Mi40NDk0IDc1IDM4LjQzNzggNzVIMTEuMjc1NkM4LjY1NDc1IDc1IDYuNDUyNjQgNzMuMjg1NSA2LjE2MTcgNzEuMDE4NEwwLjAzNjQwODYgMjMuMjg5WiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTk2Ljk2MzYgMjMuMjg5Qzk3LjU3NTUgMTguNTIxIDkwLjMxMTMgMTYuMzY2NiA4Ny40NTEgMjAuNDY3OEw1NC4xNjM1IDY4LjE5NzJDNTIuMDgxOCA3MS4xODIgNTQuNTUwNiA3NSA1OC41NjIyIDc1SDg1LjcyNDRDODguMzQ1MiA3NSA5MC41NDc0IDczLjI4NTUgOTAuODM4MyA3MS4wMTg0TDk2Ljk2MzYgMjMuMjg5WiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTUzLjI0MTIgNC40ODUyN0M1My4yNDEyIC0wLjI3MDc2MSA0NS44NDg1IC0xLjc0ODAzIDQzLjQ2NTEgMi41MzE3NEw2LjY4OTkxIDY4LjU2NzdDNS4wMzM0OSA3MS41NDIxIDcuNTIyNzIgNzUgMTEuMzIwMyA3NUg0OC4wOTU1QzUwLjkzNzQgNzUgNTMuMjQxMiA3Mi45OTQ4IDUzLjI0MTIgNzAuNTIxMlY0LjQ4NTI3WiIgZmlsbD0id2hpdGUiLz4KPHBhdGggZD0iTTQzLjc1ODggNC40ODUyN0M0My43NTg4IC0wLjI3MDc2MSA1MS4xNTE1IC0xLjc0ODAzIDUzLjUzNDkgMi41MzE3NEw5MC4zMTAxIDY4LjU2NzdDOTEuOTY2NSA3MS41NDIxIDg5LjQ3NzMgNzUgODUuNjc5NyA3NUg0OC45MDQ1QzQ2LjA2MjYgNzUgNDMuNzU4OCA3Mi45OTQ4IDQzLjc1ODggNzAuNTIxMlY0LjQ4NTI3WiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==';
|
14 |
+
add_menu_page( Utilities::get_plugin_name(), Utilities::get_plugin_name(), 'manage_options', 'wpr-addons', 'wpr_addons_settings_page', $menu_icon, '58.6' );
|
15 |
+
|
16 |
+
add_action( 'admin_init', 'wpr_register_addons_settings' );
|
17 |
+
add_filter( 'plugin_action_links_'. WPR_ADDONS_PLUGIN_BASE, 'wpr_settings_link' );
|
18 |
+
}
|
19 |
+
add_action( 'admin_menu', 'wpr_addons_add_admin_menu' );
|
20 |
+
|
21 |
+
// Add Settings page link to plugins screen
|
22 |
+
function wpr_settings_link( $links ) {
|
23 |
+
$settings_link = '<a href="admin.php?page=wpr-addons">Settings</a>';
|
24 |
+
array_push( $links, $settings_link );
|
25 |
+
|
26 |
+
if ( !is_plugin_installed('wpr-addons-pro/wpr-addons-pro.php') ) {
|
27 |
+
$links[] = '<a href="https://royal-elementor-addons.com/?ref=rea-plugin-backend-wpplugindashboard-upgrade-pro#purchasepro" style="color:#93003c;font-weight:700" target="_blank">' . esc_html__('Go Pro', 'wpr-addons') . '</a>';
|
28 |
+
}
|
29 |
+
|
30 |
+
return $links;
|
31 |
+
}
|
32 |
+
|
33 |
+
function is_plugin_installed($file) {
|
34 |
+
$installed_plugins = [];
|
35 |
+
|
36 |
+
foreach( get_plugins() as $slug => $plugin_info ) {
|
37 |
+
array_push($installed_plugins, $slug);
|
38 |
+
}
|
39 |
+
|
40 |
+
if ( in_array($file, $installed_plugins) ) {
|
41 |
+
return true;
|
42 |
+
} else {
|
43 |
+
return false;
|
44 |
+
}
|
45 |
+
}
|
46 |
+
|
47 |
+
// Register Settings
|
48 |
+
function wpr_register_addons_settings() {
|
49 |
+
// WooCommerce
|
50 |
+
register_setting( 'wpr-settings', 'wpr_override_woo_templates' );
|
51 |
+
register_setting( 'wpr-settings', 'wpr_enable_product_image_zoom' );
|
52 |
+
register_setting( 'wpr-settings', 'wpr_enable_woo_flexslider_navigation' );
|
53 |
+
register_setting( 'wpr-settings', 'wpr_woo_shop_ppp' );
|
54 |
+
register_setting( 'wpr-settings', 'wpr_woo_shop_cat_ppp' );
|
55 |
+
register_setting( 'wpr-settings', 'wpr_woo_shop_tag_ppp' );
|
56 |
+
|
57 |
+
// Integrations
|
58 |
+
register_setting( 'wpr-settings', 'wpr_google_map_api_key' );
|
59 |
+
register_setting( 'wpr-settings', 'wpr_mailchimp_api_key' );
|
60 |
+
|
61 |
+
// Lightbox
|
62 |
+
register_setting( 'wpr-settings', 'wpr_lb_bg_color' );
|
63 |
+
register_setting( 'wpr-settings', 'wpr_lb_toolbar_color' );
|
64 |
+
register_setting( 'wpr-settings', 'wpr_lb_caption_color' );
|
65 |
+
register_setting( 'wpr-settings', 'wpr_lb_gallery_color' );
|
66 |
+
register_setting( 'wpr-settings', 'wpr_lb_pb_color' );
|
67 |
+
register_setting( 'wpr-settings', 'wpr_lb_ui_color' );
|
68 |
+
register_setting( 'wpr-settings', 'wpr_lb_ui_hr_color' );
|
69 |
+
register_setting( 'wpr-settings', 'wpr_lb_text_color' );
|
70 |
+
register_setting( 'wpr-settings', 'wpr_lb_icon_size' );
|
71 |
+
register_setting( 'wpr-settings', 'wpr_lb_arrow_size' );
|
72 |
+
register_setting( 'wpr-settings', 'wpr_lb_text_size' );
|
73 |
+
|
74 |
+
// White Label
|
75 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_logo' );
|
76 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_name' );
|
77 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_desc' );
|
78 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_author' );
|
79 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_website' );
|
80 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_plugin_links' );
|
81 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_hide_elements_tab' );
|
82 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_hide_extensions_tab' );
|
83 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_hide_settings_tab' );
|
84 |
+
register_setting( 'wpr-wh-settings', 'wpr_wl_hide_white_label_tab' );
|
85 |
+
|
86 |
+
// Extensions
|
87 |
+
register_setting('wpr-extension-settings', 'wpr-particles');
|
88 |
+
register_setting('wpr-extension-settings', 'wpr-parallax-background');
|
89 |
+
register_setting('wpr-extension-settings', 'wpr-parallax-multi-layer');
|
90 |
+
register_setting('wpr-extension-settings', 'wpr-sticky-section');
|
91 |
+
|
92 |
+
// Element Toggle
|
93 |
+
register_setting( 'wpr-elements-settings', 'wpr-element-toggle-all', [ 'default' => 'on' ] );
|
94 |
+
|
95 |
+
// Widgets
|
96 |
+
foreach ( Utilities::get_registered_modules() as $title => $data ) {
|
97 |
+
$slug = $data[0];
|
98 |
+
register_setting( 'wpr-elements-settings', 'wpr-element-'. $slug, [ 'default' => 'on' ] );
|
99 |
+
}
|
100 |
+
|
101 |
+
// Theme Builder
|
102 |
+
foreach ( Utilities::get_theme_builder_modules() as $title => $data ) {
|
103 |
+
$slug = $data[0];
|
104 |
+
register_setting( 'wpr-elements-settings', 'wpr-element-'. $slug, [ 'default' => 'on' ] );
|
105 |
+
}
|
106 |
+
|
107 |
+
|
108 |
+
// WooCommerce Builder
|
109 |
+
foreach ( Utilities::get_woocommerce_builder_modules() as $title => $data ) {
|
110 |
+
$slug = $data[0];
|
111 |
+
register_setting( 'wpr-elements-settings', 'wpr-element-'. $slug, [ 'default' => 'on' ] );
|
112 |
+
}
|
113 |
+
|
114 |
+
}
|
115 |
+
|
116 |
+
function wpr_addons_settings_page() {
|
117 |
+
|
118 |
+
?>
|
119 |
+
|
120 |
+
<div class="wrap wpr-settings-page-wrap">
|
121 |
+
|
122 |
+
<div class="wpr-settings-page-header">
|
123 |
+
<h1><?php echo esc_html(Utilities::get_plugin_name(true)); ?></h1>
|
124 |
+
<p><?php esc_html_e( 'The most powerful Elementor Addons in the universe.', 'wpr-addons' ); ?></p>
|
125 |
+
|
126 |
+
<?php if ( empty(get_option('wpr_wl_plugin_links')) ) : ?>
|
127 |
+
<div class="wpr-preview-buttons">
|
128 |
+
<a href="https://royal-elementor-addons.com/?ref=rea-plugin-backend-plugin-prev-btn#widgets" target="_blank" class="button wpr-options-button">
|
129 |
+
<span><?php echo esc_html__( 'View Plugin Demo', 'wpr-addons' ); ?></span>
|
130 |
+
<span class="dashicons dashicons-external"></span>
|
131 |
+
</a>
|
132 |
+
|
133 |
+
<a href="https://www.youtube.com/watch?v=rkYQfn3tUc0" class="wpr-options-button button" target="_blank">
|
134 |
+
<?php echo esc_html__( 'How to use Widgets', 'wpr-addons' ); ?>
|
135 |
+
<span class="dashicons dashicons-video-alt3"></span>
|
136 |
+
</a>
|
137 |
+
|
138 |
+
<a href="https://royaladdons.frill.co/b/6m4d5qm4/feature-ideas" class="wpr-options-button button" target="_blank">
|
139 |
+
<?php echo esc_html__( 'Request New Feature', 'wpr-addons' ); ?>
|
140 |
+
<span class="dashicons dashicons-star-empty"></span>
|
141 |
+
</a>
|
142 |
+
</div>
|
143 |
+
<?php endif; ?>
|
144 |
+
</div>
|
145 |
+
|
146 |
+
<div class="wpr-settings-page">
|
147 |
+
<form method="post" action="options.php">
|
148 |
+
<?php
|
149 |
+
|
150 |
+
// Active Tab
|
151 |
+
if ( empty(get_option('wpr_wl_hide_elements_tab')) ) {
|
152 |
+
$active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( wp_unslash( $_GET['tab'] ) ) : 'wpr_tab_elements';
|
153 |
+
} elseif ( empty(get_option('wpr_wl_hide_extensions_tab')) ) {
|
154 |
+
$active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( wp_unslash( $_GET['tab'] ) ) : 'wpr_tab_extensions';
|
155 |
+
} elseif ( empty(get_option('wpr_wl_hide_settings_tab')) ) {
|
156 |
+
$active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( wp_unslash( $_GET['tab'] ) ) : 'wpr_tab_settings';
|
157 |
+
} elseif ( empty(get_option('wpr_wl_hide_white_label_tab')) ) {
|
158 |
+
$active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( wp_unslash( $_GET['tab'] ) ) : 'wpr_tab_white_label';
|
159 |
+
}
|
160 |
+
|
161 |
+
|
162 |
+
// Render Create Templte Popup
|
163 |
+
WPR_Templates_Loop::render_create_template_popup();
|
164 |
+
|
165 |
+
?>
|
166 |
+
|
167 |
+
<!-- Tabs -->
|
168 |
+
<div class="nav-tab-wrapper wpr-nav-tab-wrapper">
|
169 |
+
<?php if ( empty(get_option('wpr_wl_hide_elements_tab')) ) : ?>
|
170 |
+
<a href="?page=wpr-addons&tab=wpr_tab_elements" data-title="Elements" class="nav-tab <?php echo ($active_tab == 'wpr_tab_elements') ? 'nav-tab-active' : ''; ?>">
|
171 |
+
<?php esc_html_e( 'Widgets', 'wpr-addons' ); ?>
|
172 |
+
</a>
|
173 |
+
<?php endif; ?>
|
174 |
+
|
175 |
+
<?php if ( empty(get_option('wpr_wl_hide_extensions_tab')) ) : ?>
|
176 |
+
<a href="?page=wpr-addons&tab=wpr_tab_extensions" data-title="Extensions" class="nav-tab <?php echo ($active_tab == 'wpr_tab_extensions') ? 'nav-tab-active' : ''; ?>">
|
177 |
+
<?php esc_html_e( 'Extensions', 'wpr-addons' ); ?>
|
178 |
+
</a>
|
179 |
+
<?php endif; ?>
|
180 |
+
|
181 |
+
<?php if ( empty(get_option('wpr_wl_hide_settings_tab')) ) : ?>
|
182 |
+
<a href="?page=wpr-addons&tab=wpr_tab_settings" data-title="Settings" class="nav-tab <?php echo ($active_tab == 'wpr_tab_settings') ? 'nav-tab-active' : ''; ?>">
|
183 |
+
<?php esc_html_e( 'Settings', 'wpr-addons' ); ?>
|
184 |
+
</a>
|
185 |
+
<?php endif; ?>
|
186 |
+
|
187 |
+
<?php // White Label
|
188 |
+
echo !empty(get_option('wpr_wl_hide_white_label_tab')) ? '<div style="display: none;">' : '<div>';
|
189 |
+
do_action('wpr_white_label_tab');
|
190 |
+
echo '</div>';
|
191 |
+
?>
|
192 |
+
</div>
|
193 |
+
|
194 |
+
<?php if ( $active_tab == 'wpr_tab_elements' ) : ?>
|
195 |
+
|
196 |
+
<?php
|
197 |
+
|
198 |
+
// Settings
|
199 |
+
settings_fields( 'wpr-elements-settings' );
|
200 |
+
do_settings_sections( 'wpr-elements-settings' );
|
201 |
+
|
202 |
+
?>
|
203 |
+
|
204 |
+
<div class="wpr-elements-toggle">
|
205 |
+
<div>
|
206 |
+
<h3><?php esc_html_e( 'Toggle all Widgets', 'wpr-addons' ); ?></h3>
|
207 |
+
<input type="checkbox" name="wpr-element-toggle-all" id="wpr-element-toggle-all" <?php checked( get_option('wpr-element-toggle-all', 'on'), 'on', true ); ?>>
|
208 |
+
<label for="wpr-element-toggle-all"></label>
|
209 |
+
</div>
|
210 |
+
<p><?php esc_html_e( 'You can disable some widgets for faster page speed.', 'wpr-addons' ); ?></p>
|
211 |
+
</div>
|
212 |
+
<div class="wpr-elements">
|
213 |
+
<?php
|
214 |
+
foreach ( Utilities::get_registered_modules() as $title => $data ) {
|
215 |
+
$slug = $data[0];
|
216 |
+
$url = $data[1];
|
217 |
+
$reff = '?ref=rea-plugin-backend-elements-widget-prev'. $data[2];
|
218 |
+
$class = 'new' === $data[3] ? ' wpr-new-element' : '';
|
219 |
+
|
220 |
+
echo '<div class="wpr-element'. esc_attr($class) .'">';
|
221 |
+
echo '<div class="wpr-element-info">';
|
222 |
+
echo '<h3>'. esc_html($title) .'</h3>';
|
223 |
+
echo '<input type="checkbox" name="wpr-element-'. esc_attr($slug) .'" id="wpr-element-'. esc_attr($slug) .'" '. checked( get_option('wpr-element-'. $slug, 'on'), 'on', false ) .'>';
|
224 |
+
echo '<label for="wpr-element-'. esc_attr($slug) .'"></label>';
|
225 |
+
echo ( '' !== $url && empty(get_option('wpr_wl_plugin_links')) ) ? '<a href="'. esc_url($url . $reff) .'" target="_blank">'. esc_html__('View Widget Demo', 'wpr-addons') .'</a>' : '';
|
226 |
+
echo '</div>';
|
227 |
+
echo '</div>';
|
228 |
+
}
|
229 |
+
?>
|
230 |
+
</div>
|
231 |
+
|
232 |
+
<div class="wpr-elements-heading">
|
233 |
+
<h3><?php esc_html_e( 'Theme Builder Widgets', 'wpr-addons' ); ?></h3>
|
234 |
+
<p><?php esc_html_e( 'Post (CPT) Archive Pages, Post (CPT) Single Pages', 'wpr-addons' ); ?></p>
|
235 |
+
</div>
|
236 |
+
<div class="wpr-elements">
|
237 |
+
<?php
|
238 |
+
foreach ( Utilities::get_theme_builder_modules() as $title => $data ) {
|
239 |
+
$slug = $data[0];
|
240 |
+
$url = $data[1];
|
241 |
+
$reff = '?ref=rea-plugin-backend-elements-widget-prev'. $data[2];
|
242 |
+
$class = 'new' === $data[3] ? ' wpr-new-element' : '';
|
243 |
+
|
244 |
+
echo '<div class="wpr-element'. esc_attr($class) .'">';
|
245 |
+
echo '<div class="wpr-element-info">';
|
246 |
+
echo '<h3>'. esc_html($title) .'</h3>';
|
247 |
+
echo '<input type="checkbox" name="wpr-element-'. esc_attr($slug) .'" id="wpr-element-'. esc_attr($slug) .'" '. checked( get_option('wpr-element-'. $slug, 'on'), 'on', false ) .'>';
|
248 |
+
echo '<label for="wpr-element-'. esc_attr($slug) .'"></label>';
|
249 |
+
echo ( '' !== $url && empty(get_option('wpr_wl_plugin_links')) ) ? '<a href="'. esc_url($url . $reff) .'" target="_blank">'. esc_html__('View Widget Demo', 'wpr-addons') .'</a>' : '';
|
250 |
+
echo '</div>';
|
251 |
+
echo '</div>';
|
252 |
+
}
|
253 |
+
?>
|
254 |
+
</div>
|
255 |
+
|
256 |
+
<div class="wpr-elements-heading">
|
257 |
+
<h3><?php esc_html_e( 'WooCommerce Builder Widgets', 'wpr-addons' ); ?></h3>
|
258 |
+
<p><?php esc_html_e( 'Product Archive Pages, Product Single Pages. Cart, Checkout and My Account Pages', 'wpr-addons' ); ?></p>
|
259 |
+
<?php if (!class_exists('WooCommerce')) : ?>
|
260 |
+
<p class='wpr-install-activate-woocommerce'><span class="dashicons dashicons-info-outline"></span> <?php esc_html_e( 'Install/Activate WooCommerce to use these widgets', 'wpr-addons' ); ?></p>
|
261 |
+
<?php endif; ?>
|
262 |
+
</div>
|
263 |
+
<div class="wpr-elements">
|
264 |
+
<?php
|
265 |
+
$woocommerce_builder_modules = Utilities::get_woocommerce_builder_modules();
|
266 |
+
$premium_woo_modules = [
|
267 |
+
'Product Filters' => ['product-filters-pro', 'https://royal-elementor-addons.com/?ref=rea-plugin-backend-elements-woo-prodfilter-widgets-pro#purchasepro', '', 'pro'],
|
268 |
+
'Product Breadcrumbs' => ['product-breadcrumbs-pro', 'https://royal-elementor-addons.com/?ref=rea-plugin-backend-elements-woo-breadcru-widgets-pro#purchasepro', '', 'pro'],
|
269 |
+
'Page My Account' => ['page-my-account-pro', 'https://royal-elementor-addons.com/?ref=rea-plugin-backend-elements-woo-myacc-widgets-pro#purchasepro', '', 'pro'],
|
270 |
+
'Woo Category Grid' => ['woo-category-grid-pro', 'https://royal-elementor-addons.com/?ref=rea-plugin-backend-elements-woo-catgrid-widgets-pro#purchasepro', '', 'pro'],
|
271 |
+
];
|
272 |
+
|
273 |
+
foreach ( array_merge($woocommerce_builder_modules, $premium_woo_modules) as $title => $data ) {
|
274 |
+
$slug = $data[0];
|
275 |
+
$url = $data[1];
|
276 |
+
$reff = '?ref=rea-plugin-backend-elements-widget-prev'. $data[1];
|
277 |
+
$class = 'new' === $data[3] ? 'wpr-new-element' : '';
|
278 |
+
$class = ('pro' === $data[3] && !wpr_fs()->can_use_premium_code()) ? 'wpr-pro-element' : '';
|
279 |
+
$default_value = class_exists( 'WooCommerce' ) ? 'on' : 'off';
|
280 |
+
|
281 |
+
if ( 'wpr-pro-element' === $class ) {
|
282 |
+
$default_value = 'off';
|
283 |
+
$reff = '';
|
284 |
+
}
|
285 |
+
|
286 |
+
echo '<div class="wpr-element '. esc_attr($class) .'">';
|
287 |
+
echo '<a href="'. esc_url($url . $reff) .'" target="_blank"></a>';
|
288 |
+
echo '<div class="wpr-element-info">';
|
289 |
+
echo '<h3>'. esc_html($title) .'</h3>';
|
290 |
+
echo '<input type="checkbox" name="wpr-element-'. esc_attr($slug) .'" id="wpr-element-'. esc_attr($slug) .'" '. checked( get_option('wpr-element-'. $slug, $default_value), 'on', false ) .'>';
|
291 |
+
echo '<label for="wpr-element-'. esc_attr($slug) .'"></label>';
|
292 |
+
// echo ( '' !== $url && empty(get_option('wpr_wl_plugin_links')) ) ? '<a href="'. esc_url($url . $reff) .'" target="_blank">'. esc_html__('View Widget Demo', 'wpr-addons') .'</a>' : '';
|
293 |
+
echo '</div>';
|
294 |
+
echo '</div>';
|
295 |
+
}
|
296 |
+
?>
|
297 |
+
</div>
|
298 |
+
|
299 |
+
<?php submit_button( '', 'wpr-options-button' ); ?>
|
300 |
+
|
301 |
+
<?php elseif ( $active_tab == 'wpr_tab_settings' ) : ?>
|
302 |
+
|
303 |
+
<?php
|
304 |
+
|
305 |
+
// Settings
|
306 |
+
settings_fields( 'wpr-settings' );
|
307 |
+
do_settings_sections( 'wpr-settings' );
|
308 |
+
|
309 |
+
?>
|
310 |
+
|
311 |
+
<div class="wpr-settings">
|
312 |
+
|
313 |
+
<?php submit_button( '', 'wpr-options-button' ); ?>
|
314 |
+
|
315 |
+
<div class="wpr-settings-group wpr-settings-group-woo">
|
316 |
+
<h3 class="wpr-settings-group-title"><?php esc_html_e( 'WooCommerce', 'wpr-addons' ); ?></h3>
|
317 |
+
|
318 |
+
<div class="wpr-settings-group-inner">
|
319 |
+
|
320 |
+
<?php if ( !wpr_fs()->can_use_premium_code() ) : ?>
|
321 |
+
<a href="https://royal-elementor-addons.com/?ref=rea-plugin-backend-settings-woo-pro#purchasepro" class="wpr-settings-pro-overlay" target="_blank">
|
322 |
+
<span class="dashicons dashicons-lock"></span>
|
323 |
+
<span class="dashicons dashicons-unlock"></span>
|
324 |
+
<span><?php esc_html_e( 'Upgrade to Pro', 'wpr-addons' ); ?></span>
|
325 |
+
</a>
|
326 |
+
<div class="wpr-setting">
|
327 |
+
<h4>
|
328 |
+
<span><?php esc_html_e( 'Shop Page: Products Per Page', 'wpr-addons' ); ?></span>
|
329 |
+
<br>
|
330 |
+
</h4>
|
331 |
+
<input type="text" value="9">
|
332 |
+
</div>
|
333 |
+
<div class="wpr-setting">
|
334 |
+
<h4>
|
335 |
+
<span><?php esc_html_e( 'Product Category: Products Per Page', 'wpr-addons' ); ?></span>
|
336 |
+
<br>
|
337 |
+
</h4>
|
338 |
+
<input type="text" value="9">
|
339 |
+
</div>
|
340 |
+
<div class="wpr-setting">
|
341 |
+
<h4>
|
342 |
+
<span><?php esc_html_e( 'Product Tag: Products Per Page', 'wpr-addons' ); ?></span>
|
343 |
+
<br>
|
344 |
+
</h4>
|
345 |
+
<input type="text" value="9">
|
346 |
+
</div>
|
347 |
+
<?php else: ?>
|
348 |
+
<?php do_action('wpr_woocommerce_settings'); ?>
|
349 |
+
<?php endif; ?>
|
350 |
+
|
351 |
+
</div>
|
352 |
+
|
353 |
+
<div class="wpr-woo-template-info">
|
354 |
+
<div class="wpr-woo-template-title">
|
355 |
+
<h4>Royal Templates</h4>
|
356 |
+
<span>Enable/Disable Royal addons Cart, Minicart, Notifications Templates, Product Lightbox</span>
|
357 |
+
</div>
|
358 |
+
<input type="checkbox" name="wpr_override_woo_templates" id="wpr_override_woo_templates" <?php echo checked( get_option('wpr_override_woo_templates', 'on'), 'on', false ); ?>>
|
359 |
+
<label for="wpr_override_woo_templates"></label>
|
360 |
+
</div>
|
361 |
+
|
362 |
+
<div class="wpr-woo-template-info">
|
363 |
+
<div class="wpr-woo-template-title">
|
364 |
+
<h4>Product Image Zoom</h4>
|
365 |
+
<span>Enable/Disable Image Zoom Effect on Woocommerce products</span>
|
366 |
+
</div>
|
367 |
+
<input type="checkbox" name="wpr_enable_product_image_zoom" id="wpr_enable_product_image_zoom" <?php echo checked( get_option('wpr_enable_product_image_zoom', 'on'), 'on', false ); ?>>
|
368 |
+
<label for="wpr_enable_product_image_zoom"></label>
|
369 |
+
</div>
|
370 |
+
|
371 |
+
<div class="wpr-woo-template-info">
|
372 |
+
<div class="wpr-woo-template-title">
|
373 |
+
<h4>Product Slider Nav</h4>
|
374 |
+
<span>Enable/Disable Navigation Arrows on Woocommerce products slider</span>
|
375 |
+
</div>
|
376 |
+
<input type="checkbox" name="wpr_enable_woo_flexslider_navigation" id="wpr_enable_woo_flexslider_navigation" <?php echo checked( get_option('wpr_enable_woo_flexslider_navigation', 'on'), 'on', false ); ?>>
|
377 |
+
<label for="wpr_enable_woo_flexslider_navigation"></label>
|
378 |
+
</div>
|
379 |
+
|
380 |
+
</div>
|
381 |
+
|
382 |
+
<div class="wpr-settings-group">
|
383 |
+
<h3 class="wpr-settings-group-title"><?php esc_html_e( 'Integrations', 'wpr-addons' ); ?></h3>
|
384 |
+
|
385 |
+
<div class="wpr-setting">
|
386 |
+
<h4>
|
387 |
+
<span><?php esc_html_e( 'Google Map API Key', 'wpr-addons' ); ?></span>
|
388 |
+
<br>
|
389 |
+
<a href="https://www.youtube.com/watch?v=O5cUoVpVUjU" target="_blank"><?php esc_html_e( 'How to get Google Map API Key?', 'wpr-addons' ); ?></a>
|
390 |
+
</h4>
|
391 |
+
|
392 |
+
<input type="text" name="wpr_google_map_api_key" id="wpr_google_map_api_key" value="<?php echo esc_attr(get_option('wpr_google_map_api_key')); ?>">
|
393 |
+
</div>
|
394 |
+
|
395 |
+
<div class="wpr-setting">
|
396 |
+
<h4>
|
397 |
+
<span><?php esc_html_e( 'MailChimp API Key', 'wpr-addons' ); ?></span>
|
398 |
+
<br>
|
399 |
+
<a href="https://mailchimp.com/help/about-api-keys/" target="_blank"><?php esc_html_e( 'How to get MailChimp API Key?', 'wpr-addons' ); ?></a>
|
400 |
+
</h4>
|
401 |
+
|
402 |
+
<input type="text" name="wpr_mailchimp_api_key" id="wpr_mailchimp_api_key" value="<?php echo esc_attr(get_option('wpr_mailchimp_api_key')); ?>">
|
403 |
+
</div>
|
404 |
+
</div>
|
405 |
+
|
406 |
+
<div class="wpr-settings-group">
|
407 |
+
<h3 class="wpr-settings-group-title"><?php esc_html_e( 'Lightbox', 'wpr-addons' ); ?></h3>
|
408 |
+
|
409 |
+
<div class="wpr-setting">
|
410 |
+
<h4><?php esc_html_e( 'Background Color', 'wpr-addons' ); ?></h4>
|
411 |
+
<input type="text" name="wpr_lb_bg_color" id="wpr_lb_bg_color" data-alpha="true" value="<?php echo esc_attr(get_option('wpr_lb_bg_color','rgba(0,0,0,0.6)')); ?>">
|
412 |
+
</div>
|
413 |
+
|
414 |
+
<div class="wpr-setting">
|
415 |
+
<h4><?php esc_html_e( 'Toolbar BG Color', 'wpr-addons' ); ?></h4>
|
416 |
+
<input type="text" name="wpr_lb_toolbar_color" id="wpr_lb_toolbar_color" data-alpha="true" value="<?php echo esc_attr(get_option('wpr_lb_toolbar_color','rgba(0,0,0,0.8)')); ?>">
|
417 |
+
</div>
|
418 |
+
|
419 |
+
<div class="wpr-setting">
|
420 |
+
<h4><?php esc_html_e( 'Caption BG Color', 'wpr-addons' ); ?></h4>
|
421 |
+
<input type="text" name="wpr_lb_caption_color" id="wpr_lb_caption_color" data-alpha="true" value="<?php echo esc_attr(get_option('wpr_lb_caption_color','rgba(0,0,0,0.8)')); ?>">
|
422 |
+
</div>
|
423 |
+
|
424 |
+
<div class="wpr-setting">
|
425 |
+
<h4><?php esc_html_e( 'Gallery BG Color', 'wpr-addons' ); ?></h4>
|
426 |
+
<input type="text" name="wpr_lb_gallery_color" id="wpr_lb_gallery_color" data-alpha="true" value="<?php echo esc_attr(get_option('wpr_lb_gallery_color','#444444')); ?>">
|
427 |
+
</div>
|
428 |
+
|
429 |
+
<div class="wpr-setting">
|
430 |
+
<h4><?php esc_html_e( 'Progress Bar Color', 'wpr-addons' ); ?></h4>
|
431 |
+
<input type="text" name="wpr_lb_pb_color" id="wpr_lb_pb_color" data-alpha="true" value="<?php echo esc_attr(get_option('wpr_lb_pb_color','#a90707')); ?>">
|
432 |
+
</div>
|
433 |
+
|
434 |
+
<div class="wpr-setting">
|
435 |
+
<h4><?php esc_html_e( 'UI Color', 'wpr-addons' ); ?></h4>
|
436 |
+
<input type="text" name="wpr_lb_ui_color" id="wpr_lb_ui_color" data-alpha="true" value="<?php echo esc_attr(get_option('wpr_lb_ui_color','#efefef')); ?>">
|
437 |
+
</div>
|
438 |
+
|
439 |
+
<div class="wpr-setting">
|
440 |
+
<h4><?php esc_html_e( 'UI Hover Color', 'wpr-addons' ); ?></h4>
|
441 |
+
<input type="text" name="wpr_lb_ui_hr_color" id="wpr_lb_ui_hr_color" data-alpha="true" value="<?php echo esc_attr(get_option('wpr_lb_ui_hr_color','#ffffff')); ?>">
|
442 |
+
</div>
|
443 |
+
|
444 |
+
<div class="wpr-setting">
|
445 |
+
<h4><?php esc_html_e( 'Text Color', 'wpr-addons' ); ?></h4>
|
446 |
+
<input type="text" name="wpr_lb_text_color" id="wpr_lb_text_color" data-alpha="true" value="<?php echo esc_attr(get_option('wpr_lb_text_color','#efefef')); ?>">
|
447 |
+
</div>
|
448 |
+
|
449 |
+
<div class="wpr-setting">
|
450 |
+
<h4><?php esc_html_e( 'UI Icon Size', 'wpr-addons' ); ?></h4>
|
451 |
+
<input type="number" name="wpr_lb_icon_size" id="wpr_lb_icon_size" value="<?php echo esc_attr(get_option('wpr_lb_icon_size','20')); ?>">
|
452 |
+
</div>
|
453 |
+
|
454 |
+
<div class="wpr-setting">
|
455 |
+
<h4><?php esc_html_e( 'Navigation Arrow Size', 'wpr-addons' ); ?></h4>
|
456 |
+
<input type="number" name="wpr_lb_arrow_size" id="wpr_lb_arrow_size" value="<?php echo esc_attr(get_option('wpr_lb_arrow_size','35')); ?>">
|
457 |
+
</div>
|
458 |
+
|
459 |
+
<div class="wpr-setting">
|
460 |
+
<h4><?php esc_html_e( 'Text Size', 'wpr-addons' ); ?></h4>
|
461 |
+
<input type="number" name="wpr_lb_text_size" id="wpr_lb_text_size" value="<?php echo esc_attr(get_option('wpr_lb_text_size','14')); ?>">
|
462 |
+
</div>
|
463 |
+
</div>
|
464 |
+
|
465 |
+
<?php submit_button( '', 'wpr-options-button' ); ?>
|
466 |
+
|
467 |
+
</div>
|
468 |
+
|
469 |
+
<?php elseif ( $active_tab == 'wpr_tab_extensions' ) :
|
470 |
+
|
471 |
+
// Extensions
|
472 |
+
settings_fields( 'wpr-extension-settings' );
|
473 |
+
do_settings_sections( 'wpr-extension-settings' );
|
474 |
+
|
475 |
+
global $new_allowed_options;
|
476 |
+
|
477 |
+
// array of option names
|
478 |
+
$option_names = $new_allowed_options[ 'wpr-extension-settings' ];
|
479 |
+
|
480 |
+
echo '<div class="wpr-elements">';
|
481 |
+
|
482 |
+
foreach ($option_names as $option_name) {
|
483 |
+
$option_title = ucwords( preg_replace( '/-/i', ' ', preg_replace('/wpr-||-toggle/i', '', $option_name ) ));
|
484 |
+
|
485 |
+
echo '<div class="wpr-element">';
|
486 |
+
echo '<div class="wpr-element-info">';
|
487 |
+
echo '<h3>'. esc_html($option_title) .'</h3>';
|
488 |
+
echo '<input type="checkbox" name="'. esc_attr($option_name) .'" id="'. esc_attr($option_name) .'" '. checked( get_option(''. $option_name .'', 'on'), 'on', false ) .'>';
|
489 |
+
echo '<label for="'. esc_attr($option_name) .'"></label>';
|
490 |
+
|
491 |
+
if ( 'wpr-parallax-background' === $option_name ) {
|
492 |
+
echo '<br><span>Tip: Edit any Section > Navigate to Style tab</span>';
|
493 |
+
echo '<a href="https://www.youtube.com/watch?v=DcDeQ__lJbw" target="_blank">Watch Video Tutorial</a>';
|
494 |
+
} elseif ( 'wpr-parallax-multi-layer' === $option_name ) {
|
495 |
+
echo '<br><span>Tip: Edit any Section > Navigate to Style tab</span>';
|
496 |
+
echo '<a href="https://youtu.be/DcDeQ__lJbw?t=121" target="_blank">Watch Video Tutorial</a>';
|
497 |
+
} elseif ( 'wpr-particles' === $option_name ) {
|
498 |
+
echo '<br><span>Tip: Edit any Section > Navigate to Style tab</span>';
|
499 |
+
echo '<a href="https://www.youtube.com/watch?v=8OdnaoFSj94" target="_blank">Watch Video Tutorial</a>';
|
500 |
+
} elseif ( 'wpr-sticky-section' === $option_name ) {
|
501 |
+
echo '<br><span>Tip: Edit any Section > Navigate to Advanced tab</span>';
|
502 |
+
echo '<a href="https://www.youtube.com/watch?v=at0CPKtklF0&t=375s" target="_blank">Watch Video Tutorial</a>';
|
503 |
+
}
|
504 |
+
|
505 |
+
// echo '<a href="https://royal-elementor-addons.com/elementor-particle-effects/?ref=rea-plugin-backend-extentions-prev">'. esc_html('View Extension Demo', 'wpr-addons') .'</a>';
|
506 |
+
echo '</div>';
|
507 |
+
echo '</div>';
|
508 |
+
}
|
509 |
+
|
510 |
+
echo '</div>';
|
511 |
+
|
512 |
+
submit_button( '', 'wpr-options-button' );
|
513 |
+
|
514 |
+
elseif ( $active_tab == 'wpr_tab_white_label' ) :
|
515 |
+
|
516 |
+
do_action('wpr_white_label_tab_content');
|
517 |
+
|
518 |
+
endif; ?>
|
519 |
+
|
520 |
+
</form>
|
521 |
+
</div>
|
522 |
+
|
523 |
+
</div>
|
524 |
+
|
525 |
+
|
526 |
+
<?php
|
527 |
+
|
528 |
+
} // End wpr_addons_settings_page()
|
529 |
+
|
530 |
+
|
531 |
+
|
532 |
+
// Add Support Sub Menu item that will redirect to wp.org
|
533 |
+
function wpr_addons_add_support_menu() {
|
534 |
+
add_submenu_page( 'wpr-addons', 'Support', 'Support', 'manage_options', 'wpr-support', 'wpr_addons_support_page', 99 );
|
535 |
+
}
|
536 |
+
add_action( 'admin_menu', 'wpr_addons_add_support_menu', 99 );
|
537 |
+
|
538 |
+
function wpr_addons_support_page() {}
|
539 |
+
|
540 |
+
function wpr_redirect_support_page() {
|
541 |
+
?>
|
542 |
+
<script type="text/javascript">
|
543 |
+
jQuery(document).ready( function($) {
|
544 |
+
$( 'ul#adminmenu a[href*="page=wpr-support"]' ).attr('href', 'https://wordpress.org/support/plugin/royal-elementor-addons/').attr( 'target', '_blank' );
|
545 |
+
});
|
546 |
+
</script>
|
547 |
+
<?php
|
548 |
+
}
|
549 |
+
add_action( 'admin_head', 'wpr_redirect_support_page' );
|
550 |
+
|
551 |
+
|
552 |
+
// Add Upgrade Sub Menu item that will redirect to royal-elementor-addons.com
|
553 |
+
function wpr_addons_add_upgrade_menu() {
|
554 |
+
if ( defined('WPR_ADDONS_PRO_VERSION') ) return;
|
555 |
+
add_submenu_page( 'wpr-addons', 'Upgrade', 'Upgrade', 'manage_options', 'wpr-upgrade', 'wpr_addons_upgrade_page', 99 );
|
556 |
+
}
|
557 |
+
add_action( 'admin_menu', 'wpr_addons_add_upgrade_menu', 99 );
|
558 |
+
|
559 |
+
function wpr_addons_upgrade_page() {}
|
560 |
+
|
561 |
+
function wpr_redirect_upgrade_page() {
|
562 |
+
?>
|
563 |
+
<script type="text/javascript">
|
564 |
+
jQuery(document).ready( function($) {
|
565 |
+
$( 'ul#adminmenu a[href*="page=wpr-upgrade"]' ).attr('href', 'https://royal-elementor-addons.com/?ref=rea-plugin-backend-menu-upgrade-pro#purchasepro').attr( 'target', '_blank' );
|
566 |
+
$( 'ul#adminmenu a[href*="#purchasepro"]' ).css('color', 'greenyellow');
|
567 |
+
});
|
568 |
+
</script>
|
569 |
+
<?php
|
570 |
+
}
|
571 |
add_action( 'admin_head', 'wpr_redirect_upgrade_page' );
|
admin/popups.php
CHANGED
@@ -1,82 +1,87 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
-
exit; // Exit if accessed directly.
|
5 |
-
}
|
6 |
-
|
7 |
-
use WprAddons\Admin\Includes\WPR_Templates_Loop;
|
8 |
-
use WprAddons\Classes\Utilities;
|
9 |
-
|
10 |
-
// Register Menus
|
11 |
-
function wpr_addons_add_popups_menu() {
|
12 |
-
add_submenu_page( 'wpr-addons', 'Popups', 'Popups', 'manage_options', 'wpr-popups', 'wpr_addons_popups_page' );
|
13 |
-
}
|
14 |
-
add_action( 'admin_menu', 'wpr_addons_add_popups_menu' );
|
15 |
-
|
16 |
-
function wpr_addons_popups_page() {
|
17 |
-
|
18 |
-
?>
|
19 |
-
|
20 |
-
<div class="wrap wpr-settings-page-wrap">
|
21 |
-
|
22 |
-
<div class="wpr-settings-page-header">
|
23 |
-
<h1><?php echo esc_html(Utilities::get_plugin_name(true)); ?></h1>
|
24 |
-
<p><?php esc_html_e( 'The most powerful Elementor Addons in the universe.', 'wpr-addons' ); ?></p>
|
25 |
-
|
26 |
-
<!-- Custom Template -->
|
27 |
-
<div class="wpr-preview-buttons">
|
28 |
-
<div class="wpr-user-template">
|
29 |
-
<span><?php esc_html_e( 'Create Template', 'wpr-addons' ); ?></span>
|
30 |
-
<span class="plus-icon">+</span>
|
31 |
-
</div>
|
32 |
-
|
33 |
-
<a href="https://www.youtube.com/watch?v=TbKTNpuXM68" class="wpr-options-button button" target="_blank" style="padding:
|
34 |
-
<?php echo esc_html__( 'How to use Popups', 'wpr-addons' ); ?>
|
35 |
-
<span class="dashicons dashicons-video-alt3"></span>
|
36 |
-
</a>
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
<
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
|
|
|
|
|
|
|
|
|
|
82 |
} // End wpr_addons_popups_page()
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
exit; // Exit if accessed directly.
|
5 |
+
}
|
6 |
+
|
7 |
+
use WprAddons\Admin\Includes\WPR_Templates_Loop;
|
8 |
+
use WprAddons\Classes\Utilities;
|
9 |
+
|
10 |
+
// Register Menus
|
11 |
+
function wpr_addons_add_popups_menu() {
|
12 |
+
add_submenu_page( 'wpr-addons', 'Popups', 'Popups', 'manage_options', 'wpr-popups', 'wpr_addons_popups_page' );
|
13 |
+
}
|
14 |
+
add_action( 'admin_menu', 'wpr_addons_add_popups_menu' );
|
15 |
+
|
16 |
+
function wpr_addons_popups_page() {
|
17 |
+
|
18 |
+
?>
|
19 |
+
|
20 |
+
<div class="wrap wpr-settings-page-wrap">
|
21 |
+
|
22 |
+
<div class="wpr-settings-page-header">
|
23 |
+
<h1><?php echo esc_html(Utilities::get_plugin_name(true)); ?></h1>
|
24 |
+
<p><?php esc_html_e( 'The most powerful Elementor Addons in the universe.', 'wpr-addons' ); ?></p>
|
25 |
+
|
26 |
+
<!-- Custom Template -->
|
27 |
+
<div class="wpr-preview-buttons">
|
28 |
+
<div class="wpr-user-template">
|
29 |
+
<span><?php esc_html_e( 'Create Template', 'wpr-addons' ); ?></span>
|
30 |
+
<span class="plus-icon">+</span>
|
31 |
+
</div>
|
32 |
+
|
33 |
+
<a href="https://www.youtube.com/watch?v=TbKTNpuXM68" class="wpr-options-button button" target="_blank" style="padding: 10px 22px;">
|
34 |
+
<?php echo esc_html__( 'How to use Popups', 'wpr-addons' ); ?>
|
35 |
+
<span class="dashicons dashicons-video-alt3"></span>
|
36 |
+
</a>
|
37 |
+
|
38 |
+
<a href="https://royaladdons.frill.co/b/6m4d5qm4/feature-ideas" class="wpr-options-button button" target="_blank" style="padding: 8px 22px;">
|
39 |
+
<?php echo esc_html__( 'Request New Feature', 'wpr-addons' ); ?>
|
40 |
+
<span class="dashicons dashicons-star-empty"></span>
|
41 |
+
</a>
|
42 |
+
</div>
|
43 |
+
</div>
|
44 |
+
|
45 |
+
<div class="wpr-settings-page">
|
46 |
+
<form method="post" action="options.php">
|
47 |
+
<?php
|
48 |
+
|
49 |
+
// Active Tab
|
50 |
+
$active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( wp_unslash( $_GET['tab'] ) ) : 'wpr_tab_popups';
|
51 |
+
|
52 |
+
?>
|
53 |
+
|
54 |
+
<!-- Template ID Holder -->
|
55 |
+
<input type="hidden" name="wpr_template" id="wpr_template" value="">
|
56 |
+
|
57 |
+
<!-- Conditions Popup -->
|
58 |
+
<?php WPR_Templates_Loop::render_conditions_popup(); ?>
|
59 |
+
|
60 |
+
<!-- Create Templte Popup -->
|
61 |
+
<?php WPR_Templates_Loop::render_create_template_popup(); ?>
|
62 |
+
|
63 |
+
<!-- Tabs -->
|
64 |
+
<div class="nav-tab-wrapper wpr-nav-tab-wrapper">
|
65 |
+
<a href="?page=wpr-theme-builder&tab=wpr_tab_popups" data-title="popup" class="nav-tab <?php echo ($active_tab == 'wpr_tab_popups') ? 'nav-tab-active' : ''; ?>">
|
66 |
+
<?php esc_html_e( 'Popups', 'wpr-addons' ); ?>
|
67 |
+
</a>
|
68 |
+
</div>
|
69 |
+
|
70 |
+
<?php if ( $active_tab == 'wpr_tab_popups' ) : ?>
|
71 |
+
|
72 |
+
<!-- Save Conditions -->
|
73 |
+
<input type="hidden" name="wpr_popup_conditions" id="wpr_popup_conditions" value="<?php echo esc_attr(get_option('wpr_popup_conditions', '[]')); ?>">
|
74 |
+
|
75 |
+
<?php WPR_Templates_Loop::render_theme_builder_templates( 'popup' ); ?>
|
76 |
+
|
77 |
+
<?php endif; ?>
|
78 |
+
|
79 |
+
</form>
|
80 |
+
</div>
|
81 |
+
|
82 |
+
</div>
|
83 |
+
|
84 |
+
|
85 |
+
<?php
|
86 |
+
|
87 |
} // End wpr_addons_popups_page()
|
admin/premade-blocks.php
CHANGED
@@ -1,39 +1,39 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
-
exit; // Exit if accessed directly.
|
5 |
-
}
|
6 |
-
|
7 |
-
use WprAddons\Admin\Templates\WPR_Templates_Data;
|
8 |
-
use WprAddons\Admin\Templates\WPR_Templates_Library_Blocks;
|
9 |
-
use WprAddons\Classes\Utilities;
|
10 |
-
use Elementor\Plugin;
|
11 |
-
|
12 |
-
// Register Menus
|
13 |
-
function wpr_addons_add_premade_blocks_menu() {
|
14 |
-
add_submenu_page( 'wpr-addons', 'Premade Blocks', 'Premade Blocks', 'manage_options', 'wpr-premade-blocks', 'wpr_addons_premade_blocks_page' );
|
15 |
-
}
|
16 |
-
add_action( 'admin_menu', 'wpr_addons_add_premade_blocks_menu' );
|
17 |
-
|
18 |
-
/**
|
19 |
-
** Render Premade Blocks Page
|
20 |
-
*/
|
21 |
-
function wpr_addons_premade_blocks_page() {
|
22 |
-
|
23 |
-
?>
|
24 |
-
|
25 |
-
<div class="wpr-premade-blocks-page">
|
26 |
-
|
27 |
-
<div class="wpr-settings-page-header">
|
28 |
-
<h1><?php echo esc_html(Utilities::get_plugin_name(true)); ?></h1>
|
29 |
-
<p><?php esc_html_e( 'The most powerful Elementor Addons in the universe.', 'wpr-addons' ); ?></p>
|
30 |
-
</div>
|
31 |
-
|
32 |
-
<?php WPR_Templates_Library_Blocks::render_library_templates_blocks(); ?>
|
33 |
-
|
34 |
-
</div>
|
35 |
-
|
36 |
-
|
37 |
-
<?php
|
38 |
-
|
39 |
-
} // End wpr_addons_premade_blocks_page()
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
exit; // Exit if accessed directly.
|
5 |
+
}
|
6 |
+
|
7 |
+
use WprAddons\Admin\Templates\WPR_Templates_Data;
|
8 |
+
use WprAddons\Admin\Templates\WPR_Templates_Library_Blocks;
|
9 |
+
use WprAddons\Classes\Utilities;
|
10 |
+
use Elementor\Plugin;
|
11 |
+
|
12 |
+
// Register Menus
|
13 |
+
function wpr_addons_add_premade_blocks_menu() {
|
14 |
+
add_submenu_page( 'wpr-addons', 'Premade Blocks', 'Premade Blocks', 'manage_options', 'wpr-premade-blocks', 'wpr_addons_premade_blocks_page' );
|
15 |
+
}
|
16 |
+
add_action( 'admin_menu', 'wpr_addons_add_premade_blocks_menu' );
|
17 |
+
|
18 |
+
/**
|
19 |
+
** Render Premade Blocks Page
|
20 |
+
*/
|
21 |
+
function wpr_addons_premade_blocks_page() {
|
22 |
+
|
23 |
+
?>
|
24 |
+
|
25 |
+
<div class="wpr-premade-blocks-page">
|
26 |
+
|
27 |
+
<div class="wpr-settings-page-header">
|
28 |
+
<h1><?php echo esc_html(Utilities::get_plugin_name(true)); ?></h1>
|
29 |
+
<p><?php esc_html_e( 'The most powerful Elementor Addons in the universe.', 'wpr-addons' ); ?></p>
|
30 |
+
</div>
|
31 |
+
|
32 |
+
<?php WPR_Templates_Library_Blocks::render_library_templates_blocks(); ?>
|
33 |
+
|
34 |
+
</div>
|
35 |
+
|
36 |
+
|
37 |
+
<?php
|
38 |
+
|
39 |
+
} // End wpr_addons_premade_blocks_page()
|
admin/templates-kit.php
CHANGED
@@ -1,623 +1,623 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
-
exit; // Exit if accessed directly.
|
5 |
-
}
|
6 |
-
|
7 |
-
use WprAddons\Admin\Templates\WPR_Templates_Data;
|
8 |
-
use WprAddons\Classes\Utilities;
|
9 |
-
use Elementor\Plugin;
|
10 |
-
|
11 |
-
// Register Menus
|
12 |
-
function wpr_addons_add_templates_kit_menu() {
|
13 |
-
add_submenu_page( 'wpr-addons', 'Templates Kit', 'Templates Kit', 'manage_options', 'wpr-templates-kit', 'wpr_addons_templates_kit_page' );
|
14 |
-
}
|
15 |
-
add_action( 'admin_menu', 'wpr_addons_add_templates_kit_menu' );
|
16 |
-
|
17 |
-
// Import Template Kit
|
18 |
-
add_action( 'wp_ajax_wpr_activate_required_theme', 'wpr_activate_required_theme' );
|
19 |
-
add_action( 'wp_ajax_wpr_activate_required_plugins', 'wpr_activate_required_plugins' );
|
20 |
-
add_action( 'wp_ajax_wpr_fix_royal_compatibility', 'wpr_fix_royal_compatibility' );
|
21 |
-
add_action( 'wp_ajax_wpr_import_templates_kit', 'wpr_import_templates_kit' );
|
22 |
-
add_action( 'wp_ajax_wpr_final_settings_setup', 'wpr_final_settings_setup' );
|
23 |
-
add_action( 'wp_ajax_wpr_search_query_results', 'wpr_search_query_results' );
|
24 |
-
add_action( 'init', 'disable_default_woo_pages_creation', 2 );
|
25 |
-
|
26 |
-
|
27 |
-
/**
|
28 |
-
** Render Templates Kit Page
|
29 |
-
*/
|
30 |
-
function wpr_addons_templates_kit_page() {
|
31 |
-
|
32 |
-
?>
|
33 |
-
|
34 |
-
<div class="wpr-templates-kit-page">
|
35 |
-
|
36 |
-
<header>
|
37 |
-
<div class="wpr-templates-kit-logo">
|
38 |
-
<div><img src="<?php echo !empty(get_option('wpr_wl_plugin_logo')) ? esc_url(wp_get_attachment_image_src(get_option('wpr_wl_plugin_logo'), 'full')[0]) : esc_url(WPR_ADDONS_ASSETS_URL .'img/logo-40x40.png'); ?>"></div>
|
39 |
-
<div class="back-btn"><?php printf( esc_html__('%s Back to Library', 'wpr-addons'), '<span class="dashicons dashicons-arrow-left-alt2"></span>'); ?></div>
|
40 |
-
</div>
|
41 |
-
|
42 |
-
<div class="wpr-templates-kit-search">
|
43 |
-
<input type="text" autocomplete="off" placeholder="<?php esc_html_e('Search Templates Kit...', 'wpr-addons'); ?>">
|
44 |
-
<span class="dashicons dashicons-search"></span>
|
45 |
-
</div>
|
46 |
-
|
47 |
-
<div class="wpr-templates-kit-price-filter">
|
48 |
-
<span data-price="mixed"><?php esc_html_e('Price: Mixed', 'wpr-addons'); ?></span>
|
49 |
-
<span class="dashicons dashicons-arrow-down-alt2"></span>
|
50 |
-
<ul>
|
51 |
-
<li><?php esc_html_e('Mixed', 'wpr-addons'); ?></li>
|
52 |
-
<li><?php esc_html_e('Free', 'wpr-addons'); ?></li>
|
53 |
-
<li><?php esc_html_e('Premium', 'wpr-addons'); ?></li>
|
54 |
-
</ul>
|
55 |
-
</div>
|
56 |
-
|
57 |
-
<div class="wpr-templates-kit-filters">
|
58 |
-
<div>Filter: All</div>
|
59 |
-
<ul>
|
60 |
-
<li data-filter="all">Blog</li>
|
61 |
-
<li data-filter="blog">Blog</li>
|
62 |
-
<li data-filter="business">Business</li>
|
63 |
-
<li data-filter="ecommerce">eCommerce</li>
|
64 |
-
<li data-filter="beauty">Beauty</li>
|
65 |
-
</ul>
|
66 |
-
</div>
|
67 |
-
</header>
|
68 |
-
|
69 |
-
<div class="wpr-templates-kit-page-title">
|
70 |
-
<h1><?php esc_html_e('Royal Elementor Templates Kit', 'wpr-addons'); ?></h1>
|
71 |
-
<p><?php esc_html_e('Import any Templates Kit with just a Single click', 'wpr-addons'); ?></p>
|
72 |
-
<p>
|
73 |
-
<a href="https://www.youtube.com/watch?v=kl2xBoWW81o" class="wpr-options-button button" target="_blank">
|
74 |
-
<?php esc_html_e('Video Tutorial', 'wpr-addons'); ?>
|
75 |
-
<span class="dashicons dashicons-video-alt3"></span>
|
76 |
-
</a>
|
77 |
-
</p>
|
78 |
-
</div>
|
79 |
-
|
80 |
-
<div class="wpr-templates-kit-grid main-grid" data-theme-status="<?php echo esc_attr(get_theme_status()); ?>">
|
81 |
-
<?php
|
82 |
-
$kits = WPR_Templates_Data::get_available_kits();
|
83 |
-
$sorted_kits = [];
|
84 |
-
|
85 |
-
foreach ($kits as $slug => $kit) {
|
86 |
-
foreach ($kit as $version => $data ) {
|
87 |
-
$sorted_kits[$slug .'-'. $version] = $data;
|
88 |
-
}
|
89 |
-
}
|
90 |
-
|
91 |
-
// Sort by Priority
|
92 |
-
uasort($sorted_kits, function ($item1, $item2) {
|
93 |
-
if ($item1['priority'] == $item2['priority']) return 0;
|
94 |
-
return $item1['priority'] < $item2['priority'] ? -1 : 1;
|
95 |
-
});
|
96 |
-
|
97 |
-
// Loop
|
98 |
-
foreach ($sorted_kits as $kit_id => $data) {
|
99 |
-
echo '<div class="grid-item" data-kit-id="'. esc_attr($kit_id) .'" data-tags="'. esc_attr($data['tags']) .'" data-plugins="'. esc_attr($data['plugins']) .'" data-pages="'. esc_attr($data['pages']) .'" data-price="'. esc_attr($data['price']) .'">';
|
100 |
-
echo '<div class="image-wrap">';
|
101 |
-
echo '<img src="'. esc_url('https://royal-elementor-addons.com/library/templates-kit/'. $kit_id .'/home.jpg') .'">';
|
102 |
-
echo '<div class="image-overlay"><span class="dashicons dashicons-search"></span></div>';
|
103 |
-
echo '</div>';
|
104 |
-
echo '<footer>';
|
105 |
-
echo '<h3>'. esc_html($data['name']) .'</h3>';
|
106 |
-
if ( $data['woo-builder'] ) {
|
107 |
-
echo '<span class="wpr-woo-builder-label">'. esc_html__( 'Woo Builder', 'wpr-addons' ) .'</span>';
|
108 |
-
} elseif ( $data['theme-builder'] ) {
|
109 |
-
echo '<span class="wpr-theme-builder-label">'. esc_html__( 'Theme Builder', 'wpr-addons' ) .'</span>';
|
110 |
-
}
|
111 |
-
echo '</footer>';
|
112 |
-
echo '</div>';
|
113 |
-
}
|
114 |
-
|
115 |
-
?>
|
116 |
-
|
117 |
-
</div>
|
118 |
-
|
119 |
-
<div class="wpr-templates-kit-single">
|
120 |
-
<div class="wpr-templates-kit-grid single-grid"></div>
|
121 |
-
|
122 |
-
<footer class="action-buttons-wrap">
|
123 |
-
<a href="https://royal-elementor-addons.com/" class="preview-demo button" target="_blank"><?php esc_html_e('Preview Demo', 'wpr-addons'); ?> <span class="dashicons dashicons-external"></span></a>
|
124 |
-
|
125 |
-
<div class="import-template-buttons">
|
126 |
-
<?php
|
127 |
-
echo '<button class="import-kit button">'. esc_html__('Import Templates Kit', 'wpr-addons') .' <span class="dashicons dashicons-download"></span></button>';
|
128 |
-
echo '<a href="https://royal-elementor-addons.com/?ref=rea-plugin-backend-templates-upgrade-pro#purchasepro" class="get-access button" target="_blank">'. esc_html__('Get Access', 'wpr-addons') .' <span class="dashicons dashicons-external"></span></a>';
|
129 |
-
?>
|
130 |
-
<button class="import-template button"><?php printf( esc_html__( 'Import %s Template', 'wpr-addons' ), '<strong></strong>' ); ?></button>
|
131 |
-
|
132 |
-
</div>
|
133 |
-
</footer>
|
134 |
-
</div>
|
135 |
-
|
136 |
-
<div class="wpr-import-kit-popup-wrap">
|
137 |
-
<div class="overlay"></div>
|
138 |
-
<div class="wpr-import-kit-popup">
|
139 |
-
<header>
|
140 |
-
<h3><?php esc_html_e('Template Kit is being imported', 'wpr-addons'); ?><span>.</span></h3>
|
141 |
-
<span class="dashicons dashicons-no-alt close-btn"></span>
|
142 |
-
</header>
|
143 |
-
<div class="content">
|
144 |
-
<p><?php esc_html_e('The import process can take a few seconds depending on the size of the kit you are importing and speed of the connection.', 'wpr-addons'); ?></p>
|
145 |
-
<p><?php esc_html_e('Please do NOT close this browser window until import is completed.', 'wpr-addons'); ?></p>
|
146 |
-
|
147 |
-
<div class="progress-wrap">
|
148 |
-
<div class="progress-bar"></div>
|
149 |
-
<strong></strong>
|
150 |
-
</div>
|
151 |
-
|
152 |
-
<div class="wpr-import-help">
|
153 |
-
<a href="https://royal-elementor-addons.com/contactus/?ref=rea-plugin-backend-templates-import-screen" target="_blank">Having trouble with template import? Get help <span class="dashicons dashicons-sos"></span></a>
|
154 |
-
</div>
|
155 |
-
</div>
|
156 |
-
</div>
|
157 |
-
</div>
|
158 |
-
|
159 |
-
<div class="wpr-templates-kit-not-found">
|
160 |
-
<img src="<?php echo esc_url(WPR_ADDONS_ASSETS_URL .'img/not-found.png'); ?>">
|
161 |
-
<h1><?php esc_html_e('No Search Results Found.', 'wpr-addons'); ?></h1>
|
162 |
-
<p><?php esc_html_e('Cant find a Templates Kit you are looking for?', 'wpr-addons'); ?></p>
|
163 |
-
<a href="https://royal-elementor-addons.com/library/request-new-kit-red.html" target="_blank"><?php esc_html_e('Request Templates Kit.', 'wpr-addons'); ?></a>
|
164 |
-
</div>
|
165 |
-
|
166 |
-
</div>
|
167 |
-
|
168 |
-
|
169 |
-
<?php
|
170 |
-
|
171 |
-
} // End wpr_addons_templates_kit_page()
|
172 |
-
|
173 |
-
/**
|
174 |
-
** Get Theme Status
|
175 |
-
*/
|
176 |
-
function get_theme_status() {
|
177 |
-
$theme = wp_get_theme();
|
178 |
-
|
179 |
-
// Theme installed and activate.
|
180 |
-
if ( 'Royal Elementor Kit' === $theme->name || 'Royal Elementor Kit' === $theme->parent_theme ) {
|
181 |
-
return 'req-theme-active';
|
182 |
-
}
|
183 |
-
|
184 |
-
// Theme installed but not activate.
|
185 |
-
foreach ( (array) wp_get_themes() as $theme_dir => $theme ) {
|
186 |
-
if ( 'Royal Elementor Kit' === $theme->name || 'Royal Elementor Kit' === $theme->parent_theme ) {
|
187 |
-
return 'req-theme-inactive';
|
188 |
-
}
|
189 |
-
}
|
190 |
-
|
191 |
-
return 'req-theme-not-installed';
|
192 |
-
}
|
193 |
-
|
194 |
-
/**
|
195 |
-
** Install/Activate Required Theme
|
196 |
-
*/
|
197 |
-
function wpr_activate_required_theme() {
|
198 |
-
// Get Current Theme
|
199 |
-
$theme = get_option('stylesheet');
|
200 |
-
|
201 |
-
// Activate Royal Elementor Kit Theme
|
202 |
-
if ( 'ashe-pro-premium' !== $theme && 'bard-pro-premium' !== $theme
|
203 |
-
&& 'vayne-pro-premium' !== $theme && 'kayn-pro-premium' !== $theme ) {
|
204 |
-
switch_theme( 'royal-elementor-kit' );
|
205 |
-
set_transient( 'royal-elementor-kit_activation_notice', true );
|
206 |
-
}
|
207 |
-
|
208 |
-
// TODO: maybe return back - 'ashe' !== $theme && 'bard' !== $theme &&
|
209 |
-
}
|
210 |
-
|
211 |
-
/**
|
212 |
-
** Activate Required Plugins
|
213 |
-
*/
|
214 |
-
function wpr_activate_required_plugins() {
|
215 |
-
if ( isset($_POST['plugin']) ) {
|
216 |
-
if ( 'contact-form-7' == $_POST['plugin'] ) {
|
217 |
-
if ( !is_plugin_active( 'contact-form-7/wp-contact-form-7.php' ) ) {
|
218 |
-
activate_plugin( 'contact-form-7/wp-contact-form-7.php' );
|
219 |
-
}
|
220 |
-
} elseif ( 'woocommerce' == $_POST['plugin'] ) {
|
221 |
-
if ( !is_plugin_active( 'woocommerce/woocommerce.php' ) ) {
|
222 |
-
activate_plugin( 'woocommerce/woocommerce.php' );
|
223 |
-
}
|
224 |
-
} elseif ( 'media-library-assistant' == $_POST['plugin'] ) {
|
225 |
-
if ( !is_plugin_active( 'media-library-assistant/index.php' ) ) {
|
226 |
-
activate_plugin( 'media-library-assistant/index.php' );
|
227 |
-
}
|
228 |
-
}
|
229 |
-
}
|
230 |
-
}
|
231 |
-
|
232 |
-
/**
|
233 |
-
** Deactivate Extra Plugins
|
234 |
-
*/
|
235 |
-
function wpr_fix_royal_compatibility() {
|
236 |
-
// Get currently active plugins
|
237 |
-
$active_plugins = (array) get_option( 'active_plugins', array() );
|
238 |
-
$active_plugins = array_values($active_plugins);
|
239 |
-
|
240 |
-
// Deactivate Extra Import Plugins
|
241 |
-
$ashe_extra_key = array_search('ashe-extra/ashe-extra.php', $active_plugins);
|
242 |
-
$bard_extra_key = array_search('bard-extra/bard-extra.php', $active_plugins);
|
243 |
-
|
244 |
-
if ( false !== $ashe_extra_key && array_key_exists($ashe_extra_key, $active_plugins) ) {
|
245 |
-
unset($active_plugins[$ashe_extra_key]);
|
246 |
-
}
|
247 |
-
|
248 |
-
if ( false !== $bard_extra_key && array_key_exists($bard_extra_key, $active_plugins) ) {
|
249 |
-
unset($active_plugins[$bard_extra_key]);
|
250 |
-
}
|
251 |
-
|
252 |
-
// Set Active Plugins
|
253 |
-
update_option( 'active_plugins', array_values($active_plugins) );
|
254 |
-
|
255 |
-
// Get Current Theme
|
256 |
-
$theme = get_option('stylesheet');
|
257 |
-
|
258 |
-
// Activate Royal Elementor Kit Theme
|
259 |
-
if ( 'ashe-pro-premium' !== $theme && 'bard-pro-premium' !== $theme
|
260 |
-
&& 'vayne-pro-premium' !== $theme && 'kayn-pro-premium' !== $theme ) {
|
261 |
-
switch_theme( 'royal-elementor-kit' );
|
262 |
-
set_transient( 'royal-elementor-kit_activation_notice', true );
|
263 |
-
}
|
264 |
-
}
|
265 |
-
|
266 |
-
/**
|
267 |
-
** Import Template Kit
|
268 |
-
*/
|
269 |
-
function wpr_import_templates_kit() {
|
270 |
-
|
271 |
-
// Temp Define Importers
|
272 |
-
if ( ! defined('WP_LOAD_IMPORTERS') ) {
|
273 |
-
define('WP_LOAD_IMPORTERS', true);
|
274 |
-
}
|
275 |
-
|
276 |
-
// Include if Class Does NOT Exist
|
277 |
-
if ( ! class_exists( 'WP_Import' ) ) {
|
278 |
-
$class_wp_importer = WPR_ADDONS_PATH .'admin/import/class-wordpress-importer.php';
|
279 |
-
if ( file_exists( $class_wp_importer ) ) {
|
280 |
-
require $class_wp_importer;
|
281 |
-
}
|
282 |
-
}
|
283 |
-
|
284 |
-
if ( class_exists( 'WP_Import' ) ) {
|
285 |
-
$kit = isset($_POST['wpr_templates_kit']) ? sanitize_file_name(wp_unslash($_POST['wpr_templates_kit'])) : '';
|
286 |
-
$file = isset($_POST['wpr_templates_kit_single']) ? sanitize_file_name(wp_unslash($_POST['wpr_templates_kit_single'])) : '';
|
287 |
-
|
288 |
-
// Tmp
|
289 |
-
update_option( 'wpr-import-kit-id', $kit );
|
290 |
-
|
291 |
-
// Download Import File
|
292 |
-
$local_file_path = download_template( $kit, $file );
|
293 |
-
|
294 |
-
// Prepare for Import
|
295 |
-
$wp_import = new WP_Import( $local_file_path, ['fetch_attachments' => true] );
|
296 |
-
|
297 |
-
// Import
|
298 |
-
ob_start();
|
299 |
-
$wp_import->run();
|
300 |
-
ob_end_clean();
|
301 |
-
|
302 |
-
// Delete Import File
|
303 |
-
unlink( $local_file_path );
|
304 |
-
|
305 |
-
// Send to JS
|
306 |
-
echo esc_html(serialize( $wp_import ));
|
307 |
-
}
|
308 |
-
|
309 |
-
}
|
310 |
-
|
311 |
-
/**
|
312 |
-
** Download Template
|
313 |
-
*/
|
314 |
-
function download_template( $kit, $file ) {
|
315 |
-
$file = ! $file ? 'main' : $file;
|
316 |
-
|
317 |
-
// Avoid Cache
|
318 |
-
$randomNum = substr(str_shuffle("0123456789abcdefghijklmnopqrstvwxyzABCDEFGHIJKLMNOPQRSTVWXYZ"), 0, 7);
|
319 |
-
|
320 |
-
// Remote and Local Files
|
321 |
-
$remote_file_url = 'https://royal-elementor-addons.com/library/templates-kit/'. $kit .'/main.xml?='. $randomNum;
|
322 |
-
$local_file_path = WPR_ADDONS_PATH .'admin/import/tmp.xml';
|
323 |
-
|
324 |
-
// No Limit for Execution
|
325 |
-
set_time_limit(0);
|
326 |
-
|
327 |
-
// Copy File From Server
|
328 |
-
copy( $remote_file_url, $local_file_path );
|
329 |
-
|
330 |
-
return $local_file_path;
|
331 |
-
}
|
332 |
-
|
333 |
-
/**
|
334 |
-
** Import Elementor Site Settings
|
335 |
-
*/
|
336 |
-
function import_elementor_site_settings( $kit ) {
|
337 |
-
// Avoid Cache
|
338 |
-
// $randomNum = substr(str_shuffle("0123456789abcdefghijklmnopqrstvwxyzABCDEFGHIJKLMNOPQRSTVWXYZ"), 0, 7);
|
339 |
-
|
340 |
-
// Get Remote File
|
341 |
-
$site_settings = @file_get_contents('https://royal-elementor-addons.com/library/templates-kit/'. $kit .'/site-settings.json');
|
342 |
-
|
343 |
-
if ( false !== $site_settings ) {
|
344 |
-
$site_settings = json_decode($site_settings, true);
|
345 |
-
|
346 |
-
if ( ! empty($site_settings['settings']) ) {
|
347 |
-
$default_kit = \Elementor\Plugin::$instance->documents->get_doc_for_frontend( get_option( 'elementor_active_kit' ) );
|
348 |
-
|
349 |
-
$kit_settings = $default_kit->get_settings();
|
350 |
-
$new_settings = $site_settings['settings'];
|
351 |
-
$settings = array_merge($kit_settings, $new_settings);
|
352 |
-
|
353 |
-
$default_kit->save( [ 'settings' => $settings ] );
|
354 |
-
}
|
355 |
-
}
|
356 |
-
}
|
357 |
-
|
358 |
-
/**
|
359 |
-
** Setup WPR Templates
|
360 |
-
*/
|
361 |
-
function setup_wpr_templates( $kit ) {
|
362 |
-
$kit = isset($kit) ? sanitize_text_field(wp_unslash($kit)) : '';
|
363 |
-
|
364 |
-
// Check if kit has Theme Builder templates
|
365 |
-
$kit_name = substr($kit, 0, strripos($kit, '-v'));
|
366 |
-
$kit_version = substr($kit, (strripos($kit, '-v') + 1), strlen($kit));
|
367 |
-
$get_available_kits = WPR_Templates_Data::get_available_kits();
|
368 |
-
$has_theme_builder = $get_available_kits[$kit_name][$kit_version]['theme-builder'];
|
369 |
-
$has_woo_builder = $get_available_kits[$kit_name][$kit_version]['woo-builder'];
|
370 |
-
$has_off_canvas = $get_available_kits[$kit_name][$kit_version]['off-canvas'];
|
371 |
-
|
372 |
-
// Set Home & Blog Pages
|
373 |
-
$home_page = get_page_by_path('home-'. $kit);
|
374 |
-
$blog_page = get_page_by_path('blog-'. $kit);
|
375 |
-
|
376 |
-
if ( $home_page ) {
|
377 |
-
update_option( 'show_on_front', 'page' );
|
378 |
-
update_option( 'page_on_front', $home_page->ID );
|
379 |
-
|
380 |
-
if ( $blog_page ) {
|
381 |
-
update_option( 'page_for_posts', $blog_page->ID );
|
382 |
-
}
|
383 |
-
}
|
384 |
-
|
385 |
-
// Set Headers and Footers
|
386 |
-
update_option('wpr_header_conditions', '{"user-header-'. $kit .'-header":["global"]}');
|
387 |
-
update_post_meta( Utilities::get_template_id('user-header-'. $kit), 'wpr_header_show_on_canvas', 'true' );
|
388 |
-
update_option('wpr_footer_conditions', '{"user-footer-'. $kit .'-footer":["global"]}');
|
389 |
-
update_post_meta( Utilities::get_template_id('user-footer-'. $kit), 'wpr_footer_show_on_canvas', 'true' );
|
390 |
-
|
391 |
-
// Theme Builder
|
392 |
-
if ( $has_theme_builder ) {
|
393 |
-
update_option('wpr_archive_conditions', '{"user-archive-'. $kit .'-blog":["archive/posts"],"user-archive-'. $kit .'-author":["archive/author"],"user-archive-'. $kit .'-date":["archive/date"],"user-archive-'. $kit .'-category-tag":["archive/categories/all","archive/tags/all"],"user-archive-'. $kit .'-search":["archive/search"]}');
|
394 |
-
update_option('wpr_single_conditions', '{"user-single-'. $kit .'-404":["single/page_404"],"user-single-'. $kit .'-post":["single/posts/all"],"user-single-'. $kit .'-page":["single/pages/all"]}');
|
395 |
-
}
|
396 |
-
|
397 |
-
// WooCommerce Builder
|
398 |
-
if ( $has_woo_builder ) {
|
399 |
-
update_option('wpr_product_archive_conditions', '{"user-product_archive-'. $kit .'-shop":["product_archive/products"],"user-product_archive-'. $kit .'-product-category-tag":["product_archive/product_cat/all","product_archive/product_tag/all"]}');
|
400 |
-
update_option('wpr_product_single_conditions', '{"user-product_single-'. $kit .'-product":["product_single/product"]}');
|
401 |
-
|
402 |
-
$shop_id = get_page_by_path('shop-'. $kit) ? get_page_by_path('shop-'. $kit)->ID : '';
|
403 |
-
$cart_id = get_page_by_path('cart-'. $kit) ? get_page_by_path('cart-'. $kit)->ID : '';
|
404 |
-
$checkout_id = get_page_by_path('checkout-'. $kit) ? get_page_by_path('checkout-'. $kit)->ID : '';
|
405 |
-
$myaccount_id = get_page_by_path('my-account-'. $kit) ? get_page_by_path('my-account-'. $kit)->ID : '';
|
406 |
-
|
407 |
-
update_option('woocommerce_shop_page_id', $shop_id);
|
408 |
-
update_option('woocommerce_cart_page_id', $cart_id);
|
409 |
-
update_option('woocommerce_checkout_page_id', $checkout_id);
|
410 |
-
|
411 |
-
if ( '' !== $myaccount_id ) {
|
412 |
-
update_option('woocommerce_myaccount_page_id', $myaccount_id);
|
413 |
-
}
|
414 |
-
|
415 |
-
// Update Options
|
416 |
-
update_option( 'woocommerce_queue_flush_rewrite_rules', 'yes' );
|
417 |
-
|
418 |
-
// Enable Elementor Builder for WooCommerce CPT
|
419 |
-
// $cpt_support = get_option( 'elementor_cpt_support' );
|
420 |
-
|
421 |
-
// if ( ! in_array( 'product', $cpt_support ) ) {
|
422 |
-
// $cpt_support[] = 'product';
|
423 |
-
// update_option( 'elementor_cpt_support', $cpt_support );
|
424 |
-
// }
|
425 |
-
}
|
426 |
-
|
427 |
-
// Set Popups
|
428 |
-
if ( $has_off_canvas ) {
|
429 |
-
update_option('wpr_popup_conditions', '{"user-popup-'. $kit .'-off-canvas":["global"],"user-popup-'. $kit .'-popup":["global"]}');
|
430 |
-
} else {
|
431 |
-
update_option('wpr_popup_conditions', '{"user-popup-'. $kit .'-popup":["global"]}');
|
432 |
-
}
|
433 |
-
}
|
434 |
-
|
435 |
-
/**
|
436 |
-
** Fix Elementor Images
|
437 |
-
*/
|
438 |
-
function wpr_fix_elementor_images() {
|
439 |
-
$args = array(
|
440 |
-
'post_type' => ['wpr_templates', 'wpr_mega_menu', 'page'],
|
441 |
-
'posts_per_page' => '-1',
|
442 |
-
'meta_key' => '_elementor_version'
|
443 |
-
);
|
444 |
-
$elementor_pages = new WP_Query ( $args );
|
445 |
-
|
446 |
-
// Check that we have query results.
|
447 |
-
if ( $elementor_pages->have_posts() ) {
|
448 |
-
|
449 |
-
// Start looping over the query results.
|
450 |
-
while ( $elementor_pages->have_posts() ) {
|
451 |
-
|
452 |
-
$elementor_pages->the_post();
|
453 |
-
|
454 |
-
// Replace Demo with Current
|
455 |
-
$site_url = get_site_url();
|
456 |
-
$site_url = str_replace( '/', '\/', $site_url );
|
457 |
-
$demo_site_url = 'https://demosites.royal-elementor-addons.com/'. get_option('wpr-import-kit-id');
|
458 |
-
$demo_site_url = str_replace( '/', '\/', $demo_site_url );
|
459 |
-
|
460 |
-
// Elementor Data
|
461 |
-
$data = get_post_meta( get_the_ID(), '_elementor_data', true );
|
462 |
-
|
463 |
-
if ( ! empty( $data ) ) {
|
464 |
-
$data = preg_replace('/\\\{1}\/sites\\\{1}\/\d+/', '', $data);
|
465 |
-
$data = str_replace( $demo_site_url, $site_url, $data );
|
466 |
-
$data = json_decode( $data, true );
|
467 |
-
}
|
468 |
-
|
469 |
-
update_metadata( 'post', get_the_ID(), '_elementor_data', $data );
|
470 |
-
|
471 |
-
// Elementor Page Settings
|
472 |
-
$page_settings = get_post_meta( get_the_ID(), '_elementor_page_settings', true );
|
473 |
-
$page_settings = json_encode($page_settings);
|
474 |
-
|
475 |
-
if ( ! empty( $page_settings ) ) {
|
476 |
-
$page_settings = preg_replace('/\\\{1}\/sites\\\{1}\/\d+/', '', $page_settings);
|
477 |
-
$page_settings = str_replace( $demo_site_url, $site_url, $page_settings );
|
478 |
-
$page_settings = json_decode( $page_settings, true );
|
479 |
-
}
|
480 |
-
|
481 |
-
update_metadata( 'post', get_the_ID(), '_elementor_page_settings', $page_settings );
|
482 |
-
|
483 |
-
}
|
484 |
-
|
485 |
-
}
|
486 |
-
|
487 |
-
// Clear Elementor Cache
|
488 |
-
Plugin::$instance->files_manager->clear_cache();
|
489 |
-
}
|
490 |
-
|
491 |
-
/**
|
492 |
-
** Final Settings Setup
|
493 |
-
*/
|
494 |
-
function wpr_final_settings_setup() {
|
495 |
-
$kit = !empty(get_option('wpr-import-kit-id')) ? esc_html(get_option('wpr-import-kit-id')) : '';
|
496 |
-
|
497 |
-
// Elementor Site Settings
|
498 |
-
import_elementor_site_settings($kit);
|
499 |
-
|
500 |
-
// Setup WPR Templates
|
501 |
-
setup_wpr_templates($kit);
|
502 |
-
|
503 |
-
// Fix Elementor Images
|
504 |
-
wpr_fix_elementor_images();
|
505 |
-
|
506 |
-
// Track Kit
|
507 |
-
wpr_track_imported_kit( $kit );
|
508 |
-
|
509 |
-
// Clear DB
|
510 |
-
delete_option('wpr-import-kit-id');
|
511 |
-
|
512 |
-
// Delete Hello World Post
|
513 |
-
$post = get_page_by_path('hello-world', OBJECT, 'post');
|
514 |
-
if ( $post ) {
|
515 |
-
wp_delete_post($post->ID,true);
|
516 |
-
}
|
517 |
-
}
|
518 |
-
|
519 |
-
/**
|
520 |
-
** Prevent WooCommerce creating default pages
|
521 |
-
*/
|
522 |
-
function disable_default_woo_pages_creation() {
|
523 |
-
add_filter( 'woocommerce_create_pages', '__return_empty_array' );
|
524 |
-
}
|
525 |
-
|
526 |
-
/**
|
527 |
-
* Allow SVG Import - Add Mime Types
|
528 |
-
*/
|
529 |
-
function wpr_svgs_upload_mimes( $mimes = array() ) {
|
530 |
-
|
531 |
-
// allow SVG file upload
|
532 |
-
$mimes['svg'] = 'image/svg+xml';
|
533 |
-
$mimes['svgz'] = 'image/svg+xml';
|
534 |
-
|
535 |
-
// allow JSON file upload
|
536 |
-
$mimes['json'] = 'text/plain';
|
537 |
-
|
538 |
-
return $mimes;
|
539 |
-
|
540 |
-
}
|
541 |
-
add_filter( 'upload_mimes', 'wpr_svgs_upload_mimes', 99 );
|
542 |
-
|
543 |
-
/**
|
544 |
-
* Check Mime Types
|
545 |
-
*/
|
546 |
-
function wpr_svgs_upload_check( $checked, $file, $filename, $mimes ) {
|
547 |
-
|
548 |
-
if ( ! $checked['type'] ) {
|
549 |
-
|
550 |
-
$check_filetype = wp_check_filetype( $filename, $mimes );
|
551 |
-
$ext = $check_filetype['ext'];
|
552 |
-
$type = $check_filetype['type'];
|
553 |
-
$proper_filename = $filename;
|
554 |
-
|
555 |
-
if ( $type && 0 === strpos( $type, 'image/' ) && $ext !== 'svg' ) {
|
556 |
-
$ext = $type = false;
|
557 |
-
}
|
558 |
-
|
559 |
-
$checked = compact( 'ext','type','proper_filename' );
|
560 |
-
}
|
561 |
-
|
562 |
-
return $checked;
|
563 |
-
|
564 |
-
}
|
565 |
-
add_filter( 'wp_check_filetype_and_ext', 'wpr_svgs_upload_check', 10, 4 );
|
566 |
-
|
567 |
-
/**
|
568 |
-
* Mime Check fix for WP 4.7.1 / 4.7.2
|
569 |
-
*
|
570 |
-
* Fixes uploads for these 2 version of WordPress.
|
571 |
-
* Issue was fixed in 4.7.3 core.
|
572 |
-
*/
|
573 |
-
function wpr_svgs_allow_svg_upload( $data, $file, $filename, $mimes ) {
|
574 |
-
|
575 |
-
global $wp_version;
|
576 |
-
if ( $wp_version !== '4.7.1' || $wp_version !== '4.7.2' ) {
|
577 |
-
return $data;
|
578 |
-
}
|
579 |
-
|
580 |
-
$filetype = wp_check_filetype( $filename, $mimes );
|
581 |
-
|
582 |
-
return [
|
583 |
-
'ext' => $filetype['ext'],
|
584 |
-
'type' => $filetype['type'],
|
585 |
-
'proper_filename' => $data['proper_filename']
|
586 |
-
];
|
587 |
-
|
588 |
-
}
|
589 |
-
add_filter( 'wp_check_filetype_and_ext', 'wpr_svgs_allow_svg_upload', 10, 4 );
|
590 |
-
|
591 |
-
/**
|
592 |
-
** Search Query Results
|
593 |
-
*/
|
594 |
-
function wpr_search_query_results() {
|
595 |
-
// Freemius OptIn
|
596 |
-
if ( ! ( wpr_fs()->is_registered() && wpr_fs()->is_tracking_allowed() || wpr_fs()->is_pending_activation() ) ) {
|
597 |
-
return;
|
598 |
-
}
|
599 |
-
|
600 |
-
$search_query = isset($_POST['search_query']) ? sanitize_text_field(wp_unslash($_POST['search_query'])) : '';
|
601 |
-
|
602 |
-
wp_remote_post( 'http://reastats.kinsta.cloud/wp-json/templates-kit-search/data', [
|
603 |
-
'body' => [
|
604 |
-
'search_query' => $search_query
|
605 |
-
]
|
606 |
-
] );
|
607 |
-
}
|
608 |
-
|
609 |
-
/**
|
610 |
-
** Search Query Results
|
611 |
-
*/
|
612 |
-
function wpr_track_imported_kit( $kit ) {
|
613 |
-
// Freemius OptIn
|
614 |
-
if ( ! ( wpr_fs()->is_registered() && wpr_fs()->is_tracking_allowed() || wpr_fs()->is_pending_activation() ) ) {
|
615 |
-
return;
|
616 |
-
}
|
617 |
-
|
618 |
-
wp_remote_post( 'http://reastats.kinsta.cloud/wp-json/templates-kit-import/data', [
|
619 |
-
'body' => [
|
620 |
-
'imported_kit' => $kit
|
621 |
-
]
|
622 |
-
] );
|
623 |
}
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
exit; // Exit if accessed directly.
|
5 |
+
}
|
6 |
+
|
7 |
+
use WprAddons\Admin\Templates\WPR_Templates_Data;
|
8 |
+
use WprAddons\Classes\Utilities;
|
9 |
+
use Elementor\Plugin;
|
10 |
+
|
11 |
+
// Register Menus
|
12 |
+
function wpr_addons_add_templates_kit_menu() {
|
13 |
+
add_submenu_page( 'wpr-addons', 'Templates Kit', 'Templates Kit', 'manage_options', 'wpr-templates-kit', 'wpr_addons_templates_kit_page' );
|
14 |
+
}
|
15 |
+
add_action( 'admin_menu', 'wpr_addons_add_templates_kit_menu' );
|
16 |
+
|
17 |
+
// Import Template Kit
|
18 |
+
add_action( 'wp_ajax_wpr_activate_required_theme', 'wpr_activate_required_theme' );
|
19 |
+
add_action( 'wp_ajax_wpr_activate_required_plugins', 'wpr_activate_required_plugins' );
|
20 |
+
add_action( 'wp_ajax_wpr_fix_royal_compatibility', 'wpr_fix_royal_compatibility' );
|
21 |
+
add_action( 'wp_ajax_wpr_import_templates_kit', 'wpr_import_templates_kit' );
|
22 |
+
add_action( 'wp_ajax_wpr_final_settings_setup', 'wpr_final_settings_setup' );
|
23 |
+
add_action( 'wp_ajax_wpr_search_query_results', 'wpr_search_query_results' );
|
24 |
+
add_action( 'init', 'disable_default_woo_pages_creation', 2 );
|
25 |
+
|
26 |
+
|
27 |
+
/**
|
28 |
+
** Render Templates Kit Page
|
29 |
+
*/
|
30 |
+
function wpr_addons_templates_kit_page() {
|
31 |
+
|
32 |
+
?>
|
33 |
+
|
34 |
+
<div class="wpr-templates-kit-page">
|
35 |
+
|
36 |
+
<header>
|
37 |
+
<div class="wpr-templates-kit-logo">
|
38 |
+
<div><img src="<?php echo !empty(get_option('wpr_wl_plugin_logo')) ? esc_url(wp_get_attachment_image_src(get_option('wpr_wl_plugin_logo'), 'full')[0]) : esc_url(WPR_ADDONS_ASSETS_URL .'img/logo-40x40.png'); ?>"></div>
|
39 |
+
<div class="back-btn"><?php printf( esc_html__('%s Back to Library', 'wpr-addons'), '<span class="dashicons dashicons-arrow-left-alt2"></span>'); ?></div>
|
40 |
+
</div>
|
41 |
+
|
42 |
+
<div class="wpr-templates-kit-search">
|
43 |
+
<input type="text" autocomplete="off" placeholder="<?php esc_html_e('Search Templates Kit...', 'wpr-addons'); ?>">
|
44 |
+
<span class="dashicons dashicons-search"></span>
|
45 |
+
</div>
|
46 |
+
|
47 |
+
<div class="wpr-templates-kit-price-filter">
|
48 |
+
<span data-price="mixed"><?php esc_html_e('Price: Mixed', 'wpr-addons'); ?></span>
|
49 |
+
<span class="dashicons dashicons-arrow-down-alt2"></span>
|
50 |
+
<ul>
|
51 |
+
<li><?php esc_html_e('Mixed', 'wpr-addons'); ?></li>
|
52 |
+
<li><?php esc_html_e('Free', 'wpr-addons'); ?></li>
|
53 |
+
<li><?php esc_html_e('Premium', 'wpr-addons'); ?></li>
|
54 |
+
</ul>
|
55 |
+
</div>
|
56 |
+
|
57 |
+
<div class="wpr-templates-kit-filters">
|
58 |
+
<div>Filter: All</div>
|
59 |
+
<ul>
|
60 |
+
<li data-filter="all">Blog</li>
|
61 |
+
<li data-filter="blog">Blog</li>
|
62 |
+
<li data-filter="business">Business</li>
|
63 |
+
<li data-filter="ecommerce">eCommerce</li>
|
64 |
+
<li data-filter="beauty">Beauty</li>
|
65 |
+
</ul>
|
66 |
+
</div>
|
67 |
+
</header>
|
68 |
+
|
69 |
+
<div class="wpr-templates-kit-page-title">
|
70 |
+
<h1><?php esc_html_e('Royal Elementor Templates Kit', 'wpr-addons'); ?></h1>
|
71 |
+
<p><?php esc_html_e('Import any Templates Kit with just a Single click', 'wpr-addons'); ?></p>
|
72 |
+
<p>
|
73 |
+
<a href="https://www.youtube.com/watch?v=kl2xBoWW81o" class="wpr-options-button button" target="_blank">
|
74 |
+
<?php esc_html_e('Video Tutorial', 'wpr-addons'); ?>
|
75 |
+
<span class="dashicons dashicons-video-alt3"></span>
|
76 |
+
</a>
|
77 |
+
</p>
|
78 |
+
</div>
|
79 |
+
|
80 |
+
<div class="wpr-templates-kit-grid main-grid" data-theme-status="<?php echo esc_attr(get_theme_status()); ?>">
|
81 |
+
<?php
|
82 |
+
$kits = WPR_Templates_Data::get_available_kits();
|
83 |
+
$sorted_kits = [];
|
84 |
+
|
85 |
+
foreach ($kits as $slug => $kit) {
|
86 |
+
foreach ($kit as $version => $data ) {
|
87 |
+
$sorted_kits[$slug .'-'. $version] = $data;
|
88 |
+
}
|
89 |
+
}
|
90 |
+
|
91 |
+
// Sort by Priority
|
92 |
+
uasort($sorted_kits, function ($item1, $item2) {
|
93 |
+
if ($item1['priority'] == $item2['priority']) return 0;
|
94 |
+
return $item1['priority'] < $item2['priority'] ? -1 : 1;
|
95 |
+
});
|
96 |
+
|
97 |
+
// Loop
|
98 |
+
foreach ($sorted_kits as $kit_id => $data) {
|
99 |
+
echo '<div class="grid-item" data-kit-id="'. esc_attr($kit_id) .'" data-tags="'. esc_attr($data['tags']) .'" data-plugins="'. esc_attr($data['plugins']) .'" data-pages="'. esc_attr($data['pages']) .'" data-price="'. esc_attr($data['price']) .'">';
|
100 |
+
echo '<div class="image-wrap">';
|
101 |
+
echo '<img src="'. esc_url('https://royal-elementor-addons.com/library/templates-kit/'. $kit_id .'/home.jpg') .'">';
|
102 |
+
echo '<div class="image-overlay"><span class="dashicons dashicons-search"></span></div>';
|
103 |
+
echo '</div>';
|
104 |
+
echo '<footer>';
|
105 |
+
echo '<h3>'. esc_html($data['name']) .'</h3>';
|
106 |
+
if ( $data['woo-builder'] ) {
|
107 |
+
echo '<span class="wpr-woo-builder-label">'. esc_html__( 'Woo Builder', 'wpr-addons' ) .'</span>';
|
108 |
+
} elseif ( $data['theme-builder'] ) {
|
109 |
+
echo '<span class="wpr-theme-builder-label">'. esc_html__( 'Theme Builder', 'wpr-addons' ) .'</span>';
|
110 |
+
}
|
111 |
+
echo '</footer>';
|
112 |
+
echo '</div>';
|
113 |
+
}
|
114 |
+
|
115 |
+
?>
|
116 |
+
|
117 |
+
</div>
|
118 |
+
|
119 |
+
<div class="wpr-templates-kit-single">
|
120 |
+
<div class="wpr-templates-kit-grid single-grid"></div>
|
121 |
+
|
122 |
+
<footer class="action-buttons-wrap">
|
123 |
+
<a href="https://royal-elementor-addons.com/" class="preview-demo button" target="_blank"><?php esc_html_e('Preview Demo', 'wpr-addons'); ?> <span class="dashicons dashicons-external"></span></a>
|
124 |
+
|
125 |
+
<div class="import-template-buttons">
|
126 |
+
<?php
|
127 |
+
echo '<button class="import-kit button">'. esc_html__('Import Templates Kit', 'wpr-addons') .' <span class="dashicons dashicons-download"></span></button>';
|
128 |
+
echo '<a href="https://royal-elementor-addons.com/?ref=rea-plugin-backend-templates-upgrade-pro#purchasepro" class="get-access button" target="_blank">'. esc_html__('Get Access', 'wpr-addons') .' <span class="dashicons dashicons-external"></span></a>';
|
129 |
+
?>
|
130 |
+
<button class="import-template button"><?php printf( esc_html__( 'Import %s Template', 'wpr-addons' ), '<strong></strong>' ); ?></button>
|
131 |
+
|
132 |
+
</div>
|
133 |
+
</footer>
|
134 |
+
</div>
|
135 |
+
|
136 |
+
<div class="wpr-import-kit-popup-wrap">
|
137 |
+
<div class="overlay"></div>
|
138 |
+
<div class="wpr-import-kit-popup">
|
139 |
+
<header>
|
140 |
+
<h3><?php esc_html_e('Template Kit is being imported', 'wpr-addons'); ?><span>.</span></h3>
|
141 |
+
<span class="dashicons dashicons-no-alt close-btn"></span>
|
142 |
+
</header>
|
143 |
+
<div class="content">
|
144 |
+
<p><?php esc_html_e('The import process can take a few seconds depending on the size of the kit you are importing and speed of the connection.', 'wpr-addons'); ?></p>
|
145 |
+
<p><?php esc_html_e('Please do NOT close this browser window until import is completed.', 'wpr-addons'); ?></p>
|
146 |
+
|
147 |
+
<div class="progress-wrap">
|
148 |
+
<div class="progress-bar"></div>
|
149 |
+
<strong></strong>
|
150 |
+
</div>
|
151 |
+
|
152 |
+
<div class="wpr-import-help">
|
153 |
+
<a href="https://royal-elementor-addons.com/contactus/?ref=rea-plugin-backend-templates-import-screen" target="_blank">Having trouble with template import? Get help <span class="dashicons dashicons-sos"></span></a>
|
154 |
+
</div>
|
155 |
+
</div>
|
156 |
+
</div>
|
157 |
+
</div>
|
158 |
+
|
159 |
+
<div class="wpr-templates-kit-not-found">
|
160 |
+
<img src="<?php echo esc_url(WPR_ADDONS_ASSETS_URL .'img/not-found.png'); ?>">
|
161 |
+
<h1><?php esc_html_e('No Search Results Found.', 'wpr-addons'); ?></h1>
|
162 |
+
<p><?php esc_html_e('Cant find a Templates Kit you are looking for?', 'wpr-addons'); ?></p>
|
163 |
+
<a href="https://royal-elementor-addons.com/library/request-new-kit-red.html" target="_blank"><?php esc_html_e('Request Templates Kit.', 'wpr-addons'); ?></a>
|
164 |
+
</div>
|
165 |
+
|
166 |
+
</div>
|
167 |
+
|
168 |
+
|
169 |
+
<?php
|
170 |
+
|
171 |
+
} // End wpr_addons_templates_kit_page()
|
172 |
+
|
173 |
+
/**
|
174 |
+
** Get Theme Status
|
175 |
+
*/
|
176 |
+
function get_theme_status() {
|
177 |
+
$theme = wp_get_theme();
|
178 |
+
|
179 |
+
// Theme installed and activate.
|
180 |
+
if ( 'Royal Elementor Kit' === $theme->name || 'Royal Elementor Kit' === $theme->parent_theme ) {
|
181 |
+
return 'req-theme-active';
|
182 |
+
}
|
183 |
+
|
184 |
+
// Theme installed but not activate.
|
185 |
+
foreach ( (array) wp_get_themes() as $theme_dir => $theme ) {
|
186 |
+
if ( 'Royal Elementor Kit' === $theme->name || 'Royal Elementor Kit' === $theme->parent_theme ) {
|
187 |
+
return 'req-theme-inactive';
|
188 |
+
}
|
189 |
+
}
|
190 |
+
|
191 |
+
return 'req-theme-not-installed';
|
192 |
+
}
|
193 |
+
|
194 |
+
/**
|
195 |
+
** Install/Activate Required Theme
|
196 |
+
*/
|
197 |
+
function wpr_activate_required_theme() {
|
198 |
+
// Get Current Theme
|
199 |
+
$theme = get_option('stylesheet');
|
200 |
+
|
201 |
+
// Activate Royal Elementor Kit Theme
|
202 |
+
if ( 'ashe-pro-premium' !== $theme && 'bard-pro-premium' !== $theme
|
203 |
+
&& 'vayne-pro-premium' !== $theme && 'kayn-pro-premium' !== $theme ) {
|
204 |
+
switch_theme( 'royal-elementor-kit' );
|
205 |
+
set_transient( 'royal-elementor-kit_activation_notice', true );
|
206 |
+
}
|
207 |
+
|
208 |
+
// TODO: maybe return back - 'ashe' !== $theme && 'bard' !== $theme &&
|
209 |
+
}
|
210 |
+
|
211 |
+
/**
|
212 |
+
** Activate Required Plugins
|
213 |
+
*/
|
214 |
+
function wpr_activate_required_plugins() {
|
215 |
+
if ( isset($_POST['plugin']) ) {
|
216 |
+
if ( 'contact-form-7' == $_POST['plugin'] ) {
|
217 |
+
if ( !is_plugin_active( 'contact-form-7/wp-contact-form-7.php' ) ) {
|
218 |
+
activate_plugin( 'contact-form-7/wp-contact-form-7.php' );
|
219 |
+
}
|
220 |
+
} elseif ( 'woocommerce' == $_POST['plugin'] ) {
|
221 |
+
if ( !is_plugin_active( 'woocommerce/woocommerce.php' ) ) {
|
222 |
+
activate_plugin( 'woocommerce/woocommerce.php' );
|
223 |
+
}
|
224 |
+
} elseif ( 'media-library-assistant' == $_POST['plugin'] ) {
|
225 |
+
if ( !is_plugin_active( 'media-library-assistant/index.php' ) ) {
|
226 |
+
activate_plugin( 'media-library-assistant/index.php' );
|
227 |
+
}
|
228 |
+
}
|
229 |
+
}
|
230 |
+
}
|
231 |
+
|
232 |
+
/**
|
233 |
+
** Deactivate Extra Plugins
|
234 |
+
*/
|
235 |
+
function wpr_fix_royal_compatibility() {
|
236 |
+
// Get currently active plugins
|
237 |
+
$active_plugins = (array) get_option( 'active_plugins', array() );
|
238 |
+
$active_plugins = array_values($active_plugins);
|
239 |
+
|
240 |
+
// Deactivate Extra Import Plugins
|
241 |
+
$ashe_extra_key = array_search('ashe-extra/ashe-extra.php', $active_plugins);
|
242 |
+
$bard_extra_key = array_search('bard-extra/bard-extra.php', $active_plugins);
|
243 |
+
|
244 |
+
if ( false !== $ashe_extra_key && array_key_exists($ashe_extra_key, $active_plugins) ) {
|
245 |
+
unset($active_plugins[$ashe_extra_key]);
|
246 |
+
}
|
247 |
+
|
248 |
+
if ( false !== $bard_extra_key && array_key_exists($bard_extra_key, $active_plugins) ) {
|
249 |
+
unset($active_plugins[$bard_extra_key]);
|
250 |
+
}
|
251 |
+
|
252 |
+
// Set Active Plugins
|
253 |
+
update_option( 'active_plugins', array_values($active_plugins) );
|
254 |
+
|
255 |
+
// Get Current Theme
|
256 |
+
$theme = get_option('stylesheet');
|
257 |
+
|
258 |
+
// Activate Royal Elementor Kit Theme
|
259 |
+
if ( 'ashe-pro-premium' !== $theme && 'bard-pro-premium' !== $theme
|
260 |
+
&& 'vayne-pro-premium' !== $theme && 'kayn-pro-premium' !== $theme ) {
|
261 |
+
switch_theme( 'royal-elementor-kit' );
|
262 |
+
set_transient( 'royal-elementor-kit_activation_notice', true );
|
263 |
+
}
|
264 |
+
}
|
265 |
+
|
266 |
+
/**
|
267 |
+
** Import Template Kit
|
268 |
+
*/
|
269 |
+
function wpr_import_templates_kit() {
|
270 |
+
|
271 |
+
// Temp Define Importers
|
272 |
+
if ( ! defined('WP_LOAD_IMPORTERS') ) {
|
273 |
+
define('WP_LOAD_IMPORTERS', true);
|
274 |
+
}
|
275 |
+
|
276 |
+
// Include if Class Does NOT Exist
|
277 |
+
if ( ! class_exists( 'WP_Import' ) ) {
|
278 |
+
$class_wp_importer = WPR_ADDONS_PATH .'admin/import/class-wordpress-importer.php';
|
279 |
+
if ( file_exists( $class_wp_importer ) ) {
|
280 |
+
require $class_wp_importer;
|
281 |
+
}
|
282 |
+
}
|
283 |
+
|
284 |
+
if ( class_exists( 'WP_Import' ) ) {
|
285 |
+
$kit = isset($_POST['wpr_templates_kit']) ? sanitize_file_name(wp_unslash($_POST['wpr_templates_kit'])) : '';
|
286 |
+
$file = isset($_POST['wpr_templates_kit_single']) ? sanitize_file_name(wp_unslash($_POST['wpr_templates_kit_single'])) : '';
|
287 |
+
|
288 |
+
// Tmp
|
289 |
+
update_option( 'wpr-import-kit-id', $kit );
|
290 |
+
|
291 |
+
// Download Import File
|
292 |
+
$local_file_path = download_template( $kit, $file );
|
293 |
+
|
294 |
+
// Prepare for Import
|
295 |
+
$wp_import = new WP_Import( $local_file_path, ['fetch_attachments' => true] );
|
296 |
+
|
297 |
+
// Import
|
298 |
+
ob_start();
|
299 |
+
$wp_import->run();
|
300 |
+
ob_end_clean();
|
301 |
+
|
302 |
+
// Delete Import File
|
303 |
+
unlink( $local_file_path );
|
304 |
+
|
305 |
+
// Send to JS
|
306 |
+
echo esc_html(serialize( $wp_import ));
|
307 |
+
}
|
308 |
+
|
309 |
+
}
|
310 |
+
|
311 |
+
/**
|
312 |
+
** Download Template
|
313 |
+
*/
|
314 |
+
function download_template( $kit, $file ) {
|
315 |
+
$file = ! $file ? 'main' : $file;
|
316 |
+
|
317 |
+
// Avoid Cache
|
318 |
+
$randomNum = substr(str_shuffle("0123456789abcdefghijklmnopqrstvwxyzABCDEFGHIJKLMNOPQRSTVWXYZ"), 0, 7);
|
319 |
+
|
320 |
+
// Remote and Local Files
|
321 |
+
$remote_file_url = 'https://royal-elementor-addons.com/library/templates-kit/'. $kit .'/main.xml?='. $randomNum;
|
322 |
+
$local_file_path = WPR_ADDONS_PATH .'admin/import/tmp.xml';
|
323 |
+
|
324 |
+
// No Limit for Execution
|
325 |
+
set_time_limit(0);
|
326 |
+
|
327 |
+
// Copy File From Server
|
328 |
+
copy( $remote_file_url, $local_file_path );
|
329 |
+
|
330 |
+
return $local_file_path;
|
331 |
+
}
|
332 |
+
|
333 |
+
/**
|
334 |
+
** Import Elementor Site Settings
|
335 |
+
*/
|
336 |
+
function import_elementor_site_settings( $kit ) {
|
337 |
+
// Avoid Cache
|
338 |
+
// $randomNum = substr(str_shuffle("0123456789abcdefghijklmnopqrstvwxyzABCDEFGHIJKLMNOPQRSTVWXYZ"), 0, 7);
|
339 |
+
|
340 |
+
// Get Remote File
|
341 |
+
$site_settings = @file_get_contents('https://royal-elementor-addons.com/library/templates-kit/'. $kit .'/site-settings.json');
|
342 |
+
|
343 |
+
if ( false !== $site_settings ) {
|
344 |
+
$site_settings = json_decode($site_settings, true);
|
345 |
+
|
346 |
+
if ( ! empty($site_settings['settings']) ) {
|
347 |
+
$default_kit = \Elementor\Plugin::$instance->documents->get_doc_for_frontend( get_option( 'elementor_active_kit' ) );
|
348 |
+
|
349 |
+
$kit_settings = $default_kit->get_settings();
|
350 |
+
$new_settings = $site_settings['settings'];
|
351 |
+
$settings = array_merge($kit_settings, $new_settings);
|
352 |
+
|
353 |
+
$default_kit->save( [ 'settings' => $settings ] );
|
354 |
+
}
|
355 |
+
}
|
356 |
+
}
|
357 |
+
|
358 |
+
/**
|
359 |
+
** Setup WPR Templates
|
360 |
+
*/
|
361 |
+
function setup_wpr_templates( $kit ) {
|
362 |
+
$kit = isset($kit) ? sanitize_text_field(wp_unslash($kit)) : '';
|
363 |
+
|
364 |
+
// Check if kit has Theme Builder templates
|
365 |
+
$kit_name = substr($kit, 0, strripos($kit, '-v'));
|
366 |
+
$kit_version = substr($kit, (strripos($kit, '-v') + 1), strlen($kit));
|
367 |
+
$get_available_kits = WPR_Templates_Data::get_available_kits();
|
368 |
+
$has_theme_builder = $get_available_kits[$kit_name][$kit_version]['theme-builder'];
|
369 |
+
$has_woo_builder = $get_available_kits[$kit_name][$kit_version]['woo-builder'];
|
370 |
+
$has_off_canvas = $get_available_kits[$kit_name][$kit_version]['off-canvas'];
|
371 |
+
|
372 |
+
// Set Home & Blog Pages
|
373 |
+
$home_page = get_page_by_path('home-'. $kit);
|
374 |
+
$blog_page = get_page_by_path('blog-'. $kit);
|
375 |
+
|
376 |
+
if ( $home_page ) {
|
377 |
+
update_option( 'show_on_front', 'page' );
|
378 |
+
update_option( 'page_on_front', $home_page->ID );
|
379 |
+
|
380 |
+
if ( $blog_page ) {
|
381 |
+
update_option( 'page_for_posts', $blog_page->ID );
|
382 |
+
}
|
383 |
+
}
|
384 |
+
|
385 |
+
// Set Headers and Footers
|
386 |
+
update_option('wpr_header_conditions', '{"user-header-'. $kit .'-header":["global"]}');
|
387 |
+
update_post_meta( Utilities::get_template_id('user-header-'. $kit), 'wpr_header_show_on_canvas', 'true' );
|
388 |
+
update_option('wpr_footer_conditions', '{"user-footer-'. $kit .'-footer":["global"]}');
|
389 |
+
update_post_meta( Utilities::get_template_id('user-footer-'. $kit), 'wpr_footer_show_on_canvas', 'true' );
|
390 |
+
|
391 |
+
// Theme Builder
|
392 |
+
if ( $has_theme_builder ) {
|
393 |
+
update_option('wpr_archive_conditions', '{"user-archive-'. $kit .'-blog":["archive/posts"],"user-archive-'. $kit .'-author":["archive/author"],"user-archive-'. $kit .'-date":["archive/date"],"user-archive-'. $kit .'-category-tag":["archive/categories/all","archive/tags/all"],"user-archive-'. $kit .'-search":["archive/search"]}');
|
394 |
+
update_option('wpr_single_conditions', '{"user-single-'. $kit .'-404":["single/page_404"],"user-single-'. $kit .'-post":["single/posts/all"],"user-single-'. $kit .'-page":["single/pages/all"]}');
|
395 |
+
}
|
396 |
+
|
397 |
+
// WooCommerce Builder
|
398 |
+
if ( $has_woo_builder ) {
|
399 |
+
update_option('wpr_product_archive_conditions', '{"user-product_archive-'. $kit .'-shop":["product_archive/products"],"user-product_archive-'. $kit .'-product-category-tag":["product_archive/product_cat/all","product_archive/product_tag/all"]}');
|
400 |
+
update_option('wpr_product_single_conditions', '{"user-product_single-'. $kit .'-product":["product_single/product"]}');
|
401 |
+
|
402 |
+
$shop_id = get_page_by_path('shop-'. $kit) ? get_page_by_path('shop-'. $kit)->ID : '';
|
403 |
+
$cart_id = get_page_by_path('cart-'. $kit) ? get_page_by_path('cart-'. $kit)->ID : '';
|
404 |
+
$checkout_id = get_page_by_path('checkout-'. $kit) ? get_page_by_path('checkout-'. $kit)->ID : '';
|
405 |
+
$myaccount_id = get_page_by_path('my-account-'. $kit) ? get_page_by_path('my-account-'. $kit)->ID : '';
|
406 |
+
|
407 |
+
update_option('woocommerce_shop_page_id', $shop_id);
|
408 |
+
update_option('woocommerce_cart_page_id', $cart_id);
|
409 |
+
update_option('woocommerce_checkout_page_id', $checkout_id);
|
410 |
+
|
411 |
+
if ( '' !== $myaccount_id ) {
|
412 |
+
update_option('woocommerce_myaccount_page_id', $myaccount_id);
|
413 |
+
}
|
414 |
+
|
415 |
+
// Update Options
|
416 |
+
update_option( 'woocommerce_queue_flush_rewrite_rules', 'yes' );
|
417 |
+
|
418 |
+
// Enable Elementor Builder for WooCommerce CPT
|
419 |
+
// $cpt_support = get_option( 'elementor_cpt_support' );
|
420 |
+
|
421 |
+
// if ( ! in_array( 'product', $cpt_support ) ) {
|
422 |
+
// $cpt_support[] = 'product';
|
423 |
+
// update_option( 'elementor_cpt_support', $cpt_support );
|
424 |
+
// }
|
425 |
+
}
|
426 |
+
|
427 |
+
// Set Popups
|
428 |
+
if ( $has_off_canvas ) {
|
429 |
+
update_option('wpr_popup_conditions', '{"user-popup-'. $kit .'-off-canvas":["global"],"user-popup-'. $kit .'-popup":["global"]}');
|
430 |
+
} else {
|
431 |
+
update_option('wpr_popup_conditions', '{"user-popup-'. $kit .'-popup":["global"]}');
|
432 |
+
}
|
433 |
+
}
|
434 |
+
|
435 |
+
/**
|
436 |
+
** Fix Elementor Images
|
437 |
+
*/
|
438 |
+
function wpr_fix_elementor_images() {
|
439 |
+
$args = array(
|
440 |
+
'post_type' => ['wpr_templates', 'wpr_mega_menu', 'page'],
|
441 |
+
'posts_per_page' => '-1',
|
442 |
+
'meta_key' => '_elementor_version'
|
443 |
+
);
|
444 |
+
$elementor_pages = new WP_Query ( $args );
|
445 |
+
|
446 |
+
// Check that we have query results.
|
447 |
+
if ( $elementor_pages->have_posts() ) {
|
448 |
+
|
449 |
+
// Start looping over the query results.
|
450 |
+
while ( $elementor_pages->have_posts() ) {
|
451 |
+
|
452 |
+
$elementor_pages->the_post();
|
453 |
+
|
454 |
+
// Replace Demo with Current
|
455 |
+
$site_url = get_site_url();
|
456 |
+
$site_url = str_replace( '/', '\/', $site_url );
|
457 |
+
$demo_site_url = 'https://demosites.royal-elementor-addons.com/'. get_option('wpr-import-kit-id');
|
458 |
+
$demo_site_url = str_replace( '/', '\/', $demo_site_url );
|
459 |
+
|
460 |
+
// Elementor Data
|
461 |
+
$data = get_post_meta( get_the_ID(), '_elementor_data', true );
|
462 |
+
|
463 |
+
if ( ! empty( $data ) ) {
|
464 |
+
$data = preg_replace('/\\\{1}\/sites\\\{1}\/\d+/', '', $data);
|
465 |
+
$data = str_replace( $demo_site_url, $site_url, $data );
|
466 |
+
$data = json_decode( $data, true );
|
467 |
+
}
|
468 |
+
|
469 |
+
update_metadata( 'post', get_the_ID(), '_elementor_data', $data );
|
470 |
+
|
471 |
+
// Elementor Page Settings
|
472 |
+
$page_settings = get_post_meta( get_the_ID(), '_elementor_page_settings', true );
|
473 |
+
$page_settings = json_encode($page_settings);
|
474 |
+
|
475 |
+
if ( ! empty( $page_settings ) ) {
|
476 |
+
$page_settings = preg_replace('/\\\{1}\/sites\\\{1}\/\d+/', '', $page_settings);
|
477 |
+
$page_settings = str_replace( $demo_site_url, $site_url, $page_settings );
|
478 |
+
$page_settings = json_decode( $page_settings, true );
|
479 |
+
}
|
480 |
+
|
481 |
+
update_metadata( 'post', get_the_ID(), '_elementor_page_settings', $page_settings );
|
482 |
+
|
483 |
+
}
|
484 |
+
|
485 |
+
}
|
486 |
+
|
487 |
+
// Clear Elementor Cache
|
488 |
+
Plugin::$instance->files_manager->clear_cache();
|
489 |
+
}
|
490 |
+
|
491 |
+
/**
|
492 |
+
** Final Settings Setup
|
493 |
+
*/
|
494 |
+
function wpr_final_settings_setup() {
|
495 |
+
$kit = !empty(get_option('wpr-import-kit-id')) ? esc_html(get_option('wpr-import-kit-id')) : '';
|
496 |
+
|
497 |
+
// Elementor Site Settings
|
498 |
+
import_elementor_site_settings($kit);
|
499 |
+
|
500 |
+
// Setup WPR Templates
|
501 |
+
setup_wpr_templates($kit);
|
502 |
+
|
503 |
+
// Fix Elementor Images
|
504 |
+
wpr_fix_elementor_images();
|
505 |
+
|
506 |
+
// Track Kit
|
507 |
+
wpr_track_imported_kit( $kit );
|
508 |
+
|
509 |
+
// Clear DB
|
510 |
+
delete_option('wpr-import-kit-id');
|
511 |
+
|
512 |
+
// Delete Hello World Post
|
513 |
+
$post = get_page_by_path('hello-world', OBJECT, 'post');
|
514 |
+
if ( $post ) {
|
515 |
+
wp_delete_post($post->ID,true);
|
516 |
+
}
|
517 |
+
}
|
518 |
+
|
519 |
+
/**
|
520 |
+
** Prevent WooCommerce creating default pages
|
521 |
+
*/
|
522 |
+
function disable_default_woo_pages_creation() {
|
523 |
+
add_filter( 'woocommerce_create_pages', '__return_empty_array' );
|
524 |
+
}
|
525 |
+
|
526 |
+
/**
|
527 |
+
* Allow SVG Import - Add Mime Types
|
528 |
+
*/
|
529 |
+
function wpr_svgs_upload_mimes( $mimes = array() ) {
|
530 |
+
|
531 |
+
// allow SVG file upload
|
532 |
+
$mimes['svg'] = 'image/svg+xml';
|
533 |
+
$mimes['svgz'] = 'image/svg+xml';
|
534 |
+
|
535 |
+
// allow JSON file upload
|
536 |
+
$mimes['json'] = 'text/plain';
|
537 |
+
|
538 |
+
return $mimes;
|
539 |
+
|
540 |
+
}
|
541 |
+
add_filter( 'upload_mimes', 'wpr_svgs_upload_mimes', 99 );
|
542 |
+
|
543 |
+
/**
|
544 |
+
* Check Mime Types
|
545 |
+
*/
|
546 |
+
function wpr_svgs_upload_check( $checked, $file, $filename, $mimes ) {
|
547 |
+
|
548 |
+
if ( ! $checked['type'] ) {
|
549 |
+
|
550 |
+
$check_filetype = wp_check_filetype( $filename, $mimes );
|
551 |
+
$ext = $check_filetype['ext'];
|
552 |
+
$type = $check_filetype['type'];
|
553 |
+
$proper_filename = $filename;
|
554 |
+
|
555 |
+
if ( $type && 0 === strpos( $type, 'image/' ) && $ext !== 'svg' ) {
|
556 |
+
$ext = $type = false;
|
557 |
+
}
|
558 |
+
|
559 |
+
$checked = compact( 'ext','type','proper_filename' );
|
560 |
+
}
|
561 |
+
|
562 |
+
return $checked;
|
563 |
+
|
564 |
+
}
|
565 |
+
add_filter( 'wp_check_filetype_and_ext', 'wpr_svgs_upload_check', 10, 4 );
|
566 |
+
|
567 |
+
/**
|
568 |
+
* Mime Check fix for WP 4.7.1 / 4.7.2
|
569 |
+
*
|
570 |
+
* Fixes uploads for these 2 version of WordPress.
|
571 |
+
* Issue was fixed in 4.7.3 core.
|
572 |
+
*/
|
573 |
+
function wpr_svgs_allow_svg_upload( $data, $file, $filename, $mimes ) {
|
574 |
+
|
575 |
+
global $wp_version;
|
576 |
+
if ( $wp_version !== '4.7.1' || $wp_version !== '4.7.2' ) {
|
577 |
+
return $data;
|
578 |
+
}
|
579 |
+
|
580 |
+
$filetype = wp_check_filetype( $filename, $mimes );
|
581 |
+
|
582 |
+
return [
|
583 |
+
'ext' => $filetype['ext'],
|
584 |
+
'type' => $filetype['type'],
|
585 |
+
'proper_filename' => $data['proper_filename']
|
586 |
+
];
|
587 |
+
|
588 |
+
}
|
589 |
+
add_filter( 'wp_check_filetype_and_ext', 'wpr_svgs_allow_svg_upload', 10, 4 );
|
590 |
+
|
591 |
+
/**
|
592 |
+
** Search Query Results
|
593 |
+
*/
|
594 |
+
function wpr_search_query_results() {
|
595 |
+
// Freemius OptIn
|
596 |
+
if ( ! ( wpr_fs()->is_registered() && wpr_fs()->is_tracking_allowed() || wpr_fs()->is_pending_activation() ) ) {
|
597 |
+
return;
|
598 |
+
}
|
599 |
+
|
600 |
+
$search_query = isset($_POST['search_query']) ? sanitize_text_field(wp_unslash($_POST['search_query'])) : '';
|
601 |
+
|
602 |
+
wp_remote_post( 'http://reastats.kinsta.cloud/wp-json/templates-kit-search/data', [
|
603 |
+
'body' => [
|
604 |
+
'search_query' => $search_query
|
605 |
+
]
|
606 |
+
] );
|
607 |
+
}
|
608 |
+
|
609 |
+
/**
|
610 |
+
** Search Query Results
|
611 |
+
*/
|
612 |
+
function wpr_track_imported_kit( $kit ) {
|
613 |
+
// Freemius OptIn
|
614 |
+
if ( ! ( wpr_fs()->is_registered() && wpr_fs()->is_tracking_allowed() || wpr_fs()->is_pending_activation() ) ) {
|
615 |
+
return;
|
616 |
+
}
|
617 |
+
|
618 |
+
wp_remote_post( 'http://reastats.kinsta.cloud/wp-json/templates-kit-import/data', [
|
619 |
+
'body' => [
|
620 |
+
'imported_kit' => $kit
|
621 |
+
]
|
622 |
+
] );
|
623 |
}
|
admin/templates/views/astra/class-astra-compat.php
CHANGED
@@ -1,84 +1,84 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
use WprAddons\Admin\Includes\WPR_Render_Templates;
|
4 |
-
|
5 |
-
/**
|
6 |
-
* Wpr_Astra_Compat setup
|
7 |
-
*
|
8 |
-
*/
|
9 |
-
|
10 |
-
/**
|
11 |
-
* Astra theme compatibility.
|
12 |
-
*/
|
13 |
-
class Wpr_Astra_Compat {
|
14 |
-
|
15 |
-
/**
|
16 |
-
* Instance of Wpr_Astra_Compat.
|
17 |
-
*
|
18 |
-
* @var Wpr_Astra_Compat
|
19 |
-
*/
|
20 |
-
private static $instance;
|
21 |
-
|
22 |
-
/**
|
23 |
-
* WPR_Render_Templates() Class
|
24 |
-
*/
|
25 |
-
private $render_templates;
|
26 |
-
|
27 |
-
/**
|
28 |
-
* Initiator
|
29 |
-
*/
|
30 |
-
public static function instance() {
|
31 |
-
if ( ! isset( self::$instance ) ) {
|
32 |
-
self::$instance = new Wpr_Astra_Compat();
|
33 |
-
|
34 |
-
add_action( 'wp', [ self::$instance, 'hooks' ] );
|
35 |
-
}
|
36 |
-
|
37 |
-
return self::$instance;
|
38 |
-
}
|
39 |
-
|
40 |
-
/**
|
41 |
-
* Run all the Actions / Filters.
|
42 |
-
*/
|
43 |
-
public function hooks() {
|
44 |
-
$this->render_templates = new WPR_Render_Templates( true );
|
45 |
-
|
46 |
-
if ( $this->render_templates->is_template_available('header') ) {
|
47 |
-
add_action( 'template_redirect', [ $this, 'astra_setup_header' ], 10 );
|
48 |
-
add_action( 'astra_header', [$this->render_templates, 'replace_header'] );
|
49 |
-
add_action( 'elementor/page_templates/canvas/before_content', [ $this->render_templates, 'add_canvas_header' ] );
|
50 |
-
}
|
51 |
-
|
52 |
-
if ( $this->render_templates->is_template_available('footer') ) {
|
53 |
-
add_action( 'template_redirect', [ $this, 'astra_setup_footer' ], 10 );
|
54 |
-
add_action( 'astra_footer', [$this->render_templates, 'replace_footer'] );
|
55 |
-
add_action( 'elementor/page_templates/canvas/after_content', [ $this->render_templates, 'add_canvas_footer' ] );
|
56 |
-
}
|
57 |
-
}
|
58 |
-
|
59 |
-
/**
|
60 |
-
* Disable header from the theme.
|
61 |
-
*/
|
62 |
-
public function astra_setup_header() {
|
63 |
-
remove_action( 'astra_header', 'astra_header_markup' );
|
64 |
-
|
65 |
-
// Remove the new header builder action.
|
66 |
-
if ( class_exists( '\Astra_Builder_Helper' ) && \Astra_Builder_Helper::$is_header_footer_builder_active ) {
|
67 |
-
remove_action( 'astra_header', [ Astra_Builder_Header::get_instance(), 'prepare_header_builder_markup' ] );
|
68 |
-
}
|
69 |
-
}
|
70 |
-
|
71 |
-
/**
|
72 |
-
* Disable footer from the theme.
|
73 |
-
*/
|
74 |
-
public function astra_setup_footer() {
|
75 |
-
remove_action( 'astra_footer', 'astra_footer_markup' );
|
76 |
-
|
77 |
-
// Remove the new footer builder action.
|
78 |
-
if ( class_exists( '\Astra_Builder_Helper' ) && \Astra_Builder_Helper::$is_header_footer_builder_active ) {
|
79 |
-
remove_action( 'astra_footer', [ Astra_Builder_Footer::get_instance(), 'footer_markup' ] );
|
80 |
-
}
|
81 |
-
}
|
82 |
-
}
|
83 |
-
|
84 |
-
Wpr_Astra_Compat::instance();
|
1 |
+
<?php
|
2 |
+
|
3 |
+
use WprAddons\Admin\Includes\WPR_Render_Templates;
|
4 |
+
|
5 |
+
/**
|
6 |
+
* Wpr_Astra_Compat setup
|
7 |
+
*
|
8 |
+
*/
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Astra theme compatibility.
|
12 |
+
*/
|
13 |
+
class Wpr_Astra_Compat {
|
14 |
+
|
15 |
+
/**
|
16 |
+
* Instance of Wpr_Astra_Compat.
|
17 |
+
*
|
18 |
+
* @var Wpr_Astra_Compat
|
19 |
+
*/
|
20 |
+
private static $instance;
|
21 |
+
|
22 |
+
/**
|
23 |
+
* WPR_Render_Templates() Class
|
24 |
+
*/
|
25 |
+
private $render_templates;
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Initiator
|
29 |
+
*/
|
30 |
+
public static function instance() {
|
31 |
+
if ( ! isset( self::$instance ) ) {
|
32 |
+
self::$instance = new Wpr_Astra_Compat();
|
33 |
+
|
34 |
+
add_action( 'wp', [ self::$instance, 'hooks' ] );
|
35 |
+
}
|
36 |
+
|
37 |
+
return self::$instance;
|
38 |
+
}
|
39 |
+
|
40 |
+
/**
|
41 |
+
* Run all the Actions / Filters.
|
42 |
+
*/
|
43 |
+
public function hooks() {
|
44 |
+
$this->render_templates = new WPR_Render_Templates( true );
|
45 |
+
|
46 |
+
if ( $this->render_templates->is_template_available('header') ) {
|
47 |
+
add_action( 'template_redirect', [ $this, 'astra_setup_header' ], 10 );
|
48 |
+
add_action( 'astra_header', [$this->render_templates, 'replace_header'] );
|
49 |
+
add_action( 'elementor/page_templates/canvas/before_content', [ $this->render_templates, 'add_canvas_header' ] );
|
50 |
+
}
|
51 |
+
|
52 |
+
if ( $this->render_templates->is_template_available('footer') ) {
|
53 |
+
add_action( 'template_redirect', [ $this, 'astra_setup_footer' ], 10 );
|
54 |
+
add_action( 'astra_footer', [$this->render_templates, 'replace_footer'] );
|
55 |
+
add_action( 'elementor/page_templates/canvas/after_content', [ $this->render_templates, 'add_canvas_footer' ] );
|
56 |
+
}
|
57 |
+
}
|
58 |
+
|
59 |
+
/**
|
60 |
+
* Disable header from the theme.
|
61 |
+
*/
|
62 |
+
public function astra_setup_header() {
|
63 |
+
remove_action( 'astra_header', 'astra_header_markup' );
|
64 |
+
|
65 |
+
// Remove the new header builder action.
|
66 |
+
if ( class_exists( '\Astra_Builder_Helper' ) && \Astra_Builder_Helper::$is_header_footer_builder_active ) {
|
67 |
+
remove_action( 'astra_header', [ Astra_Builder_Header::get_instance(), 'prepare_header_builder_markup' ] );
|
68 |
+
}
|
69 |
+
}
|
70 |
+
|
71 |
+
/**
|
72 |
+
* Disable footer from the theme.
|
73 |
+
*/
|
74 |
+
public function astra_setup_footer() {
|
75 |
+
remove_action( 'astra_footer', 'astra_footer_markup' );
|
76 |
+
|
77 |
+
// Remove the new footer builder action.
|
78 |
+
if ( class_exists( '\Astra_Builder_Helper' ) && \Astra_Builder_Helper::$is_header_footer_builder_active ) {
|
79 |
+
remove_action( 'astra_footer', [ Astra_Builder_Footer::get_instance(), 'footer_markup' ] );
|
80 |
+
}
|
81 |
+
}
|
82 |
+
}
|
83 |
+
|
84 |
+
Wpr_Astra_Compat::instance();
|
admin/templates/views/oceanwp/class-oceanwp-compat.php
CHANGED
@@ -1,72 +1,72 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
use WprAddons\Admin\Includes\WPR_Render_Templates;
|
4 |
-
|
5 |
-
/**
|
6 |
-
* OceanWP theme compatibility.
|
7 |
-
*/
|
8 |
-
class Wpr_OceanWP_Compat {
|
9 |
-
|
10 |
-
/**
|
11 |
-
* Instance of Wpr_OceanWP_Compat.
|
12 |
-
*
|
13 |
-
* @var Wpr_OceanWP_Compat
|
14 |
-
*/
|
15 |
-
private static $instance;
|
16 |
-
|
17 |
-
/**
|
18 |
-
* WPR_Render_Templates() Class
|
19 |
-
*/
|
20 |
-
private $render_templates;
|
21 |
-
|
22 |
-
/**
|
23 |
-
* Initiator
|
24 |
-
*/
|
25 |
-
public static function instance() {
|
26 |
-
if ( ! isset( self::$instance ) ) {
|
27 |
-
self::$instance = new Wpr_OceanWP_Compat();
|
28 |
-
|
29 |
-
add_action( 'wp', [ self::$instance, 'hooks' ] );
|
30 |
-
}
|
31 |
-
|
32 |
-
return self::$instance;
|
33 |
-
}
|
34 |
-
|
35 |
-
/**
|
36 |
-
* Run all the Actions / Filters.
|
37 |
-
*/
|
38 |
-
public function hooks() {
|
39 |
-
$this->render_templates = new WPR_Render_Templates( true );
|
40 |
-
|
41 |
-
if ( $this->render_templates->is_template_available('header') ) {
|
42 |
-
add_action( 'template_redirect', [ $this, 'setup_header' ], 10 );
|
43 |
-
add_action( 'ocean_header', [$this->render_templates, 'replace_header'] );
|
44 |
-
add_action( 'elementor/page_templates/canvas/before_content', [ $this->render_templates, 'add_canvas_header' ] );
|
45 |
-
}
|
46 |
-
|
47 |
-
if ( $this->render_templates->is_template_available('footer') ) {
|
48 |
-
add_action( 'template_redirect', [ $this, 'setup_footer' ], 10 );
|
49 |
-
add_action( 'ocean_footer', [$this->render_templates, 'replace_footer'] );
|
50 |
-
add_action( 'elementor/page_templates/canvas/after_content', [ $this->render_templates, 'add_canvas_footer' ] );
|
51 |
-
}
|
52 |
-
}
|
53 |
-
|
54 |
-
/**
|
55 |
-
* Disable header from the theme.
|
56 |
-
*/
|
57 |
-
public function setup_header() {
|
58 |
-
remove_action( 'ocean_top_bar', 'oceanwp_top_bar_template' );
|
59 |
-
remove_action( 'ocean_header', 'oceanwp_header_template' );
|
60 |
-
remove_action( 'ocean_page_header', 'oceanwp_page_header_template' );
|
61 |
-
}
|
62 |
-
|
63 |
-
/**
|
64 |
-
* Disable footer from the theme.
|
65 |
-
*/
|
66 |
-
public function setup_footer() {
|
67 |
-
remove_action( 'ocean_footer', 'oceanwp_footer_template' );
|
68 |
-
}
|
69 |
-
|
70 |
-
}
|
71 |
-
|
72 |
-
Wpr_OceanWP_Compat::instance();
|
1 |
+
<?php
|
2 |
+
|
3 |
+
use WprAddons\Admin\Includes\WPR_Render_Templates;
|
4 |
+
|
5 |
+
/**
|
6 |
+
* OceanWP theme compatibility.
|
7 |
+
*/
|
8 |
+
class Wpr_OceanWP_Compat {
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Instance of Wpr_OceanWP_Compat.
|
12 |
+
*
|
13 |
+
* @var Wpr_OceanWP_Compat
|
14 |
+
*/
|
15 |
+
private static $instance;
|
16 |
+
|
17 |
+
/**
|
18 |
+
* WPR_Render_Templates() Class
|
19 |
+
*/
|
20 |
+
private $render_templates;
|
21 |
+
|
22 |
+
/**
|
23 |
+
* Initiator
|
24 |
+
*/
|
25 |
+
public static function instance() {
|
26 |
+
if ( ! isset( self::$instance ) ) {
|
27 |
+
self::$instance = new Wpr_OceanWP_Compat();
|
28 |
+
|
29 |
+
add_action( 'wp', [ self::$instance, 'hooks' ] );
|
30 |
+
}
|
31 |
+
|
32 |
+
return self::$instance;
|
33 |
+
}
|
34 |
+
|
35 |
+
/**
|
36 |
+
* Run all the Actions / Filters.
|
37 |
+
*/
|
38 |
+
public function hooks() {
|
39 |
+
$this->render_templates = new WPR_Render_Templates( true );
|
40 |
+
|
41 |
+
if ( $this->render_templates->is_template_available('header') ) {
|
42 |
+
add_action( 'template_redirect', [ $this, 'setup_header' ], 10 );
|
43 |
+
add_action( 'ocean_header', [$this->render_templates, 'replace_header'] );
|
44 |
+
add_action( 'elementor/page_templates/canvas/before_content', [ $this->render_templates, 'add_canvas_header' ] );
|
45 |
+
}
|
46 |
+
|
47 |
+
if ( $this->render_templates->is_template_available('footer') ) {
|
48 |
+
add_action( 'template_redirect', [ $this, 'setup_footer' ], 10 );
|
49 |
+
add_action( 'ocean_footer', [$this->render_templates, 'replace_footer'] );
|
50 |
+
add_action( 'elementor/page_templates/canvas/after_content', [ $this->render_templates, 'add_canvas_footer' ] );
|
51 |
+
}
|
52 |
+
}
|
53 |
+
|
54 |
+
/**
|
55 |
+
* Disable header from the theme.
|
56 |
+
*/
|
57 |
+
public function setup_header() {
|
58 |
+
remove_action( 'ocean_top_bar', 'oceanwp_top_bar_template' );
|
59 |
+
remove_action( 'ocean_header', 'oceanwp_header_template' );
|
60 |
+
remove_action( 'ocean_page_header', 'oceanwp_page_header_template' );
|
61 |
+
}
|
62 |
+
|
63 |
+
/**
|
64 |
+
* Disable footer from the theme.
|
65 |
+
*/
|
66 |
+
public function setup_footer() {
|
67 |
+
remove_action( 'ocean_footer', 'oceanwp_footer_template' );
|
68 |
+
}
|
69 |
+
|
70 |
+
}
|
71 |
+
|
72 |
+
Wpr_OceanWP_Compat::instance();
|
admin/templates/views/royal/theme-footer-royal.php
CHANGED
@@ -1,24 +1,24 @@
|
|
1 |
-
<?php
|
2 |
-
use WprAddons\Admin\Includes\WPR_Conditions_Manager;
|
3 |
-
use WprAddons\Classes\Utilities;
|
4 |
-
|
5 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
-
exit; // Exit if accessed directly.
|
7 |
-
}
|
8 |
-
|
9 |
-
$conditions = json_decode( get_option('wpr_footer_conditions', '[]'), true );
|
10 |
-
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
11 |
-
|
12 |
-
// Render WPR Header
|
13 |
-
Utilities::render_elementor_template($template_slug);
|
14 |
-
|
15 |
-
wp_footer();
|
16 |
-
|
17 |
-
// Royal themes compatibility
|
18 |
-
echo '</div>'; // .page-content
|
19 |
-
echo '</div>'; // #page-wrap
|
20 |
-
|
21 |
-
?>
|
22 |
-
|
23 |
-
</body>
|
24 |
</html>
|
1 |
+
<?php
|
2 |
+
use WprAddons\Admin\Includes\WPR_Conditions_Manager;
|
3 |
+
use WprAddons\Classes\Utilities;
|
4 |
+
|
5 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
+
exit; // Exit if accessed directly.
|
7 |
+
}
|
8 |
+
|
9 |
+
$conditions = json_decode( get_option('wpr_footer_conditions', '[]'), true );
|
10 |
+
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
11 |
+
|
12 |
+
// Render WPR Header
|
13 |
+
Utilities::render_elementor_template($template_slug);
|
14 |
+
|
15 |
+
wp_footer();
|
16 |
+
|
17 |
+
// Royal themes compatibility
|
18 |
+
echo '</div>'; // .page-content
|
19 |
+
echo '</div>'; // #page-wrap
|
20 |
+
|
21 |
+
?>
|
22 |
+
|
23 |
+
</body>
|
24 |
</html>
|
admin/templates/views/royal/theme-header-royal.php
CHANGED
@@ -1,40 +1,40 @@
|
|
1 |
-
<?php
|
2 |
-
use WprAddons\Admin\Includes\WPR_Conditions_Manager;
|
3 |
-
use WprAddons\Classes\Utilities;
|
4 |
-
|
5 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
-
exit; // Exit if accessed directly.
|
7 |
-
}
|
8 |
-
|
9 |
-
$conditions = json_decode( get_option('wpr_header_conditions', '[]'), true );
|
10 |
-
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
11 |
-
|
12 |
-
?>
|
13 |
-
|
14 |
-
<!DOCTYPE html>
|
15 |
-
<html <?php language_attributes(); ?>>
|
16 |
-
<head>
|
17 |
-
<meta charset="<?php bloginfo( 'charset' ); ?>">
|
18 |
-
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
19 |
-
<?php if ( ! current_theme_supports( 'title-tag' ) ) : ?>
|
20 |
-
<title>
|
21 |
-
<?php echo esc_html(wp_get_document_title()); ?>
|
22 |
-
</title>
|
23 |
-
<?php endif; ?>
|
24 |
-
<?php wp_head(); ?>
|
25 |
-
</head>
|
26 |
-
|
27 |
-
<body <?php body_class(); ?>>
|
28 |
-
|
29 |
-
<?php
|
30 |
-
|
31 |
-
do_action( 'wp_body_open' );
|
32 |
-
|
33 |
-
// Royal themes compatibility
|
34 |
-
echo '<div id="page-wrap">';
|
35 |
-
|
36 |
-
// Render WPR Header
|
37 |
-
Utilities::render_elementor_template($template_slug);
|
38 |
-
|
39 |
-
// Royal themes compatibility
|
40 |
echo '<div class="page-content">';
|
1 |
+
<?php
|
2 |
+
use WprAddons\Admin\Includes\WPR_Conditions_Manager;
|
3 |
+
use WprAddons\Classes\Utilities;
|
4 |
+
|
5 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
+
exit; // Exit if accessed directly.
|
7 |
+
}
|
8 |
+
|
9 |
+
$conditions = json_decode( get_option('wpr_header_conditions', '[]'), true );
|
10 |
+
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
11 |
+
|
12 |
+
?>
|
13 |
+
|
14 |
+
<!DOCTYPE html>
|
15 |
+
<html <?php language_attributes(); ?>>
|
16 |
+
<head>
|
17 |
+
<meta charset="<?php bloginfo( 'charset' ); ?>">
|
18 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
19 |
+
<?php if ( ! current_theme_supports( 'title-tag' ) ) : ?>
|
20 |
+
<title>
|
21 |
+
<?php echo esc_html(wp_get_document_title()); ?>
|
22 |
+
</title>
|
23 |
+
<?php endif; ?>
|
24 |
+
<?php wp_head(); ?>
|
25 |
+
</head>
|
26 |
+
|
27 |
+
<body <?php body_class(); ?>>
|
28 |
+
|
29 |
+
<?php
|
30 |
+
|
31 |
+
do_action( 'wp_body_open' );
|
32 |
+
|
33 |
+
// Royal themes compatibility
|
34 |
+
echo '<div id="page-wrap">';
|
35 |
+
|
36 |
+
// Render WPR Header
|
37 |
+
Utilities::render_elementor_template($template_slug);
|
38 |
+
|
39 |
+
// Royal themes compatibility
|
40 |
echo '<div class="page-content">';
|
admin/templates/views/storefront/class-storefront-compat.php
CHANGED
@@ -1,105 +1,105 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
use WprAddons\Admin\Includes\WPR_Render_Templates;
|
4 |
-
|
5 |
-
/**
|
6 |
-
* Astra theme compatibility.
|
7 |
-
*/
|
8 |
-
class Wpr_Storefront_Compat {
|
9 |
-
|
10 |
-
/**
|
11 |
-
* Instance of Wpr_Storefront_Compat.
|
12 |
-
*
|
13 |
-
* @var Wpr_Storefront_Compat
|
14 |
-
*/
|
15 |
-
private static $instance;
|
16 |
-
|
17 |
-
/**
|
18 |
-
* WPR_Render_Templates() Class
|
19 |
-
*/
|
20 |
-
private $render_templates;
|
21 |
-
|
22 |
-
/**
|
23 |
-
* Initiator
|
24 |
-
*/
|
25 |
-
public static function instance() {
|
26 |
-
if ( ! isset( self::$instance ) ) {
|
27 |
-
self::$instance = new Wpr_Storefront_Compat();
|
28 |
-
|
29 |
-
add_action( 'wp', [ self::$instance, 'hooks' ] );
|
30 |
-
}
|
31 |
-
|
32 |
-
return self::$instance;
|
33 |
-
}
|
34 |
-
|
35 |
-
/**
|
36 |
-
* Run all the Actions / Filters.
|
37 |
-
*/
|
38 |
-
public function hooks() {
|
39 |
-
$this->render_templates = new WPR_Render_Templates( true );
|
40 |
-
|
41 |
-
if ( $this->render_templates->is_template_available('header') ) {
|
42 |
-
add_action( 'template_redirect', [ $this, 'setup_header' ], 10 );
|
43 |
-
add_action( 'storefront_before_header', [$this->render_templates, 'replace_header'], 500 );
|
44 |
-
add_action( 'elementor/page_templates/canvas/before_content', [ $this->render_templates, 'add_canvas_header' ] );
|
45 |
-
}
|
46 |
-
|
47 |
-
if ( $this->render_templates->is_template_available('footer') ) {
|
48 |
-
add_action( 'template_redirect', [ $this, 'setup_footer' ], 10 );
|
49 |
-
add_action( 'storefront_after_footer', [$this->render_templates, 'replace_footer'], 500 );
|
50 |
-
add_action( 'elementor/page_templates/canvas/after_content', [ $this->render_templates, 'add_canvas_footer' ] );
|
51 |
-
}
|
52 |
-
|
53 |
-
if ( $this->render_templates->is_template_available('header') || $this->render_templates->is_template_available('footer') ) {
|
54 |
-
add_action( 'wp_head', [ $this, 'styles' ] );
|
55 |
-
}
|
56 |
-
}
|
57 |
-
|
58 |
-
/**
|
59 |
-
* Add inline CSS to hide empty divs for header and footer in storefront
|
60 |
-
*
|
61 |
-
* @since 1.2.0
|
62 |
-
* @return void
|
63 |
-
*/
|
64 |
-
public function styles() {
|
65 |
-
$css = '<style id="wpr-disable-storefront-hf">';
|
66 |
-
|
67 |
-
if ( $this->render_templates->is_template_available('header') ) {
|
68 |
-
$css .= '.site-header {
|
69 |
-
display: none;
|
70 |
-
}';
|
71 |
-
}
|
72 |
-
|
73 |
-
if ( $this->render_templates->is_template_available('footer') ) {
|
74 |
-
$css .= '.site-footer {
|
75 |
-
display: none;
|
76 |
-
}';
|
77 |
-
}
|
78 |
-
|
79 |
-
$css .= '</style>';
|
80 |
-
|
81 |
-
// Echo plain CSS (no user input or variables)
|
82 |
-
echo ''. $css; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
83 |
-
}
|
84 |
-
|
85 |
-
/**
|
86 |
-
* Disable header from the theme.
|
87 |
-
*/
|
88 |
-
public function setup_header() {
|
89 |
-
for ( $priority = 0; $priority < 200; $priority ++ ) {
|
90 |
-
remove_all_actions( 'storefront_header', $priority );
|
91 |
-
}
|
92 |
-
}
|
93 |
-
|
94 |
-
/**
|
95 |
-
* Disable footer from the theme.
|
96 |
-
*/
|
97 |
-
public function setup_footer() {
|
98 |
-
for ( $priority = 0; $priority < 200; $priority ++ ) {
|
99 |
-
remove_all_actions( 'storefront_footer', $priority );
|
100 |
-
}
|
101 |
-
}
|
102 |
-
|
103 |
-
}
|
104 |
-
|
105 |
-
Wpr_Storefront_Compat::instance();
|
1 |
+
<?php
|
2 |
+
|
3 |
+
use WprAddons\Admin\Includes\WPR_Render_Templates;
|
4 |
+
|
5 |
+
/**
|
6 |
+
* Astra theme compatibility.
|
7 |
+
*/
|
8 |
+
class Wpr_Storefront_Compat {
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Instance of Wpr_Storefront_Compat.
|
12 |
+
*
|
13 |
+
* @var Wpr_Storefront_Compat
|
14 |
+
*/
|
15 |
+
private static $instance;
|
16 |
+
|
17 |
+
/**
|
18 |
+
* WPR_Render_Templates() Class
|
19 |
+
*/
|
20 |
+
private $render_templates;
|
21 |
+
|
22 |
+
/**
|
23 |
+
* Initiator
|
24 |
+
*/
|
25 |
+
public static function instance() {
|
26 |
+
if ( ! isset( self::$instance ) ) {
|
27 |
+
self::$instance = new Wpr_Storefront_Compat();
|
28 |
+
|
29 |
+
add_action( 'wp', [ self::$instance, 'hooks' ] );
|
30 |
+
}
|
31 |
+
|
32 |
+
return self::$instance;
|
33 |
+
}
|
34 |
+
|
35 |
+
/**
|
36 |
+
* Run all the Actions / Filters.
|
37 |
+
*/
|
38 |
+
public function hooks() {
|
39 |
+
$this->render_templates = new WPR_Render_Templates( true );
|
40 |
+
|
41 |
+
if ( $this->render_templates->is_template_available('header') ) {
|
42 |
+
add_action( 'template_redirect', [ $this, 'setup_header' ], 10 );
|
43 |
+
add_action( 'storefront_before_header', [$this->render_templates, 'replace_header'], 500 );
|
44 |
+
add_action( 'elementor/page_templates/canvas/before_content', [ $this->render_templates, 'add_canvas_header' ] );
|
45 |
+
}
|
46 |
+
|
47 |
+
if ( $this->render_templates->is_template_available('footer') ) {
|
48 |
+
add_action( 'template_redirect', [ $this, 'setup_footer' ], 10 );
|
49 |
+
add_action( 'storefront_after_footer', [$this->render_templates, 'replace_footer'], 500 );
|
50 |
+
add_action( 'elementor/page_templates/canvas/after_content', [ $this->render_templates, 'add_canvas_footer' ] );
|
51 |
+
}
|
52 |
+
|
53 |
+
if ( $this->render_templates->is_template_available('header') || $this->render_templates->is_template_available('footer') ) {
|
54 |
+
add_action( 'wp_head', [ $this, 'styles' ] );
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
+
/**
|
59 |
+
* Add inline CSS to hide empty divs for header and footer in storefront
|
60 |
+
*
|
61 |
+
* @since 1.2.0
|
62 |
+
* @return void
|
63 |
+
*/
|
64 |
+
public function styles() {
|
65 |
+
$css = '<style id="wpr-disable-storefront-hf">';
|
66 |
+
|
67 |
+
if ( $this->render_templates->is_template_available('header') ) {
|
68 |
+
$css .= '.site-header {
|
69 |
+
display: none;
|
70 |
+
}';
|
71 |
+
}
|
72 |
+
|
73 |
+
if ( $this->render_templates->is_template_available('footer') ) {
|
74 |
+
$css .= '.site-footer {
|
75 |
+
display: none;
|
76 |
+
}';
|
77 |
+
}
|
78 |
+
|
79 |
+
$css .= '</style>';
|
80 |
+
|
81 |
+
// Echo plain CSS (no user input or variables)
|
82 |
+
echo ''. $css; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
|
83 |
+
}
|
84 |
+
|
85 |
+
/**
|
86 |
+
* Disable header from the theme.
|
87 |
+
*/
|
88 |
+
public function setup_header() {
|
89 |
+
for ( $priority = 0; $priority < 200; $priority ++ ) {
|
90 |
+
remove_all_actions( 'storefront_header', $priority );
|
91 |
+
}
|
92 |
+
}
|
93 |
+
|
94 |
+
/**
|
95 |
+
* Disable footer from the theme.
|
96 |
+
*/
|
97 |
+
public function setup_footer() {
|
98 |
+
for ( $priority = 0; $priority < 200; $priority ++ ) {
|
99 |
+
remove_all_actions( 'storefront_footer', $priority );
|
100 |
+
}
|
101 |
+
}
|
102 |
+
|
103 |
+
}
|
104 |
+
|
105 |
+
Wpr_Storefront_Compat::instance();
|
admin/templates/views/theme-footer.php
CHANGED
@@ -1,20 +1,20 @@
|
|
1 |
-
<?php
|
2 |
-
use WprAddons\Admin\Includes\WPR_Conditions_Manager;
|
3 |
-
use WprAddons\Classes\Utilities;
|
4 |
-
|
5 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
-
exit; // Exit if accessed directly.
|
7 |
-
}
|
8 |
-
|
9 |
-
$conditions = json_decode( get_option('wpr_footer_conditions', '[]'), true );
|
10 |
-
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
11 |
-
|
12 |
-
// Render WPR Header
|
13 |
-
Utilities::render_elementor_template($template_slug);
|
14 |
-
|
15 |
-
wp_footer();
|
16 |
-
|
17 |
-
?>
|
18 |
-
|
19 |
-
</body>
|
20 |
</html>
|
1 |
+
<?php
|
2 |
+
use WprAddons\Admin\Includes\WPR_Conditions_Manager;
|
3 |
+
use WprAddons\Classes\Utilities;
|
4 |
+
|
5 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
+
exit; // Exit if accessed directly.
|
7 |
+
}
|
8 |
+
|
9 |
+
$conditions = json_decode( get_option('wpr_footer_conditions', '[]'), true );
|
10 |
+
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
11 |
+
|
12 |
+
// Render WPR Header
|
13 |
+
Utilities::render_elementor_template($template_slug);
|
14 |
+
|
15 |
+
wp_footer();
|
16 |
+
|
17 |
+
?>
|
18 |
+
|
19 |
+
</body>
|
20 |
</html>
|
admin/templates/views/theme-header.php
CHANGED
@@ -1,32 +1,32 @@
|
|
1 |
-
<?php
|
2 |
-
use WprAddons\Admin\Includes\WPR_Conditions_Manager;
|
3 |
-
use WprAddons\Classes\Utilities;
|
4 |
-
|
5 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
-
exit; // Exit if accessed directly.
|
7 |
-
}
|
8 |
-
|
9 |
-
$conditions = json_decode( get_option('wpr_header_conditions', '[]'), true );
|
10 |
-
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
11 |
-
|
12 |
-
?><!DOCTYPE html>
|
13 |
-
<html <?php language_attributes(); ?>>
|
14 |
-
<head>
|
15 |
-
<meta charset="<?php bloginfo( 'charset' ); ?>">
|
16 |
-
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
17 |
-
<?php if ( ! current_theme_supports( 'title-tag' ) ) : ?>
|
18 |
-
<title>
|
19 |
-
<?php echo esc_html(wp_get_document_title()); ?>
|
20 |
-
</title>
|
21 |
-
<?php endif; ?>
|
22 |
-
<?php wp_head(); ?>
|
23 |
-
</head>
|
24 |
-
|
25 |
-
<body <?php body_class(); ?>>
|
26 |
-
|
27 |
-
<?php
|
28 |
-
|
29 |
-
do_action( 'wp_body_open' );
|
30 |
-
|
31 |
-
// Render WPR Header
|
32 |
-
Utilities::render_elementor_template($template_slug);
|
1 |
+
<?php
|
2 |
+
use WprAddons\Admin\Includes\WPR_Conditions_Manager;
|
3 |
+
use WprAddons\Classes\Utilities;
|
4 |
+
|
5 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
6 |
+
exit; // Exit if accessed directly.
|
7 |
+
}
|
8 |
+
|
9 |
+
$conditions = json_decode( get_option('wpr_header_conditions', '[]'), true );
|
10 |
+
$template_slug = WPR_Conditions_Manager::header_footer_display_conditions($conditions);
|
11 |
+
|
12 |
+
?><!DOCTYPE html>
|
13 |
+
<html <?php language_attributes(); ?>>
|
14 |
+
<head>
|
15 |
+
<meta charset="<?php bloginfo( 'charset' ); ?>">
|
16 |
+
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
|
17 |
+
<?php if ( ! current_theme_supports( 'title-tag' ) ) : ?>
|
18 |
+
<title>
|
19 |
+
<?php echo esc_html(wp_get_document_title()); ?>
|
20 |
+
</title>
|
21 |
+
<?php endif; ?>
|
22 |
+
<?php wp_head(); ?>
|
23 |
+
</head>
|
24 |
+
|
25 |
+
<body <?php body_class(); ?>>
|
26 |
+
|
27 |
+
<?php
|
28 |
+
|
29 |
+
do_action( 'wp_body_open' );
|
30 |
+
|
31 |
+
// Render WPR Header
|
32 |
+
Utilities::render_elementor_template($template_slug);
|
admin/templates/wpr-canvas.php
CHANGED
@@ -1,66 +1,66 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
use Elementor\Utils;
|
4 |
-
use WprAddons\Classes\Utilities;
|
5 |
-
|
6 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
-
exit; // Exit if accessed directly.
|
8 |
-
}
|
9 |
-
|
10 |
-
\Elementor\Plugin::$instance->frontend->add_body_class( 'elementor-template-canvas' );
|
11 |
-
|
12 |
-
$is_preview_mode = \Elementor\Plugin::$instance->preview->is_preview_mode();
|
13 |
-
// $woocommerce_class = $is_preview_mode && class_exists( 'WooCommerce' ) ? 'woocommerce woocommerce-page woocommerce-shop canvas-test' : '';
|
14 |
-
$woocommerce_class = $is_preview_mode && class_exists( 'WooCommerce' ) ? 'woocommerce woocommerce-page' : '';
|
15 |
-
|
16 |
-
?>
|
17 |
-
<!DOCTYPE html>
|
18 |
-
<html <?php language_attributes(); ?>>
|
19 |
-
<head>
|
20 |
-
<meta charset="<?php bloginfo( 'charset' ); ?>">
|
21 |
-
<?php if ( ! current_theme_supports( 'title-tag' ) ) : ?>
|
22 |
-
<title><?php echo wp_get_document_title(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></title>
|
23 |
-
<?php endif; ?>
|
24 |
-
<?php wp_head(); ?>
|
25 |
-
<?php
|
26 |
-
|
27 |
-
// Keep the following line after `wp_head()` call, to ensure it's not overridden by another templates.
|
28 |
-
Utils::print_unescaped_internal_string( Utils::get_meta_viewport( 'canvas' ) );
|
29 |
-
?>
|
30 |
-
</head>
|
31 |
-
|
32 |
-
<body <?php body_class($woocommerce_class); ?>>
|
33 |
-
<?php
|
34 |
-
Elementor\Modules\PageTemplates\Module::body_open();
|
35 |
-
/**
|
36 |
-
* Before canvas page template content.
|
37 |
-
*
|
38 |
-
* Fires before the content of Elementor canvas page template.
|
39 |
-
*
|
40 |
-
* @since 1.0.0
|
41 |
-
*/
|
42 |
-
do_action( 'elementor/page_templates/canvas/before_content' );
|
43 |
-
|
44 |
-
// Elementor Editor
|
45 |
-
if (( \Elementor\Plugin::$instance->preview->is_preview_mode() && Utilities::is_theme_builder_template()) || is_singular('wpr_mega_menu') ) {
|
46 |
-
\Elementor\Plugin::$instance->modules_manager->get_modules( 'page-templates' )->print_content();
|
47 |
-
|
48 |
-
// Frontend
|
49 |
-
} else {
|
50 |
-
// Display Custom Elementor Templates
|
51 |
-
do_action( 'elementor/page_templates/canvas/wpr_print_content' );
|
52 |
-
}
|
53 |
-
|
54 |
-
/**
|
55 |
-
* After canvas page template content.
|
56 |
-
*
|
57 |
-
* Fires after the content of Elementor canvas page template.
|
58 |
-
*
|
59 |
-
* @since 1.0.0
|
60 |
-
*/
|
61 |
-
do_action( 'elementor/page_templates/canvas/after_content' );
|
62 |
-
|
63 |
-
wp_footer();
|
64 |
-
?>
|
65 |
-
</body>
|
66 |
-
</html>
|
1 |
+
<?php
|
2 |
+
|
3 |
+
use Elementor\Utils;
|
4 |
+
use WprAddons\Classes\Utilities;
|
5 |
+
|
6 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
+
exit; // Exit if accessed directly.
|
8 |
+
}
|
9 |
+
|
10 |
+
\Elementor\Plugin::$instance->frontend->add_body_class( 'elementor-template-canvas' );
|
11 |
+
|
12 |
+
$is_preview_mode = \Elementor\Plugin::$instance->preview->is_preview_mode();
|
13 |
+
// $woocommerce_class = $is_preview_mode && class_exists( 'WooCommerce' ) ? 'woocommerce woocommerce-page woocommerce-shop canvas-test' : '';
|
14 |
+
$woocommerce_class = $is_preview_mode && class_exists( 'WooCommerce' ) ? 'woocommerce woocommerce-page' : '';
|
15 |
+
|
16 |
+
?>
|
17 |
+
<!DOCTYPE html>
|
18 |
+
<html <?php language_attributes(); ?>>
|
19 |
+
<head>
|
20 |
+
<meta charset="<?php bloginfo( 'charset' ); ?>">
|
21 |
+
<?php if ( ! current_theme_supports( 'title-tag' ) ) : ?>
|
22 |
+
<title><?php echo wp_get_document_title(); // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?></title>
|
23 |
+
<?php endif; ?>
|
24 |
+
<?php wp_head(); ?>
|
25 |
+
<?php
|
26 |
+
|
27 |
+
// Keep the following line after `wp_head()` call, to ensure it's not overridden by another templates.
|
28 |
+
Utils::print_unescaped_internal_string( Utils::get_meta_viewport( 'canvas' ) );
|
29 |
+
?>
|
30 |
+
</head>
|
31 |
+
|
32 |
+
<body <?php body_class($woocommerce_class); ?>>
|
33 |
+
<?php
|
34 |
+
Elementor\Modules\PageTemplates\Module::body_open();
|
35 |
+
/**
|
36 |
+
* Before canvas page template content.
|
37 |
+
*
|
38 |
+
* Fires before the content of Elementor canvas page template.
|
39 |
+
*
|
40 |
+
* @since 1.0.0
|
41 |
+
*/
|
42 |
+
do_action( 'elementor/page_templates/canvas/before_content' );
|
43 |
+
|
44 |
+
// Elementor Editor
|
45 |
+
if (( \Elementor\Plugin::$instance->preview->is_preview_mode() && Utilities::is_theme_builder_template()) || is_singular('wpr_mega_menu') ) {
|
46 |
+
\Elementor\Plugin::$instance->modules_manager->get_modules( 'page-templates' )->print_content();
|
47 |
+
|
48 |
+
// Frontend
|
49 |
+
} else {
|
50 |
+
// Display Custom Elementor Templates
|
51 |
+
do_action( 'elementor/page_templates/canvas/wpr_print_content' );
|
52 |
+
}
|
53 |
+
|
54 |
+
/**
|
55 |
+
* After canvas page template content.
|
56 |
+
*
|
57 |
+
* Fires after the content of Elementor canvas page template.
|
58 |
+
*
|
59 |
+
* @since 1.0.0
|
60 |
+
*/
|
61 |
+
do_action( 'elementor/page_templates/canvas/after_content' );
|
62 |
+
|
63 |
+
wp_footer();
|
64 |
+
?>
|
65 |
+
</body>
|
66 |
+
</html>
|
admin/templates/wpr-templates-data.php
CHANGED
@@ -1,880 +1,880 @@
|
|
1 |
-
<?php
|
2 |
-
namespace WprAddons\Admin\Templates;
|
3 |
-
|
4 |
-
use WprAddons\Plugin;
|
5 |
-
|
6 |
-
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
7 |
-
|
8 |
-
class WPR_Templates_Data {
|
9 |
-
public static function get_available_kits() {
|
10 |
-
$is_pro_active = wpr_fs()->can_use_premium_code() && defined('WPR_ADDONS_PRO_VERSION');
|
11 |
-
$is_cf7_active = is_plugin_active('contact-form-7/wp-contact-form-7.php') ? 'true' : 'false';
|
12 |
-
$is_mla_active = is_plugin_active('media-library-assistant/index.php') ? 'true' : 'false';
|
13 |
-
$is_woo_active = is_plugin_active('woocommerce/woocommerce.php') ? 'true' : 'false';
|
14 |
-
|
15 |
-
return [
|
16 |
-
'grocery-store' => [
|
17 |
-
'v1' => [
|
18 |
-
'name' => 'Grocery Store',
|
19 |
-
'pages' => 'home,shop,single-product,my-account,about,contact,',
|
20 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
21 |
-
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce product online eshopping market reseller ecommerce shop',
|
22 |
-
'theme-builder' => false,
|
23 |
-
'woo-builder' => true,
|
24 |
-
'off-canvas' => false,
|
25 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
26 |
-
'priority' => 4,
|
27 |
-
],
|
28 |
-
],
|
29 |
-
'furniture-shop' => [
|
30 |
-
'v1' => [
|
31 |
-
'name' => 'Furniture Shop',
|
32 |
-
'pages' => 'home,shop-v1,shop-v2,single-product,my-account,about,contact,',
|
33 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
34 |
-
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce product online furniture home office eshopping market reseller ecommerce shop ',
|
35 |
-
'theme-builder' => false,
|
36 |
-
'woo-builder' => true,
|
37 |
-
'off-canvas' => true,
|
38 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
39 |
-
'priority' => 5,
|
40 |
-
],
|
41 |
-
],
|
42 |
-
'estore' => [
|
43 |
-
'v1' => [
|
44 |
-
'name' => 'Electronic Store',
|
45 |
-
'pages' => 'home,shop,single-product,blog,faq,about,contact,',
|
46 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
47 |
-
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce product online market reseller ecommerce shop gadget iphone phone electronic ',
|
48 |
-
'theme-builder' => true,
|
49 |
-
'woo-builder' => true,
|
50 |
-
'off-canvas' => false,
|
51 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
52 |
-
'priority' => 4,
|
53 |
-
],
|
54 |
-
],
|
55 |
-
'woo-food' => [
|
56 |
-
'v1' => [
|
57 |
-
'name' => 'Food Delivery',
|
58 |
-
'pages' => 'home,home-v2,food,single-product,about,contact,faq,blog,',
|
59 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
60 |
-
'tags' => 'shop woo-commerce woocommerce ecommerce product online eshopping market ecommerce shop food delivery restaurant fast food pizzeria burger recipes cooking pizza restaurant snack',
|
61 |
-
'theme-builder' => true,
|
62 |
-
'woo-builder' => true,
|
63 |
-
'off-canvas' => false,
|
64 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
65 |
-
'priority' => 144,
|
66 |
-
],
|
67 |
-
],
|
68 |
-
'fashion' => [
|
69 |
-
'v1' => [
|
70 |
-
'name' => 'Fashion',
|
71 |
-
'pages' => 'home,shop-v1,shop-v2,single-product,blog,my-account,about,faq,contact,',
|
72 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
73 |
-
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce product ecommerce shop online boutique clothes eshopping fashion designer market reseller digital purchases',
|
74 |
-
'theme-builder' => true,
|
75 |
-
'woo-builder' => true,
|
76 |
-
'off-canvas' => false,
|
77 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
78 |
-
'priority' => 2,
|
79 |
-
],
|
80 |
-
],
|
81 |
-
'wooshop' => [
|
82 |
-
'v1' => [
|
83 |
-
'name' => 'Woo Shop',
|
84 |
-
'pages' => 'home,shop,single-product,about,contact,',
|
85 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
86 |
-
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce shop ecommerce product online shop online store boutique clothes eshopping fashion designer market reseller digital purchases',
|
87 |
-
'theme-builder' => false,
|
88 |
-
'woo-builder' => true,
|
89 |
-
'off-canvas' => false,
|
90 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
91 |
-
'priority' => 3,
|
92 |
-
],
|
93 |
-
],
|
94 |
-
'personal-blog' => [
|
95 |
-
'v1' => [
|
96 |
-
'name' => 'Personal Blog',
|
97 |
-
'pages' => 'home,home-v1,home-v2,home-v3,lifestyle,about,contact,',
|
98 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
99 |
-
'tags' => 'blog blogger posts personal blog lifestyle blogger theme builder grid slider news',
|
100 |
-
'theme-builder' => true,
|
101 |
-
'woo-builder' => false,
|
102 |
-
'off-canvas' => false,
|
103 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
104 |
-
'priority' => 2,
|
105 |
-
],
|
106 |
-
'v2' => [
|
107 |
-
'name' => 'Personal Blog',
|
108 |
-
'pages' => 'home,single,category,about,contact,',
|
109 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
110 |
-
'tags' => 'blog blogger posts personal blog lifestyle blogger theme builder grid slider news',
|
111 |
-
'theme-builder' => true,
|
112 |
-
'woo-builder' => false,
|
113 |
-
'off-canvas' => false,
|
114 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
115 |
-
'priority' => 4,
|
116 |
-
],
|
117 |
-
],
|
118 |
-
'food-blog' => [
|
119 |
-
'v1' => [
|
120 |
-
'name' => 'Food Blog',
|
121 |
-
'pages' => 'home,home-v1,home-v2,home-v3,category,about,contact,',
|
122 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
123 |
-
'tags' => 'food blog posts food blogger theme builder recipes cooking grid slider',
|
124 |
-
'theme-builder' => true,
|
125 |
-
'woo-builder' => false,
|
126 |
-
'off-canvas' => false,
|
127 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
128 |
-
'priority' => 20,
|
129 |
-
],
|
130 |
-
],
|
131 |
-
'magazine-blog' => [
|
132 |
-
'v1' => [
|
133 |
-
'name' => 'Magazine Blog',
|
134 |
-
'pages' => 'home,home-v1,home-v2,category,about,contact,',
|
135 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
136 |
-
'tags' => 'blogger blog posts content news newspaper journal magazine business blog publishing theme builder sports grid slider',
|
137 |
-
'theme-builder' => true,
|
138 |
-
'woo-builder' => false,
|
139 |
-
'off-canvas' => false,
|
140 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
141 |
-
'priority' => 6,
|
142 |
-
],
|
143 |
-
'v2' => [
|
144 |
-
'name' => 'Magazine Blog',
|
145 |
-
'pages' => 'home,home-v1,home-v2,category,about,contact,',
|
146 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
147 |
-
'tags' => 'blogger blog posts content news newspaper journal magazine business blog publishing theme builder sports grid slider',
|
148 |
-
'theme-builder' => true,
|
149 |
-
'woo-builder' => false,
|
150 |
-
'off-canvas' => false,
|
151 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
152 |
-
'priority' => 50,
|
153 |
-
],
|
154 |
-
'v3' => [
|
155 |
-
'name' => 'Magazine Blog',
|
156 |
-
'pages' => 'home,category,about,contact,',
|
157 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
158 |
-
'tags' => 'blogger blog posts content news newspaper journal magazine business blog publishing theme builder sports grid slider',
|
159 |
-
'theme-builder' => true,
|
160 |
-
'woo-builder' => false,
|
161 |
-
'off-canvas' => false,
|
162 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
163 |
-
'priority' => 30,
|
164 |
-
],
|
165 |
-
],
|
166 |
-
'nature' => [
|
167 |
-
'v1' => [
|
168 |
-
'name' => 'nature',
|
169 |
-
'pages' => 'home,about,services,projects,contact,',
|
170 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
171 |
-
'tags' => 'nature influencer travel blogger blog content slider tourism influencers creator travel forest slider generic multipurpose national-park nature-park sanctuary wilderness hitchhiking mountain river lakes outdoors',
|
172 |
-
'theme-builder' => true,
|
173 |
-
'woo-builder' => false,
|
174 |
-
'off-canvas' => false,
|
175 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
176 |
-
'priority' => 60,
|
177 |
-
],
|
178 |
-
],
|
179 |
-
'travel-agency' => [
|
180 |
-
'v1' => [
|
181 |
-
'name' => 'Travel agency',
|
182 |
-
'pages' => 'home,tours,gallery,services,reviews,about,contact,',
|
183 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
184 |
-
'tags' => 'nature influencer travel blogger blog content slider tourism influencers creator travel forest slider generic multipurpose national-park nature-park sanctuary wilderness hitchhiking mountain river lakes outdoors travel agency company office travel services',
|
185 |
-
'theme-builder' => true,
|
186 |
-
'woo-builder' => false,
|
187 |
-
'off-canvas' => false,
|
188 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
189 |
-
'priority' => 61,
|
190 |
-
],
|
191 |
-
],
|
192 |
-
'digital-marketing-agency' => [
|
193 |
-
'v1' => [
|
194 |
-
'name' => 'Digital Marketing Agency',
|
195 |
-
'pages' => 'home,seo,branding,marketing,social,blog,about,contact,',
|
196 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
197 |
-
'tags' => 'digital agency company corporate digital services office agency web digital marketing seo social media branding',
|
198 |
-
'theme-builder' => true,
|
199 |
-
'woo-builder' => false,
|
200 |
-
'off-canvas' => false,
|
201 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
202 |
-
'priority' => 1,
|
203 |
-
],
|
204 |
-
],
|
205 |
-
'digital-agency-dark' => [
|
206 |
-
'v1' => [
|
207 |
-
'name' => 'Digital Agency Dark',
|
208 |
-
'pages' => 'home,about,services,team,portfolio,blog,contact,',
|
209 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .', "media-library-assistant":'. $is_mla_active .'}',
|
210 |
-
'tags' => 'digital agency company corporate digital services office agency web digital marketing seo social media branding dark black',
|
211 |
-
'theme-builder' => true,
|
212 |
-
'woo-builder' => false,
|
213 |
-
'off-canvas' => false,
|
214 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
215 |
-
'priority' => 3,
|
216 |
-
],
|
217 |
-
],
|
218 |
-
'one-page' => [
|
219 |
-
'v1' => [
|
220 |
-
'name' => 'OnePage - Digital Marketing Agency',
|
221 |
-
'pages' => 'home,blog,',
|
222 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .', "media-library-assistant":'. $is_mla_active .'}',
|
223 |
-
'tags' => 'digital agency company corporate digital services office agency web digital marketing seo social media branding one page onepage one pages parallax single page',
|
224 |
-
'theme-builder' => true,
|
225 |
-
'woo-builder' => false,
|
226 |
-
'off-canvas' => false,
|
227 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
228 |
-
'priority' => 7,
|
229 |
-
],
|
230 |
-
],
|
231 |
-
'travel-blog' => [
|
232 |
-
'v1' => [
|
233 |
-
'name' => 'Travel Blog',
|
234 |
-
'pages' => 'home,home-v1,home-v2,category,about,contact,',
|
235 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
236 |
-
'tags' => 'nature influencer travel blogger blog posts content tourism influencers creator travel forest slider generic multipurpose national-park nature-park sanctuary wilderness slider hitchhiking mountain river lakes outdoors theme builder traveler hiking grid',
|
237 |
-
'theme-builder' => true,
|
238 |
-
'woo-builder' => false,
|
239 |
-
'off-canvas' => false,
|
240 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
241 |
-
'priority' => 71,
|
242 |
-
],
|
243 |
-
],
|
244 |
-
'portfolio' => [
|
245 |
-
'v1' => [
|
246 |
-
'name' => 'Portfolio/CV',
|
247 |
-
'pages' => 'home,about,portfolio,contact,',
|
248 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
249 |
-
'tags' => 'portfolio personal cv designer ux artist artwork personal resume photographer grid',
|
250 |
-
'theme-builder' => false,
|
251 |
-
'woo-builder' => false,
|
252 |
-
'off-canvas' => false,
|
253 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
254 |
-
'priority' => 80,
|
255 |
-
],
|
256 |
-
],
|
257 |
-
'nft-portfolio' => [
|
258 |
-
'v1' => [
|
259 |
-
'name' => 'NFT',
|
260 |
-
'pages' => 'home,about,blog,roadmap,team,nft,faq,comingsoon,',
|
261 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
262 |
-
'tags' => 'portfolio blockchain nft crypto collection minting listing metavers digital currency art',
|
263 |
-
'theme-builder' => false,
|
264 |
-
'woo-builder' => false,
|
265 |
-
'off-canvas' => false,
|
266 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
267 |
-
'priority' => 81,
|
268 |
-
],
|
269 |
-
],
|
270 |
-
'pizza' => [
|
271 |
-
'v1' => [
|
272 |
-
'name' => 'Pizza Restaurant',
|
273 |
-
'pages' => 'home,menu,about,offer,gallery,contact,',
|
274 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
275 |
-
'tags' => 'pizza italian restaurant food slider pasta fastfood fast food recipes cooking slider',
|
276 |
-
'theme-builder' => false,
|
277 |
-
'woo-builder' => false,
|
278 |
-
'off-canvas' => false,
|
279 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
280 |
-
'priority' => 90,
|
281 |
-
],
|
282 |
-
],
|
283 |
-
'pet-care' => [
|
284 |
-
'v1' => [
|
285 |
-
'name' => 'Pet Care',
|
286 |
-
'pages' => 'home,about,services,reviews,contact,',
|
287 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
288 |
-
'tags' => 'pet care dog care grooming pet minding pet sitting pet training pet walking cat animal dogs dog training',
|
289 |
-
'theme-builder' => false,
|
290 |
-
'woo-builder' => false,
|
291 |
-
'off-canvas' => false,
|
292 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
293 |
-
'priority' => 91,
|
294 |
-
],
|
295 |
-
],
|
296 |
-
'travel' => [
|
297 |
-
'v1' => [
|
298 |
-
'name' => 'Travel Blogger & Influencer',
|
299 |
-
'pages' => 'home,about,stories,contact,',
|
300 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
301 |
-
'tags' => 'nature influencer travel blogger blog content tourism influencers creator travel forest slider generic multipurpose national-park nature-park sanctuary wilderness hitchhiking mountain river lakes outdoors',
|
302 |
-
'theme-builder' => false,
|
303 |
-
'woo-builder' => false,
|
304 |
-
'off-canvas' => false,
|
305 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
306 |
-
'priority' => 100,
|
307 |
-
],
|
308 |
-
],
|
309 |
-
'cybersecurity' => [
|
310 |
-
'v1' => [
|
311 |
-
'name' => 'Cybersecurity',
|
312 |
-
'pages' => 'home,about,services,pricing,contact,',
|
313 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
314 |
-
'tags' => 'cybersecurity data protection hacker security dark digital technology cybercrime computer windows technician',
|
315 |
-
'theme-builder' => false,
|
316 |
-
'woo-builder' => false,
|
317 |
-
'off-canvas' => false,
|
318 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
319 |
-
'priority' => 110,
|
320 |
-
],
|
321 |
-
],
|
322 |
-
'charity' => [
|
323 |
-
'v1' => [
|
324 |
-
'name' => 'Charity',
|
325 |
-
'pages' => 'home,home-v1,contact,whatwedo,whoweare,partners,',
|
326 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
327 |
-
'tags' => 'charity donate church foundation giving non-profit organization kids charity help children save life donation fundrising ngo fundraising corona fundraising nonprofit non profit',
|
328 |
-
'theme-builder' => false,
|
329 |
-
'woo-builder' => false,
|
330 |
-
'off-canvas' => false,
|
331 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
332 |
-
'priority' => 111,
|
333 |
-
],
|
334 |
-
],
|
335 |
-
'photographer' => [
|
336 |
-
'v1' => [
|
337 |
-
'name' => 'Photographer Portfolio Dark',
|
338 |
-
'pages' => 'home,about,services,portfolio,contact,',
|
339 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .', "media-library-assistant":'. $is_mla_active .'}',
|
340 |
-
'tags' => 'portfolio personal cv designer ux artist artwork personal resume camera fashion lens modelling photographer photography videography wedding shoot grid ',
|
341 |
-
'theme-builder' => false,
|
342 |
-
'woo-builder' => false,
|
343 |
-
'off-canvas' => false,
|
344 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
345 |
-
'priority' => 120,
|
346 |
-
],
|
347 |
-
'v2' => [
|
348 |
-
'name' => 'Photographer Portfolio Light',
|
349 |
-
'pages' => 'home,about,services,portfolio,contact,',
|
350 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .', "media-library-assistant":'. $is_mla_active .'}',
|
351 |
-
'tags' => 'portfolio personal cv designer ux artist artwork personal resume camera fashion lens modelling photographer photography videography wedding shoot grid ',
|
352 |
-
'theme-builder' => false,
|
353 |
-
'woo-builder' => false,
|
354 |
-
'off-canvas' => false,
|
355 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
356 |
-
'priority' => 130,
|
357 |
-
],
|
358 |
-
],
|
359 |
-
'cryptocurrency' => [
|
360 |
-
'v1' => [
|
361 |
-
'name' => 'Cryptocurrency',
|
362 |
-
'pages' => 'home,about,services,token,pricing,contact,',
|
363 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
364 |
-
'tags' => 'cryptocurrency bitcoin ethereum etherium blockchain protection nft coin corporate crypto dark startup token digital',
|
365 |
-
'theme-builder' => false,
|
366 |
-
'woo-builder' => false,
|
367 |
-
'off-canvas' => false,
|
368 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
369 |
-
'priority' => 150,
|
370 |
-
],
|
371 |
-
],
|
372 |
-
'skincare' => [
|
373 |
-
'v1' => [
|
374 |
-
'name' => 'Skin Care',
|
375 |
-
'pages' => 'home,about,services,procedures,gallery,pricing,contact,',
|
376 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
377 |
-
'tags' => 'skincare skin care beauty clean face skin-beauty health wellness',
|
378 |
-
'theme-builder' => false,
|
379 |
-
'woo-builder' => false,
|
380 |
-
'off-canvas' => false,
|
381 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
382 |
-
'priority' => 160,
|
383 |
-
],
|
384 |
-
],
|
385 |
-
'lawyer' => [
|
386 |
-
'v1' => [
|
387 |
-
'name' => 'Lawyer',
|
388 |
-
'pages' => 'home,practice,faq,reviews,attorney,contact,',
|
389 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
390 |
-
'tags' => 'lawyers criminal defence lawyer firm divorce lawyer family lawyer law legal firm ',
|
391 |
-
'theme-builder' => false,
|
392 |
-
'woo-builder' => false,
|
393 |
-
'off-canvas' => false,
|
394 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
395 |
-
'priority' => 170,
|
396 |
-
],
|
397 |
-
],
|
398 |
-
'medical' => [
|
399 |
-
'v1' => [
|
400 |
-
'name' => 'Medical',
|
401 |
-
'pages' => 'home,about,services,doctors,contact,',
|
402 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
403 |
-
'tags' => 'medical clinic dental health healthcare doctor therapist wellness treatment cure',
|
404 |
-
'theme-builder' => false,
|
405 |
-
'woo-builder' => false,
|
406 |
-
'off-canvas' => false,
|
407 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
408 |
-
'priority' => 180,
|
409 |
-
],
|
410 |
-
],
|
411 |
-
'digitalagency' => [
|
412 |
-
'v1' => [
|
413 |
-
'name' => 'Digital Agency',
|
414 |
-
'pages' => 'home,about,services,contact,',
|
415 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
416 |
-
'tags' => 'digital agency company corporate digital services office agency web marketing',
|
417 |
-
'theme-builder' => false,
|
418 |
-
'woo-builder' => false,
|
419 |
-
'off-canvas' => false,
|
420 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
421 |
-
'priority' => 190,
|
422 |
-
],
|
423 |
-
'v2' => [
|
424 |
-
'name' => 'Digital Agency',
|
425 |
-
'pages' => 'home,about,services,pricing,contact,',
|
426 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
427 |
-
'tags' => 'digital agency company corporate digital services office agency web marketing slider',
|
428 |
-
'theme-builder' => false,
|
429 |
-
'woo-builder' => false,
|
430 |
-
'off-canvas' => false,
|
431 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
432 |
-
'priority' => 200,
|
433 |
-
],
|
434 |
-
],
|
435 |
-
'drone' => [
|
436 |
-
'v1' => [
|
437 |
-
'name' => 'Drone Project',
|
438 |
-
'pages' => 'home,about,gallery,services,contact,',
|
439 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
440 |
-
'tags' => 'drone photography aerial photo ',
|
441 |
-
'theme-builder' => false,
|
442 |
-
'woo-builder' => false,
|
443 |
-
'off-canvas' => false,
|
444 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
445 |
-
'priority' => 210,
|
446 |
-
],
|
447 |
-
],
|
448 |
-
'architecture' => [
|
449 |
-
'v1' => [
|
450 |
-
'name' => 'Architecture 1',
|
451 |
-
'pages' => 'home,about,portfolio,services,faq,contact,',
|
452 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
453 |
-
'tags' => 'architecture company slider interior design designer landscaping office zoning building slider',
|
454 |
-
'theme-builder' => false,
|
455 |
-
'woo-builder' => false,
|
456 |
-
'off-canvas' => false,
|
457 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
458 |
-
'priority' => 220,
|
459 |
-
],
|
460 |
-
'v2' => [
|
461 |
-
'name' => 'Architecture 2',
|
462 |
-
'pages' => 'home,about,projects,services,team,pricing,faq,contact,',
|
463 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
464 |
-
'tags' => 'architecture company slider interior design designer landscaping office zoning building slider architecture commercial construction creative decorations exterior designer home decorations interior designer landscape design modern real-estate residential',
|
465 |
-
'theme-builder' => true,
|
466 |
-
'woo-builder' => false,
|
467 |
-
'off-canvas' => false,
|
468 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
469 |
-
'priority' => 223,
|
470 |
-
],
|
471 |
-
],
|
472 |
-
'fooddelivery' => [
|
473 |
-
'v1' => [
|
474 |
-
'name' => 'Food Delivery',
|
475 |
-
'pages' => 'home,services,blog,faq,contact,',
|
476 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
477 |
-
'tags' => 'fooddelivery fast food chain restaurant service hotel italian pasta pizza pizzeria burger recipes cooking',
|
478 |
-
'theme-builder' => false,
|
479 |
-
'woo-builder' => false,
|
480 |
-
'off-canvas' => false,
|
481 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
482 |
-
'priority' => 230,
|
483 |
-
],
|
484 |
-
],
|
485 |
-
'construction' => [
|
486 |
-
'v1' => [
|
487 |
-
'name' => 'Construction',
|
488 |
-
'pages' => 'home,about,services,projects,pricing,contact,faq,',
|
489 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
490 |
-
'tags' => 'construction architecture company interior office real estate',
|
491 |
-
'theme-builder' => false,
|
492 |
-
'woo-builder' => false,
|
493 |
-
'off-canvas' => false,
|
494 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
495 |
-
'priority' => 240,
|
496 |
-
],
|
497 |
-
],
|
498 |
-
'ittech' => [
|
499 |
-
'v1' => [
|
500 |
-
'name' => 'IT Tech v1',
|
501 |
-
'pages' => 'home,about,services,pricing,faq,contact,',
|
502 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
503 |
-
'tags' => 'ittech advanced technology it technique computer windows technician digital',
|
504 |
-
'theme-builder' => false,
|
505 |
-
'woo-builder' => false,
|
506 |
-
'off-canvas' => false,
|
507 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
508 |
-
'priority' => 5,
|
509 |
-
],
|
510 |
-
'v2' => [
|
511 |
-
'name' => 'IT Tech v2',
|
512 |
-
'pages' => 'home,about,services,pricing,faq,contact,',
|
513 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
514 |
-
'tags' => 'ittech advanced technology it technique computer windows technician digital',
|
515 |
-
'theme-builder' => false,
|
516 |
-
'woo-builder' => false,
|
517 |
-
'off-canvas' => false,
|
518 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
519 |
-
'priority' => 260,
|
520 |
-
],
|
521 |
-
],
|
522 |
-
'carwash' => [
|
523 |
-
'v1' => [
|
524 |
-
'name' => 'Carwash',
|
525 |
-
'pages' => 'home,about,services,contact,',
|
526 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
527 |
-
'tags' => 'vehicle car wash cleaning painting service maintenance care bike motorcycle detailing',
|
528 |
-
'theme-builder' => false,
|
529 |
-
'woo-builder' => false,
|
530 |
-
'off-canvas' => false,
|
531 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
532 |
-
'priority' => 252,
|
533 |
-
],
|
534 |
-
],
|
535 |
-
'realestate' => [
|
536 |
-
'v1' => [
|
537 |
-
'name' => 'Real Estate',
|
538 |
-
'pages' => 'home,properties,about,services,faq,contact,',
|
539 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
540 |
-
'tags' => 'real estate agency company construction property rentals estate sales developers',
|
541 |
-
'theme-builder' => false,
|
542 |
-
'woo-builder' => false,
|
543 |
-
'off-canvas' => false,
|
544 |
-
'price' => $is_pro_active ? 'free' : 'pro',
|
545 |
-
'priority' => 270,
|
546 |
-
],
|
547 |
-
],
|
548 |
-
'restaurant' => [
|
549 |
-
'v1' => [
|
550 |
-
'name' => 'Restaurant',
|
551 |
-
'pages' => 'home,about,gallery,menu,contact,',
|
552 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
553 |
-
'tags' => 'restaurant fastfood slider hotel italian pizza pizzeria pasta dinner fast food wine recipe recipes cooking slider',
|
554 |
-
'theme-builder' => false,
|
555 |
-
'woo-builder' => false,
|
556 |
-
'off-canvas' => false,
|
557 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
558 |
-
'priority' => 280,
|
559 |
-
],
|
560 |
-
],
|
561 |
-
'winebar' => [
|
562 |
-
'v1' => [
|
563 |
-
'name' => 'Wine Bar & Restaurant',
|
564 |
-
'pages' => 'home,story,wines,dishes,events,contact,',
|
565 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
566 |
-
'tags' => 'wine bar winery beer drink alcohol pub events dish wines italian restaurant food slider recipes cooking recipes slider',
|
567 |
-
'theme-builder' => false,
|
568 |
-
'woo-builder' => false,
|
569 |
-
'off-canvas' => false,
|
570 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
571 |
-
'priority' => 290,
|
572 |
-
],
|
573 |
-
],
|
574 |
-
'wedding' => [
|
575 |
-
'v1' => [
|
576 |
-
'name' => 'Wedding',
|
577 |
-
'pages' => 'home,about,services,blog,gallery,contact,',
|
578 |
-
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
579 |
-
'tags' => 'wedding party event slider invitation planner slider photography photographer',
|
580 |
-
'theme-builder' => false,
|
581 |
-
'woo-builder' => false,
|
582 |
-
'off-canvas' => false,
|
583 |
-
'price' => $is_pro_active ? 'free' : 'free',
|
584 |
-
'priority' => 300,
|
585 |
-
],
|
586 |
-
],
|
587 |
-
];
|
588 |
-
}
|
589 |
-
|
590 |
-
public static function get_available_blocks() {
|
591 |
-
return [
|
592 |
-
'grid' => [
|
593 |
-
'v1' => ['type' => 'iframe', 'url' => 'grid/v1/'],
|
594 |
-
'v2' => ['type' => 'iframe', 'url' => 'grid/v2/'],
|
595 |
-
'v3' => ['type' => 'iframe', 'url' => 'grid/v3/'],
|
596 |
-
'v4' => ['type' => 'iframe', 'url' => 'grid/v4/'],
|
597 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'grid/v5/'],
|
598 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'grid/v6/'],
|
599 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'grid/v7/'],
|
600 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'grid/v8/'],
|
601 |
-
'v9-pro' => ['type' => 'iframe', 'url' => 'grid/v9/'],
|
602 |
-
'v10-pro' => ['type' => 'iframe', 'url' => 'grid/v10/'],
|
603 |
-
'v11' => ['type' => 'iframe', 'url' => 'grid/v11/'],
|
604 |
-
'v12' => ['type' => 'iframe', 'url' => 'grid/v12/'],
|
605 |
-
'v13' => ['type' => 'iframe', 'url' => 'grid/v13/'],
|
606 |
-
'v14' => ['type' => 'iframe', 'url' => 'grid/v14/'],
|
607 |
-
],
|
608 |
-
'woo-grid' => [
|
609 |
-
'v1' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v1/'],
|
610 |
-
'v2' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v2/'],
|
611 |
-
'v3-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v3/'],
|
612 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v4/'],
|
613 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v5/'],
|
614 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v6/'],
|
615 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v7/'],
|
616 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v8/'],
|
617 |
-
'v9-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v9/'],
|
618 |
-
],
|
619 |
-
'media-grid' => [
|
620 |
-
'v1' => ['type' => 'iframe', 'url' => 'image-grid/v1/'],
|
621 |
-
'v2' => ['type' => 'iframe', 'url' => 'image-grid/v2/'],
|
622 |
-
],
|
623 |
-
'magazine-grid' => [
|
624 |
-
'v1' => ['type' => 'iframe', 'url' => 'magazine-grid/v1/'],
|
625 |
-
'v2' => ['type' => 'iframe', 'url' => 'magazine-grid/v2/'],
|
626 |
-
// 'v3' => ['type' => 'iframe', 'url' => 'magazine-grid/v3/', 'sub' => 'carousel'], <-- Keep as example
|
627 |
-
'v3-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v3/'],
|
628 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v4/'],
|
629 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v5/'],
|
630 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v6/'],
|
631 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v7/'],
|
632 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v8/'],
|
633 |
-
],
|
634 |
-
'advanced-slider' => [
|
635 |
-
'v1' => ['type' => 'iframe', 'url' => 'advanced-slider/v1/'],
|
636 |
-
'v2' => ['type' => 'iframe', 'url' => 'advanced-slider/v2/'],
|
637 |
-
'v3' => ['type' => 'iframe', 'url' => 'advanced-slider/v3/'],
|
638 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v4/'],
|
639 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v5/'],
|
640 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v6/'],
|
641 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v7/'],
|
642 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v8/'],
|
643 |
-
],
|
644 |
-
'posts-timeline' => [
|
645 |
-
'v1' => ['type' => 'iframe', 'url' => 'timeline/v1/'],
|
646 |
-
'v2' => ['type' => 'iframe', 'url' => 'timeline/v2/'],
|
647 |
-
'v3' => ['type' => 'iframe', 'url' => 'timeline/v3/'],
|
648 |
-
'v4' => ['type' => 'iframe', 'url' => 'timeline/v4/'],
|
649 |
-
'v5' => ['type' => 'iframe', 'url' => 'timeline/v5/'],
|
650 |
-
],
|
651 |
-
'testimonial' => [
|
652 |
-
'v1' => ['type' => 'iframe', 'url' => 'testimonial-slider/v1/'],
|
653 |
-
'v2' => ['type' => 'iframe', 'url' => 'testimonial-slider/v2/'],
|
654 |
-
'v3' => ['type' => 'iframe', 'url' => 'testimonial-slider/v3/'],
|
655 |
-
'v4' => ['type' => 'iframe', 'url' => 'testimonial-slider/v4/'],
|
656 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v5/'],
|
657 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v6/'],
|
658 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v7/'],
|
659 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v8/'],
|
660 |
-
'v9-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v9/'],
|
661 |
-
],
|
662 |
-
'nav-menu' => [
|
663 |
-
'v1' => ['type' => 'iframe', 'url' => 'nav-menu/v1/'],
|
664 |
-
'v2' => ['type' => 'iframe', 'url' => 'nav-menu/v2/'],
|
665 |
-
'v3' => ['type' => 'iframe', 'url' => 'nav-menu/v3/'],
|
666 |
-
'v4' => ['type' => 'iframe', 'url' => 'nav-menu/v4/'],
|
667 |
-
'v5' => ['type' => 'iframe', 'url' => 'nav-menu/v5/'],
|
668 |
-
'v6' => ['type' => 'iframe', 'url' => 'nav-menu/v6/'],
|
669 |
-
],
|
670 |
-
'onepage-nav' => [
|
671 |
-
'v1' => ['type' => 'iframe', 'url' => 'one-page-navigation/v1/'],
|
672 |
-
'v2' => ['type' => 'iframe', 'url' => 'one-page-navigation/v2/'],
|
673 |
-
'v3' => ['type' => 'iframe', 'url' => 'one-page-navigation/v3/'],
|
674 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'one-page-navigation/v4/'],
|
675 |
-
],
|
676 |
-
'pricing-table' => [
|
677 |
-
'v1' => ['type' => 'iframe', 'url' => 'pricing-table/v1/'],
|
678 |
-
'v2' => ['type' => 'iframe', 'url' => 'pricing-table/v2/'],
|
679 |
-
'v3' => ['type' => 'iframe', 'url' => 'pricing-table/v3/'],
|
680 |
-
'v4' => ['type' => 'iframe', 'url' => 'pricing-table/v4/'],
|
681 |
-
'v5' => ['type' => 'iframe', 'url' => 'pricing-table/v5/'],
|
682 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'pricing-table/v6/'],
|
683 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'pricing-table/v7/'],
|
684 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'pricing-table/v8/'],
|
685 |
-
],
|
686 |
-
'content-toggle' => [
|
687 |
-
'v1' => ['type' => 'iframe', 'url' => 'content-toggle/v1/'],
|
688 |
-
'v2' => ['type' => 'iframe', 'url' => 'content-toggle/v2/'],
|
689 |
-
'v3-pro' => ['type' => 'iframe', 'url' => 'content-toggle/v3/'],
|
690 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'content-toggle/v4/'],
|
691 |
-
],
|
692 |
-
'data-table' => [
|
693 |
-
'v1' => ['type' => 'iframe', 'url' => 'data-table/v1/'],
|
694 |
-
'v2' => ['type' => 'iframe', 'url' => 'data-table/v2/'],
|
695 |
-
'v3' => ['type' => 'iframe', 'url' => 'data-table/v3/'],
|
696 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'data-table/v4/'],
|
697 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'data-table/v5/'],
|
698 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'data-table/v6/'],
|
699 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'data-table/v7/'],
|
700 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'data-table/v8/'],
|
701 |
-
],
|
702 |
-
'countdown' => [
|
703 |
-
'v1' => ['type' => 'iframe', 'url' => 'countdown/v1/'],
|
704 |
-
'v2' => ['type' => 'iframe', 'url' => 'countdown/v2/'],
|
705 |
-
'v3' => ['type' => 'iframe', 'url' => 'countdown/v3/'],
|
706 |
-
],
|
707 |
-
'progress-bar' => [
|
708 |
-
'v1' => ['type' => 'iframe', 'url' => 'progress-bar/v1/'],
|
709 |
-
'v2' => ['type' => 'iframe', 'url' => 'progress-bar/v2/'],
|
710 |
-
'v3' => ['type' => 'iframe', 'url' => 'progress-bar/v3/'],
|
711 |
-
],
|
712 |
-
'tabs' => [
|
713 |
-
'v1' => ['type' => 'iframe', 'url' => 'tabs/v1/'],
|
714 |
-
'v2' => ['type' => 'iframe', 'url' => 'tabs/v2/'],
|
715 |
-
'v3' => ['type' => 'iframe', 'url' => 'tabs/v3/'],
|
716 |
-
],
|
717 |
-
'advanced-text' => [
|
718 |
-
'v1' => ['type' => 'iframe', 'url' => 'advanced-text/v1/'],
|
719 |
-
'v2' => ['type' => 'iframe', 'url' => 'advanced-text/v2/'],
|
720 |
-
'v3' => ['type' => 'iframe', 'url' => 'advanced-text/v3/'],
|
721 |
-
'v4' => ['type' => 'iframe', 'url' => 'advanced-text/v4/'],
|
722 |
-
'v5' => ['type' => 'iframe', 'url' => 'advanced-text/v5/'],
|
723 |
-
'v6' => ['type' => 'iframe', 'url' => 'advanced-text/v6/'],
|
724 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v7/'],
|
725 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v8/'],
|
726 |
-
'v9-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v9/'],
|
727 |
-
'v10-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v10/'],
|
728 |
-
'v11-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v11/'],
|
729 |
-
'v12-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v12/'],
|
730 |
-
],
|
731 |
-
'flip-box' => [
|
732 |
-
'v1' => ['type' => 'iframe', 'url' => 'flip-box/v1/'],
|
733 |
-
'v2' => ['type' => 'iframe', 'url' => 'flip-box/v2/'],
|
734 |
-
'v3' => ['type' => 'iframe', 'url' => 'flip-box/v3/'],
|
735 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'flip-box/v4/'],
|
736 |
-
],
|
737 |
-
'promo-box' => [
|
738 |
-
'v1' => ['type' => 'iframe', 'url' => 'promo-box/v1/'],
|
739 |
-
'v2' => ['type' => 'iframe', 'url' => 'promo-box/v2/'],
|
740 |
-
'v3' => ['type' => 'iframe', 'url' => 'promo-box/v3/'],
|
741 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'promo-box/v4/'],
|
742 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'promo-box/v5/'],
|
743 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'promo-box/v6/'],
|
744 |
-
],
|
745 |
-
'before-after' => [
|
746 |
-
'v1' => ['type' => 'iframe', 'url' => 'before-and-after/v1/'],
|
747 |
-
'v2' => ['type' => 'iframe', 'url' => 'before-and-after/v2/'],
|
748 |
-
'v3' => ['type' => 'iframe', 'url' => 'before-and-after/v3/'],
|
749 |
-
],
|
750 |
-
'image-hotspots' => [
|
751 |
-
'v1' => ['type' => 'iframe', 'url' => 'image-hotspot/v1/'],
|
752 |
-
'v2' => ['type' => 'iframe', 'url' => 'image-hotspot/v2/'],
|
753 |
-
'v3' => ['type' => 'iframe', 'url' => 'image-hotspot/v3/'],
|
754 |
-
],
|
755 |
-
'forms' => [],
|
756 |
-
'mailchimp' => [
|
757 |
-
'v1' => ['type' => 'iframe', 'url' => 'mailchimp/v1/'],
|
758 |
-
'v2' => ['type' => 'iframe', 'url' => 'mailchimp/v2/'],
|
759 |
-
'v3' => ['type' => 'iframe', 'url' => 'mailchimp/v3/'],
|
760 |
-
'v4' => ['type' => 'iframe', 'url' => 'mailchimp/v4/'],
|
761 |
-
'v5' => ['type' => 'iframe', 'url' => 'mailchimp/v5/'],
|
762 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'mailchimp/v6/'],
|
763 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'mailchimp/v7/'],
|
764 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'mailchimp/v8/'],
|
765 |
-
],
|
766 |
-
'content-ticker' => [
|
767 |
-
'v1' => ['type' => 'iframe', 'url' => 'content-ticker/v1/'],
|
768 |
-
'v2' => ['type' => 'iframe', 'url' => 'content-ticker/v2/'],
|
769 |
-
'v3' => ['type' => 'iframe', 'url' => 'content-ticker/v3/'],
|
770 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'content-ticker/v4/'],
|
771 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'content-ticker/v5/'],
|
772 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'content-ticker/v6/'],
|
773 |
-
],
|
774 |
-
'button' => [
|
775 |
-
'v1' => ['type' => 'iframe', 'url' => 'button/v1/'],
|
776 |
-
'v2' => ['type' => 'iframe', 'url' => 'button/v2/'],
|
777 |
-
'v3' => ['type' => 'iframe', 'url' => 'button/v3/'],
|
778 |
-
'v4' => ['type' => 'iframe', 'url' => 'button/v4/'],
|
779 |
-
'v5' => ['type' => 'iframe', 'url' => 'button/v5/'],
|
780 |
-
],
|
781 |
-
'dual-button' => [
|
782 |
-
'v1' => ['type' => 'iframe', 'url' => 'dual-button/v1/'],
|
783 |
-
'v2' => ['type' => 'iframe', 'url' => 'dual-button/v2/'],
|
784 |
-
'v3' => ['type' => 'iframe', 'url' => 'dual-button/v3/'],
|
785 |
-
],
|
786 |
-
'team-member' => [
|
787 |
-
'v1' => ['type' => 'iframe', 'url' => 'team-member/v1/'],
|
788 |
-
'v2' => ['type' => 'iframe', 'url' => 'team-member/v2/'],
|
789 |
-
'v3' => ['type' => 'iframe', 'url' => 'team-member/v3/'],
|
790 |
-
'v4' => ['type' => 'iframe', 'url' => 'team-member/v4/'],
|
791 |
-
'v5' => ['type' => 'iframe', 'url' => 'team-member/v5/'],
|
792 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'team-member/v6/'],
|
793 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'team-member/v7/'],
|
794 |
-
'v8-pro' => ['type' => 'iframe', 'url' => 'team-member/v8/'],
|
795 |
-
],
|
796 |
-
'google-maps' => [
|
797 |
-
'v1' => ['type' => 'iframe', 'url' => 'google-map/v1/'],
|
798 |
-
'v2' => ['type' => 'iframe', 'url' => 'google-map/v2/'],
|
799 |
-
'v3' => ['type' => 'iframe', 'url' => 'google-map/v3/'],
|
800 |
-
'v4' => ['type' => 'iframe', 'url' => 'google-map/v4/'],
|
801 |
-
'v5' => ['type' => 'iframe', 'url' => 'google-map/v5/'],
|
802 |
-
],
|
803 |
-
'price-list' => [
|
804 |
-
'v1' => ['type' => 'iframe', 'url' => 'price-list/v1/'],
|
805 |
-
'v2' => ['type' => 'iframe', 'url' => 'price-list/v2/'],
|
806 |
-
'v3' => ['type' => 'iframe', 'url' => 'price-list/v3/'],
|
807 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'price-list/v4/'],
|
808 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'price-list/v5/'],
|
809 |
-
'v6-pro' => ['type' => 'iframe', 'url' => 'price-list/v6/'],
|
810 |
-
'v7-pro' => ['type' => 'iframe', 'url' => 'price-list/v7/'],
|
811 |
-
],
|
812 |
-
'business-hours' => [
|
813 |
-
'v1' => ['type' => 'iframe', 'url' => 'business-hours/v1/'],
|
814 |
-
'v2' => ['type' => 'iframe', 'url' => 'business-hours/v2/'],
|
815 |
-
'v3' => ['type' => 'iframe', 'url' => 'business-hours/v3/'],
|
816 |
-
],
|
817 |
-
'sharing-buttons' => [
|
818 |
-
'v1' => ['type' => 'iframe', 'url' => 'sharing-button/v1/'],
|
819 |
-
'v2' => ['type' => 'iframe', 'url' => 'sharing-button/v2/'],
|
820 |
-
'v3' => ['type' => 'iframe', 'url' => 'sharing-button/v3/'],
|
821 |
-
'v4-pro' => ['type' => 'iframe', 'url' => 'sharing-button/v4/'],
|
822 |
-
'v5-pro' => ['type' => 'iframe', 'url' => 'sharing-button/v5/'],
|
823 |
-
],
|
824 |
-
'logo' => [],
|
825 |
-
'search' => [
|
826 |
-
'v1' => ['type' => 'iframe', 'url' => 'search/v1/'],
|
827 |
-
'v2' => ['type' => 'iframe', 'url' => 'search/v2/'],
|
828 |
-
'v3' => ['type' => 'iframe', 'url' => 'search/v3/'],
|
829 |
-
],
|
830 |
-
'phone-call' => [],
|
831 |
-
'back-to-top' => [],
|
832 |
-
'lottie-animations' => [],
|
833 |
-
'popup-trigger' => [],
|
834 |
-
];
|
835 |
-
}
|
836 |
-
|
837 |
-
public static function get_available_popups() {
|
838 |
-
return [
|
839 |
-
// 'contact' => [
|
840 |
-
// 'v1' => ['type' => 'iframe', 'url' => 'search/v1/'],
|
841 |
-
// 'v2' => ['type' => 'iframe', 'url' => 'search/v2/'],
|
842 |
-
// 'v3' => ['type' => 'iframe', 'url' => 'search/v3/'],
|
843 |
-
// ],
|
844 |
-
'cookie' => [
|
845 |
-
'v1' => ['type' => 'image', 'url' => 'popups/cookie/v1-preview.jpg'],
|
846 |
-
'v2-pro' => ['type' => 'image', 'url' => 'popups/cookie/v2-pro-preview.jpg'],
|
847 |
-
'v3-pro' => ['type' => 'image', 'url' => 'popups/cookie/v3-pro-preview.jpg'],
|
848 |
-
'v4-pro' => ['type' => 'image', 'url' => 'popups/cookie/v4-pro-preview.jpg'],
|
849 |
-
],
|
850 |
-
'discount' => [
|
851 |
-
'v1' => ['type' => 'image', 'url' => 'popups/discount/v1-preview.jpg'],
|
852 |
-
'v2' => ['type' => 'image', 'url' => 'popups/discount/v2-preview.jpg'],
|
853 |
-
'v3-pro' => ['type' => 'image', 'url' => 'popups/discount/v3-pro-preview.jpg'],
|
854 |
-
'v4-pro' => ['type' => 'image', 'url' => 'popups/discount/v4-pro-preview.jpg'],
|
855 |
-
'v5' => ['type' => 'image', 'url' => 'popups/discount/v5-preview.jpg'],
|
856 |
-
'v6' => ['type' => 'image', 'url' => 'popups/discount/v6-preview.jpg'],
|
857 |
-
'v7-pro' => ['type' => 'image', 'url' => 'popups/discount/v7-pro-preview.jpg'],
|
858 |
-
'v8-pro' => ['type' => 'image', 'url' => 'popups/discount/v8-pro-preview.jpg'],
|
859 |
-
'v9' => ['type' => 'image', 'url' => 'popups/discount/v9-preview.jpg'],
|
860 |
-
'v10' => ['type' => 'image', 'url' => 'popups/discount/v10-preview.jpg'],
|
861 |
-
'v11-pro' => ['type' => 'image', 'url' => 'popups/discount/v11-pro-preview.jpg'],
|
862 |
-
'v12-pro' => ['type' => 'image', 'url' => 'popups/discount/v12-pro-preview.jpg'],
|
863 |
-
'v13-pro' => ['type' => 'image', 'url' => 'popups/discount/v13-pro-preview.jpg'],
|
864 |
-
'v14' => ['type' => 'image', 'url' => 'popups/discount/v14-preview.jpg'],
|
865 |
-
'v15' => ['type' => 'image', 'url' => 'popups/discount/v15-preview.jpg'],
|
866 |
-
'v16-pro' => ['type' => 'image', 'url' => 'popups/discount/v16-pro-preview.jpg'],
|
867 |
-
],
|
868 |
-
'subscribe' => [
|
869 |
-
'v1-pro' => ['type' => 'image', 'url' => 'popups/subscribe/v1-pro-preview.jpg'],
|
870 |
-
'v2-pro' => ['type' => 'image', 'url' => 'popups/subscribe/v2-pro-preview.jpg'],
|
871 |
-
'v3-pro' => ['type' => 'image', 'url' => 'popups/subscribe/v3-pro-preview.jpg'],
|
872 |
-
],
|
873 |
-
'yesno' => [
|
874 |
-
'v1-pro' => ['type' => 'image', 'url' => 'popups/yesno/v1-pro-preview.jpg'],
|
875 |
-
'v2-pro' => ['type' => 'image', 'url' => 'popups/yesno/v2-pro-preview.jpg'],
|
876 |
-
'v3-pro' => ['type' => 'image', 'url' => 'popups/yesno/v3-pro-preview.jpg'],
|
877 |
-
],
|
878 |
-
];
|
879 |
-
}
|
880 |
}
|
1 |
+
<?php
|
2 |
+
namespace WprAddons\Admin\Templates;
|
3 |
+
|
4 |
+
use WprAddons\Plugin;
|
5 |
+
|
6 |
+
if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly
|
7 |
+
|
8 |
+
class WPR_Templates_Data {
|
9 |
+
public static function get_available_kits() {
|
10 |
+
$is_pro_active = wpr_fs()->can_use_premium_code() && defined('WPR_ADDONS_PRO_VERSION');
|
11 |
+
$is_cf7_active = is_plugin_active('contact-form-7/wp-contact-form-7.php') ? 'true' : 'false';
|
12 |
+
$is_mla_active = is_plugin_active('media-library-assistant/index.php') ? 'true' : 'false';
|
13 |
+
$is_woo_active = is_plugin_active('woocommerce/woocommerce.php') ? 'true' : 'false';
|
14 |
+
|
15 |
+
return [
|
16 |
+
'grocery-store' => [
|
17 |
+
'v1' => [
|
18 |
+
'name' => 'Grocery Store',
|
19 |
+
'pages' => 'home,shop,single-product,my-account,about,contact,',
|
20 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
21 |
+
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce product online eshopping market reseller ecommerce shop',
|
22 |
+
'theme-builder' => false,
|
23 |
+
'woo-builder' => true,
|
24 |
+
'off-canvas' => false,
|
25 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
26 |
+
'priority' => 4,
|
27 |
+
],
|
28 |
+
],
|
29 |
+
'furniture-shop' => [
|
30 |
+
'v1' => [
|
31 |
+
'name' => 'Furniture Shop',
|
32 |
+
'pages' => 'home,shop-v1,shop-v2,single-product,my-account,about,contact,',
|
33 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
34 |
+
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce product online furniture home office eshopping market reseller ecommerce shop ',
|
35 |
+
'theme-builder' => false,
|
36 |
+
'woo-builder' => true,
|
37 |
+
'off-canvas' => true,
|
38 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
39 |
+
'priority' => 5,
|
40 |
+
],
|
41 |
+
],
|
42 |
+
'estore' => [
|
43 |
+
'v1' => [
|
44 |
+
'name' => 'Electronic Store',
|
45 |
+
'pages' => 'home,shop,single-product,blog,faq,about,contact,',
|
46 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
47 |
+
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce product online market reseller ecommerce shop gadget iphone phone electronic ',
|
48 |
+
'theme-builder' => true,
|
49 |
+
'woo-builder' => true,
|
50 |
+
'off-canvas' => false,
|
51 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
52 |
+
'priority' => 4,
|
53 |
+
],
|
54 |
+
],
|
55 |
+
'woo-food' => [
|
56 |
+
'v1' => [
|
57 |
+
'name' => 'Food Delivery',
|
58 |
+
'pages' => 'home,home-v2,food,single-product,about,contact,faq,blog,',
|
59 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
60 |
+
'tags' => 'shop woo-commerce woocommerce ecommerce product online eshopping market ecommerce shop food delivery restaurant fast food pizzeria burger recipes cooking pizza restaurant snack',
|
61 |
+
'theme-builder' => true,
|
62 |
+
'woo-builder' => true,
|
63 |
+
'off-canvas' => false,
|
64 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
65 |
+
'priority' => 144,
|
66 |
+
],
|
67 |
+
],
|
68 |
+
'fashion' => [
|
69 |
+
'v1' => [
|
70 |
+
'name' => 'Fashion',
|
71 |
+
'pages' => 'home,shop-v1,shop-v2,single-product,blog,my-account,about,faq,contact,',
|
72 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
73 |
+
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce product ecommerce shop online boutique clothes eshopping fashion designer market reseller digital purchases',
|
74 |
+
'theme-builder' => true,
|
75 |
+
'woo-builder' => true,
|
76 |
+
'off-canvas' => false,
|
77 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
78 |
+
'priority' => 2,
|
79 |
+
],
|
80 |
+
],
|
81 |
+
'wooshop' => [
|
82 |
+
'v1' => [
|
83 |
+
'name' => 'Woo Shop',
|
84 |
+
'pages' => 'home,shop,single-product,about,contact,',
|
85 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .',"woocommerce":'. $is_woo_active .'}',
|
86 |
+
'tags' => 'shop shopping woo-commerce woocommerce estore ecommerce shop ecommerce product online shop online store boutique clothes eshopping fashion designer market reseller digital purchases',
|
87 |
+
'theme-builder' => false,
|
88 |
+
'woo-builder' => true,
|
89 |
+
'off-canvas' => false,
|
90 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
91 |
+
'priority' => 3,
|
92 |
+
],
|
93 |
+
],
|
94 |
+
'personal-blog' => [
|
95 |
+
'v1' => [
|
96 |
+
'name' => 'Personal Blog',
|
97 |
+
'pages' => 'home,home-v1,home-v2,home-v3,lifestyle,about,contact,',
|
98 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
99 |
+
'tags' => 'blog blogger posts personal blog lifestyle blogger theme builder grid slider news',
|
100 |
+
'theme-builder' => true,
|
101 |
+
'woo-builder' => false,
|
102 |
+
'off-canvas' => false,
|
103 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
104 |
+
'priority' => 2,
|
105 |
+
],
|
106 |
+
'v2' => [
|
107 |
+
'name' => 'Personal Blog',
|
108 |
+
'pages' => 'home,single,category,about,contact,',
|
109 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
110 |
+
'tags' => 'blog blogger posts personal blog lifestyle blogger theme builder grid slider news',
|
111 |
+
'theme-builder' => true,
|
112 |
+
'woo-builder' => false,
|
113 |
+
'off-canvas' => false,
|
114 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
115 |
+
'priority' => 4,
|
116 |
+
],
|
117 |
+
],
|
118 |
+
'food-blog' => [
|
119 |
+
'v1' => [
|
120 |
+
'name' => 'Food Blog',
|
121 |
+
'pages' => 'home,home-v1,home-v2,home-v3,category,about,contact,',
|
122 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
123 |
+
'tags' => 'food blog posts food blogger theme builder recipes cooking grid slider',
|
124 |
+
'theme-builder' => true,
|
125 |
+
'woo-builder' => false,
|
126 |
+
'off-canvas' => false,
|
127 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
128 |
+
'priority' => 20,
|
129 |
+
],
|
130 |
+
],
|
131 |
+
'magazine-blog' => [
|
132 |
+
'v1' => [
|
133 |
+
'name' => 'Magazine Blog',
|
134 |
+
'pages' => 'home,home-v1,home-v2,category,about,contact,',
|
135 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
136 |
+
'tags' => 'blogger blog posts content news newspaper journal magazine business blog publishing theme builder sports grid slider',
|
137 |
+
'theme-builder' => true,
|
138 |
+
'woo-builder' => false,
|
139 |
+
'off-canvas' => false,
|
140 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
141 |
+
'priority' => 6,
|
142 |
+
],
|
143 |
+
'v2' => [
|
144 |
+
'name' => 'Magazine Blog',
|
145 |
+
'pages' => 'home,home-v1,home-v2,category,about,contact,',
|
146 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
147 |
+
'tags' => 'blogger blog posts content news newspaper journal magazine business blog publishing theme builder sports grid slider',
|
148 |
+
'theme-builder' => true,
|
149 |
+
'woo-builder' => false,
|
150 |
+
'off-canvas' => false,
|
151 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
152 |
+
'priority' => 50,
|
153 |
+
],
|
154 |
+
'v3' => [
|
155 |
+
'name' => 'Magazine Blog',
|
156 |
+
'pages' => 'home,category,about,contact,',
|
157 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
158 |
+
'tags' => 'blogger blog posts content news newspaper journal magazine business blog publishing theme builder sports grid slider',
|
159 |
+
'theme-builder' => true,
|
160 |
+
'woo-builder' => false,
|
161 |
+
'off-canvas' => false,
|
162 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
163 |
+
'priority' => 30,
|
164 |
+
],
|
165 |
+
],
|
166 |
+
'nature' => [
|
167 |
+
'v1' => [
|
168 |
+
'name' => 'nature',
|
169 |
+
'pages' => 'home,about,services,projects,contact,',
|
170 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
171 |
+
'tags' => 'nature influencer travel blogger blog content slider tourism influencers creator travel forest slider generic multipurpose national-park nature-park sanctuary wilderness hitchhiking mountain river lakes outdoors',
|
172 |
+
'theme-builder' => true,
|
173 |
+
'woo-builder' => false,
|
174 |
+
'off-canvas' => false,
|
175 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
176 |
+
'priority' => 60,
|
177 |
+
],
|
178 |
+
],
|
179 |
+
'travel-agency' => [
|
180 |
+
'v1' => [
|
181 |
+
'name' => 'Travel agency',
|
182 |
+
'pages' => 'home,tours,gallery,services,reviews,about,contact,',
|
183 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
184 |
+
'tags' => 'nature influencer travel blogger blog content slider tourism influencers creator travel forest slider generic multipurpose national-park nature-park sanctuary wilderness hitchhiking mountain river lakes outdoors travel agency company office travel services',
|
185 |
+
'theme-builder' => true,
|
186 |
+
'woo-builder' => false,
|
187 |
+
'off-canvas' => false,
|
188 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
189 |
+
'priority' => 61,
|
190 |
+
],
|
191 |
+
],
|
192 |
+
'digital-marketing-agency' => [
|
193 |
+
'v1' => [
|
194 |
+
'name' => 'Digital Marketing Agency',
|
195 |
+
'pages' => 'home,seo,branding,marketing,social,blog,about,contact,',
|
196 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
197 |
+
'tags' => 'digital agency company corporate digital services office agency web digital marketing seo social media branding',
|
198 |
+
'theme-builder' => true,
|
199 |
+
'woo-builder' => false,
|
200 |
+
'off-canvas' => false,
|
201 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
202 |
+
'priority' => 1,
|
203 |
+
],
|
204 |
+
],
|
205 |
+
'digital-agency-dark' => [
|
206 |
+
'v1' => [
|
207 |
+
'name' => 'Digital Agency Dark',
|
208 |
+
'pages' => 'home,about,services,team,portfolio,blog,contact,',
|
209 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .', "media-library-assistant":'. $is_mla_active .'}',
|
210 |
+
'tags' => 'digital agency company corporate digital services office agency web digital marketing seo social media branding dark black',
|
211 |
+
'theme-builder' => true,
|
212 |
+
'woo-builder' => false,
|
213 |
+
'off-canvas' => false,
|
214 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
215 |
+
'priority' => 3,
|
216 |
+
],
|
217 |
+
],
|
218 |
+
'one-page' => [
|
219 |
+
'v1' => [
|
220 |
+
'name' => 'OnePage - Digital Marketing Agency',
|
221 |
+
'pages' => 'home,blog,',
|
222 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .', "media-library-assistant":'. $is_mla_active .'}',
|
223 |
+
'tags' => 'digital agency company corporate digital services office agency web digital marketing seo social media branding one page onepage one pages parallax single page',
|
224 |
+
'theme-builder' => true,
|
225 |
+
'woo-builder' => false,
|
226 |
+
'off-canvas' => false,
|
227 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
228 |
+
'priority' => 7,
|
229 |
+
],
|
230 |
+
],
|
231 |
+
'travel-blog' => [
|
232 |
+
'v1' => [
|
233 |
+
'name' => 'Travel Blog',
|
234 |
+
'pages' => 'home,home-v1,home-v2,category,about,contact,',
|
235 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
236 |
+
'tags' => 'nature influencer travel blogger blog posts content tourism influencers creator travel forest slider generic multipurpose national-park nature-park sanctuary wilderness slider hitchhiking mountain river lakes outdoors theme builder traveler hiking grid',
|
237 |
+
'theme-builder' => true,
|
238 |
+
'woo-builder' => false,
|
239 |
+
'off-canvas' => false,
|
240 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
241 |
+
'priority' => 71,
|
242 |
+
],
|
243 |
+
],
|
244 |
+
'portfolio' => [
|
245 |
+
'v1' => [
|
246 |
+
'name' => 'Portfolio/CV',
|
247 |
+
'pages' => 'home,about,portfolio,contact,',
|
248 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
249 |
+
'tags' => 'portfolio personal cv designer ux artist artwork personal resume photographer grid',
|
250 |
+
'theme-builder' => false,
|
251 |
+
'woo-builder' => false,
|
252 |
+
'off-canvas' => false,
|
253 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
254 |
+
'priority' => 80,
|
255 |
+
],
|
256 |
+
],
|
257 |
+
'nft-portfolio' => [
|
258 |
+
'v1' => [
|
259 |
+
'name' => 'NFT',
|
260 |
+
'pages' => 'home,about,blog,roadmap,team,nft,faq,comingsoon,',
|
261 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
262 |
+
'tags' => 'portfolio blockchain nft crypto collection minting listing metavers digital currency art',
|
263 |
+
'theme-builder' => false,
|
264 |
+
'woo-builder' => false,
|
265 |
+
'off-canvas' => false,
|
266 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
267 |
+
'priority' => 81,
|
268 |
+
],
|
269 |
+
],
|
270 |
+
'pizza' => [
|
271 |
+
'v1' => [
|
272 |
+
'name' => 'Pizza Restaurant',
|
273 |
+
'pages' => 'home,menu,about,offer,gallery,contact,',
|
274 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
275 |
+
'tags' => 'pizza italian restaurant food slider pasta fastfood fast food recipes cooking slider',
|
276 |
+
'theme-builder' => false,
|
277 |
+
'woo-builder' => false,
|
278 |
+
'off-canvas' => false,
|
279 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
280 |
+
'priority' => 90,
|
281 |
+
],
|
282 |
+
],
|
283 |
+
'pet-care' => [
|
284 |
+
'v1' => [
|
285 |
+
'name' => 'Pet Care',
|
286 |
+
'pages' => 'home,about,services,reviews,contact,',
|
287 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
288 |
+
'tags' => 'pet care dog care grooming pet minding pet sitting pet training pet walking cat animal dogs dog training',
|
289 |
+
'theme-builder' => false,
|
290 |
+
'woo-builder' => false,
|
291 |
+
'off-canvas' => false,
|
292 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
293 |
+
'priority' => 91,
|
294 |
+
],
|
295 |
+
],
|
296 |
+
'travel' => [
|
297 |
+
'v1' => [
|
298 |
+
'name' => 'Travel Blogger & Influencer',
|
299 |
+
'pages' => 'home,about,stories,contact,',
|
300 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
301 |
+
'tags' => 'nature influencer travel blogger blog content tourism influencers creator travel forest slider generic multipurpose national-park nature-park sanctuary wilderness hitchhiking mountain river lakes outdoors',
|
302 |
+
'theme-builder' => false,
|
303 |
+
'woo-builder' => false,
|
304 |
+
'off-canvas' => false,
|
305 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
306 |
+
'priority' => 100,
|
307 |
+
],
|
308 |
+
],
|
309 |
+
'cybersecurity' => [
|
310 |
+
'v1' => [
|
311 |
+
'name' => 'Cybersecurity',
|
312 |
+
'pages' => 'home,about,services,pricing,contact,',
|
313 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
314 |
+
'tags' => 'cybersecurity data protection hacker security dark digital technology cybercrime computer windows technician',
|
315 |
+
'theme-builder' => false,
|
316 |
+
'woo-builder' => false,
|
317 |
+
'off-canvas' => false,
|
318 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
319 |
+
'priority' => 110,
|
320 |
+
],
|
321 |
+
],
|
322 |
+
'charity' => [
|
323 |
+
'v1' => [
|
324 |
+
'name' => 'Charity',
|
325 |
+
'pages' => 'home,home-v1,contact,whatwedo,whoweare,partners,',
|
326 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
327 |
+
'tags' => 'charity donate church foundation giving non-profit organization kids charity help children save life donation fundrising ngo fundraising corona fundraising nonprofit non profit',
|
328 |
+
'theme-builder' => false,
|
329 |
+
'woo-builder' => false,
|
330 |
+
'off-canvas' => false,
|
331 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
332 |
+
'priority' => 111,
|
333 |
+
],
|
334 |
+
],
|
335 |
+
'photographer' => [
|
336 |
+
'v1' => [
|
337 |
+
'name' => 'Photographer Portfolio Dark',
|
338 |
+
'pages' => 'home,about,services,portfolio,contact,',
|
339 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .', "media-library-assistant":'. $is_mla_active .'}',
|
340 |
+
'tags' => 'portfolio personal cv designer ux artist artwork personal resume camera fashion lens modelling photographer photography videography wedding shoot grid ',
|
341 |
+
'theme-builder' => false,
|
342 |
+
'woo-builder' => false,
|
343 |
+
'off-canvas' => false,
|
344 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
345 |
+
'priority' => 120,
|
346 |
+
],
|
347 |
+
'v2' => [
|
348 |
+
'name' => 'Photographer Portfolio Light',
|
349 |
+
'pages' => 'home,about,services,portfolio,contact,',
|
350 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .', "media-library-assistant":'. $is_mla_active .'}',
|
351 |
+
'tags' => 'portfolio personal cv designer ux artist artwork personal resume camera fashion lens modelling photographer photography videography wedding shoot grid ',
|
352 |
+
'theme-builder' => false,
|
353 |
+
'woo-builder' => false,
|
354 |
+
'off-canvas' => false,
|
355 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
356 |
+
'priority' => 130,
|
357 |
+
],
|
358 |
+
],
|
359 |
+
'cryptocurrency' => [
|
360 |
+
'v1' => [
|
361 |
+
'name' => 'Cryptocurrency',
|
362 |
+
'pages' => 'home,about,services,token,pricing,contact,',
|
363 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
364 |
+
'tags' => 'cryptocurrency bitcoin ethereum etherium blockchain protection nft coin corporate crypto dark startup token digital',
|
365 |
+
'theme-builder' => false,
|
366 |
+
'woo-builder' => false,
|
367 |
+
'off-canvas' => false,
|
368 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
369 |
+
'priority' => 150,
|
370 |
+
],
|
371 |
+
],
|
372 |
+
'skincare' => [
|
373 |
+
'v1' => [
|
374 |
+
'name' => 'Skin Care',
|
375 |
+
'pages' => 'home,about,services,procedures,gallery,pricing,contact,',
|
376 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
377 |
+
'tags' => 'skincare skin care beauty clean face skin-beauty health wellness',
|
378 |
+
'theme-builder' => false,
|
379 |
+
'woo-builder' => false,
|
380 |
+
'off-canvas' => false,
|
381 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
382 |
+
'priority' => 160,
|
383 |
+
],
|
384 |
+
],
|
385 |
+
'lawyer' => [
|
386 |
+
'v1' => [
|
387 |
+
'name' => 'Lawyer',
|
388 |
+
'pages' => 'home,practice,faq,reviews,attorney,contact,',
|
389 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
390 |
+
'tags' => 'lawyers criminal defence lawyer firm divorce lawyer family lawyer law legal firm ',
|
391 |
+
'theme-builder' => false,
|
392 |
+
'woo-builder' => false,
|
393 |
+
'off-canvas' => false,
|
394 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
395 |
+
'priority' => 170,
|
396 |
+
],
|
397 |
+
],
|
398 |
+
'medical' => [
|
399 |
+
'v1' => [
|
400 |
+
'name' => 'Medical',
|
401 |
+
'pages' => 'home,about,services,doctors,contact,',
|
402 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
403 |
+
'tags' => 'medical clinic dental health healthcare doctor therapist wellness treatment cure',
|
404 |
+
'theme-builder' => false,
|
405 |
+
'woo-builder' => false,
|
406 |
+
'off-canvas' => false,
|
407 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
408 |
+
'priority' => 180,
|
409 |
+
],
|
410 |
+
],
|
411 |
+
'digitalagency' => [
|
412 |
+
'v1' => [
|
413 |
+
'name' => 'Digital Agency',
|
414 |
+
'pages' => 'home,about,services,contact,',
|
415 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
416 |
+
'tags' => 'digital agency company corporate digital services office agency web marketing',
|
417 |
+
'theme-builder' => false,
|
418 |
+
'woo-builder' => false,
|
419 |
+
'off-canvas' => false,
|
420 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
421 |
+
'priority' => 190,
|
422 |
+
],
|
423 |
+
'v2' => [
|
424 |
+
'name' => 'Digital Agency',
|
425 |
+
'pages' => 'home,about,services,pricing,contact,',
|
426 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
427 |
+
'tags' => 'digital agency company corporate digital services office agency web marketing slider',
|
428 |
+
'theme-builder' => false,
|
429 |
+
'woo-builder' => false,
|
430 |
+
'off-canvas' => false,
|
431 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
432 |
+
'priority' => 200,
|
433 |
+
],
|
434 |
+
],
|
435 |
+
'drone' => [
|
436 |
+
'v1' => [
|
437 |
+
'name' => 'Drone Project',
|
438 |
+
'pages' => 'home,about,gallery,services,contact,',
|
439 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
440 |
+
'tags' => 'drone photography aerial photo ',
|
441 |
+
'theme-builder' => false,
|
442 |
+
'woo-builder' => false,
|
443 |
+
'off-canvas' => false,
|
444 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
445 |
+
'priority' => 210,
|
446 |
+
],
|
447 |
+
],
|
448 |
+
'architecture' => [
|
449 |
+
'v1' => [
|
450 |
+
'name' => 'Architecture 1',
|
451 |
+
'pages' => 'home,about,portfolio,services,faq,contact,',
|
452 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
453 |
+
'tags' => 'architecture company slider interior design designer landscaping office zoning building slider',
|
454 |
+
'theme-builder' => false,
|
455 |
+
'woo-builder' => false,
|
456 |
+
'off-canvas' => false,
|
457 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
458 |
+
'priority' => 220,
|
459 |
+
],
|
460 |
+
'v2' => [
|
461 |
+
'name' => 'Architecture 2',
|
462 |
+
'pages' => 'home,about,projects,services,team,pricing,faq,contact,',
|
463 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
464 |
+
'tags' => 'architecture company slider interior design designer landscaping office zoning building slider architecture commercial construction creative decorations exterior designer home decorations interior designer landscape design modern real-estate residential',
|
465 |
+
'theme-builder' => true,
|
466 |
+
'woo-builder' => false,
|
467 |
+
'off-canvas' => false,
|
468 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
469 |
+
'priority' => 223,
|
470 |
+
],
|
471 |
+
],
|
472 |
+
'fooddelivery' => [
|
473 |
+
'v1' => [
|
474 |
+
'name' => 'Food Delivery',
|
475 |
+
'pages' => 'home,services,blog,faq,contact,',
|
476 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
477 |
+
'tags' => 'fooddelivery fast food chain restaurant service hotel italian pasta pizza pizzeria burger recipes cooking',
|
478 |
+
'theme-builder' => false,
|
479 |
+
'woo-builder' => false,
|
480 |
+
'off-canvas' => false,
|
481 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
482 |
+
'priority' => 230,
|
483 |
+
],
|
484 |
+
],
|
485 |
+
'construction' => [
|
486 |
+
'v1' => [
|
487 |
+
'name' => 'Construction',
|
488 |
+
'pages' => 'home,about,services,projects,pricing,contact,faq,',
|
489 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
490 |
+
'tags' => 'construction architecture company interior office real estate',
|
491 |
+
'theme-builder' => false,
|
492 |
+
'woo-builder' => false,
|
493 |
+
'off-canvas' => false,
|
494 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
495 |
+
'priority' => 240,
|
496 |
+
],
|
497 |
+
],
|
498 |
+
'ittech' => [
|
499 |
+
'v1' => [
|
500 |
+
'name' => 'IT Tech v1',
|
501 |
+
'pages' => 'home,about,services,pricing,faq,contact,',
|
502 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
503 |
+
'tags' => 'ittech advanced technology it technique computer windows technician digital',
|
504 |
+
'theme-builder' => false,
|
505 |
+
'woo-builder' => false,
|
506 |
+
'off-canvas' => false,
|
507 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
508 |
+
'priority' => 5,
|
509 |
+
],
|
510 |
+
'v2' => [
|
511 |
+
'name' => 'IT Tech v2',
|
512 |
+
'pages' => 'home,about,services,pricing,faq,contact,',
|
513 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
514 |
+
'tags' => 'ittech advanced technology it technique computer windows technician digital',
|
515 |
+
'theme-builder' => false,
|
516 |
+
'woo-builder' => false,
|
517 |
+
'off-canvas' => false,
|
518 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
519 |
+
'priority' => 260,
|
520 |
+
],
|
521 |
+
],
|
522 |
+
'carwash' => [
|
523 |
+
'v1' => [
|
524 |
+
'name' => 'Carwash',
|
525 |
+
'pages' => 'home,about,services,contact,',
|
526 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
527 |
+
'tags' => 'vehicle car wash cleaning painting service maintenance care bike motorcycle detailing',
|
528 |
+
'theme-builder' => false,
|
529 |
+
'woo-builder' => false,
|
530 |
+
'off-canvas' => false,
|
531 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
532 |
+
'priority' => 252,
|
533 |
+
],
|
534 |
+
],
|
535 |
+
'realestate' => [
|
536 |
+
'v1' => [
|
537 |
+
'name' => 'Real Estate',
|
538 |
+
'pages' => 'home,properties,about,services,faq,contact,',
|
539 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
540 |
+
'tags' => 'real estate agency company construction property rentals estate sales developers',
|
541 |
+
'theme-builder' => false,
|
542 |
+
'woo-builder' => false,
|
543 |
+
'off-canvas' => false,
|
544 |
+
'price' => $is_pro_active ? 'free' : 'pro',
|
545 |
+
'priority' => 270,
|
546 |
+
],
|
547 |
+
],
|
548 |
+
'restaurant' => [
|
549 |
+
'v1' => [
|
550 |
+
'name' => 'Restaurant',
|
551 |
+
'pages' => 'home,about,gallery,menu,contact,',
|
552 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
553 |
+
'tags' => 'restaurant fastfood slider hotel italian pizza pizzeria pasta dinner fast food wine recipe recipes cooking slider',
|
554 |
+
'theme-builder' => false,
|
555 |
+
'woo-builder' => false,
|
556 |
+
'off-canvas' => false,
|
557 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
558 |
+
'priority' => 280,
|
559 |
+
],
|
560 |
+
],
|
561 |
+
'winebar' => [
|
562 |
+
'v1' => [
|
563 |
+
'name' => 'Wine Bar & Restaurant',
|
564 |
+
'pages' => 'home,story,wines,dishes,events,contact,',
|
565 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
566 |
+
'tags' => 'wine bar winery beer drink alcohol pub events dish wines italian restaurant food slider recipes cooking recipes slider',
|
567 |
+
'theme-builder' => false,
|
568 |
+
'woo-builder' => false,
|
569 |
+
'off-canvas' => false,
|
570 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
571 |
+
'priority' => 290,
|
572 |
+
],
|
573 |
+
],
|
574 |
+
'wedding' => [
|
575 |
+
'v1' => [
|
576 |
+
'name' => 'Wedding',
|
577 |
+
'pages' => 'home,about,services,blog,gallery,contact,',
|
578 |
+
'plugins' => '{"contact-form-7":'. $is_cf7_active .'}',
|
579 |
+
'tags' => 'wedding party event slider invitation planner slider photography photographer',
|
580 |
+
'theme-builder' => false,
|
581 |
+
'woo-builder' => false,
|
582 |
+
'off-canvas' => false,
|
583 |
+
'price' => $is_pro_active ? 'free' : 'free',
|
584 |
+
'priority' => 300,
|
585 |
+
],
|
586 |
+
],
|
587 |
+
];
|
588 |
+
}
|
589 |
+
|
590 |
+
public static function get_available_blocks() {
|
591 |
+
return [
|
592 |
+
'grid' => [
|
593 |
+
'v1' => ['type' => 'iframe', 'url' => 'grid/v1/'],
|
594 |
+
'v2' => ['type' => 'iframe', 'url' => 'grid/v2/'],
|
595 |
+
'v3' => ['type' => 'iframe', 'url' => 'grid/v3/'],
|
596 |
+
'v4' => ['type' => 'iframe', 'url' => 'grid/v4/'],
|
597 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'grid/v5/'],
|
598 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'grid/v6/'],
|
599 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'grid/v7/'],
|
600 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'grid/v8/'],
|
601 |
+
'v9-pro' => ['type' => 'iframe', 'url' => 'grid/v9/'],
|
602 |
+
'v10-pro' => ['type' => 'iframe', 'url' => 'grid/v10/'],
|
603 |
+
'v11' => ['type' => 'iframe', 'url' => 'grid/v11/'],
|
604 |
+
'v12' => ['type' => 'iframe', 'url' => 'grid/v12/'],
|
605 |
+
'v13' => ['type' => 'iframe', 'url' => 'grid/v13/'],
|
606 |
+
'v14' => ['type' => 'iframe', 'url' => 'grid/v14/'],
|
607 |
+
],
|
608 |
+
'woo-grid' => [
|
609 |
+
'v1' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v1/'],
|
610 |
+
'v2' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v2/'],
|
611 |
+
'v3-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v3/'],
|
612 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v4/'],
|
613 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v5/'],
|
614 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v6/'],
|
615 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v7/'],
|
616 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v8/'],
|
617 |
+
'v9-pro' => ['type' => 'iframe', 'url' => 'woocommerce-grid/v9/'],
|
618 |
+
],
|
619 |
+
'media-grid' => [
|
620 |
+
'v1' => ['type' => 'iframe', 'url' => 'image-grid/v1/'],
|
621 |
+
'v2' => ['type' => 'iframe', 'url' => 'image-grid/v2/'],
|
622 |
+
],
|
623 |
+
'magazine-grid' => [
|
624 |
+
'v1' => ['type' => 'iframe', 'url' => 'magazine-grid/v1/'],
|
625 |
+
'v2' => ['type' => 'iframe', 'url' => 'magazine-grid/v2/'],
|
626 |
+
// 'v3' => ['type' => 'iframe', 'url' => 'magazine-grid/v3/', 'sub' => 'carousel'], <-- Keep as example
|
627 |
+
'v3-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v3/'],
|
628 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v4/'],
|
629 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v5/'],
|
630 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v6/'],
|
631 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v7/'],
|
632 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'magazine-grid/v8/'],
|
633 |
+
],
|
634 |
+
'advanced-slider' => [
|
635 |
+
'v1' => ['type' => 'iframe', 'url' => 'advanced-slider/v1/'],
|
636 |
+
'v2' => ['type' => 'iframe', 'url' => 'advanced-slider/v2/'],
|
637 |
+
'v3' => ['type' => 'iframe', 'url' => 'advanced-slider/v3/'],
|
638 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v4/'],
|
639 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v5/'],
|
640 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v6/'],
|
641 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v7/'],
|
642 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'advanced-slider/v8/'],
|
643 |
+
],
|
644 |
+
'posts-timeline' => [
|
645 |
+
'v1' => ['type' => 'iframe', 'url' => 'timeline/v1/'],
|
646 |
+
'v2' => ['type' => 'iframe', 'url' => 'timeline/v2/'],
|
647 |
+
'v3' => ['type' => 'iframe', 'url' => 'timeline/v3/'],
|
648 |
+
'v4' => ['type' => 'iframe', 'url' => 'timeline/v4/'],
|
649 |
+
'v5' => ['type' => 'iframe', 'url' => 'timeline/v5/'],
|
650 |
+
],
|
651 |
+
'testimonial' => [
|
652 |
+
'v1' => ['type' => 'iframe', 'url' => 'testimonial-slider/v1/'],
|
653 |
+
'v2' => ['type' => 'iframe', 'url' => 'testimonial-slider/v2/'],
|
654 |
+
'v3' => ['type' => 'iframe', 'url' => 'testimonial-slider/v3/'],
|
655 |
+
'v4' => ['type' => 'iframe', 'url' => 'testimonial-slider/v4/'],
|
656 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v5/'],
|
657 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v6/'],
|
658 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v7/'],
|
659 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v8/'],
|
660 |
+
'v9-pro' => ['type' => 'iframe', 'url' => 'testimonial-slider/v9/'],
|
661 |
+
],
|
662 |
+
'nav-menu' => [
|
663 |
+
'v1' => ['type' => 'iframe', 'url' => 'nav-menu/v1/'],
|
664 |
+
'v2' => ['type' => 'iframe', 'url' => 'nav-menu/v2/'],
|
665 |
+
'v3' => ['type' => 'iframe', 'url' => 'nav-menu/v3/'],
|
666 |
+
'v4' => ['type' => 'iframe', 'url' => 'nav-menu/v4/'],
|
667 |
+
'v5' => ['type' => 'iframe', 'url' => 'nav-menu/v5/'],
|
668 |
+
'v6' => ['type' => 'iframe', 'url' => 'nav-menu/v6/'],
|
669 |
+
],
|
670 |
+
'onepage-nav' => [
|
671 |
+
'v1' => ['type' => 'iframe', 'url' => 'one-page-navigation/v1/'],
|
672 |
+
'v2' => ['type' => 'iframe', 'url' => 'one-page-navigation/v2/'],
|
673 |
+
'v3' => ['type' => 'iframe', 'url' => 'one-page-navigation/v3/'],
|
674 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'one-page-navigation/v4/'],
|
675 |
+
],
|
676 |
+
'pricing-table' => [
|
677 |
+
'v1' => ['type' => 'iframe', 'url' => 'pricing-table/v1/'],
|
678 |
+
'v2' => ['type' => 'iframe', 'url' => 'pricing-table/v2/'],
|
679 |
+
'v3' => ['type' => 'iframe', 'url' => 'pricing-table/v3/'],
|
680 |
+
'v4' => ['type' => 'iframe', 'url' => 'pricing-table/v4/'],
|
681 |
+
'v5' => ['type' => 'iframe', 'url' => 'pricing-table/v5/'],
|
682 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'pricing-table/v6/'],
|
683 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'pricing-table/v7/'],
|
684 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'pricing-table/v8/'],
|
685 |
+
],
|
686 |
+
'content-toggle' => [
|
687 |
+
'v1' => ['type' => 'iframe', 'url' => 'content-toggle/v1/'],
|
688 |
+
'v2' => ['type' => 'iframe', 'url' => 'content-toggle/v2/'],
|
689 |
+
'v3-pro' => ['type' => 'iframe', 'url' => 'content-toggle/v3/'],
|
690 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'content-toggle/v4/'],
|
691 |
+
],
|
692 |
+
'data-table' => [
|
693 |
+
'v1' => ['type' => 'iframe', 'url' => 'data-table/v1/'],
|
694 |
+
'v2' => ['type' => 'iframe', 'url' => 'data-table/v2/'],
|
695 |
+
'v3' => ['type' => 'iframe', 'url' => 'data-table/v3/'],
|
696 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'data-table/v4/'],
|
697 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'data-table/v5/'],
|
698 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'data-table/v6/'],
|
699 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'data-table/v7/'],
|
700 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'data-table/v8/'],
|
701 |
+
],
|
702 |
+
'countdown' => [
|
703 |
+
'v1' => ['type' => 'iframe', 'url' => 'countdown/v1/'],
|
704 |
+
'v2' => ['type' => 'iframe', 'url' => 'countdown/v2/'],
|
705 |
+
'v3' => ['type' => 'iframe', 'url' => 'countdown/v3/'],
|
706 |
+
],
|
707 |
+
'progress-bar' => [
|
708 |
+
'v1' => ['type' => 'iframe', 'url' => 'progress-bar/v1/'],
|
709 |
+
'v2' => ['type' => 'iframe', 'url' => 'progress-bar/v2/'],
|
710 |
+
'v3' => ['type' => 'iframe', 'url' => 'progress-bar/v3/'],
|
711 |
+
],
|
712 |
+
'tabs' => [
|
713 |
+
'v1' => ['type' => 'iframe', 'url' => 'tabs/v1/'],
|
714 |
+
'v2' => ['type' => 'iframe', 'url' => 'tabs/v2/'],
|
715 |
+
'v3' => ['type' => 'iframe', 'url' => 'tabs/v3/'],
|
716 |
+
],
|
717 |
+
'advanced-text' => [
|
718 |
+
'v1' => ['type' => 'iframe', 'url' => 'advanced-text/v1/'],
|
719 |
+
'v2' => ['type' => 'iframe', 'url' => 'advanced-text/v2/'],
|
720 |
+
'v3' => ['type' => 'iframe', 'url' => 'advanced-text/v3/'],
|
721 |
+
'v4' => ['type' => 'iframe', 'url' => 'advanced-text/v4/'],
|
722 |
+
'v5' => ['type' => 'iframe', 'url' => 'advanced-text/v5/'],
|
723 |
+
'v6' => ['type' => 'iframe', 'url' => 'advanced-text/v6/'],
|
724 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v7/'],
|
725 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v8/'],
|
726 |
+
'v9-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v9/'],
|
727 |
+
'v10-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v10/'],
|
728 |
+
'v11-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v11/'],
|
729 |
+
'v12-pro' => ['type' => 'iframe', 'url' => 'advanced-text/v12/'],
|
730 |
+
],
|
731 |
+
'flip-box' => [
|
732 |
+
'v1' => ['type' => 'iframe', 'url' => 'flip-box/v1/'],
|
733 |
+
'v2' => ['type' => 'iframe', 'url' => 'flip-box/v2/'],
|
734 |
+
'v3' => ['type' => 'iframe', 'url' => 'flip-box/v3/'],
|
735 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'flip-box/v4/'],
|
736 |
+
],
|
737 |
+
'promo-box' => [
|
738 |
+
'v1' => ['type' => 'iframe', 'url' => 'promo-box/v1/'],
|
739 |
+
'v2' => ['type' => 'iframe', 'url' => 'promo-box/v2/'],
|
740 |
+
'v3' => ['type' => 'iframe', 'url' => 'promo-box/v3/'],
|
741 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'promo-box/v4/'],
|
742 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'promo-box/v5/'],
|
743 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'promo-box/v6/'],
|
744 |
+
],
|
745 |
+
'before-after' => [
|
746 |
+
'v1' => ['type' => 'iframe', 'url' => 'before-and-after/v1/'],
|
747 |
+
'v2' => ['type' => 'iframe', 'url' => 'before-and-after/v2/'],
|
748 |
+
'v3' => ['type' => 'iframe', 'url' => 'before-and-after/v3/'],
|
749 |
+
],
|
750 |
+
'image-hotspots' => [
|
751 |
+
'v1' => ['type' => 'iframe', 'url' => 'image-hotspot/v1/'],
|
752 |
+
'v2' => ['type' => 'iframe', 'url' => 'image-hotspot/v2/'],
|
753 |
+
'v3' => ['type' => 'iframe', 'url' => 'image-hotspot/v3/'],
|
754 |
+
],
|
755 |
+
'forms' => [],
|
756 |
+
'mailchimp' => [
|
757 |
+
'v1' => ['type' => 'iframe', 'url' => 'mailchimp/v1/'],
|
758 |
+
'v2' => ['type' => 'iframe', 'url' => 'mailchimp/v2/'],
|
759 |
+
'v3' => ['type' => 'iframe', 'url' => 'mailchimp/v3/'],
|
760 |
+
'v4' => ['type' => 'iframe', 'url' => 'mailchimp/v4/'],
|
761 |
+
'v5' => ['type' => 'iframe', 'url' => 'mailchimp/v5/'],
|
762 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'mailchimp/v6/'],
|
763 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'mailchimp/v7/'],
|
764 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'mailchimp/v8/'],
|
765 |
+
],
|
766 |
+
'content-ticker' => [
|
767 |
+
'v1' => ['type' => 'iframe', 'url' => 'content-ticker/v1/'],
|
768 |
+
'v2' => ['type' => 'iframe', 'url' => 'content-ticker/v2/'],
|
769 |
+
'v3' => ['type' => 'iframe', 'url' => 'content-ticker/v3/'],
|
770 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'content-ticker/v4/'],
|
771 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'content-ticker/v5/'],
|
772 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'content-ticker/v6/'],
|
773 |
+
],
|
774 |
+
'button' => [
|
775 |
+
'v1' => ['type' => 'iframe', 'url' => 'button/v1/'],
|
776 |
+
'v2' => ['type' => 'iframe', 'url' => 'button/v2/'],
|
777 |
+
'v3' => ['type' => 'iframe', 'url' => 'button/v3/'],
|
778 |
+
'v4' => ['type' => 'iframe', 'url' => 'button/v4/'],
|
779 |
+
'v5' => ['type' => 'iframe', 'url' => 'button/v5/'],
|
780 |
+
],
|
781 |
+
'dual-button' => [
|
782 |
+
'v1' => ['type' => 'iframe', 'url' => 'dual-button/v1/'],
|
783 |
+
'v2' => ['type' => 'iframe', 'url' => 'dual-button/v2/'],
|
784 |
+
'v3' => ['type' => 'iframe', 'url' => 'dual-button/v3/'],
|
785 |
+
],
|
786 |
+
'team-member' => [
|
787 |
+
'v1' => ['type' => 'iframe', 'url' => 'team-member/v1/'],
|
788 |
+
'v2' => ['type' => 'iframe', 'url' => 'team-member/v2/'],
|
789 |
+
'v3' => ['type' => 'iframe', 'url' => 'team-member/v3/'],
|
790 |
+
'v4' => ['type' => 'iframe', 'url' => 'team-member/v4/'],
|
791 |
+
'v5' => ['type' => 'iframe', 'url' => 'team-member/v5/'],
|
792 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'team-member/v6/'],
|
793 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'team-member/v7/'],
|
794 |
+
'v8-pro' => ['type' => 'iframe', 'url' => 'team-member/v8/'],
|
795 |
+
],
|
796 |
+
'google-maps' => [
|
797 |
+
'v1' => ['type' => 'iframe', 'url' => 'google-map/v1/'],
|
798 |
+
'v2' => ['type' => 'iframe', 'url' => 'google-map/v2/'],
|
799 |
+
'v3' => ['type' => 'iframe', 'url' => 'google-map/v3/'],
|
800 |
+
'v4' => ['type' => 'iframe', 'url' => 'google-map/v4/'],
|
801 |
+
'v5' => ['type' => 'iframe', 'url' => 'google-map/v5/'],
|
802 |
+
],
|
803 |
+
'price-list' => [
|
804 |
+
'v1' => ['type' => 'iframe', 'url' => 'price-list/v1/'],
|
805 |
+
'v2' => ['type' => 'iframe', 'url' => 'price-list/v2/'],
|
806 |
+
'v3' => ['type' => 'iframe', 'url' => 'price-list/v3/'],
|
807 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'price-list/v4/'],
|
808 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'price-list/v5/'],
|
809 |
+
'v6-pro' => ['type' => 'iframe', 'url' => 'price-list/v6/'],
|
810 |
+
'v7-pro' => ['type' => 'iframe', 'url' => 'price-list/v7/'],
|
811 |
+
],
|
812 |
+
'business-hours' => [
|
813 |
+
'v1' => ['type' => 'iframe', 'url' => 'business-hours/v1/'],
|
814 |
+
'v2' => ['type' => 'iframe', 'url' => 'business-hours/v2/'],
|
815 |
+
'v3' => ['type' => 'iframe', 'url' => 'business-hours/v3/'],
|
816 |
+
],
|
817 |
+
'sharing-buttons' => [
|
818 |
+
'v1' => ['type' => 'iframe', 'url' => 'sharing-button/v1/'],
|
819 |
+
'v2' => ['type' => 'iframe', 'url' => 'sharing-button/v2/'],
|
820 |
+
'v3' => ['type' => 'iframe', 'url' => 'sharing-button/v3/'],
|
821 |
+
'v4-pro' => ['type' => 'iframe', 'url' => 'sharing-button/v4/'],
|
822 |
+
'v5-pro' => ['type' => 'iframe', 'url' => 'sharing-button/v5/'],
|
823 |
+
],
|
824 |
+
'logo' => [],
|
825 |
+
'search' => [
|
826 |
+
'v1' => ['type' => 'iframe', 'url' => 'search/v1/'],
|
827 |
+
'v2' => ['type' => 'iframe', 'url' => 'search/v2/'],
|
828 |
+
'v3' => ['type' => 'iframe', 'url' => 'search/v3/'],
|
829 |
+
],
|
830 |
+
'phone-call' => [],
|
831 |
+
'back-to-top' => [],
|
832 |
+
'lottie-animations' => [],
|
833 |
+
'popup-trigger' => [],
|
834 |
+
];
|
835 |
+
}
|
836 |
+
|
837 |
+
public static function get_available_popups() {
|
838 |
+
return [
|
839 |
+
// 'contact' => [
|
840 |
+
// 'v1' => ['type' => 'iframe', 'url' => 'search/v1/'],
|
841 |
+
// 'v2' => ['type' => 'iframe', 'url' => 'search/v2/'],
|
842 |
+
// 'v3' => ['type' => 'iframe', 'url' => 'search/v3/'],
|
843 |
+
// ],
|
844 |
+
'cookie' => [
|
845 |
+
'v1' => ['type' => 'image', 'url' => 'popups/cookie/v1-preview.jpg'],
|
846 |
+
'v2-pro' => ['type' => 'image', 'url' => 'popups/cookie/v2-pro-preview.jpg'],
|
847 |
+
'v3-pro' => ['type' => 'image', 'url' => 'popups/cookie/v3-pro-preview.jpg'],
|
848 |
+
'v4-pro' => ['type' => 'image', 'url' => 'popups/cookie/v4-pro-preview.jpg'],
|
849 |
+
],
|
850 |
+
'discount' => [
|
851 |
+
'v1' => ['type' => 'image', 'url' => 'popups/discount/v1-preview.jpg'],
|
852 |
+
'v2' => ['type' => 'image', 'url' => 'popups/discount/v2-preview.jpg'],
|
853 |
+
'v3-pro' => ['type' => 'image', 'url' => 'popups/discount/v3-pro-preview.jpg'],
|
854 |
+
'v4-pro' => ['type' => 'image', 'url' => 'popups/discount/v4-pro-preview.jpg'],
|
855 |
+
'v5' => ['type' => 'image', 'url' => 'popups/discount/v5-preview.jpg'],
|
856 |
+
'v6' => ['type' => 'image', 'url' => 'popups/discount/v6-preview.jpg'],
|
857 |
+
'v7-pro' => ['type' => 'image', 'url' => 'popups/discount/v7-pro-preview.jpg'],
|
858 |
+
'v8-pro' => ['type' => 'image', 'url' => 'popups/discount/v8-pro-preview.jpg'],
|
859 |
+
'v9' => ['type' => 'image', 'url' => 'popups/discount/v9-preview.jpg'],
|
860 |
+
'v10' => ['type' => 'image', 'url' => 'popups/discount/v10-preview.jpg'],
|
861 |
+
'v11-pro' => ['type' => 'image', 'url' => 'popups/discount/v11-pro-preview.jpg'],
|
862 |
+
'v12-pro' => ['type' => 'image', 'url' => 'popups/discount/v12-pro-preview.jpg'],
|
863 |
+
'v13-pro' => ['type' => 'image', 'url' => 'popups/discount/v13-pro-preview.jpg'],
|
864 |
+
'v14' => ['type' => 'image', 'url' => 'popups/discount/v14-preview.jpg'],
|
865 |
+
'v15' => ['type' => 'image', 'url' => 'popups/discount/v15-preview.jpg'],
|
866 |
+
'v16-pro' => ['type' => 'image', 'url' => 'popups/discount/v16-pro-preview.jpg'],
|
867 |
+
],
|
868 |
+
'subscribe' => [
|
869 |
+
'v1-pro' => ['type' => 'image', 'url' => 'popups/subscribe/v1-pro-preview.jpg'],
|
870 |
+
'v2-pro' => ['type' => 'image', 'url' => 'popups/subscribe/v2-pro-preview.jpg'],
|
871 |
+
'v3-pro' => ['type' => 'image', 'url' => 'popups/subscribe/v3-pro-preview.jpg'],
|
872 |
+
],
|
873 |
+
'yesno' => [
|
874 |
+
'v1-pro' => ['type' => 'image', 'url' => 'popups/yesno/v1-pro-preview.jpg'],
|
875 |
+
'v2-pro' => ['type' => 'image', 'url' => 'popups/yesno/v2-pro-preview.jpg'],
|
876 |
+
'v3-pro' => ['type' => 'image', 'url' => 'popups/yesno/v3-pro-preview.jpg'],
|
877 |
+
],
|
878 |
+
];
|
879 |
+
}
|
880 |
}
|
admin/templates/wpr-templates-library-blocks.php
CHANGED
@@ -1,167 +1,167 @@
|
|
1 |
-
<?php
|
2 |
-
namespace WprAddons\Admin\Templates;
|
3 |
-
use WprAddons\Classes\Utilities;
|
4 |
-
use WprAddons\Admin\Templates\WPR_Templates_Data;
|
5 |
-
|
6 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
-
exit; // Exit if accessed directly.
|
8 |
-
}
|
9 |
-
|
10 |
-
/**
|
11 |
-
* WPR_Templates_Library_Blocks setup
|
12 |
-
*
|
13 |
-
* @since 1.0
|
14 |
-
*/
|
15 |
-
class WPR_Templates_Library_Blocks {
|
16 |
-
|
17 |
-
/**
|
18 |
-
** Constructor
|
19 |
-
*/
|
20 |
-
public function __construct() {
|
21 |
-
|
22 |
-
// Template Library Popup
|
23 |
-
add_action( 'wp_ajax_render_library_templates_blocks', [ $this, 'render_library_templates_blocks' ] );
|
24 |
-
|
25 |
-
}
|
26 |
-
|
27 |
-
/**
|
28 |
-
** Template Library Popup
|
29 |
-
*/
|
30 |
-
public static function render_library_templates_blocks() {
|
31 |
-
|
32 |
-
?>
|
33 |
-
|
34 |
-
<div class="wpr-tplib-sidebar">
|
35 |
-
<div class="wpr-tplib-search">
|
36 |
-
<input type="text" placeholder="Search Template">
|
37 |
-
<i class="eicon-search"></i>
|
38 |
-
</div>
|
39 |
-
|
40 |
-
<div class="wpr-tplib-filters-wrap">
|
41 |
-
<div class="wpr-tplib-filters">
|
42 |
-
<h3>
|
43 |
-
<span data-filter="all"><?php esc_html_e( 'Category', 'wpr-addons' ); ?></span>
|
44 |
-
<i class="fas fa-angle-down"></i>
|
45 |
-
</h3>
|
46 |
-
|
47 |
-
<div class="wpr-tplib-filters-list">
|
48 |
-
<ul>
|
49 |
-
|
50 |
-
<li data-filter="all"><?php esc_html_e( 'All', 'wpr-addons' ) ?></li>
|
51 |
-
|
52 |
-
<?php
|
53 |
-
|
54 |
-
$modules = Utilities::get_available_modules( Utilities::get_registered_modules() );
|
55 |
-
|
56 |
-
$exclude_widgets = [
|
57 |
-
'logo',
|
58 |
-
'mega-menu',
|
59 |
-
'forms',
|
60 |
-
'phone-call',
|
61 |
-
'back-to-top',
|
62 |
-
'popup-trigger',
|
63 |
-
'lottie-animations',
|
64 |
-
'taxonomy-list',
|
65 |
-
'page-list',
|
66 |
-
'elementor-template',
|
67 |
-
'flip-carousel',
|
68 |
-
'feature-list',
|
69 |
-
'dual-color-heading',
|
70 |
-
'reading-progress-bar',
|
71 |
-
'image-accordion',
|
72 |
-
'advanced-accordion',
|
73 |
-
'charts',
|
74 |
-
];
|
75 |
-
|
76 |
-
foreach ($modules as $title => $slug) {
|
77 |
-
if ( ! in_array($slug[0], $exclude_widgets) ) {
|
78 |
-
echo '<li data-filter="'. esc_attr($slug[0]) .'">'. esc_html($title) .'</li>';
|
79 |
-
}
|
80 |
-
}
|
81 |
-
|
82 |
-
?>
|
83 |
-
</ul>
|
84 |
-
</div>
|
85 |
-
</div>
|
86 |
-
|
87 |
-
<div class="wpr-tplib-sub-filters">
|
88 |
-
<ul>
|
89 |
-
<li data-sub-filter="all" class="wpr-tplib-activ-filter"><?php esc_html_e( 'All', 'wpr-addons' ); ?></li>
|
90 |
-
<li data-sub-filter="grid"><?php esc_html_e( 'Grid', 'wpr-addons' ) ?></li>
|
91 |
-
<li data-sub-filter="slider"><?php esc_html_e( 'Slider', 'wpr-addons' ) ?></li>
|
92 |
-
<li data-sub-filter="carousel"><?php esc_html_e( 'Carousel', 'wpr-addons' ) ?></li>
|
93 |
-
</ul>
|
94 |
-
</div>
|
95 |
-
</div>
|
96 |
-
</div>
|
97 |
-
|
98 |
-
<div class="wpr-tplib-template-gird elementor-clearfix">
|
99 |
-
<div class="wpr-tplib-template-gird-inner">
|
100 |
-
|
101 |
-
<?php
|
102 |
-
|
103 |
-
foreach ($modules as $title => $data) :
|
104 |
-
$module_slug = $data[0];
|
105 |
-
$blocks = WPR_Templates_Data::get_available_blocks();
|
106 |
-
|
107 |
-
if ( !isset($blocks[$module_slug]) ) {
|
108 |
-
continue;
|
109 |
-
}
|
110 |
-
|
111 |
-
for ( $i=0; $i < count($blocks[$module_slug]); $i++ ) :
|
112 |
-
|
113 |
-
$template_slug = array_keys($blocks[$module_slug])[$i];
|
114 |
-
$template_sub = isset($blocks[$module_slug][$template_slug]['sub']) ? $blocks[$module_slug][$template_slug]['sub'] : '';
|
115 |
-
$template_title = $title .' '. $template_slug;
|
116 |
-
$preview_type = $blocks[$module_slug][$template_slug]['type'];
|
117 |
-
$preview_url = $blocks[$module_slug][$template_slug]['url'];
|
118 |
-
$template_class = (strpos($template_slug, 'pro') && !wpr_fs()->can_use_premium_code()) || (strpos($template_slug, 'zzz') && !wpr_fs()->can_use_premium_code()) ? ' wpr-tplib-pro-wrap' : '';
|
119 |
-
|
120 |
-
if (defined('WPR_ADDONS_PRO_VERSION') && wpr_fs()->can_use_premium_code()) {
|
121 |
-
$template_class .= ' wpr-tplib-pro-active';
|
122 |
-
}
|
123 |
-
|
124 |
-
$template_slug_for_image = strpos($template_slug, 'zzz') ? substr($template_slug, 0, -4) : $template_slug;
|
125 |
-
|
126 |
-
?>
|
127 |
-
|
128 |
-
<div class="wpr-tplib-template-wrap<?php echo esc_attr($template_class); ?>">
|
129 |
-
<div class="wpr-tplib-template" data-slug="<?php echo esc_attr($template_slug); ?>" data-filter="<?php echo esc_attr($module_slug); ?>" data-sub-filter="<?php echo esc_attr($template_sub); ?>" data-preview-type="<?php echo esc_attr($preview_type); ?>" data-preview-url="<?php echo esc_attr($preview_url); ?>">
|
130 |
-
<div class="wpr-tplib-template-media">
|
131 |
-
<img src="<?php echo esc_url('https://royal-elementor-addons.com/library/premade-styles/'. $module_slug .'/'. $template_slug_for_image .'.jpg'); ?>">
|
132 |
-
<div class="wpr-tplib-template-media-overlay">
|
133 |
-
<i class="eicon-eye"></i>
|
134 |
-
</div>
|
135 |
-
</div>
|
136 |
-
<div class="wpr-tplib-template-footer elementor-clearfix">
|
137 |
-
<?php if ( !defined('WPR_ADDONS_PRO_VERSION') && ! wpr_fs()->can_use_premium_code() ) : ?>
|
138 |
-
<h3><?php echo strpos($template_slug, 'pro') ? esc_html(str_replace('-pro', ' Pro', $template_title)) : esc_html(str_replace('-zzz', ' Pro', $template_title)); ?></h3>
|
139 |
-
<?php else : ?>
|
140 |
-
<h3><?php echo strpos($template_slug, 'pro') ? esc_html(str_replace('-pro', '', $template_title)) : esc_html(str_replace('-zzz', '', $template_title)); ?></h3>
|
141 |
-
<?php endif; ?>
|
142 |
-
|
143 |
-
<?php if ( ( strpos($template_slug, 'pro') && !wpr_fs()->can_use_premium_code() ) || ( strpos($template_slug, 'zzz') ) && !wpr_fs()->can_use_premium_code() ) : ?>
|
144 |
-
<span class="wpr-tplib-insert-template wpr-tplib-insert-pro"><i class="eicon-star"></i> <span><?php esc_html_e( 'Go Pro', 'wpr-addons' ); ?></span></span>
|
145 |
-
<?php else : ?>
|
146 |
-
<span class="wpr-tplib-insert-template"><i class="eicon-file-download"></i> <span><?php esc_html_e( 'Insert', 'wpr-addons' ); ?></span></span>
|
147 |
-
<?php endif; ?>
|
148 |
-
</div>
|
149 |
-
</div>
|
150 |
-
</div>
|
151 |
-
|
152 |
-
<?php endfor; ?>
|
153 |
-
<?php endforeach;?>
|
154 |
-
|
155 |
-
</div>
|
156 |
-
</div>
|
157 |
-
|
158 |
-
<?php
|
159 |
-
|
160 |
-
$current_screen = get_current_screen();
|
161 |
-
|
162 |
-
if ( !(isset($current_screen) && 'royal-addons_page_wpr-premade-blocks' === $current_screen->id) ) {
|
163 |
-
exit;
|
164 |
-
}
|
165 |
-
}
|
166 |
-
|
167 |
-
}
|
1 |
+
<?php
|
2 |
+
namespace WprAddons\Admin\Templates;
|
3 |
+
use WprAddons\Classes\Utilities;
|
4 |
+
use WprAddons\Admin\Templates\WPR_Templates_Data;
|
5 |
+
|
6 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
+
exit; // Exit if accessed directly.
|
8 |
+
}
|
9 |
+
|
10 |
+
/**
|
11 |
+
* WPR_Templates_Library_Blocks setup
|
12 |
+
*
|
13 |
+
* @since 1.0
|
14 |
+
*/
|
15 |
+
class WPR_Templates_Library_Blocks {
|
16 |
+
|
17 |
+
/**
|
18 |
+
** Constructor
|
19 |
+
*/
|
20 |
+
public function __construct() {
|
21 |
+
|
22 |
+
// Template Library Popup
|
23 |
+
add_action( 'wp_ajax_render_library_templates_blocks', [ $this, 'render_library_templates_blocks' ] );
|
24 |
+
|
25 |
+
}
|
26 |
+
|
27 |
+
/**
|
28 |
+
** Template Library Popup
|
29 |
+
*/
|
30 |
+
public static function render_library_templates_blocks() {
|
31 |
+
|
32 |
+
?>
|
33 |
+
|
34 |
+
<div class="wpr-tplib-sidebar">
|
35 |
+
<div class="wpr-tplib-search">
|
36 |
+
<input type="text" placeholder="Search Template">
|
37 |
+
<i class="eicon-search"></i>
|
38 |
+
</div>
|
39 |
+
|
40 |
+
<div class="wpr-tplib-filters-wrap">
|
41 |
+
<div class="wpr-tplib-filters">
|
42 |
+
<h3>
|
43 |
+
<span data-filter="all"><?php esc_html_e( 'Category', 'wpr-addons' ); ?></span>
|
44 |
+
<i class="fas fa-angle-down"></i>
|
45 |
+
</h3>
|
46 |
+
|
47 |
+
<div class="wpr-tplib-filters-list">
|
48 |
+
<ul>
|
49 |
+
|
50 |
+
<li data-filter="all"><?php esc_html_e( 'All', 'wpr-addons' ) ?></li>
|
51 |
+
|
52 |
+
<?php
|
53 |
+
|
54 |
+
$modules = Utilities::get_available_modules( Utilities::get_registered_modules() );
|
55 |
+
|
56 |
+
$exclude_widgets = [
|
57 |
+
'logo',
|
58 |
+
'mega-menu',
|
59 |
+
'forms',
|
60 |
+
'phone-call',
|
61 |
+
'back-to-top',
|
62 |
+
'popup-trigger',
|
63 |
+
'lottie-animations',
|
64 |
+
'taxonomy-list',
|
65 |
+
'page-list',
|
66 |
+
'elementor-template',
|
67 |
+
'flip-carousel',
|
68 |
+
'feature-list',
|
69 |
+
'dual-color-heading',
|
70 |
+
'reading-progress-bar',
|
71 |
+
'image-accordion',
|
72 |
+
'advanced-accordion',
|
73 |
+
'charts',
|
74 |
+
];
|
75 |
+
|
76 |
+
foreach ($modules as $title => $slug) {
|
77 |
+
if ( ! in_array($slug[0], $exclude_widgets) ) {
|
78 |
+
echo '<li data-filter="'. esc_attr($slug[0]) .'">'. esc_html($title) .'</li>';
|
79 |
+
}
|
80 |
+
}
|
81 |
+
|
82 |
+
?>
|
83 |
+
</ul>
|
84 |
+
</div>
|
85 |
+
</div>
|
86 |
+
|
87 |
+
<div class="wpr-tplib-sub-filters">
|
88 |
+
<ul>
|
89 |
+
<li data-sub-filter="all" class="wpr-tplib-activ-filter"><?php esc_html_e( 'All', 'wpr-addons' ); ?></li>
|
90 |
+
<li data-sub-filter="grid"><?php esc_html_e( 'Grid', 'wpr-addons' ) ?></li>
|
91 |
+
<li data-sub-filter="slider"><?php esc_html_e( 'Slider', 'wpr-addons' ) ?></li>
|
92 |
+
<li data-sub-filter="carousel"><?php esc_html_e( 'Carousel', 'wpr-addons' ) ?></li>
|
93 |
+
</ul>
|
94 |
+
</div>
|
95 |
+
</div>
|
96 |
+
</div>
|
97 |
+
|
98 |
+
<div class="wpr-tplib-template-gird elementor-clearfix">
|
99 |
+
<div class="wpr-tplib-template-gird-inner">
|
100 |
+
|
101 |
+
<?php
|
102 |
+
|
103 |
+
foreach ($modules as $title => $data) :
|
104 |
+
$module_slug = $data[0];
|
105 |
+
$blocks = WPR_Templates_Data::get_available_blocks();
|
106 |
+
|
107 |
+
if ( !isset($blocks[$module_slug]) ) {
|
108 |
+
continue;
|
109 |
+
}
|
110 |
+
|
111 |
+
for ( $i=0; $i < count($blocks[$module_slug]); $i++ ) :
|
112 |
+
|
113 |
+
$template_slug = array_keys($blocks[$module_slug])[$i];
|
114 |
+
$template_sub = isset($blocks[$module_slug][$template_slug]['sub']) ? $blocks[$module_slug][$template_slug]['sub'] : '';
|
115 |
+
$template_title = $title .' '. $template_slug;
|
116 |
+
$preview_type = $blocks[$module_slug][$template_slug]['type'];
|
117 |
+
$preview_url = $blocks[$module_slug][$template_slug]['url'];
|
118 |
+
$template_class = (strpos($template_slug, 'pro') && !wpr_fs()->can_use_premium_code()) || (strpos($template_slug, 'zzz') && !wpr_fs()->can_use_premium_code()) ? ' wpr-tplib-pro-wrap' : '';
|
119 |
+
|
120 |
+
if (defined('WPR_ADDONS_PRO_VERSION') && wpr_fs()->can_use_premium_code()) {
|
121 |
+
$template_class .= ' wpr-tplib-pro-active';
|
122 |
+
}
|
123 |
+
|
124 |
+
$template_slug_for_image = strpos($template_slug, 'zzz') ? substr($template_slug, 0, -4) : $template_slug;
|
125 |
+
|
126 |
+
?>
|
127 |
+
|
128 |
+
<div class="wpr-tplib-template-wrap<?php echo esc_attr($template_class); ?>">
|
129 |
+
<div class="wpr-tplib-template" data-slug="<?php echo esc_attr($template_slug); ?>" data-filter="<?php echo esc_attr($module_slug); ?>" data-sub-filter="<?php echo esc_attr($template_sub); ?>" data-preview-type="<?php echo esc_attr($preview_type); ?>" data-preview-url="<?php echo esc_attr($preview_url); ?>">
|
130 |
+
<div class="wpr-tplib-template-media">
|
131 |
+
<img src="<?php echo esc_url('https://royal-elementor-addons.com/library/premade-styles/'. $module_slug .'/'. $template_slug_for_image .'.jpg'); ?>">
|
132 |
+
<div class="wpr-tplib-template-media-overlay">
|
133 |
+
<i class="eicon-eye"></i>
|
134 |
+
</div>
|
135 |
+
</div>
|
136 |
+
<div class="wpr-tplib-template-footer elementor-clearfix">
|
137 |
+
<?php if ( !defined('WPR_ADDONS_PRO_VERSION') && ! wpr_fs()->can_use_premium_code() ) : ?>
|
138 |
+
<h3><?php echo strpos($template_slug, 'pro') ? esc_html(str_replace('-pro', ' Pro', $template_title)) : esc_html(str_replace('-zzz', ' Pro', $template_title)); ?></h3>
|
139 |
+
<?php else : ?>
|
140 |
+
<h3><?php echo strpos($template_slug, 'pro') ? esc_html(str_replace('-pro', '', $template_title)) : esc_html(str_replace('-zzz', '', $template_title)); ?></h3>
|
141 |
+
<?php endif; ?>
|
142 |
+
|
143 |
+
<?php if ( ( strpos($template_slug, 'pro') && !wpr_fs()->can_use_premium_code() ) || ( strpos($template_slug, 'zzz') ) && !wpr_fs()->can_use_premium_code() ) : ?>
|
144 |
+
<span class="wpr-tplib-insert-template wpr-tplib-insert-pro"><i class="eicon-star"></i> <span><?php esc_html_e( 'Go Pro', 'wpr-addons' ); ?></span></span>
|
145 |
+
<?php else : ?>
|
146 |
+
<span class="wpr-tplib-insert-template"><i class="eicon-file-download"></i> <span><?php esc_html_e( 'Insert', 'wpr-addons' ); ?></span></span>
|
147 |
+
<?php endif; ?>
|
148 |
+
</div>
|
149 |
+
</div>
|
150 |
+
</div>
|
151 |
+
|
152 |
+
<?php endfor; ?>
|
153 |
+
<?php endforeach;?>
|
154 |
+
|
155 |
+
</div>
|
156 |
+
</div>
|
157 |
+
|
158 |
+
<?php
|
159 |
+
|
160 |
+
$current_screen = get_current_screen();
|
161 |
+
|
162 |
+
if ( !(isset($current_screen) && 'royal-addons_page_wpr-premade-blocks' === $current_screen->id) ) {
|
163 |
+
exit;
|
164 |
+
}
|
165 |
+
}
|
166 |
+
|
167 |
+
}
|
admin/templates/wpr-templates-library-popups.php
CHANGED
@@ -1,109 +1,109 @@
|
|
1 |
-
<?php
|
2 |
-
namespace WprAddons\Admin\Templates;
|
3 |
-
use WprAddons\Classes\Utilities;
|
4 |
-
use WprAddons\Admin\Templates\WPR_Templates_Data;
|
5 |
-
|
6 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
-
exit; // Exit if accessed directly.
|
8 |
-
}
|
9 |
-
|
10 |
-
/**
|
11 |
-
* WPR_Templates_Library_Popups setup
|
12 |
-
*
|
13 |
-
* @since 1.0
|
14 |
-
*/
|
15 |
-
class WPR_Templates_Library_Popups {
|
16 |
-
|
17 |
-
/**
|
18 |
-
** Constructor
|
19 |
-
*/
|
20 |
-
public function __construct() {
|
21 |
-
|
22 |
-
// Template Library Popup
|
23 |
-
add_action( 'wp_ajax_render_library_templates_popups', [ $this, 'render_library_templates_popups' ] );
|
24 |
-
|
25 |
-
}
|
26 |
-
|
27 |
-
/**
|
28 |
-
** Template Library Popup
|
29 |
-
*/
|
30 |
-
public function render_library_templates_popups() {
|
31 |
-
|
32 |
-
?>
|
33 |
-
|
34 |
-
<div class="wpr-tplib-sidebar">
|
35 |
-
<div class="wpr-tplib-search">
|
36 |
-
<input type="text" placeholder="Search Template">
|
37 |
-
<i class="eicon-search"></i>
|
38 |
-
</div>
|
39 |
-
|
40 |
-
<div class="wpr-tplib-filters-wrap">
|
41 |
-
<div class="wpr-tplib-filters">
|
42 |
-
<h3>
|
43 |
-
<span><?php esc_html_e( 'Category', 'wpr-addons' ); ?></span>
|
44 |
-
<i class="fas fa-angle-down"></i>
|
45 |
-
</h3>
|
46 |
-
|
47 |
-
<div class="wpr-tplib-filters-list">
|
48 |
-
<ul>
|
49 |
-
<li data-filter="all"><?php esc_html_e( 'All', 'wpr-addons' ) ?></li>
|
50 |
-
<li data-filter="cookie"><?php esc_html_e( 'Cookie', 'wpr-addons' ) ?></li>
|
51 |
-
<li data-filter="discount"><?php esc_html_e( 'Discount', 'wpr-addons' ) ?></li>
|
52 |
-
<li data-filter="subscribe"><?php esc_html_e( 'Subscribe', 'wpr-addons' ) ?></li>
|
53 |
-
<li data-filter="yesno"><?php esc_html_e( 'Yes/No', 'wpr-addons' ) ?></li>
|
54 |
-
</ul>
|
55 |
-
</div>
|
56 |
-
</div>
|
57 |
-
</div>
|
58 |
-
|
59 |
-
</div>
|
60 |
-
|
61 |
-
<div class="wpr-tplib-template-gird elementor-clearfix">
|
62 |
-
<div class="wpr-tplib-template-gird-inner">
|
63 |
-
|
64 |
-
<?php
|
65 |
-
|
66 |
-
$popups = WPR_Templates_Data::get_available_popups();
|
67 |
-
|
68 |
-
foreach ($popups as $type => $data) :
|
69 |
-
|
70 |
-
for ( $i=0; $i < count($popups[$type]); $i++ ) :
|
71 |
-
|
72 |
-
$template_slug = array_keys($popups[$type])[$i];
|
73 |
-
$template_title = ucfirst($type) .' '. $template_slug;
|
74 |
-
$preview_type = $popups[$type][$template_slug]['type'];
|
75 |
-
$preview_url = $popups[$type][$template_slug]['url'];
|
76 |
-
$template_class = ( strpos($template_slug, 'pro') && ! wpr_fs()->can_use_premium_code() ) ? ' wpr-tplib-pro-wrap' : '';
|
77 |
-
|
78 |
-
?>
|
79 |
-
|
80 |
-
<div class="wpr-tplib-template-wrap<?php echo esc_attr($template_class); ?>">
|
81 |
-
<div class="wpr-tplib-template" data-slug="<?php echo esc_attr($template_slug); ?>" data-filter="<?php echo esc_attr($type); ?>" data-preview-type="<?php echo esc_attr($preview_type); ?>" data-preview-url="<?php echo esc_attr($preview_url); ?>">
|
82 |
-
<div class="wpr-tplib-template-media">
|
83 |
-
<img src="<?php echo esc_url('https://royal-elementor-addons.com/library/premade-styles/popups/'. $type .'/'. $template_slug .'.jpg'); ?>">
|
84 |
-
<div class="wpr-tplib-template-media-overlay">
|
85 |
-
<i class="eicon-eye"></i>
|
86 |
-
</div>
|
87 |
-
</div>
|
88 |
-
<div class="wpr-tplib-template-footer elementor-clearfix">
|
89 |
-
<h3><?php echo esc_html(str_replace('-pro', ' Pro', $template_title)); ?></h3>
|
90 |
-
|
91 |
-
<?php if ( strpos($template_slug, 'pro') && ! wpr_fs()->can_use_premium_code() ) : ?>
|
92 |
-
<span class="wpr-tplib-insert-template wpr-tplib-insert-pro"><i class="eicon-star"></i> <span><?php esc_html_e( 'Go Pro', 'wpr-addons' ); ?></span></span>
|
93 |
-
<?php else : ?>
|
94 |
-
<span class="wpr-tplib-insert-template"><i class="eicon-file-download"></i> <span><?php esc_html_e( 'Insert', 'wpr-addons' ); ?></span></span>
|
95 |
-
<?php endif; ?>
|
96 |
-
</div>
|
97 |
-
</div>
|
98 |
-
</div>
|
99 |
-
|
100 |
-
<?php endfor; ?>
|
101 |
-
<?php endforeach; ?>
|
102 |
-
|
103 |
-
</div>
|
104 |
-
</div>
|
105 |
-
|
106 |
-
<?php exit();
|
107 |
-
}
|
108 |
-
|
109 |
}
|
1 |
+
<?php
|
2 |
+
namespace WprAddons\Admin\Templates;
|
3 |
+
use WprAddons\Classes\Utilities;
|
4 |
+
use WprAddons\Admin\Templates\WPR_Templates_Data;
|
5 |
+
|
6 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
7 |
+
exit; // Exit if accessed directly.
|
8 |
+
}
|
9 |
+
|
10 |
+
/**
|
11 |
+
* WPR_Templates_Library_Popups setup
|
12 |
+
*
|
13 |
+
* @since 1.0
|
14 |
+
*/
|
15 |
+
class WPR_Templates_Library_Popups {
|
16 |
+
|
17 |
+
/**
|
18 |
+
** Constructor
|
19 |
+
*/
|
20 |
+
public function __construct() {
|
21 |
+
|
22 |
+
// Template Library Popup
|
23 |
+
add_action( 'wp_ajax_render_library_templates_popups', [ $this, 'render_library_templates_popups' ] );
|
24 |
+
|
25 |
+
}
|
26 |
+
|
27 |
+
/**
|
28 |
+
** Template Library Popup
|
29 |
+
*/
|
30 |
+
public function render_library_templates_popups() {
|
31 |
+
|
32 |
+
?>
|
33 |
+
|
34 |
+
<div class="wpr-tplib-sidebar">
|
35 |
+
<div class="wpr-tplib-search">
|
36 |
+
<input type="text" placeholder="Search Template">
|
37 |
+
<i class="eicon-search"></i>
|
38 |
+
</div>
|
39 |
+
|
40 |
+
<div class="wpr-tplib-filters-wrap">
|
41 |
+
<div class="wpr-tplib-filters">
|
42 |
+
<h3>
|
43 |
+
<span><?php esc_html_e( 'Category', 'wpr-addons' ); ?></span>
|
44 |
+
<i class="fas fa-angle-down"></i>
|
45 |
+
</h3>
|
46 |
+
|
47 |
+
<div class="wpr-tplib-filters-list">
|
48 |
+
<ul>
|
49 |
+
<li data-filter="all"><?php esc_html_e( 'All', 'wpr-addons' ) ?></li>
|
50 |
+
<li data-filter="cookie"><?php esc_html_e( 'Cookie', 'wpr-addons' ) ?></li>
|
51 |
+
<li data-filter="discount"><?php esc_html_e( 'Discount', 'wpr-addons' ) ?></li>
|
52 |
+
<li data-filter="subscribe"><?php esc_html_e( 'Subscribe', 'wpr-addons' ) ?></li>
|
53 |
+
<li data-filter="yesno"><?php esc_html_e( 'Yes/No', 'wpr-addons' ) ?></li>
|
54 |
+
</ul>
|
55 |
+
</div>
|
56 |
+
</div>
|
57 |
+
</div>
|
58 |
+
|
59 |
+
</div>
|
60 |
+
|
61 |
+
<div class="wpr-tplib-template-gird elementor-clearfix">
|
62 |
+
<div class="wpr-tplib-template-gird-inner">
|
63 |
+
|
64 |
+
<?php
|
65 |
+
|
66 |
+
$popups = WPR_Templates_Data::get_available_popups();
|
67 |
+
|
68 |
+
foreach ($popups as $type => $data) :
|
69 |
+
|
70 |
+
for ( $i=0; $i < count($popups[$type]); $i++ ) :
|
71 |
+
|
72 |
+
$template_slug = array_keys($popups[$type])[$i];
|
73 |
+
$template_title = ucfirst($type) .' '. $template_slug;
|
74 |
+
$preview_type = $popups[$type][$template_slug]['type'];
|
75 |
+
$preview_url = $popups[$type][$template_slug]['url'];
|
76 |
+
$template_class = ( strpos($template_slug, 'pro') && ! wpr_fs()->can_use_premium_code() ) ? ' wpr-tplib-pro-wrap' : '';
|
77 |
+
|
78 |
+
?>
|
79 |
+
|
80 |
+
<div class="wpr-tplib-template-wrap<?php echo esc_attr($template_class); ?>">
|
81 |
+
<div class="wpr-tplib-template" data-slug="<?php echo esc_attr($template_slug); ?>" data-filter="<?php echo esc_attr($type); ?>" data-preview-type="<?php echo esc_attr($preview_type); ?>" data-preview-url="<?php echo esc_attr($preview_url); ?>">
|
82 |
+
<div class="wpr-tplib-template-media">
|
83 |
+
<img src="<?php echo esc_url('https://royal-elementor-addons.com/library/premade-styles/popups/'. $type .'/'. $template_slug .'.jpg'); ?>">
|
84 |
+
<div class="wpr-tplib-template-media-overlay">
|
85 |
+
<i class="eicon-eye"></i>
|
86 |
+
</div>
|
87 |
+
</div>
|
88 |
+
<div class="wpr-tplib-template-footer elementor-clearfix">
|
89 |
+
<h3><?php echo esc_html(str_replace('-pro', ' Pro', $template_title)); ?></h3>
|
90 |
+
|
91 |
+
<?php if ( strpos($template_slug, 'pro') && ! wpr_fs()->can_use_premium_code() ) : ?>
|
92 |
+
<span class="wpr-tplib-insert-template wpr-tplib-insert-pro"><i class="eicon-star"></i> <span><?php esc_html_e( 'Go Pro', 'wpr-addons' ); ?></span></span>
|
93 |
+
<?php else : ?>
|
94 |
+
<span class="wpr-tplib-insert-template"><i class="eicon-file-download"></i> <span><?php esc_html_e( 'Insert', 'wpr-addons' ); ?></span></span>
|
95 |
+
<?php endif; ?>
|
96 |
+
</div>
|
97 |
+
</div>
|
98 |
+
</div>
|
99 |
+
|
100 |
+
<?php endfor; ?>
|
101 |
+
<?php endforeach; ?>
|
102 |
+
|
103 |
+
</div>
|
104 |
+
</div>
|
105 |
+
|
106 |
+
<?php exit();
|
107 |
+
}
|
108 |
+
|
109 |
}
|
admin/templates/wpr-templates-pages.php
CHANGED
@@ -1,52 +1,52 @@
|
|
1 |
-
<?php
|
2 |
-
namespace WprAddons\Admin\Templates;
|
3 |
-
|
4 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
5 |
-
exit; // Exit if accessed directly.
|
6 |
-
}
|
7 |
-
|
8 |
-
/**
|
9 |
-
* WPR_Templates_Library_Pages setup
|
10 |
-
*
|
11 |
-
* @since 1.0
|
12 |
-
*/
|
13 |
-
class WPR_Templates_Library_Pages {
|
14 |
-
|
15 |
-
/**
|
16 |
-
** Constructor
|
17 |
-
*/
|
18 |
-
public function __construct() {
|
19 |
-
|
20 |
-
// Template Library Popup
|
21 |
-
add_action( 'wp_ajax_render_library_templates_pages', [ $this, 'render_library_templates_pages' ] );
|
22 |
-
|
23 |
-
}
|
24 |
-
|
25 |
-
/**
|
26 |
-
** Template Library Popup
|
27 |
-
*/
|
28 |
-
public function render_library_templates_pages() {
|
29 |
-
?>
|
30 |
-
|
31 |
-
<div class="wpr-tplib-sidebar">
|
32 |
-
<ul>
|
33 |
-
<li>Home</li>
|
34 |
-
<li>Blog</li>
|
35 |
-
<li>Landing</li>
|
36 |
-
</ul>
|
37 |
-
</div>
|
38 |
-
|
39 |
-
<div class="wpr-tplib-template-gird">
|
40 |
-
<div class="wpr-tplib-template" data-slug="page-1">Page 1</div>
|
41 |
-
<div class="wpr-tplib-template" data-slug="page-2">Page 2</div>
|
42 |
-
<div class="wpr-tplib-template">Page 3</div>
|
43 |
-
<div class="wpr-tplib-template">Page 4</div>
|
44 |
-
<div class="wpr-tplib-template">Page 5</div>
|
45 |
-
<div class="wpr-tplib-template">Page 6</div>
|
46 |
-
</div>
|
47 |
-
|
48 |
-
|
49 |
-
<?php exit();
|
50 |
-
}
|
51 |
-
|
52 |
}
|
1 |
+
<?php
|
2 |
+
namespace WprAddons\Admin\Templates;
|
3 |
+
|
4 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
5 |
+
exit; // Exit if accessed directly.
|
6 |
+
}
|
7 |
+
|
8 |
+
/**
|
9 |
+
* WPR_Templates_Library_Pages setup
|
10 |
+
*
|
11 |
+
* @since 1.0
|
12 |
+
*/
|
13 |
+
class WPR_Templates_Library_Pages {
|
14 |
+
|
15 |
+
/**
|
16 |
+
** Constructor
|
17 |
+
*/
|
18 |
+
public function __construct() {
|
19 |
+
|
20 |
+
// Template Library Popup
|
21 |
+
add_action( 'wp_ajax_render_library_templates_pages', [ $this, 'render_library_templates_pages' ] );
|
22 |
+
|
23 |
+
}
|
24 |
+
|
25 |
+
/**
|
26 |
+
** Template Library Popup
|
27 |
+
*/
|
28 |
+
public function render_library_templates_pages() {
|
29 |
+
?>
|
30 |
+
|
31 |
+
<div class="wpr-tplib-sidebar">
|
32 |
+
<ul>
|
33 |
+
<li>Home</li>
|
34 |
+
<li>Blog</li>
|
35 |
+
<li>Landing</li>
|
36 |
+
</ul>
|
37 |
+
</div>
|
38 |
+
|
39 |
+
<div class="wpr-tplib-template-gird">
|
40 |
+
<div class="wpr-tplib-template" data-slug="page-1">Page 1</div>
|
41 |
+
<div class="wpr-tplib-template" data-slug="page-2">Page 2</div>
|
42 |
+
<div class="wpr-tplib-template">Page 3</div>
|
43 |
+
<div class="wpr-tplib-template">Page 4</div>
|
44 |
+
<div class="wpr-tplib-template">Page 5</div>
|
45 |
+
<div class="wpr-tplib-template">Page 6</div>
|
46 |
+
</div>
|
47 |
+
|
48 |
+
|
49 |
+
<?php exit();
|
50 |
+
}
|
51 |
+
|
52 |
}
|
admin/theme-builder.php
CHANGED
@@ -1,159 +1,164 @@
|
|
1 |
-
<?php
|
2 |
-
|
3 |
-
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
-
exit; // Exit if accessed directly.
|
5 |
-
}
|
6 |
-
|
7 |
-
use WprAddons\Admin\Includes\WPR_Templates_Loop;
|
8 |
-
use WprAddons\Classes\Utilities;
|
9 |
-
|
10 |
-
// Register Menus
|
11 |
-
function wpr_addons_add_theme_builder_menu() {
|
12 |
-
add_submenu_page( 'wpr-addons', 'Theme Builder', 'Theme Builder', 'manage_options', 'wpr-theme-builder', 'wpr_addons_theme_builder_page' );
|
13 |
-
}
|
14 |
-
add_action( 'admin_menu', 'wpr_addons_add_theme_builder_menu' );
|
15 |
-
|
16 |
-
function wpr_addons_theme_builder_page() {
|
17 |
-
|
18 |
-
?>
|
19 |
-
|
20 |
-
<div class="wrap wpr-settings-page-wrap">
|
21 |
-
|
22 |
-
<div class="wpr-settings-page-header">
|
23 |
-
<h1><?php echo esc_html(Utilities::get_plugin_name(true)); ?></h1>
|
24 |
-
<p><?php esc_html_e( 'The most powerful Elementor Addons in the universe.', 'wpr-addons' ); ?></p>
|
25 |
-
|
26 |
-
<!-- Custom Template -->
|
27 |
-
<div class="wpr-preview-buttons">
|
28 |
-
<div class="wpr-user-template">
|
29 |
-
<span><?php esc_html_e( 'Create Template', 'wpr-addons' ); ?></span>
|
30 |
-
<span class="plus-icon">+</span>
|
31 |
-
|
32 |
-
<?php
|
33 |
-
if ( ! class_exists( 'WooCommerce' ) && ('wpr_tab_product_archive' === $_GET['tab'] || 'wpr_tab_product_single' === $_GET['tab'] )) {
|
34 |
-
echo '<div></div>';
|
35 |
-
}
|
36 |
-
?>
|
37 |
-
</div>
|
38 |
-
|
39 |
-
<a href="https://www.youtube.com/watch?v=cwkhwO_rPuo" class="wpr-how-to-use-theme-builder wpr-options-button button" target="_blank" style="padding: 8px 22px;">
|
40 |
-
<?php echo esc_html__( 'How to use Theme Builder', 'wpr-addons' ); ?>
|
41 |
-
<span class="dashicons dashicons-video-alt3"></span>
|
42 |
-
</a>
|
43 |
-
<a href="https://www.youtube.com/watch?v=f_3tNiBC3dw" class="wpr-how-to-use-woo-builder wpr-options-button button" target="_blank" style="padding: 8px 22px;">
|
44 |
-
<?php echo esc_html__( 'How to use WooCommerce Builder', 'wpr-addons' ); ?>
|
45 |
-
<span class="dashicons dashicons-video-alt3"></span>
|
46 |
-
</a>
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
<
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
|
113 |
-
|
114 |
-
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
|
119 |
-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
<?php
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
<?php
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
|
|
|
|
|
|
|
|
|
|
159 |
} // End wpr_addons_theme_builder_page()
|
1 |
+
<?php
|
2 |
+
|
3 |
+
if ( ! defined( 'ABSPATH' ) ) {
|
4 |
+
exit; // Exit if accessed directly.
|
5 |
+
}
|
6 |
+
|
7 |
+
use WprAddons\Admin\Includes\WPR_Templates_Loop;
|
8 |
+
use WprAddons\Classes\Utilities;
|
9 |
+
|
10 |
+
// Register Menus
|
11 |
+
function wpr_addons_add_theme_builder_menu() {
|
12 |
+
add_submenu_page( 'wpr-addons', 'Theme Builder', 'Theme Builder', 'manage_options', 'wpr-theme-builder', 'wpr_addons_theme_builder_page' );
|
13 |
+
}
|
14 |
+
add_action( 'admin_menu', 'wpr_addons_add_theme_builder_menu' );
|
15 |
+
|
16 |
+
function wpr_addons_theme_builder_page() {
|
17 |
+
|
18 |
+
?>
|
19 |
+
|
20 |
+
<div class="wrap wpr-settings-page-wrap">
|
21 |
+
|
22 |
+
<div class="wpr-settings-page-header">
|
23 |
+
<h1><?php echo esc_html(Utilities::get_plugin_name(true)); ?></h1>
|
24 |
+
<p><?php esc_html_e( 'The most powerful Elementor Addons in the universe.', 'wpr-addons' ); ?></p>
|
25 |
+
|
26 |
+
<!-- Custom Template -->
|
27 |
+
<div class="wpr-preview-buttons">
|
28 |
+
<div class="wpr-user-template">
|
29 |
+
<span><?php esc_html_e( 'Create Template', 'wpr-addons' ); ?></span>
|
30 |
+
<span class="plus-icon">+</span>
|
31 |
+
|
32 |
+
<?php
|
33 |
+
if ( ! class_exists( 'WooCommerce' ) && ('wpr_tab_product_archive' === $_GET['tab'] || 'wpr_tab_product_single' === $_GET['tab'] )) {
|
34 |
+
echo '<div></div>';
|
35 |
+
}
|
36 |
+
?>
|
37 |
+
</div>
|
38 |
+
|
39 |
+
<a href="https://www.youtube.com/watch?v=cwkhwO_rPuo" class="wpr-how-to-use-theme-builder wpr-options-button button" target="_blank" style="padding: 8px 22px; margin-left: 10px;">
|
40 |
+
<?php echo esc_html__( 'How to use Theme Builder', 'wpr-addons' ); ?>
|
41 |
+
<span class="dashicons dashicons-video-alt3"></span>
|
42 |
+
</a>
|
43 |
+
<a href="https://www.youtube.com/watch?v=f_3tNiBC3dw" class="wpr-how-to-use-woo-builder wpr-options-button button" target="_blank" style="padding: 8px 22px; margin-left: 10px;">
|
44 |
+
<?php echo esc_html__( 'How to use WooCommerce Builder', 'wpr-addons' ); ?>
|
45 |
+
<span class="dashicons dashicons-video-alt3"></span>
|
46 |
+
</a>
|
47 |
+
|
48 |
+
<a href="https://royaladdons.frill.co/b/6m4d5qm4/feature-ideas" class="wpr-options-button button" target="_blank" style="padding: 8px 22px;">
|
49 |
+
<?php echo esc_html__( 'Request New Feature', 'wpr-addons' ); ?>
|
50 |
+
<span class="dashicons dashicons-star-empty"></span>
|
51 |
+
</a>
|
52 |
+
</div>
|
53 |
+
</div>
|
54 |
+
|
55 |
+
<div class="wpr-settings-page">
|
56 |
+
<form method="post" action="options.php">
|
57 |
+
<?php
|
58 |
+
|
59 |
+
// Active Tab
|
60 |
+
$active_tab = isset( $_GET['tab'] ) ? sanitize_text_field( wp_unslash( $_GET['tab'] ) ) : 'wpr_tab_header';
|
61 |
+
|
62 |
+
?>
|
63 |
+
|
64 |
+
<!-- Template ID Holder -->
|
65 |
+
<input type="hidden" name="wpr_template" id="wpr_template" value="">
|
66 |
+
|
67 |
+
<!-- Conditions Popup -->
|
68 |
+
<?php WPR_Templates_Loop::render_conditions_popup(true); ?>
|
69 |
+
|
70 |
+
<!-- Create Templte Popup -->
|
71 |
+
<?php WPR_Templates_Loop::render_create_template_popup(); ?>
|
72 |
+
|
73 |
+
<!-- Tabs -->
|
74 |
+
<div class="nav-tab-wrapper wpr-nav-tab-wrapper">
|
75 |
+
<a href="?page=wpr-theme-builder&tab=wpr_tab_header" data-title="Header" class="nav-tab <?php echo ($active_tab == 'wpr_tab_header') ? 'nav-tab-active' : ''; ?>">
|
76 |
+
<?php esc_html_e( 'Header', 'wpr-addons' ); ?>
|
77 |
+
</a>
|
78 |
+
<a href="?page=wpr-theme-builder&tab=wpr_tab_footer" data-title="Footer" class="nav-tab <?php echo ($active_tab == 'wpr_tab_footer') ? 'nav-tab-active' : ''; ?>">
|
79 |
+
<?php esc_html_e( 'Footer', 'wpr-addons' ); ?>
|
80 |
+
</a>
|
81 |
+
<a href="?page=wpr-theme-builder&tab=wpr_tab_archive" data-title="Archive" class="nav-tab <?php echo ($active_tab == 'wpr_tab_archive') ? 'nav-tab-active' : ''; ?>">
|
82 |
+
<?php esc_html_e( 'Archive', 'wpr-addons' ); ?>
|
83 |
+
</a>
|
84 |
+
<a href="?page=wpr-theme-builder&tab=wpr_tab_single" data-title="Single" class="nav-tab <?php echo ($active_tab == 'wpr_tab_single') ? 'nav-tab-active' : ''; ?>">
|
85 |
+
<?php esc_html_e( 'Single', 'wpr-addons' ); ?>
|
86 |
+
</a>
|
87 |
+
|
88 |
+
<a href="?page=wpr-theme-builder&tab=wpr_tab_product_archive" data-title="Product Archive" class="nav-tab <?php echo $active_tab == 'wpr_tab_product_archive' ? 'nav-tab-active' : ''; ?>">
|
89 |
+
<?php esc_html_e( 'Product Archive', 'wpr-addons' ); ?>
|
90 |
+
</a>
|
91 |
+
<a href="?page=wpr-theme-builder&tab=wpr_tab_product_single" data-title="Product Single" class="nav-tab <?php echo $active_tab == 'wpr_tab_product_single' ? 'nav-tab-active' : ''; ?>">
|
92 |
+
<?php esc_html_e( 'Product Single', 'wpr-addons' ); ?>
|
93 |
+
</a>
|
94 |
+
|
95 |
+
<a href="?page=wpr-theme-builder&tab=wpr_tab_my_templates" data-title="My Templates" class="nav-tab <?php echo ($active_tab == 'wpr_tab_my_templates') ? 'nav-tab-active' : ''; ?>">
|
96 |
+
<?php esc_html_e( 'Saved Templates', 'wpr-addons' ); ?>
|
97 |
+
</a>
|
98 |
+
</div>
|
99 |
+
|
100 |
+
<?php if ( $active_tab == 'wpr_tab_header' ) : ?>
|
101 |
+
|
102 |
+
<!-- Save Conditions -->
|
103 |
+
<input type="hidden" name="wpr_header_conditions" id="wpr_header_conditions" value="<?php echo esc_attr(get_option('wpr_header_conditions', '[]')); ?>">
|
104 |
+
|
105 |
+
<?php WPR_Templates_Loop::render_theme_builder_templates( 'header' ); ?>
|
106 |
+
|
107 |
+
<?php elseif ( $active_tab == 'wpr_tab_footer' ) : ?>
|
108 |
+
|
109 |
+
<!-- Save Conditions -->
|
110 |
+
<input type="hidden" name="wpr_footer_conditions" id="wpr_footer_conditions" value="<?php echo esc_attr(get_option('wpr_footer_conditions', '[]')); ?>">
|
111 |
+
|
112 |
+
<?php WPR_Templates_Loop::render_theme_builder_templates( 'footer' ); ?>
|
113 |
+
|
114 |
+
<?php elseif ( $active_tab == 'wpr_tab_archive' ) : ?>
|
115 |
+
|
116 |
+
<!-- Save Conditions -->
|
117 |
+
<input type="hidden" name="wpr_archive_conditions" id="wpr_archive_conditions" value="<?php echo esc_attr(get_option('wpr_archive_conditions', '[]')); ?>">
|
118 |
+
|
119 |
+
<?php WPR_Templates_Loop::render_theme_builder_templates( 'archive' ); ?>
|
120 |
+
|
121 |
+
<?php elseif ( $active_tab == 'wpr_tab_single' ) : ?>
|
122 |
+
|
123 |
+
<!-- Save Conditions -->
|
124 |
+
<input type="hidden" name="wpr_single_conditions" id="wpr_single_conditions" value="<?php echo esc_attr(get_option('wpr_single_conditions', '[]')); ?>">
|
125 |
+
|
126 |
+
<?php WPR_Templates_Loop::render_theme_builder_templates( 'single' ); ?>
|
127 |
+
|
128 |
+
<?php elseif ( $active_tab == 'wpr_tab_product_archive' ) : ?>
|
129 |
+
|
130 |
+
<?php if ( class_exists( 'WooCommerce' ) ) : ?>
|
131 |
+
<!-- Save Conditions -->
|
132 |
+
<input type="hidden" name="wpr_product_archive_conditions" id="wpr_product_archive_conditions" value="<?php echo esc_attr(get_option('wpr_product_archive_conditions', '[]')); ?>">
|
133 |
+
|
134 |
+
<?php WPR_Templates_Loop::render_theme_builder_templates( 'product_archive' ); ?>
|
135 |
+
<?php else : ?>
|
136 |
+
<div class="wpr-activate-woo-notice"><span class="dashicons dashicons-info-outline"></span> Please install/activate WooCommerce in order to create product archive templates!</div>
|
137 |
+
<?php endif; ?>
|
138 |
+
|
139 |
+
<?php elseif ( $active_tab == 'wpr_tab_product_single' ) : ?>
|
140 |
+
|
141 |
+
<?php if ( class_exists( 'WooCommerce' ) ) : ?>
|
142 |
+
<!-- Save Conditions -->
|
143 |
+
<input type="hidden" name="wpr_product_single_conditions" id="wpr_product_single_conditions" value="<?php echo esc_attr(get_option('wpr_product_single_conditions', '[]')); ?>">
|
144 |
+
|
145 |
+
<?php WPR_Templates_Loop::render_theme_builder_templates( 'product_single' ); ?>
|
146 |
+
<?php else : ?>
|
147 |
+
<div class="wpr-activate-woo-notice"><span class="dashicons dashicons-info-outline"></span> Please install/activate WooCommerce in order to create product single templates!</div>
|
148 |
+
<?php endif ; ?>
|
149 |
+
|
150 |
+
<?php elseif ( $active_tab == 'wpr_tab_my_templates' ) : ?>
|
151 |
+
|
152 |
+
<?php Wpr_Templates_Loop::render_elementor_saved_templates(); ?>
|
153 |
+
|
154 |
+
<?php endif; ?>
|
155 |
+
|
156 |
+
</form>
|
157 |
+
</div>
|
158 |
+
|
159 |
+
</div>
|
160 |
+
|
161 |
+
|
162 |
+
<?php
|
163 |
+
|
164 |
} // End wpr_addons_theme_builder_page()
|
assets/css/admin/mega-menu.css
CHANGED
@@ -1,444 +1,444 @@
|
|
1 |
-
.wpr-mm-settings-btn {
|
2 |
-
visibility: hidden;
|
3 |
-
opacity: 0;
|
4 |
-
}
|
5 |
-
|
6 |
-
.menu-item-depth-0:hover .wpr-mm-settings-btn {
|
7 |
-
visibility: visible;
|
8 |
-
opacity: 1;
|
9 |
-
}
|
10 |
-
|
11 |
-
.wpr-mm-settings-btn {
|
12 |
-
position: absolute;
|
13 |
-
top: 5px;
|
14 |
-
left: 260px;
|
15 |
-
display: -webkit-box;
|
16 |
-
display: -ms-flexbox;
|
17 |
-
display: flex;
|
18 |
-
-webkit-box-align: center;
|
19 |
-
-ms-flex-align: center;
|
20 |
-
align-items: center;
|
21 |
-
padding: 5px 14px 7px;
|
22 |
-
color: #fff;
|
23 |
-
background: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
24 |
-
background: -o-linear-gradient(#6A4BFF, #7E94FE);
|
25 |
-
background: linear-gradient(#6A4BFF, #7E94FE);
|
26 |
-
font-weight: 500;
|
27 |
-
border-radius: 3px;
|
28 |
-
cursor: pointer;
|
29 |
-
}
|
30 |
-
|
31 |
-
.wpr-mm-settings-btn span {
|
32 |
-
content: 'R';
|
33 |
-
display: inline-block;
|
34 |
-
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
35 |
-
font-size: 8px;
|
36 |
-
font-weight: bold;
|
37 |
-
text-align: center;
|
38 |
-
color: #ffffff;
|
39 |
-
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
40 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
41 |
-
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
42 |
-
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
43 |
-
box-shadow: 0 0 2px 2px #b8c7ff;
|
44 |
-
width: 16px;
|
45 |
-
height: 16px;
|
46 |
-
line-height: 16px;
|
47 |
-
border-radius: 15px;
|
48 |
-
margin-right: 7px;
|
49 |
-
}
|
50 |
-
|
51 |
-
.wpr-mm-settings-popup-wrap {
|
52 |
-
display: none;
|
53 |
-
position: absolute;
|
54 |
-
top: 0;
|
55 |
-
left: 0;
|
56 |
-
right: 0;
|
57 |
-
bottom: 0;
|
58 |
-
z-index: 9999999;
|
59 |
-
background-color: rgba(0,0,0,0.3);
|
60 |
-
}
|
61 |
-
|
62 |
-
.wpr-mm-settings-popup {
|
63 |
-
position: fixed;
|
64 |
-
top: 50%;
|
65 |
-
left: 50%;
|
66 |
-
-webkit-transform: translate(-50%,-50%);
|
67 |
-
-ms-transform: translate(-50%,-50%);
|
68 |
-
transform: translate(-50%,-50%);
|
69 |
-
width: 100%;
|
70 |
-
max-width: 700px;
|
71 |
-
margin-left: 80px;
|
72 |
-
background-color: #fff;
|
73 |
-
-webkit-box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
|
74 |
-
box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
|
75 |
-
}
|
76 |
-
|
77 |
-
.wpr-mm-popup-title {
|
78 |
-
margin-left: auto;
|
79 |
-
margin-right: 10px;
|
80 |
-
border: 1px solid #dcdcde;
|
81 |
-
background-color: #f6f7f7;
|
82 |
-
padding: 2px 10px 4px;
|
83 |
-
}
|
84 |
-
|
85 |
-
.wpr-mm-settings-close-popup-btn {
|
86 |
-
cursor: pointer;
|
87 |
-
}
|
88 |
-
|
89 |
-
.wpr-mm-settings-popup-header {
|
90 |
-
display: -webkit-box;
|
91 |
-
display: -ms-flexbox;
|
92 |
-
display: flex;
|
93 |
-
-webkit-box-align: center;
|
94 |
-
-ms-flex-align: center;
|
95 |
-
align-items: center;
|
96 |
-
padding: 10px;
|
97 |
-
border-bottom: 1px solid #e8e8e8;
|
98 |
-
font-weight: 500;
|
99 |
-
}
|
100 |
-
|
101 |
-
.wpr-mm-popup-logo {
|
102 |
-
padding: 3px;
|
103 |
-
margin-right: 10px;
|
104 |
-
border-radius: 50%;
|
105 |
-
color: transparent;
|
106 |
-
font-family: Arial,Helvetica,sans-serif;
|
107 |
-
font-size: 14px;
|
108 |
-
font-weight: bold;
|
109 |
-
letter-spacing: 0.3px;
|
110 |
-
}
|
111 |
-
|
112 |
-
.wpr-mm-settings-popup-footer {
|
113 |
-
display: -webkit-box;
|
114 |
-
display: -ms-flexbox;
|
115 |
-
display: flex;
|
116 |
-
-webkit-box-pack: end;
|
117 |
-
-ms-flex-pack: end;
|
118 |
-
justify-content: flex-end;
|
119 |
-
padding: 10px;
|
120 |
-
border-top: 1px solid #e8e8e8;
|
121 |
-
}
|
122 |
-
|
123 |
-
.button.wpr-save-mega-menu-btn {
|
124 |
-
min-height: 0;
|
125 |
-
padding: 6px 18px 7px;
|
126 |
-
color: #fff;
|
127 |
-
background: #6A4BFF;
|
128 |
-
border-radius: 3px;
|
129 |
-
font-size: 12px;
|
130 |
-
text-transform: uppercase;
|
131 |
-
letter-spacing: 0.5px;
|
132 |
-
font-weight: 600;
|
133 |
-
cursor: pointer;
|
134 |
-
line-height: 1;
|
135 |
-
-webkit-box-shadow: none !important;
|
136 |
-
box-shadow: none !important;
|
137 |
-
}
|
138 |
-
|
139 |
-
.button.wpr-save-mega-menu-btn:hover {
|
140 |
-
color: #fff;
|
141 |
-
background: #5537e1;
|
142 |
-
}
|
143 |
-
|
144 |
-
.wpr-save-mega-menu-btn .dashicons {
|
145 |
-
display: inline;
|
146 |
-
line-height: 8px;
|
147 |
-
font-size: 14px;
|
148 |
-
vertical-align: sub;
|
149 |
-
}
|
150 |
-
|
151 |
-
.wpr-mm-settings-wrap {
|
152 |
-
height: 60vh;
|
153 |
-
overflow-y: scroll;
|
154 |
-
padding: 20px;
|
155 |
-
}
|
156 |
-
|
157 |
-
.wpr-mm-settings-wrap > h4 {
|
158 |
-
padding: 5px 10px 7px;
|
159 |
-
background-color: #f5f3f3;
|
160 |
-
margin: 5px 0;
|
161 |
-
}
|
162 |
-
|
163 |
-
.wpr-mm-setting {
|
164 |
-
display: -webkit-box;
|
165 |
-
display: -ms-flexbox;
|
166 |
-
display: flex;
|
167 |
-
-webkit-box-align: center;
|
168 |
-
-ms-flex-align: center;
|
169 |
-
align-items: center;
|
170 |
-
padding: 10px;
|
171 |
-
}
|
172 |
-
|
173 |
-
.wpr-mm-setting h4 {
|
174 |
-
width: 200px;
|
175 |
-
margin: 0;
|
176 |
-
}
|
177 |
-
|
178 |
-
.wpr-mm-setting > div,
|
179 |
-
.wpr-mm-setting select,
|
180 |
-
.wpr-mm-setting input[type="text"] {
|
181 |
-
width: 168px;
|
182 |
-
}
|
183 |
-
|
184 |
-
.wpr-mm-setting input[type="number"] {
|
185 |
-
width: 103px;
|
186 |
-
}
|
187 |
-
|
188 |
-
.wpr-mm-setting-switcher input {
|
189 |
-
position: absolute;
|
190 |
-
z-index: -1000;
|
191 |
-
left: -1000px;
|
192 |
-
overflow: hidden;
|
193 |
-
clip: rect(0 0 0 0);
|
194 |
-
height: 1px;
|
195 |
-
width: 1px;
|
196 |
-
margin: -1px;
|
197 |
-
padding: 0;
|
198 |
-
border: 0;
|
199 |
-
}
|
200 |
-
|
201 |
-
.wpr-mm-setting-switcher label {
|
202 |
-
position: relative;
|
203 |
-
display: block;
|
204 |
-
width: 45px;
|
205 |
-
height: 23px;
|
206 |
-
border-radius: 20px;
|
207 |
-
background: #e8e8e8;
|
208 |
-
cursor: pointer;
|
209 |
-
-webkit-touch-callout: none;
|
210 |
-
-webkit-user-select: none;
|
211 |
-
-moz-user-select: none;
|
212 |
-
-ms-user-select: none;
|
213 |
-
user-select: none;
|
214 |
-
-webkit-transition: all 0.2s ease-in;
|
215 |
-
-o-transition: all 0.2s ease-in;
|
216 |
-
transition: all 0.2s ease-in;
|
217 |
-
}
|
218 |
-
|
219 |
-
.wpr-mm-setting-switcher input + label:after {
|
220 |
-
content: ' ';
|
221 |
-
display: block;
|
222 |
-
position: absolute;
|
223 |
-
top: 3px;
|
224 |
-
left: 3px;
|
225 |
-
width: 17px;
|
226 |
-
height: 17px;
|
227 |
-
border-radius: 50%;
|
228 |
-
background: #fff;
|
229 |
-
-webkit-transition: all 0.2s ease-in;
|
230 |
-
-o-transition: all 0.2s ease-in;
|
231 |
-
transition: all 0.2s ease-in;
|
232 |
-
}
|
233 |
-
|
234 |
-
.wpr-mm-setting-switcher input:checked + label {
|
235 |
-
background: #6A4BFF;
|
236 |
-
}
|
237 |
-
|
238 |
-
.wpr-mm-setting-switcher input:checked + label:after {
|
239 |
-
left: 24px;
|
240 |
-
}
|
241 |
-
|
242 |
-
button.wpr-edit-mega-menu-btn {
|
243 |
-
padding: 3px 22px !important;
|
244 |
-
font-size: 12px !important;
|
245 |
-
}
|
246 |
-
|
247 |
-
.wpr-edit-mega-menu-btn i {
|
248 |
-
font-size: 125%;
|
249 |
-
margin-right: 3px;
|
250 |
-
}
|
251 |
-
|
252 |
-
.wpr-mm-editor-popup-wrap {
|
253 |
-
display: none;
|
254 |
-
position: fixed;
|
255 |
-
top: 0;
|
256 |
-
left: 0;
|
257 |
-
width: 100%;
|
258 |
-
height: 100%;
|
259 |
-
background: rgba(0,0,0,0.5);
|
260 |
-
z-index: 99999999;
|
261 |
-
}
|
262 |
-
|
263 |
-
.wpr-mm-editor-popup-iframe {
|
264 |
-
width: calc(100vw - 70px);
|
265 |
-
height: calc(100vh - 70px);
|
266 |
-
margin: 35px 25px;
|
267 |
-
background-color: #f9f9f9;
|
268 |
-
-webkit-box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
|
269 |
-
box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
|
270 |
-
}
|
271 |
-
|
272 |
-
.wpr-mm-editor-close-popup-btn {
|
273 |
-
position: absolute;
|
274 |
-
top: 40px;
|
275 |
-
right: 55px;
|
276 |
-
font-size: 50px !important;
|
277 |
-
}
|
278 |
-
|
279 |
-
.wpr-mm-editor-close-popup-btn span {
|
280 |
-
color: #444;
|
281 |
-
font-size: 25px;
|
282 |
-
cursor: pointer;
|
283 |
-
}
|
284 |
-
|
285 |
-
.wpr-mm-editor-close-popup-btn span:hover {
|
286 |
-
color: #888;
|
287 |
-
}
|
288 |
-
|
289 |
-
.wpr-mm-setting-radius div {
|
290 |
-
display: -webkit-box;
|
291 |
-
display: -ms-flexbox;
|
292 |
-
display: flex;
|
293 |
-
}
|
294 |
-
|
295 |
-
.wpr-mm-setting-icon div span {
|
296 |
-
display: -webkit-inline-box;
|
297 |
-
display: -ms-inline-flexbox;
|
298 |
-
display: inline-flex;
|
299 |
-
-webkit-box-align: center;
|
300 |
-
-ms-flex-align: center;
|
301 |
-
align-items: center;
|
302 |
-
-webkit-box-pack: center;
|
303 |
-
-ms-flex-pack: center;
|
304 |
-
justify-content: center;
|
305 |
-
width: 30px;
|
306 |
-
height: 30px;
|
307 |
-
border: 1px solid #a4afb7;
|
308 |
-
cursor: pointer;
|
309 |
-
}
|
310 |
-
|
311 |
-
.wpr-mm-setting-icon div span.wpr-mm-active-icon {
|
312 |
-
background-color: #a4afb7;
|
313 |
-
color: #fff;
|
314 |
-
}
|
315 |
-
|
316 |
-
.wpr-mm-setting-icon div span:first-child {
|
317 |
-
border-radius: 3px 0 0 3px;
|
318 |
-
}
|
319 |
-
|
320 |
-
.wpr-mm-setting-icon div span:last-child {
|
321 |
-
border-radius: 0 3px 3px 0;
|
322 |
-
}
|
323 |
-
|
324 |
-
.wpr-mm-setting-icon input[type="text"] {
|
325 |
-
width: 0;
|
326 |
-
padding: 0;
|
327 |
-
border: 0;
|
328 |
-
-webkit-box-shadow: none !important;
|
329 |
-
box-shadow: none !important;
|
330 |
-
margin-left: -15px;
|
331 |
-
}
|
332 |
-
|
333 |
-
.wpr-mm-setting.iconpicker-container .iconpicker-popover {
|
334 |
-
padding: 5px;
|
335 |
-
}
|
336 |
-
|
337 |
-
.wpr-mm-setting.iconpicker-container .popover-title {
|
338 |
-
padding: 0;
|
339 |
-
}
|
340 |
-
|
341 |
-
.wpr-mm-setting.iconpicker-container input[type="search"] {
|
342 |
-
padding: 5px 10px;
|
343 |
-
margin: 0 !important;
|
344 |
-
border: 0;
|
345 |
-
width: 100%;
|
346 |
-
}
|
347 |
-
|
348 |
-
.wpr-mm-setting.iconpicker-container .arrow {
|
349 |
-
border-bottom-color: #f7f7f7 !important;
|
350 |
-
top: -8px !important;
|
351 |
-
}
|
352 |
-
|
353 |
-
.wp-picker-input-wrap .wp-picker-container {
|
354 |
-
display: none;
|
355 |
-
}
|
356 |
-
|
357 |
-
.wpr-mm-setting select,
|
358 |
-
.wpr-mm-setting input:not(.iconpicker-input),
|
359 |
-
.wpr-mm-setting button {
|
360 |
-
border: 1px solid #e5e5e5 !important;
|
361 |
-
}
|
362 |
-
|
363 |
-
/* Pro Options */
|
364 |
-
.wpr-mm-pro-setting h4:after,
|
365 |
-
h4.wpr-mm-pro-heading:after {
|
366 |
-
content: 'PRO';
|
367 |
-
margin-left: 5px;
|
368 |
-
padding: 1px 7px 2px;
|
369 |
-
color: #fff;
|
370 |
-
background-color: #f44;
|
371 |
-
border-radius: 3px;
|
372 |
-
font-size: 10px;
|
373 |
-
font-weight: bold;
|
374 |
-
letter-spacing: 1px;
|
375 |
-
}
|
376 |
-
|
377 |
-
.wpr-mm-pro-section,
|
378 |
-
.wpr-mm-pro-setting > div {
|
379 |
-
position: relative;
|
380 |
-
}
|
381 |
-
|
382 |
-
.wpr-mm-pro-section:before,
|
383 |
-
.wpr-mm-pro-setting > div:before {
|
384 |
-
content: 'Please upgrade to the Pro Version to access this options.';
|
385 |
-
display: none;
|
386 |
-
position: absolute;
|
387 |
-
left: -20px;
|
388 |
-
top: -65px;
|
389 |
-
z-index: 2;
|
390 |
-
width: 210px;
|
391 |
-
padding: 10px;
|
392 |
-
font-size: 12px;
|
393 |
-
background-color: #fff;
|
394 |
-
-webkit-box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
|
395 |
-
box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
|
396 |
-
border: 1px solid #e8e8e8;
|
397 |
-
border-radius: 4px;
|
398 |
-
text-align: center;
|
399 |
-
}
|
400 |
-
|
401 |
-
.wpr-mm-pro-section:before {
|
402 |
-
content: 'Please upgrade to the Pro Version to access these options.';
|
403 |
-
top: 50%;
|
404 |
-
left: 50%;
|
405 |
-
-webkit-transform: translateX(-50%) translateY(-50%);
|
406 |
-
-ms-transform: translateX(-50%) translateY(-50%);
|
407 |
-
transform: translateX(-50%) translateY(-50%);
|
408 |
-
padding: 20px 30px;
|
409 |
-
font-size: 13px;
|
410 |
-
}
|
411 |
-
|
412 |
-
.wpr-mm-pro-section:hover:before,
|
413 |
-
.wpr-mm-pro-setting > div:hover:before {
|
414 |
-
display: block;
|
415 |
-
}
|
416 |
-
|
417 |
-
.wpr-mm-pro-setting > div:after,
|
418 |
-
.wpr-mm-pro-section:after {
|
419 |
-
content: '';
|
420 |
-
position: absolute;
|
421 |
-
top: 0;
|
422 |
-
left: 0;
|
423 |
-
z-index: 1;
|
424 |
-
width: 100%;
|
425 |
-
height: 100%;
|
426 |
-
background: rgba(0,0,0,0.1);
|
427 |
-
}
|
428 |
-
|
429 |
-
.wpr-mm-pro-setting select {
|
430 |
-
display: none;
|
431 |
-
}
|
432 |
-
|
433 |
-
.wpr-mm-pro-setting .wpr-mm-pro-radio {
|
434 |
-
display: block;
|
435 |
-
}
|
436 |
-
|
437 |
-
.wpr-mm-pro-radio {
|
438 |
-
display: none;
|
439 |
-
padding: 5px 10px;
|
440 |
-
}
|
441 |
-
|
442 |
-
.wpr-mm-setting select option[value*="pro-"] {
|
443 |
-
background-color: rgba(0,0,0,0.2);
|
444 |
}
|
1 |
+
.wpr-mm-settings-btn {
|
2 |
+
visibility: hidden;
|
3 |
+
opacity: 0;
|
4 |
+
}
|
5 |
+
|
6 |
+
.menu-item-depth-0:hover .wpr-mm-settings-btn {
|
7 |
+
visibility: visible;
|
8 |
+
opacity: 1;
|
9 |
+
}
|
10 |
+
|
11 |
+
.wpr-mm-settings-btn {
|
12 |
+
position: absolute;
|
13 |
+
top: 5px;
|
14 |
+
left: 260px;
|
15 |
+
display: -webkit-box;
|
16 |
+
display: -ms-flexbox;
|
17 |
+
display: flex;
|
18 |
+
-webkit-box-align: center;
|
19 |
+
-ms-flex-align: center;
|
20 |
+
align-items: center;
|
21 |
+
padding: 5px 14px 7px;
|
22 |
+
color: #fff;
|
23 |
+
background: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
24 |
+
background: -o-linear-gradient(#6A4BFF, #7E94FE);
|
25 |
+
background: linear-gradient(#6A4BFF, #7E94FE);
|
26 |
+
font-weight: 500;
|
27 |
+
border-radius: 3px;
|
28 |
+
cursor: pointer;
|
29 |
+
}
|
30 |
+
|
31 |
+
.wpr-mm-settings-btn span {
|
32 |
+
content: 'R';
|
33 |
+
display: inline-block;
|
34 |
+
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
35 |
+
font-size: 8px;
|
36 |
+
font-weight: bold;
|
37 |
+
text-align: center;
|
38 |
+
color: #ffffff;
|
39 |
+
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
40 |
+
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
41 |
+
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
42 |
+
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
43 |
+
box-shadow: 0 0 2px 2px #b8c7ff;
|
44 |
+
width: 16px;
|
45 |
+
height: 16px;
|
46 |
+
line-height: 16px;
|
47 |
+
border-radius: 15px;
|
48 |
+
margin-right: 7px;
|
49 |
+
}
|
50 |
+
|
51 |
+
.wpr-mm-settings-popup-wrap {
|
52 |
+
display: none;
|
53 |
+
position: absolute;
|
54 |
+
top: 0;
|
55 |
+
left: 0;
|
56 |
+
right: 0;
|
57 |
+
bottom: 0;
|
58 |
+
z-index: 9999999;
|
59 |
+
background-color: rgba(0,0,0,0.3);
|
60 |
+
}
|
61 |
+
|
62 |
+
.wpr-mm-settings-popup {
|
63 |
+
position: fixed;
|
64 |
+
top: 50%;
|
65 |
+
left: 50%;
|
66 |
+
-webkit-transform: translate(-50%,-50%);
|
67 |
+
-ms-transform: translate(-50%,-50%);
|
68 |
+
transform: translate(-50%,-50%);
|
69 |
+
width: 100%;
|
70 |
+
max-width: 700px;
|
71 |
+
margin-left: 80px;
|
72 |
+
background-color: #fff;
|
73 |
+
-webkit-box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
|
74 |
+
box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
|
75 |
+
}
|
76 |
+
|
77 |
+
.wpr-mm-popup-title {
|
78 |
+
margin-left: auto;
|
79 |
+
margin-right: 10px;
|
80 |
+
border: 1px solid #dcdcde;
|
81 |
+
background-color: #f6f7f7;
|
82 |
+
padding: 2px 10px 4px;
|
83 |
+
}
|
84 |
+
|
85 |
+
.wpr-mm-settings-close-popup-btn {
|
86 |
+
cursor: pointer;
|
87 |
+
}
|
88 |
+
|
89 |
+
.wpr-mm-settings-popup-header {
|
90 |
+
display: -webkit-box;
|
91 |
+
display: -ms-flexbox;
|
92 |
+
display: flex;
|
93 |
+
-webkit-box-align: center;
|
94 |
+
-ms-flex-align: center;
|
95 |
+
align-items: center;
|
96 |
+
padding: 10px;
|
97 |
+
border-bottom: 1px solid #e8e8e8;
|
98 |
+
font-weight: 500;
|
99 |
+
}
|
100 |
+
|
101 |
+
.wpr-mm-popup-logo {
|
102 |
+
padding: 3px;
|
103 |
+
margin-right: 10px;
|
104 |
+
border-radius: 50%;
|
105 |
+
color: transparent;
|
106 |
+
font-family: Arial,Helvetica,sans-serif;
|
107 |
+
font-size: 14px;
|
108 |
+
font-weight: bold;
|
109 |
+
letter-spacing: 0.3px;
|
110 |
+
}
|
111 |
+
|
112 |
+
.wpr-mm-settings-popup-footer {
|
113 |
+
display: -webkit-box;
|
114 |
+
display: -ms-flexbox;
|
115 |
+
display: flex;
|
116 |
+
-webkit-box-pack: end;
|
117 |
+
-ms-flex-pack: end;
|
118 |
+
justify-content: flex-end;
|
119 |
+
padding: 10px;
|
120 |
+
border-top: 1px solid #e8e8e8;
|
121 |
+
}
|
122 |
+
|
123 |
+
.button.wpr-save-mega-menu-btn {
|
124 |
+
min-height: 0;
|
125 |
+
padding: 6px 18px 7px;
|
126 |
+
color: #fff;
|
127 |
+
background: #6A4BFF;
|
128 |
+
border-radius: 3px;
|
129 |
+
font-size: 12px;
|
130 |
+
text-transform: uppercase;
|
131 |
+
letter-spacing: 0.5px;
|
132 |
+
font-weight: 600;
|
133 |
+
cursor: pointer;
|
134 |
+
line-height: 1;
|
135 |
+
-webkit-box-shadow: none !important;
|
136 |
+
box-shadow: none !important;
|
137 |
+
}
|
138 |
+
|
139 |
+
.button.wpr-save-mega-menu-btn:hover {
|
140 |
+
color: #fff;
|
141 |
+
background: #5537e1;
|
142 |
+
}
|
143 |
+
|
144 |
+
.wpr-save-mega-menu-btn .dashicons {
|
145 |
+
display: inline;
|
146 |
+
line-height: 8px;
|
147 |
+
font-size: 14px;
|
148 |
+
vertical-align: sub;
|
149 |
+
}
|
150 |
+
|
151 |
+
.wpr-mm-settings-wrap {
|
152 |
+
height: 60vh;
|
153 |
+
overflow-y: scroll;
|
154 |
+
padding: 20px;
|
155 |
+
}
|
156 |
+
|
157 |
+
.wpr-mm-settings-wrap > h4 {
|
158 |
+
padding: 5px 10px 7px;
|
159 |
+
background-color: #f5f3f3;
|
160 |
+
margin: 5px 0;
|
161 |
+
}
|
162 |
+
|
163 |
+
.wpr-mm-setting {
|
164 |
+
display: -webkit-box;
|
165 |
+
display: -ms-flexbox;
|
166 |
+
display: flex;
|
167 |
+
-webkit-box-align: center;
|
168 |
+
-ms-flex-align: center;
|
169 |
+
align-items: center;
|
170 |
+
padding: 10px;
|
171 |
+
}
|
172 |
+
|
173 |
+
.wpr-mm-setting h4 {
|
174 |
+
width: 200px;
|
175 |
+
margin: 0;
|
176 |
+
}
|
177 |
+
|
178 |
+
.wpr-mm-setting > div,
|
179 |
+
.wpr-mm-setting select,
|
180 |
+
.wpr-mm-setting input[type="text"] {
|
181 |
+
width: 168px;
|
182 |
+
}
|
183 |
+
|
184 |
+
.wpr-mm-setting input[type="number"] {
|
185 |
+
width: 103px;
|
186 |
+
}
|
187 |
+
|
188 |
+
.wpr-mm-setting-switcher input {
|
189 |
+
position: absolute;
|
190 |
+
z-index: -1000;
|
191 |
+
left: -1000px;
|
192 |
+
overflow: hidden;
|
193 |
+
clip: rect(0 0 0 0);
|
194 |
+
height: 1px;
|
195 |
+
width: 1px;
|
196 |
+
margin: -1px;
|
197 |
+
padding: 0;
|
198 |
+
border: 0;
|
199 |
+
}
|
200 |
+
|
201 |
+
.wpr-mm-setting-switcher label {
|
202 |
+
position: relative;
|
203 |
+
display: block;
|
204 |
+
width: 45px;
|
205 |
+
height: 23px;
|
206 |
+
border-radius: 20px;
|
207 |
+
background: #e8e8e8;
|
208 |
+
cursor: pointer;
|
209 |
+
-webkit-touch-callout: none;
|
210 |
+
-webkit-user-select: none;
|
211 |
+
-moz-user-select: none;
|
212 |
+
-ms-user-select: none;
|
213 |
+
user-select: none;
|
214 |
+
-webkit-transition: all 0.2s ease-in;
|
215 |
+
-o-transition: all 0.2s ease-in;
|
216 |
+
transition: all 0.2s ease-in;
|
217 |
+
}
|
218 |
+
|
219 |
+
.wpr-mm-setting-switcher input + label:after {
|
220 |
+
content: ' ';
|
221 |
+
display: block;
|
222 |
+
position: absolute;
|
223 |
+
top: 3px;
|
224 |
+
left: 3px;
|
225 |
+
width: 17px;
|
226 |
+
height: 17px;
|
227 |
+
border-radius: 50%;
|
228 |
+
background: #fff;
|
229 |
+
-webkit-transition: all 0.2s ease-in;
|
230 |
+
-o-transition: all 0.2s ease-in;
|
231 |
+
transition: all 0.2s ease-in;
|
232 |
+
}
|
233 |
+
|
234 |
+
.wpr-mm-setting-switcher input:checked + label {
|
235 |
+
background: #6A4BFF;
|
236 |
+
}
|
237 |
+
|
238 |
+
.wpr-mm-setting-switcher input:checked + label:after {
|
239 |
+
left: 24px;
|
240 |
+
}
|
241 |
+
|
242 |
+
button.wpr-edit-mega-menu-btn {
|
243 |
+
padding: 3px 22px !important;
|
244 |
+
font-size: 12px !important;
|
245 |
+
}
|
246 |
+
|
247 |
+
.wpr-edit-mega-menu-btn i {
|
248 |
+
font-size: 125%;
|
249 |
+
margin-right: 3px;
|
250 |
+
}
|
251 |
+
|
252 |
+
.wpr-mm-editor-popup-wrap {
|
253 |
+
display: none;
|
254 |
+
position: fixed;
|
255 |
+
top: 0;
|
256 |
+
left: 0;
|
257 |
+
width: 100%;
|
258 |
+
height: 100%;
|
259 |
+
background: rgba(0,0,0,0.5);
|
260 |
+
z-index: 99999999;
|
261 |
+
}
|
262 |
+
|
263 |
+
.wpr-mm-editor-popup-iframe {
|
264 |
+
width: calc(100vw - 70px);
|
265 |
+
height: calc(100vh - 70px);
|
266 |
+
margin: 35px 25px;
|
267 |
+
background-color: #f9f9f9;
|
268 |
+
-webkit-box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
|
269 |
+
box-shadow: 2px 2px 8px rgba(0,0,0,0.3);
|
270 |
+
}
|
271 |
+
|
272 |
+
.wpr-mm-editor-close-popup-btn {
|
273 |
+
position: absolute;
|
274 |
+
top: 40px;
|
275 |
+
right: 55px;
|
276 |
+
font-size: 50px !important;
|
277 |
+
}
|
278 |
+
|
279 |
+
.wpr-mm-editor-close-popup-btn span {
|
280 |
+
color: #444;
|
281 |
+
font-size: 25px;
|
282 |
+
cursor: pointer;
|
283 |
+
}
|
284 |
+
|
285 |
+
.wpr-mm-editor-close-popup-btn span:hover {
|
286 |
+
color: #888;
|
287 |
+
}
|
288 |
+
|
289 |
+
.wpr-mm-setting-radius div {
|
290 |
+
display: -webkit-box;
|
291 |
+
display: -ms-flexbox;
|
292 |
+
display: flex;
|
293 |
+
}
|
294 |
+
|
295 |
+
.wpr-mm-setting-icon div span {
|
296 |
+
display: -webkit-inline-box;
|
297 |
+
display: -ms-inline-flexbox;
|
298 |
+
display: inline-flex;
|
299 |
+
-webkit-box-align: center;
|
300 |
+
-ms-flex-align: center;
|
301 |
+
align-items: center;
|
302 |
+
-webkit-box-pack: center;
|
303 |
+
-ms-flex-pack: center;
|
304 |
+
justify-content: center;
|
305 |
+
width: 30px;
|
306 |
+
height: 30px;
|
307 |
+
border: 1px solid #a4afb7;
|
308 |
+
cursor: pointer;
|
309 |
+
}
|
310 |
+
|
311 |
+
.wpr-mm-setting-icon div span.wpr-mm-active-icon {
|
312 |
+
background-color: #a4afb7;
|
313 |
+
color: #fff;
|
314 |
+
}
|
315 |
+
|
316 |
+
.wpr-mm-setting-icon div span:first-child {
|
317 |
+
border-radius: 3px 0 0 3px;
|
318 |
+
}
|
319 |
+
|
320 |
+
.wpr-mm-setting-icon div span:last-child {
|
321 |
+
border-radius: 0 3px 3px 0;
|
322 |
+
}
|
323 |
+
|
324 |
+
.wpr-mm-setting-icon input[type="text"] {
|
325 |
+
width: 0;
|
326 |
+
padding: 0;
|
327 |
+
border: 0;
|
328 |
+
-webkit-box-shadow: none !important;
|
329 |
+
box-shadow: none !important;
|
330 |
+
margin-left: -15px;
|
331 |
+
}
|
332 |
+
|
333 |
+
.wpr-mm-setting.iconpicker-container .iconpicker-popover {
|
334 |
+
padding: 5px;
|
335 |
+
}
|
336 |
+
|
337 |
+
.wpr-mm-setting.iconpicker-container .popover-title {
|
338 |
+
padding: 0;
|
339 |
+
}
|
340 |
+
|
341 |
+
.wpr-mm-setting.iconpicker-container input[type="search"] {
|
342 |
+
padding: 5px 10px;
|
343 |
+
margin: 0 !important;
|
344 |
+
border: 0;
|
345 |
+
width: 100%;
|
346 |
+
}
|
347 |
+
|
348 |
+
.wpr-mm-setting.iconpicker-container .arrow {
|
349 |
+
border-bottom-color: #f7f7f7 !important;
|
350 |
+
top: -8px !important;
|
351 |
+
}
|
352 |
+
|
353 |
+
.wp-picker-input-wrap .wp-picker-container {
|
354 |
+
display: none;
|
355 |
+
}
|
356 |
+
|
357 |
+
.wpr-mm-setting select,
|
358 |
+
.wpr-mm-setting input:not(.iconpicker-input),
|
359 |
+
.wpr-mm-setting button {
|
360 |
+
border: 1px solid #e5e5e5 !important;
|
361 |
+
}
|
362 |
+
|
363 |
+
/* Pro Options */
|
364 |
+
.wpr-mm-pro-setting h4:after,
|
365 |
+
h4.wpr-mm-pro-heading:after {
|
366 |
+
content: 'PRO';
|
367 |
+
margin-left: 5px;
|
368 |
+
padding: 1px 7px 2px;
|
369 |
+
color: #fff;
|
370 |
+
background-color: #f44;
|
371 |
+
border-radius: 3px;
|
372 |
+
font-size: 10px;
|
373 |
+
font-weight: bold;
|
374 |
+
letter-spacing: 1px;
|
375 |
+
}
|
376 |
+
|
377 |
+
.wpr-mm-pro-section,
|
378 |
+
.wpr-mm-pro-setting > div {
|
379 |
+
position: relative;
|
380 |
+
}
|
381 |
+
|
382 |
+
.wpr-mm-pro-section:before,
|
383 |
+
.wpr-mm-pro-setting > div:before {
|
384 |
+
content: 'Please upgrade to the Pro Version to access this options.';
|
385 |
+
display: none;
|
386 |
+
position: absolute;
|
387 |
+
left: -20px;
|
388 |
+
top: -65px;
|
389 |
+
z-index: 2;
|
390 |
+
width: 210px;
|
391 |
+
padding: 10px;
|
392 |
+
font-size: 12px;
|
393 |
+
background-color: #fff;
|
394 |
+
-webkit-box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
|
395 |
+
box-shadow: 1px 1px 5px rgba(0,0,0,0.1);
|
396 |
+
border: 1px solid #e8e8e8;
|
397 |
+
border-radius: 4px;
|
398 |
+
text-align: center;
|
399 |
+
}
|
400 |
+
|
401 |
+
.wpr-mm-pro-section:before {
|
402 |
+
content: 'Please upgrade to the Pro Version to access these options.';
|
403 |
+
top: 50%;
|
404 |
+
left: 50%;
|
405 |
+
-webkit-transform: translateX(-50%) translateY(-50%);
|
406 |
+
-ms-transform: translateX(-50%) translateY(-50%);
|
407 |
+
transform: translateX(-50%) translateY(-50%);
|
408 |
+
padding: 20px 30px;
|
409 |
+
font-size: 13px;
|
410 |
+
}
|
411 |
+
|
412 |
+
.wpr-mm-pro-section:hover:before,
|
413 |
+
.wpr-mm-pro-setting > div:hover:before {
|
414 |
+
display: block;
|
415 |
+
}
|
416 |
+
|
417 |
+
.wpr-mm-pro-setting > div:after,
|
418 |
+
.wpr-mm-pro-section:after {
|
419 |
+
content: '';
|
420 |
+
position: absolute;
|
421 |
+
top: 0;
|
422 |
+
left: 0;
|
423 |
+
z-index: 1;
|
424 |
+
width: 100%;
|
425 |
+
height: 100%;
|
426 |
+
background: rgba(0,0,0,0.1);
|
427 |
+
}
|
428 |
+
|
429 |
+
.wpr-mm-pro-setting select {
|
430 |
+
display: none;
|
431 |
+
}
|
432 |
+
|
433 |
+
.wpr-mm-pro-setting .wpr-mm-pro-radio {
|
434 |
+
display: block;
|
435 |
+
}
|
436 |
+
|
437 |
+
.wpr-mm-pro-radio {
|
438 |
+
display: none;
|
439 |
+
padding: 5px 10px;
|
440 |
+
}
|
441 |
+
|
442 |
+
.wpr-mm-setting select option[value*="pro-"] {
|
443 |
+
background-color: rgba(0,0,0,0.2);
|
444 |
}
|
assets/css/admin/plugin-options.css
CHANGED
@@ -1,1090 +1,1126 @@
|
|
1 |
-
#wpwrap {
|
2 |
-
background: #fff;
|
3 |
-
}
|
4 |
-
|
5 |
-
#wpcontent {
|
6 |
-
padding: 0;
|
7 |
-
}
|
8 |
-
|
9 |
-
.wpr-settings-page-wrap {
|
10 |
-
margin: 0;
|
11 |
-
}
|
12 |
-
|
13 |
-
.wpr-settings-page-header {
|
14 |
-
display: -webkit-box;
|
15 |
-
display: -ms-flexbox;
|
16 |
-
display: flex;
|
17 |
-
-webkit-box-orient: vertical;
|
18 |
-
-webkit-box-direction: normal;
|
19 |
-
-ms-flex-direction: column;
|
20 |
-
flex-direction: column;
|
21 |
-
padding: 10px 30px 130px;
|
22 |
-
background: #f6f6f6
|
23 |
-
}
|
24 |
-
|
25 |
-
.wpr-settings-page-header h1,
|
26 |
-
.wpr-settings-page-header p,
|
27 |
-
.wpr-settings-page-header .wpr-preview-buttons,
|
28 |
-
.wpr-settings-page-header .wpr-user-template {
|
29 |
-
-webkit-box-ordinal-group: 3;
|
30 |
-
-ms-flex-order: 2;
|
31 |
-
order: 2;
|
32 |
-
}
|
33 |
-
|
34 |
-
.wpr-settings-page-header .wpr-options-button {
|
35 |
-
-ms-flex-item-align: start;
|
36 |
-
align-self: flex-start;
|
37 |
-
}
|
38 |
-
|
39 |
-
.button.wpr-options-button .dashicons {
|
40 |
-
line-height: 30px;
|
41 |
-
font-size: 16px;
|
42 |
-
}
|
43 |
-
|
44 |
-
.wpr-preview-buttons a:last-child,
|
45 |
-
.wpr-preview-buttons a.wpr-how-to-use-theme-builder {
|
46 |
-
background-color: transparent;
|
47 |
-
border: 2px solid #6A4BFF !important;
|
48 |
-
color: #6A4BFF;
|
49 |
-
padding: 5px 22px;
|
50 |
-
}
|
51 |
-
|
52 |
-
.wpr-preview-buttons a.wpr-how-to-use-woo-builder {
|
53 |
-
background-color: transparent !important;
|
54 |
-
border: 2px solid #96588a !important;
|
55 |
-
color: #96588a !important;
|
56 |
-
padding: 5px 22px;
|
57 |
-
}
|
58 |
-
|
59 |
-
.wpr-preview-buttons a.wpr-how-to-use-woo-builder:hover,
|
60 |
-
.wpr-preview-buttons a.wpr-how-to-use-woo-builder:focus {
|
61 |
-
color: #fff !important;
|
62 |
-
background: #96588a !important;
|
63 |
-
padding: 8px 22px !important;
|
64 |
-
}
|
65 |
-
|
66 |
-
.wpr-settings-page-header h1 {
|
67 |
-
font-size: 42px;
|
68 |
-
}
|
69 |
-
|
70 |
-
.wpr-settings-page-header p {
|
71 |
-
margin-top: 5px;
|
72 |
-
color: #5a5a5a;
|
73 |
-
font-size: 16px;
|
74 |
-
margin-bottom: 30px;
|
75 |
-
}
|
76 |
-
|
77 |
-
.wpr-user-template {
|
78 |
-
position: relative;
|
79 |
-
-webkit-box-sizing: border-box;
|
80 |
-
box-sizing: border-box;
|
81 |
-
overflow: hidden;
|
82 |
-
display: inline-block;
|
83 |
-
width: 220px;
|
84 |
-
height: 50px;
|
85 |
-
line-height: 50px;
|
86 |
-
padding: 0 20px;
|
87 |
-
color: #fff;
|
88 |
-
background: #6A4BFF;
|
89 |
-
font-size: 15px;
|
90 |
-
-webkit-box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
91 |
-
box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
92 |
-
border-radius: 5px;
|
93 |
-
cursor: pointer;
|
94 |
-
}
|
95 |
-
|
96 |
-
.wpr-user-template .plus-icon {
|
97 |
-
float: right;
|
98 |
-
display: block;
|
99 |
-
width: 30px;
|
100 |
-
height: 30px;
|
101 |
-
line-height: 28px;
|
102 |
-
margin-top: 10px;
|
103 |
-
border-radius: 50%;
|
104 |
-
color: #333;
|
105 |
-
background-color: #fff;
|
106 |
-
font-size: 18px;
|
107 |
-
text-align: center;
|
108 |
-
}
|
109 |
-
|
110 |
-
.wpr-user-template > div {
|
111 |
-
position: absolute;
|
112 |
-
top: 0;
|
113 |
-
left: 0;
|
114 |
-
width: 100%;
|
115 |
-
height: 100%;
|
116 |
-
background: rgba(0,0,0,0.5);
|
117 |
-
}
|
118 |
-
|
119 |
-
.wpr-
|
120 |
-
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
color:
|
149 |
-
|
150 |
-
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
|
159 |
-
|
160 |
-
|
161 |
-
|
162 |
-
color: #
|
163 |
-
background: #
|
164 |
-
-webkit-box-shadow:
|
165 |
-
box-shadow:
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
}
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
}
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
|
203 |
-
|
204 |
-
}
|
205 |
-
|
206 |
-
.wpr-elements-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
font-size: 18px;
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
.wpr-
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
margin-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
}
|
254 |
-
|
255 |
-
.wpr-woo-template
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
margin-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
.wpr-
|
300 |
-
|
301 |
-
|
302 |
-
}
|
303 |
-
|
304 |
-
.wpr-woo-template-info
|
305 |
-
|
306 |
-
|
307 |
-
margin
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
.wpr-
|
323 |
-
.wpr-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
.wpr-
|
362 |
-
.wpr-
|
363 |
-
|
364 |
-
|
365 |
-
position:
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
-webkit-
|
373 |
-
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
.wpr-
|
385 |
-
.wpr-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
.wpr-my-templates-list
|
463 |
-
|
464 |
-
}
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
}
|
544 |
-
|
545 |
-
.wpr-
|
546 |
-
|
547 |
-
}
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
margin
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
.wpr-
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
-
|
626 |
-
|
627 |
-
width:
|
628 |
-
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
-
|
644 |
-
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
-
|
650 |
-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
.wpr-conditions-
|
668 |
-
|
669 |
-
|
670 |
-
|
671 |
-
.wpr-conditions
|
672 |
-
|
673 |
-
|
674 |
-
display:
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
-
|
686 |
-
.wpr-
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
|
733 |
-
|
734 |
-
|
735 |
-
|
736 |
-
|
737 |
-
|
738 |
-
|
739 |
-
|
740 |
-
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
|
745 |
-
|
746 |
-
-
|
747 |
-
|
748 |
-
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
width:
|
773 |
-
border:
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
margin
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
|
791 |
-
|
792 |
-
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
-
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
|
825 |
-
|
826 |
-
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
input.wpr-
|
852 |
-
|
853 |
-
|
854 |
-
|
855 |
-
|
856 |
-
|
857 |
-
|
858 |
-
|
859 |
-
input.wpr-
|
860 |
-
color: #9a9a9a;
|
861 |
-
}
|
862 |
-
|
863 |
-
input.wpr-user-template-title
|
864 |
-
|
865 |
-
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
|
874 |
-
|
875 |
-
|
876 |
-
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
}
|
881 |
-
|
882 |
-
|
883 |
-
|
884 |
-
|
885 |
-
|
886 |
-
|
887 |
-
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
|
892 |
-
}
|
893 |
-
|
894 |
-
.wpr-
|
895 |
-
|
896 |
-
|
897 |
-
}
|
898 |
-
|
899 |
-
.wpr-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
|
924 |
-
display: -
|
925 |
-
display:
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
|
933 |
-
|
934 |
-
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
-
|
952 |
-
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
|
958 |
-
|
959 |
-
|
960 |
-
|
961 |
-
|
962 |
-
|
963 |
-
|
964 |
-
|
965 |
-
}
|
966 |
-
|
967 |
-
|
968 |
-
|
969 |
-
|
970 |
-
|
971 |
-
|
972 |
-
|
973 |
-
|
974 |
-
|
975 |
-
|
976 |
-
|
977 |
-
|
978 |
-
|
979 |
-
|
980 |
-
|
981 |
-
background:
|
982 |
-
}
|
983 |
-
|
984 |
-
#fs_connect .fs-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
#fs_connect .fs-
|
993 |
-
|
994 |
-
}
|
995 |
-
|
996 |
-
#fs_connect .fs-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
1006 |
-
|
1007 |
-
|
1008 |
-
|
1009 |
-
|
1010 |
-
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
1016 |
-
margin-top:
|
1017 |
-
}
|
1018 |
-
|
1019 |
-
#fs_connect .fs-
|
1020 |
-
|
1021 |
-
|
1022 |
-
}
|
1023 |
-
|
1024 |
-
#
|
1025 |
-
|
1026 |
-
|
1027 |
-
|
1028 |
-
#
|
1029 |
-
|
1030 |
-
}
|
1031 |
-
|
1032 |
-
|
1033 |
-
|
1034 |
-
|
1035 |
-
|
1036 |
-
|
1037 |
-
|
1038 |
-
|
1039 |
-
-
|
1040 |
-
|
1041 |
-
|
1042 |
-
|
1043 |
-
|
1044 |
-
|
1045 |
-
|
1046 |
-
|
1047 |
-
|
1048 |
-
|
1049 |
-
|
1050 |
-
|
1051 |
-
|
1052 |
-
|
1053 |
-
|
1054 |
-
|
1055 |
-
|
1056 |
-
|
1057 |
-
|
1058 |
-
|
1059 |
-
|
1060 |
-
|
1061 |
-
|
1062 |
-
-webkit-box-
|
1063 |
-
|
1064 |
-
|
1065 |
-
|
1066 |
-
|
1067 |
-
|
1068 |
-
|
1069 |
-
|
1070 |
-
|
1071 |
-
|
1072 |
-
|
1073 |
-
|
1074 |
-
|
1075 |
-
|
1076 |
-
|
1077 |
-
|
1078 |
-
|
1079 |
-
|
1080 |
-
|
1081 |
-
|
1082 |
-
|
1083 |
-
|
1084 |
-
|
1085 |
-
|
1086 |
-
|
1087 |
-
|
1088 |
-
|
1089 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1090 |
}
|
1 |
+
#wpwrap {
|
2 |
+
background: #fff;
|
3 |
+
}
|
4 |
+
|
5 |
+
#wpcontent {
|
6 |
+
padding: 0;
|
7 |
+
}
|
8 |
+
|
9 |
+
.wpr-settings-page-wrap {
|
10 |
+
margin: 0;
|
11 |
+
}
|
12 |
+
|
13 |
+
.wpr-settings-page-header {
|
14 |
+
display: -webkit-box;
|
15 |
+
display: -ms-flexbox;
|
16 |
+
display: flex;
|
17 |
+
-webkit-box-orient: vertical;
|
18 |
+
-webkit-box-direction: normal;
|
19 |
+
-ms-flex-direction: column;
|
20 |
+
flex-direction: column;
|
21 |
+
padding: 10px 30px 130px;
|
22 |
+
background: #f6f6f6
|
23 |
+
}
|
24 |
+
|
25 |
+
.wpr-settings-page-header h1,
|
26 |
+
.wpr-settings-page-header p,
|
27 |
+
.wpr-settings-page-header .wpr-preview-buttons,
|
28 |
+
.wpr-settings-page-header .wpr-user-template {
|
29 |
+
-webkit-box-ordinal-group: 3;
|
30 |
+
-ms-flex-order: 2;
|
31 |
+
order: 2;
|
32 |
+
}
|
33 |
+
|
34 |
+
.wpr-settings-page-header .wpr-options-button {
|
35 |
+
-ms-flex-item-align: start;
|
36 |
+
align-self: flex-start;
|
37 |
+
}
|
38 |
+
|
39 |
+
.button.wpr-options-button .dashicons {
|
40 |
+
line-height: 30px;
|
41 |
+
font-size: 16px;
|
42 |
+
}
|
43 |
+
|
44 |
+
.wpr-preview-buttons a:last-child,
|
45 |
+
.wpr-preview-buttons a.wpr-how-to-use-theme-builder {
|
46 |
+
background-color: transparent;
|
47 |
+
border: 2px solid #6A4BFF !important;
|
48 |
+
color: #6A4BFF;
|
49 |
+
padding: 5px 22px;
|
50 |
+
}
|
51 |
+
|
52 |
+
.wpr-preview-buttons a.wpr-how-to-use-woo-builder {
|
53 |
+
background-color: transparent !important;
|
54 |
+
border: 2px solid #96588a !important;
|
55 |
+
color: #96588a !important;
|
56 |
+
padding: 5px 22px;
|
57 |
+
}
|
58 |
+
|
59 |
+
.wpr-preview-buttons a.wpr-how-to-use-woo-builder:hover,
|
60 |
+
.wpr-preview-buttons a.wpr-how-to-use-woo-builder:focus {
|
61 |
+
color: #fff !important;
|
62 |
+
background: #96588a !important;
|
63 |
+
padding: 8px 22px !important;
|
64 |
+
}
|
65 |
+
|
66 |
+
.wpr-settings-page-header h1 {
|
67 |
+
font-size: 42px;
|
68 |
+
}
|
69 |
+
|
70 |
+
.wpr-settings-page-header p {
|
71 |
+
margin-top: 5px;
|
72 |
+
color: #5a5a5a;
|
73 |
+
font-size: 16px;
|
74 |
+
margin-bottom: 30px;
|
75 |
+
}
|
76 |
+
|
77 |
+
.wpr-user-template {
|
78 |
+
position: relative;
|
79 |
+
-webkit-box-sizing: border-box;
|
80 |
+
box-sizing: border-box;
|
81 |
+
overflow: hidden;
|
82 |
+
display: inline-block;
|
83 |
+
width: 220px;
|
84 |
+
height: 50px;
|
85 |
+
line-height: 50px;
|
86 |
+
padding: 0 20px;
|
87 |
+
color: #fff;
|
88 |
+
background: #6A4BFF;
|
89 |
+
font-size: 15px;
|
90 |
+
-webkit-box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
91 |
+
box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
92 |
+
border-radius: 5px;
|
93 |
+
cursor: pointer;
|
94 |
+
}
|
95 |
+
|
96 |
+
.wpr-user-template .plus-icon {
|
97 |
+
float: right;
|
98 |
+
display: block;
|
99 |
+
width: 30px;
|
100 |
+
height: 30px;
|
101 |
+
line-height: 28px;
|
102 |
+
margin-top: 10px;
|
103 |
+
border-radius: 50%;
|
104 |
+
color: #333;
|
105 |
+
background-color: #fff;
|
106 |
+
font-size: 18px;
|
107 |
+
text-align: center;
|
108 |
+
}
|
109 |
+
|
110 |
+
.wpr-user-template > div {
|
111 |
+
position: absolute;
|
112 |
+
top: 0;
|
113 |
+
left: 0;
|
114 |
+
width: 100%;
|
115 |
+
height: 100%;
|
116 |
+
background: rgba(0,0,0,0.5);
|
117 |
+
}
|
118 |
+
|
119 |
+
.royal-addons_page_wpr-theme-builder .wpr-preview-buttons {
|
120 |
+
display: -webkit-box;
|
121 |
+
display: -ms-flexbox;
|
122 |
+
display: flex;
|
123 |
+
-webkit-box-orient: horizontal;
|
124 |
+
-webkit-box-direction: reverse;
|
125 |
+
-ms-flex-direction: row-reverse;
|
126 |
+
flex-direction: row-reverse;
|
127 |
+
}
|
128 |
+
|
129 |
+
.royal-addons_page_wpr-theme-builder .wpr-user-template {
|
130 |
+
margin-right: auto;
|
131 |
+
}
|
132 |
+
|
133 |
+
.wpr-settings-page {
|
134 |
+
padding: 0 30px;
|
135 |
+
}
|
136 |
+
|
137 |
+
.wpr-nav-tab-wrapper {
|
138 |
+
padding-top: 0;
|
139 |
+
border-bottom: 0;
|
140 |
+
-webkit-transform: translateY(-100%);
|
141 |
+
-ms-transform: translateY(-100%);
|
142 |
+
transform: translateY(-100%);
|
143 |
+
}
|
144 |
+
|
145 |
+
.wpr-nav-tab-wrapper a {
|
146 |
+
border: 0 !important;
|
147 |
+
padding: 13px 35px;
|
148 |
+
background-color: transparent;
|
149 |
+
font-size: 16px;
|
150 |
+
margin-left: 0;
|
151 |
+
margin-right: 15px;
|
152 |
+
border-radius: 3px 4px 0 0;
|
153 |
+
color: #333;
|
154 |
+
}
|
155 |
+
|
156 |
+
.wpr-nav-tab-wrapper a:hover {
|
157 |
+
color: #6A4BFF;
|
158 |
+
background: #fff;
|
159 |
+
}
|
160 |
+
|
161 |
+
.wpr-nav-tab-wrapper .nav-tab-active {
|
162 |
+
color: #6A4BFF;
|
163 |
+
background: #fff;
|
164 |
+
-webkit-box-shadow: 3px -2px 5px rgba(0,0,0,0.03);
|
165 |
+
box-shadow: 3px -2px 5px rgba(0,0,0,0.03);
|
166 |
+
}
|
167 |
+
|
168 |
+
.wpr-nav-tab-wrapper a:focus {
|
169 |
+
-webkit-box-shadow: none;
|
170 |
+
box-shadow: none;
|
171 |
+
}
|
172 |
+
|
173 |
+
.button.wpr-options-button {
|
174 |
+
padding: 7px 22px;
|
175 |
+
border: 0;
|
176 |
+
color: #fff;
|
177 |
+
background: #6A4BFF;
|
178 |
+
-webkit-box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
179 |
+
box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
180 |
+
font-size: 14px;
|
181 |
+
}
|
182 |
+
|
183 |
+
.button.wpr-options-button:hover,
|
184 |
+
.button.wpr-options-button:focus {
|
185 |
+
color: #fff;
|
186 |
+
background: #6A4BFF;
|
187 |
+
border: none;
|
188 |
+
}
|
189 |
+
|
190 |
+
@media screen and (max-width: 1355px) {
|
191 |
+
.wpr-nav-tab-wrapper a {
|
192 |
+
padding: 13px 25px;
|
193 |
+
font-size: 14px;
|
194 |
+
}
|
195 |
+
}
|
196 |
+
|
197 |
+
|
198 |
+
/*--------------------------------------------------------------
|
199 |
+
== Elements
|
200 |
+
--------------------------------------------------------------*/
|
201 |
+
.wpr-elements-toggle {
|
202 |
+
overflow: hidden;
|
203 |
+
text-align: center;
|
204 |
+
}
|
205 |
+
|
206 |
+
.wpr-elements-toggle > div {
|
207 |
+
display: inline-block;
|
208 |
+
}
|
209 |
+
|
210 |
+
.wpr-elements-toggle h3 {
|
211 |
+
float: left;
|
212 |
+
font-size: 18px;
|
213 |
+
margin: 0 20px 0 0;
|
214 |
+
}
|
215 |
+
|
216 |
+
.wpr-elements-toggle p {
|
217 |
+
margin: 10px 0 60px 0;
|
218 |
+
}
|
219 |
+
|
220 |
+
.wpr-elements-heading {
|
221 |
+
text-align: center;
|
222 |
+
margin-bottom: 30px;
|
223 |
+
}
|
224 |
+
|
225 |
+
.wpr-elements-heading h3 {
|
226 |
+
font-size: 18px;
|
227 |
+
text-align: center;
|
228 |
+
margin-bottom: 0;
|
229 |
+
}
|
230 |
+
|
231 |
+
.wpr-elements-heading .wpr-install-activate-woocommerce {
|
232 |
+
color: red;
|
233 |
+
font-weight: 700;
|
234 |
+
}
|
235 |
+
|
236 |
+
.wpr-install-activate-woocommerce .dashicons {
|
237 |
+
font-size: 18px;
|
238 |
+
}
|
239 |
+
|
240 |
+
.wpr-woo-templates,
|
241 |
+
.wpr-elements {
|
242 |
+
display: -webkit-box;
|
243 |
+
display: -ms-flexbox;
|
244 |
+
display: flex;
|
245 |
+
-ms-flex-wrap: wrap;
|
246 |
+
flex-wrap: wrap;
|
247 |
+
width: 100%;
|
248 |
+
margin-bottom: 50px;
|
249 |
+
}
|
250 |
+
|
251 |
+
.wpr-woo-templates {
|
252 |
+
margin-bottom: 0;
|
253 |
+
}
|
254 |
+
|
255 |
+
.wpr-woo-template,
|
256 |
+
.wpr-element {
|
257 |
+
-webkit-box-sizing: border-box;
|
258 |
+
box-sizing: border-box;
|
259 |
+
position: relative;
|
260 |
+
width: 24%;
|
261 |
+
padding: 22px 30px;
|
262 |
+
margin-right: 1%;
|
263 |
+
margin-bottom: 20px;
|
264 |
+
-webkit-box-shadow: 0 0 15px rgba(0,0,0,0.05);
|
265 |
+
box-shadow: 0 0 15px rgba(0,0,0,0.05);
|
266 |
+
border-radius: 4px;
|
267 |
+
}
|
268 |
+
|
269 |
+
.wpr-woo-template {
|
270 |
+
width: 100%;
|
271 |
+
}
|
272 |
+
|
273 |
+
.wpr-woo-template-info {
|
274 |
+
display: -webkit-box;
|
275 |
+
display: -ms-flexbox;
|
276 |
+
display: flex;
|
277 |
+
-webkit-box-pack: justify;
|
278 |
+
-ms-flex-pack: justify;
|
279 |
+
justify-content: space-between;
|
280 |
+
margin-top: 10px;
|
281 |
+
}
|
282 |
+
|
283 |
+
.wpr-woo-template-info .wpr-woo-template-title {
|
284 |
+
display: -webkit-inline-box;
|
285 |
+
display: -ms-inline-flexbox;
|
286 |
+
display: inline-flex;
|
287 |
+
-webkit-box-orient: vertical;
|
288 |
+
-webkit-box-direction: normal;
|
289 |
+
-ms-flex-direction: column;
|
290 |
+
flex-direction: column;
|
291 |
+
}
|
292 |
+
|
293 |
+
.wpr-woo-template-title h3 {
|
294 |
+
font-weight: 600 !important;
|
295 |
+
font-size: 13px !important;
|
296 |
+
color: #3c434a !important;
|
297 |
+
}
|
298 |
+
|
299 |
+
.wpr-woo-template-title p {
|
300 |
+
margin: 0;
|
301 |
+
font-size: 12px;
|
302 |
+
}
|
303 |
+
|
304 |
+
.wpr-woo-template-info h4 {
|
305 |
+
font-size: 1em !important;
|
306 |
+
font-weight: 600 !important;
|
307 |
+
margin: 0;
|
308 |
+
}
|
309 |
+
|
310 |
+
.wpr-element-info h3 {
|
311 |
+
float: left;
|
312 |
+
margin: 0;
|
313 |
+
color: #3a3a3a;
|
314 |
+
font-size: 16px;
|
315 |
+
}
|
316 |
+
|
317 |
+
.wpr-woo-template-info label {
|
318 |
+
min-width: 45px;
|
319 |
+
}
|
320 |
+
|
321 |
+
.wpr-woo-template-info label,
|
322 |
+
.wpr-element-info label,
|
323 |
+
.wpr-elements-toggle label {
|
324 |
+
float: right;
|
325 |
+
}
|
326 |
+
|
327 |
+
.wpr-woo-template-info span,
|
328 |
+
.wpr-element-info span {
|
329 |
+
display: block;
|
330 |
+
margin-top: 3px;
|
331 |
+
color: #999;
|
332 |
+
font-style: normal;
|
333 |
+
font-size: 12px;
|
334 |
+
}
|
335 |
+
|
336 |
+
.wpr-woo-template-info a,
|
337 |
+
.wpr-element-info a {
|
338 |
+
display: block;
|
339 |
+
clear: both;
|
340 |
+
font-size: 12px;
|
341 |
+
-webkit-box-shadow: none !important;
|
342 |
+
box-shadow: none !important;
|
343 |
+
}
|
344 |
+
|
345 |
+
.wpr-woo-template-info input,
|
346 |
+
.wpr-element-info input,
|
347 |
+
.wpr-elements-toggle input,
|
348 |
+
.wpr-setting-custom-ckbox input {
|
349 |
+
position: absolute;
|
350 |
+
z-index: -1000;
|
351 |
+
left: -1000px;
|
352 |
+
overflow: hidden;
|
353 |
+
clip: rect(0 0 0 0);
|
354 |
+
height: 1px;
|
355 |
+
width: 1px;
|
356 |
+
margin: -1px;
|
357 |
+
padding: 0;
|
358 |
+
border: 0;
|
359 |
+
}
|
360 |
+
|
361 |
+
.wpr-woo-template-info label,
|
362 |
+
.wpr-element-info label,
|
363 |
+
.wpr-elements-toggle label,
|
364 |
+
.wpr-setting-custom-ckbox label {
|
365 |
+
position: relative;
|
366 |
+
display: block;
|
367 |
+
width: 45px;
|
368 |
+
height: 23px;
|
369 |
+
border-radius: 20px;
|
370 |
+
background: #e8e8e8;
|
371 |
+
cursor: pointer;
|
372 |
+
-webkit-touch-callout: none;
|
373 |
+
-webkit-user-select: none;
|
374 |
+
-moz-user-select: none;
|
375 |
+
-ms-user-select: none;
|
376 |
+
user-select: none;
|
377 |
+
-webkit-transition: all 0.2s ease-in;
|
378 |
+
-o-transition: all 0.2s ease-in;
|
379 |
+
transition: all 0.2s ease-in;
|
380 |
+
}
|
381 |
+
|
382 |
+
.wpr-woo-template-info input + label:after,
|
383 |
+
.wpr-element-info input + label:after,
|
384 |
+
.wpr-elements-toggle input + label:after,
|
385 |
+
.wpr-setting-custom-ckbox input + label:after {
|
386 |
+
content: ' ';
|
387 |
+
display: block;
|
388 |
+
position: absolute;
|
389 |
+
top: 3px;
|
390 |
+
left: 3px;
|
391 |
+
width: 17px;
|
392 |
+
height: 17px;
|
393 |
+
border-radius: 50%;
|
394 |
+
background: #fff;
|
395 |
+
-webkit-transition: all 0.2s ease-in;
|
396 |
+
-o-transition: all 0.2s ease-in;
|
397 |
+
transition: all 0.2s ease-in;
|
398 |
+
}
|
399 |
+
|
400 |
+
.wpr-woo-template-info input:checked + label,
|
401 |
+
.wpr-element-info input:checked + label,
|
402 |
+
.wpr-elements-toggle input:checked + label,
|
403 |
+
.wpr-setting-custom-ckbox input:checked + label {
|
404 |
+
background: #6A4BFF;
|
405 |
+
}
|
406 |
+
|
407 |
+
.wpr-woo-template-info input:checked + label:after,
|
408 |
+
.wpr-element-info input:checked + label:after,
|
409 |
+
.wpr-elements-toggle input:checked + label:after,
|
410 |
+
.wpr-setting-custom-ckbox input:checked + label:after {
|
411 |
+
left: 24px;
|
412 |
+
}
|
413 |
+
|
414 |
+
.wpr-new-element:before {
|
415 |
+
content: 'NEW';
|
416 |
+
position: absolute;
|
417 |
+
top: -10px;
|
418 |
+
left: 28px;
|
419 |
+
padding: 1px 7px;
|
420 |
+
color: #fff;
|
421 |
+
background-color: #f44;
|
422 |
+
border-radius: 3px;
|
423 |
+
font-size: 10px;
|
424 |
+
font-weight: bold;
|
425 |
+
letter-spacing: 1px;
|
426 |
+
}
|
427 |
+
|
428 |
+
.wpr-pro-element:before {
|
429 |
+
content: 'PRO';
|
430 |
+
position: absolute;
|
431 |
+
top: -10px;
|
432 |
+
left: 28px;
|
433 |
+
z-index: 10;
|
434 |
+
padding: 1px 7px;
|
435 |
+
color: #fff;
|
436 |
+
background-color: #f44;
|
437 |
+
border-radius: 3px;
|
438 |
+
font-size: 10px;
|
439 |
+
font-weight: bold;
|
440 |
+
letter-spacing: 1px;
|
441 |
+
}
|
442 |
+
|
443 |
+
.wpr-pro-element > a {
|
444 |
+
display: block;
|
445 |
+
position: absolute;
|
446 |
+
top: 0;
|
447 |
+
left: 0;
|
448 |
+
z-index: 1;
|
449 |
+
width: 100%;
|
450 |
+
height: 100%;
|
451 |
+
background: rgba(0,0,0,0.1);
|
452 |
+
}
|
453 |
+
|
454 |
+
/*--------------------------------------------------------------
|
455 |
+
== My Templates
|
456 |
+
--------------------------------------------------------------*/
|
457 |
+
.wpr-my-templates-list {
|
458 |
+
width: 65%;
|
459 |
+
}
|
460 |
+
|
461 |
+
@media screen and (max-width: 1400px) {
|
462 |
+
.wpr-my-templates-list {
|
463 |
+
width: 100%;
|
464 |
+
}
|
465 |
+
}
|
466 |
+
|
467 |
+
.wpr-activate-woo-notice,
|
468 |
+
.wpr-my-templates-list li {
|
469 |
+
overflow: hidden;
|
470 |
+
padding: 20px 35px;
|
471 |
+
margin-bottom: 15px;
|
472 |
+
-webkit-box-shadow: 0 0 2px rgba(0,0,0,0.2);
|
473 |
+
box-shadow: 0 0 2px rgba(0,0,0,0.2);
|
474 |
+
}
|
475 |
+
|
476 |
+
.wpr-my-templates-list li h3 {
|
477 |
+
float: left;
|
478 |
+
margin: 0;
|
479 |
+
color: #555;
|
480 |
+
font-size: 16px;
|
481 |
+
line-height: 34px;
|
482 |
+
text-transform: capitalize;
|
483 |
+
}
|
484 |
+
|
485 |
+
.wpr-my-templates-list .wpr-action-buttons {
|
486 |
+
float: right;
|
487 |
+
}
|
488 |
+
|
489 |
+
.wpr-my-templates-list .wpr-template-conditions {
|
490 |
+
background: #b3b3b3;
|
491 |
+
}
|
492 |
+
|
493 |
+
.wpr-active-conditions-template .wpr-template-conditions {
|
494 |
+
background: #7a5ffd;
|
495 |
+
}
|
496 |
+
|
497 |
+
.wpr-my-templates-list .wpr-template-conditions:hover,
|
498 |
+
.wpr-active-conditions-template .wpr-template-conditions:hover {
|
499 |
+
background: #6A4BFF;
|
500 |
+
}
|
501 |
+
|
502 |
+
.wpr-my-templates-list .wpr-edit-template {
|
503 |
+
background: #646464;
|
504 |
+
}
|
505 |
+
|
506 |
+
.wpr-my-templates-list .wpr-edit-template:hover {
|
507 |
+
background: #535353;
|
508 |
+
}
|
509 |
+
|
510 |
+
.wpr-edit-template:focus {
|
511 |
+
-webkit-box-shadow: none !important;
|
512 |
+
box-shadow: none !important;
|
513 |
+
}
|
514 |
+
|
515 |
+
.wpr-my-templates-list .wpr-delete-template {
|
516 |
+
background: #ff5a4b;
|
517 |
+
}
|
518 |
+
|
519 |
+
.wpr-my-templates-list .wpr-delete-template:hover {
|
520 |
+
background: #FF4635;
|
521 |
+
}
|
522 |
+
|
523 |
+
.wpr-my-templates-list .wpr-action-buttons > * {
|
524 |
+
display: inline-block;
|
525 |
+
padding: 3px 20px;
|
526 |
+
margin-right: 10px;
|
527 |
+
border: 0;
|
528 |
+
letter-spacing: 0.5px;
|
529 |
+
}
|
530 |
+
|
531 |
+
.wpr-my-templates-list .wpr-action-buttons > *:last-child {
|
532 |
+
margin-right: 0;
|
533 |
+
}
|
534 |
+
|
535 |
+
.wpr-my-templates-list .wpr-action-buttons .dashicons {
|
536 |
+
font-size: 16px;
|
537 |
+
line-height: 30px;
|
538 |
+
}
|
539 |
+
|
540 |
+
.wpr-active-conditions-template {
|
541 |
+
border-left: 5px solid #6A4BFF;
|
542 |
+
background: #F6F7F7;
|
543 |
+
}
|
544 |
+
|
545 |
+
.wpr-my-templates-list .wpr-no-templates {
|
546 |
+
background: #fff !important;
|
547 |
+
}
|
548 |
+
|
549 |
+
|
550 |
+
/*--------------------------------------------------------------
|
551 |
+
== Settings
|
552 |
+
--------------------------------------------------------------*/
|
553 |
+
.wpr-settings-group:first-of-type {
|
554 |
+
margin-top: 50px;
|
555 |
+
}
|
556 |
+
|
557 |
+
.wpr-settings-group {
|
558 |
+
position: relative;
|
559 |
+
width: 35%;
|
560 |
+
background: #f9f9f9;
|
561 |
+
padding: 30px;
|
562 |
+
margin-bottom: 80px;
|
563 |
+
-webkit-box-shadow: 1px 2px 3px rgba(0,0,0,0.1);
|
564 |
+
box-shadow: 1px 2px 3px rgba(0,0,0,0.1);
|
565 |
+
border-radius: 0 3px 3px 3px;
|
566 |
+
}
|
567 |
+
|
568 |
+
.wpr-settings-group-inner {
|
569 |
+
position: relative;
|
570 |
+
}
|
571 |
+
|
572 |
+
.wpr-settings-group-title {
|
573 |
+
position: absolute;
|
574 |
+
top: 0;
|
575 |
+
left: 0;
|
576 |
+
-webkit-transform: translateY(-100%);
|
577 |
+
-ms-transform: translateY(-100%);
|
578 |
+
transform: translateY(-100%);
|
579 |
+
padding: 10px 30px;
|
580 |
+
background: #f9f9f9;
|
581 |
+
margin: 0;
|
582 |
+
-webkit-box-shadow: 0 -2px 3px rgba(0,0,0,0.05);
|
583 |
+
box-shadow: 0 -2px 3px rgba(0,0,0,0.05);
|
584 |
+
border-radius: 3px 3px 0 0;
|
585 |
+
color: #6A4BFF;
|
586 |
+
font-size: 14px;
|
587 |
+
}
|
588 |
+
|
589 |
+
.wpr-setting {
|
590 |
+
margin-bottom: 20px;
|
591 |
+
}
|
592 |
+
|
593 |
+
.wpr-setting h4 {
|
594 |
+
margin-bottom: 8px;
|
595 |
+
}
|
596 |
+
|
597 |
+
.wpr-setting input:not(input[type='checkbox']) {
|
598 |
+
border: 1px solid #e8e8e8;
|
599 |
+
width: 100%;
|
600 |
+
padding: 5px 15px;
|
601 |
+
}
|
602 |
+
|
603 |
+
.wpr-setting input[type='checkbox'] {
|
604 |
+
margin-right: 8px;
|
605 |
+
}
|
606 |
+
|
607 |
+
.wpr-settings .submit:first-of-type {
|
608 |
+
margin-top: 0;
|
609 |
+
padding-top: 0;
|
610 |
+
margin-bottom: 70px;
|
611 |
+
}
|
612 |
+
|
613 |
+
.wp-picker-clear {
|
614 |
+
width: 100px !important;
|
615 |
+
}
|
616 |
+
|
617 |
+
/*--------------------------------------------------------------
|
618 |
+
== Conditions
|
619 |
+
--------------------------------------------------------------*/
|
620 |
+
.wpr-admin-popup-wrap {
|
621 |
+
display: none;
|
622 |
+
position: fixed;
|
623 |
+
top: 0;
|
624 |
+
left: 0;
|
625 |
+
z-index: 9999;
|
626 |
+
background-color: rgba(0, 0, 0, 0.6);
|
627 |
+
width: 100%;
|
628 |
+
height: 100%;
|
629 |
+
}
|
630 |
+
|
631 |
+
.wpr-admin-popup {
|
632 |
+
display: -webkit-box;
|
633 |
+
display: -ms-flexbox;
|
634 |
+
display: flex;
|
635 |
+
-ms-flex-pack: distribute;
|
636 |
+
justify-content: space-around;
|
637 |
+
-webkit-box-align: center;
|
638 |
+
-ms-flex-align: center;
|
639 |
+
align-items: center;
|
640 |
+
-webkit-box-orient: vertical;
|
641 |
+
-webkit-box-direction: normal;
|
642 |
+
-ms-flex-direction: column;
|
643 |
+
flex-direction: column;
|
644 |
+
position: absolute;
|
645 |
+
top: 50%;
|
646 |
+
left: 50%;
|
647 |
+
-webkit-transform: translate(-50%,-50%);
|
648 |
+
-ms-transform: translate(-50%,-50%);
|
649 |
+
transform: translate(-50%,-50%);
|
650 |
+
width: 80%;
|
651 |
+
max-width: 850px;
|
652 |
+
padding: 70px 20px 20px 20px;
|
653 |
+
background-color: #F1F3F5;
|
654 |
+
}
|
655 |
+
|
656 |
+
|
657 |
+
.wpr-admin-popup .close-popup {
|
658 |
+
position: absolute;
|
659 |
+
top: 10px;
|
660 |
+
right: 15px;
|
661 |
+
font-size: 26px;
|
662 |
+
cursor: pointer;
|
663 |
+
color: #59626a;
|
664 |
+
}
|
665 |
+
|
666 |
+
.wpr-conditions.wpr-tab-archive .global-condition-select,
|
667 |
+
.wpr-conditions.wpr-tab-archive .singles-condition-select,
|
668 |
+
.wpr-conditions.wpr-tab-product_archive .global-condition-select,
|
669 |
+
.wpr-conditions.wpr-tab-product_archive .singles-condition-select,
|
670 |
+
.wpr-conditions.wpr-tab-single .global-condition-select,
|
671 |
+
.wpr-conditions.wpr-tab-single .archives-condition-select,
|
672 |
+
.wpr-conditions.wpr-tab-product_single .global-condition-select,
|
673 |
+
.wpr-conditions.wpr-tab-product_single .archives-condition-select {
|
674 |
+
display: none !important;
|
675 |
+
}
|
676 |
+
|
677 |
+
.wpr-conditions-wrap.blog-posts .singles-condition-select option:nth-child(1),
|
678 |
+
.wpr-conditions-wrap.blog-posts .singles-condition-select option:nth-child(2),
|
679 |
+
.wpr-conditions-wrap.blog-posts .singles-condition-select option:nth-child(3) {
|
680 |
+
/*display: none;*/
|
681 |
+
}
|
682 |
+
|
683 |
+
.wpr-conditions.wpr-tab-archive .archives-condition-select,
|
684 |
+
.wpr-conditions.wpr-tab-product_archive .archives-condition-select,
|
685 |
+
.wpr-conditions.wpr-tab-single .singles-condition-select,
|
686 |
+
.wpr-conditions.wpr-tab-product_single .singles-condition-select {
|
687 |
+
display: block !important;
|
688 |
+
}
|
689 |
+
|
690 |
+
.wpr-conditions-sample {
|
691 |
+
display: none !important;
|
692 |
+
}
|
693 |
+
|
694 |
+
.wpr-conditions {
|
695 |
+
position: relative;
|
696 |
+
display: -webkit-box;
|
697 |
+
display: -ms-flexbox;
|
698 |
+
display: flex;
|
699 |
+
-webkit-box-align: center;
|
700 |
+
-ms-flex-align: center;
|
701 |
+
align-items: center;
|
702 |
+
margin-top: 10px;
|
703 |
+
width: 600px;
|
704 |
+
border-radius: 3px;
|
705 |
+
border: 1px solid #e8e8e8;
|
706 |
+
background: #fff;
|
707 |
+
}
|
708 |
+
|
709 |
+
.wpr-admin-popup header {
|
710 |
+
margin-top: 0;
|
711 |
+
margin-bottom: 20px;
|
712 |
+
text-align: center;
|
713 |
+
}
|
714 |
+
|
715 |
+
.wpr-admin-popup header h2 {
|
716 |
+
margin: 25px auto;
|
717 |
+
font-size: 26px;
|
718 |
+
color: #59626a;
|
719 |
+
}
|
720 |
+
|
721 |
+
.wpr-admin-popup header p {
|
722 |
+
margin-top: 0;
|
723 |
+
margin-bottom: 0;
|
724 |
+
color: #7f8b96;
|
725 |
+
}
|
726 |
+
|
727 |
+
.wpr-conditions select {
|
728 |
+
height: 35px;
|
729 |
+
height: 100%;
|
730 |
+
padding-top: 5px;
|
731 |
+
padding-bottom: 5px;
|
732 |
+
border-radius: 0;
|
733 |
+
border: none;
|
734 |
+
-webkit-box-flex: 1;
|
735 |
+
-ms-flex-positive: 1;
|
736 |
+
flex-grow: 1;
|
737 |
+
border-right: 1px solid #e8e8e8 !important;
|
738 |
+
background-size: 14px 14px;
|
739 |
+
}
|
740 |
+
|
741 |
+
span.wpr-add-conditions {
|
742 |
+
margin-top: 30px;
|
743 |
+
background: #A4AFB7;
|
744 |
+
color: #fff;
|
745 |
+
font-weight: 600;
|
746 |
+
letter-spacing: 1px;
|
747 |
+
text-transform: uppercase;
|
748 |
+
padding: 8px 20px;
|
749 |
+
border-radius: 3px;
|
750 |
+
cursor: pointer;
|
751 |
+
}
|
752 |
+
|
753 |
+
span.wpr-add-conditions:hover {
|
754 |
+
background: #848c92;
|
755 |
+
}
|
756 |
+
|
757 |
+
input.wpr-condition-input-ids {
|
758 |
+
display: none;
|
759 |
+
padding: 5px;
|
760 |
+
outline: none;
|
761 |
+
border: none;
|
762 |
+
border-radius: 0;
|
763 |
+
}
|
764 |
+
|
765 |
+
input.wpr-condition-input-ids,
|
766 |
+
.wpr-conditions select {
|
767 |
+
-ms-flex-negative: 0;
|
768 |
+
flex-shrink: 0;
|
769 |
+
-webkit-box-flex: 1;
|
770 |
+
-ms-flex-positive: 1;
|
771 |
+
flex-grow: 1;
|
772 |
+
max-width: none;
|
773 |
+
border: none;
|
774 |
+
-webkit-box-shadow: none !important;
|
775 |
+
box-shadow: none !important;
|
776 |
+
outline: none;
|
777 |
+
margin: 0;
|
778 |
+
text-indent: 5px;
|
779 |
+
}
|
780 |
+
|
781 |
+
.wpr-canvas-condition {
|
782 |
+
display: none;
|
783 |
+
margin-top: 20px;
|
784 |
+
}
|
785 |
+
|
786 |
+
.wpr-canvas-condition label {
|
787 |
+
display: inline-block;
|
788 |
+
}
|
789 |
+
|
790 |
+
.wpr-canvas-condition span {
|
791 |
+
margin-right: 20px;
|
792 |
+
}
|
793 |
+
|
794 |
+
#wpr-woo-products-per-page {
|
795 |
+
width: 40px;
|
796 |
+
border: 1px solid #e8e8e8;
|
797 |
+
text-align: center;
|
798 |
+
-webkit-box-shadow: none !important;
|
799 |
+
box-shadow: none !important;
|
800 |
+
margin-left: 10px;
|
801 |
+
}
|
802 |
+
|
803 |
+
.wpr-delete-template-conditions {
|
804 |
+
margin-left: auto;
|
805 |
+
position: absolute;
|
806 |
+
right: -30px;
|
807 |
+
color: #C2CBD2;
|
808 |
+
font-size: 22px;
|
809 |
+
cursor: pointer;
|
810 |
+
}
|
811 |
+
|
812 |
+
.wpr-delete-template-conditions:hover {
|
813 |
+
color: #81868a;
|
814 |
+
}
|
815 |
+
|
816 |
+
.wpr-save-conditions {
|
817 |
+
padding: 8px 20px;
|
818 |
+
color: #fff;
|
819 |
+
background: #6A4BFF;
|
820 |
+
margin-left: auto;
|
821 |
+
border-radius: 3px;
|
822 |
+
margin-top: 80px;
|
823 |
+
text-transform: uppercase;
|
824 |
+
letter-spacing: 0.5px;
|
825 |
+
font-weight: 600;
|
826 |
+
cursor: pointer;
|
827 |
+
}
|
828 |
+
|
829 |
+
.wpr-user-template-popup {
|
830 |
+
padding-top: 40px;
|
831 |
+
}
|
832 |
+
|
833 |
+
.wpr-user-template-popup header {
|
834 |
+
margin-bottom: 27px;
|
835 |
+
}
|
836 |
+
|
837 |
+
.wpr-user-template-popup .wpr-create-template {
|
838 |
+
padding: 11px 20px;
|
839 |
+
margin: 25px auto;
|
840 |
+
color: #fff;
|
841 |
+
background: #6A4BFF;
|
842 |
+
border-radius: 3px;
|
843 |
+
cursor: pointer;
|
844 |
+
}
|
845 |
+
|
846 |
+
.wpr-user-template-popup p {
|
847 |
+
max-width: 70%;
|
848 |
+
margin: auto;
|
849 |
+
}
|
850 |
+
|
851 |
+
input.wpr-user-template-title {
|
852 |
+
width: 350px;
|
853 |
+
border: 1px solid #d1d1d1;
|
854 |
+
padding: 5px 10px;
|
855 |
+
border-radius: 3px;
|
856 |
+
}
|
857 |
+
|
858 |
+
input.wpr-user-template-title::-webkit-input-placeholder,
|
859 |
+
input.wpr-condition-input-ids::-webkit-input-placeholder {
|
860 |
+
color: #9a9a9a;
|
861 |
+
}
|
862 |
+
|
863 |
+
input.wpr-user-template-title::-moz-placeholder,
|
864 |
+
input.wpr-condition-input-ids::-moz-placeholder {
|
865 |
+
color: #9a9a9a;
|
866 |
+
}
|
867 |
+
|
868 |
+
input.wpr-user-template-title:-ms-input-placeholder,
|
869 |
+
input.wpr-condition-input-ids:-ms-input-placeholder {
|
870 |
+
color: #9a9a9a;
|
871 |
+
}
|
872 |
+
|
873 |
+
input.wpr-user-template-title::-ms-input-placeholder,
|
874 |
+
input.wpr-condition-input-ids::-ms-input-placeholder {
|
875 |
+
color: #9a9a9a;
|
876 |
+
}
|
877 |
+
|
878 |
+
input.wpr-user-template-title::-webkit-input-placeholder, input.wpr-condition-input-ids::-webkit-input-placeholder {
|
879 |
+
color: #9a9a9a;
|
880 |
+
}
|
881 |
+
|
882 |
+
input.wpr-user-template-title::-moz-placeholder, input.wpr-condition-input-ids::-moz-placeholder {
|
883 |
+
color: #9a9a9a;
|
884 |
+
}
|
885 |
+
|
886 |
+
input.wpr-user-template-title:-ms-input-placeholder, input.wpr-condition-input-ids:-ms-input-placeholder {
|
887 |
+
color: #9a9a9a;
|
888 |
+
}
|
889 |
+
|
890 |
+
input.wpr-user-template-title::-ms-input-placeholder, input.wpr-condition-input-ids::-ms-input-placeholder {
|
891 |
+
color: #9a9a9a;
|
892 |
+
}
|
893 |
+
|
894 |
+
input.wpr-user-template-title::placeholder,
|
895 |
+
input.wpr-condition-input-ids::placeholder {
|
896 |
+
color: #9a9a9a;
|
897 |
+
}
|
898 |
+
|
899 |
+
input.wpr-user-template-title:focus {
|
900 |
+
border-color: #6A4BFF;
|
901 |
+
-webkit-box-shadow: none;
|
902 |
+
box-shadow: none;
|
903 |
+
}
|
904 |
+
|
905 |
+
/*--------------------------------------------------------------
|
906 |
+
== White Label
|
907 |
+
--------------------------------------------------------------*/
|
908 |
+
.wpr-wl-tab-content {
|
909 |
+
display: -webkit-box;
|
910 |
+
display: -ms-flexbox;
|
911 |
+
display: flex;
|
912 |
+
-webkit-box-align: start;
|
913 |
+
-ms-flex-align: start;
|
914 |
+
align-items: flex-start;
|
915 |
+
}
|
916 |
+
|
917 |
+
.wpr-wl-tab-content .wpr-settings-group:last-of-type {
|
918 |
+
margin-top: 50px;
|
919 |
+
margin-left: 50px;
|
920 |
+
}
|
921 |
+
|
922 |
+
.wpr-setting-custom-img-upload div button {
|
923 |
+
display: -webkit-box;
|
924 |
+
display: -ms-flexbox;
|
925 |
+
display: flex;
|
926 |
+
-webkit-box-align: center;
|
927 |
+
-ms-flex-align: center;
|
928 |
+
align-items: center;
|
929 |
+
margin-top: 10px;
|
930 |
+
padding: 10px 20px;
|
931 |
+
background: #ffffff;
|
932 |
+
border: 1px solid #e8e8e8;
|
933 |
+
border-radius: 3px;
|
934 |
+
font-weight: bold;
|
935 |
+
cursor: pointer;
|
936 |
+
}
|
937 |
+
|
938 |
+
.wpr-setting-custom-img-upload div button span {
|
939 |
+
margin-left: 5px;
|
940 |
+
}
|
941 |
+
|
942 |
+
.wpr-setting-custom-img-upload div button img {
|
943 |
+
width: 50px;
|
944 |
+
}
|
945 |
+
|
946 |
+
.wpr-setting-custom-ckbox h4 {
|
947 |
+
display: -webkit-box;
|
948 |
+
display: -ms-flexbox;
|
949 |
+
display: flex;
|
950 |
+
-webkit-box-orient: horizontal;
|
951 |
+
-webkit-box-direction: normal;
|
952 |
+
-ms-flex-direction: row;
|
953 |
+
flex-direction: row;
|
954 |
+
-webkit-box-pack: justify;
|
955 |
+
-ms-flex-pack: justify;
|
956 |
+
justify-content: space-between;
|
957 |
+
}
|
958 |
+
|
959 |
+
.wpr-setting-custom-ckbox label {
|
960 |
+
background: #dddbdb;
|
961 |
+
}
|
962 |
+
|
963 |
+
.wpr-setting-custom-ckbox p {
|
964 |
+
color: #a09f9f;
|
965 |
+
}
|
966 |
+
|
967 |
+
/*--------------------------------------------------------------
|
968 |
+
== Freemius
|
969 |
+
--------------------------------------------------------------*/
|
970 |
+
#fs_connect {
|
971 |
+
margin: 40px !important;
|
972 |
+
width: 615px !important;
|
973 |
+
border-top: 3px solid #2271B1 !important;
|
974 |
+
}
|
975 |
+
|
976 |
+
#fs_connect .fs-content {
|
977 |
+
padding: 25px 20px 35px 20px !important;
|
978 |
+
}
|
979 |
+
|
980 |
+
#fs_connect .fs-visual {
|
981 |
+
background: transparent !important;
|
982 |
+
}
|
983 |
+
|
984 |
+
#fs_connect .fs-visual .fs-site-icon,
|
985 |
+
#fs_connect .fs-visual .fs-plugin-icon,
|
986 |
+
#fs_connect .fs-visual .fs-connect-logo {
|
987 |
+
top: 20px !important;
|
988 |
+
}
|
989 |
+
|
990 |
+
#fs_connect .fs-visual .fs-plugin-icon,
|
991 |
+
#fs_connect .fs-visual .fs-connect-logo,
|
992 |
+
#fs_connect .fs-visual .fs-site-icon {
|
993 |
+
border: none !important;
|
994 |
+
}
|
995 |
+
|
996 |
+
#fs_connect .fs-visual .fs-site-icon i,
|
997 |
+
#fs_connect .fs-visual img{
|
998 |
+
overflow: hidden !important;
|
999 |
+
border-radius: 100px !important;
|
1000 |
+
}
|
1001 |
+
|
1002 |
+
#fs_connect .fs-actions {
|
1003 |
+
border-top: 1px solid #F2F2F2 !important;
|
1004 |
+
background: #F2F2F2 !important;
|
1005 |
+
}
|
1006 |
+
|
1007 |
+
#fs_connect .fs-actions .button {
|
1008 |
+
font-size: 14px !important;
|
1009 |
+
}
|
1010 |
+
|
1011 |
+
#fs_connect .fs-actions .button.button-secondary {
|
1012 |
+
padding: 0 25px !important;
|
1013 |
+
}
|
1014 |
+
|
1015 |
+
#fs_connect .fs-permissions {
|
1016 |
+
margin-top: 20px !important;
|
1017 |
+
}
|
1018 |
+
|
1019 |
+
#fs_connect .fs-permissions>.fs-trigger {
|
1020 |
+
-webkit-box-shadow: none !important;
|
1021 |
+
box-shadow: none !important;
|
1022 |
+
}
|
1023 |
+
|
1024 |
+
#fs_connect .fs-permissions.fs-open ul {
|
1025 |
+
margin: 30px 20px !important;
|
1026 |
+
}
|
1027 |
+
|
1028 |
+
#fs_connect .fs-permissions ul li {
|
1029 |
+
margin-bottom: 20px !important;
|
1030 |
+
}
|
1031 |
+
|
1032 |
+
#fs_connect .fs-permissions ul li .fs-permission-description span {
|
1033 |
+
font-size: 12px !important;
|
1034 |
+
text-transform: capitalize !important;
|
1035 |
+
}
|
1036 |
+
|
1037 |
+
#fs_connect .fs-permissions ul li .fs-permission-description p {
|
1038 |
+
font-size: 11px !important;
|
1039 |
+
margin-top: 0 !important;
|
1040 |
+
}
|
1041 |
+
|
1042 |
+
#fs_connect .fs-license-key-container {
|
1043 |
+
width: 100% !important;
|
1044 |
+
margin-top: 20px;
|
1045 |
+
}
|
1046 |
+
|
1047 |
+
#pframe,
|
1048 |
+
#fs_connect.require-license-key .fs-permissions,
|
1049 |
+
#fs_connect.require-license-key .fs-terms,
|
1050 |
+
#fs_connect .fs-freemium-licensing,
|
1051 |
+
#license_issues_link {
|
1052 |
+
display: none !important;
|
1053 |
+
}
|
1054 |
+
|
1055 |
+
/*--------------------------------------------------------------
|
1056 |
+
== Settings: Pro Options
|
1057 |
+
--------------------------------------------------------------*/
|
1058 |
+
.wpr-settings-pro-overlay {
|
1059 |
+
display: -webkit-box;
|
1060 |
+
display: -ms-flexbox;
|
1061 |
+
display: flex;
|
1062 |
+
-webkit-box-orient: vertical;
|
1063 |
+
-webkit-box-direction: normal;
|
1064 |
+
-ms-flex-direction: column;
|
1065 |
+
flex-direction: column;
|
1066 |
+
-webkit-box-align: center;
|
1067 |
+
-ms-flex-align: center;
|
1068 |
+
align-items: center;
|
1069 |
+
-webkit-box-pack: center;
|
1070 |
+
-ms-flex-pack: center;
|
1071 |
+
justify-content: center;
|
1072 |
+
position: absolute;
|
1073 |
+
top: 0;
|
1074 |
+
left: 0;
|
1075 |
+
width: 100%;
|
1076 |
+
height: 100%;
|
1077 |
+
background: rgba(0,0,0,0.4);
|
1078 |
+
color: #f9f9f9;
|
1079 |
+
font-size: 16px;
|
1080 |
+
text-decoration: none;
|
1081 |
+
text-transform: uppercase;
|
1082 |
+
font-weight: bold;
|
1083 |
+
|
1084 |
+
text-shadow: 1px 1px 1px #000;
|
1085 |
+
-webkit-box-shadow: 1px 1px 15px rgba(0,0,0,0.3);
|
1086 |
+
box-shadow: 1px 1px 15px rgba(0,0,0,0.3);
|
1087 |
+
}
|
1088 |
+
|
1089 |
+
.wpr-settings-pro-overlay:hover,
|
1090 |
+
.wpr-settings-pro-overlay:focus{
|
1091 |
+
color: #f9f9f9;
|
1092 |
+
}
|
1093 |
+
|
1094 |
+
.wpr-settings-pro-overlay .dashicons {
|
1095 |
+
font-size: 50px;
|
1096 |
+
line-height: 50px;
|
1097 |
+
margin-bottom: 40px;
|
1098 |
+
-webkit-transform: translateX(-50%);
|
1099 |
+
-ms-transform: translateX(-50%);
|
1100 |
+
transform: translateX(-50%);
|
1101 |
+
}
|
1102 |
+
|
1103 |
+
.wpr-settings-pro-overlay .dashicons:nth-child(2) {
|
1104 |
+
display: none;
|
1105 |
+
}
|
1106 |
+
|
1107 |
+
.wpr-settings-pro-overlay:hover .dashicons:nth-child(2) {
|
1108 |
+
display: block;
|
1109 |
+
}
|
1110 |
+
|
1111 |
+
.wpr-settings-pro-overlay:hover .dashicons:nth-child(1) {
|
1112 |
+
display: none;
|
1113 |
+
}.example {
|
1114 |
+
display: -ms-grid;
|
1115 |
+
display: grid;
|
1116 |
+
-webkit-transition: all .5s;
|
1117 |
+
-o-transition: all .5s;
|
1118 |
+
transition: all .5s;
|
1119 |
+
-webkit-user-select: none;
|
1120 |
+
-moz-user-select: none;
|
1121 |
+
-ms-user-select: none;
|
1122 |
+
user-select: none;
|
1123 |
+
background: -webkit-gradient(linear, left top, left bottom, from(white), to(black));
|
1124 |
+
background: -o-linear-gradient(top, white, black);
|
1125 |
+
background: linear-gradient(to bottom, white, black);
|
1126 |
}
|
assets/css/admin/premade-blocks.css
CHANGED
@@ -1,437 +1,437 @@
|
|
1 |
-
#wpcontent {
|
2 |
-
padding: 0;
|
3 |
-
}
|
4 |
-
|
5 |
-
.wpr-settings-page-header {
|
6 |
-
padding: 10px 30px 30px;
|
7 |
-
}
|
8 |
-
|
9 |
-
.wpr-settings-page-header h1 {
|
10 |
-
font-size: 42px;
|
11 |
-
}
|
12 |
-
|
13 |
-
.wpr-settings-page-header p {
|
14 |
-
margin-top: 5px;
|
15 |
-
color: #5a5a5a;
|
16 |
-
font-size: 16px;
|
17 |
-
margin-bottom: 30px;
|
18 |
-
}
|
19 |
-
|
20 |
-
.wpr-premade-blocks-tutorial {
|
21 |
-
display: inline-block;
|
22 |
-
margin-left: 45px;
|
23 |
-
padding: 9px 25px;
|
24 |
-
border: 0;
|
25 |
-
color: #fff;
|
26 |
-
background: #6A4BFF;
|
27 |
-
-webkit-box-shadow: 2px 2px 5px rgb(0 0 0 / 30%);
|
28 |
-
box-shadow: 2px 2px 5px rgb(0 0 0 / 30%);
|
29 |
-
font-size: 14px;
|
30 |
-
text-decoration: none;
|
31 |
-
border-radius: 3px;
|
32 |
-
}
|
33 |
-
|
34 |
-
.wpr-premade-blocks-tutorial:hover,
|
35 |
-
.wpr-premade-blocks-tutorial:focus {
|
36 |
-
color: #fff;
|
37 |
-
background: #5a39fb;
|
38 |
-
}
|
39 |
-
|
40 |
-
.wpr-tplib-content-wrap {
|
41 |
-
}
|
42 |
-
|
43 |
-
.wpr-tplib-sidebar {
|
44 |
-
padding: 30px;
|
45 |
-
display: -webkit-box;
|
46 |
-
display: -ms-flexbox;
|
47 |
-
display: flex;
|
48 |
-
}
|
49 |
-
|
50 |
-
.wpr-tplib-sidebar .wpr-tplib-search {
|
51 |
-
display: none;
|
52 |
-
position: relative;
|
53 |
-
margin: 30px 0;
|
54 |
-
}
|
55 |
-
|
56 |
-
.wpr-tplib-sidebar .wpr-tplib-search i {
|
57 |
-
position: absolute;
|
58 |
-
top: 50%;
|
59 |
-
right: 10px;
|
60 |
-
font-size: 12px;
|
61 |
-
-webkit-transform: translateY(-50%);
|
62 |
-
-ms-transform: translateY(-50%);
|
63 |
-
transform: translateY(-50%);
|
64 |
-
}
|
65 |
-
|
66 |
-
.wpr-tplib-sidebar .wpr-tplib-search input {
|
67 |
-
width: 100%;
|
68 |
-
padding: 8px 10px;
|
69 |
-
border: 0;
|
70 |
-
border-bottom: 1px solid #efefef;
|
71 |
-
}
|
72 |
-
|
73 |
-
.wpr-tplib-sidebar .wpr-tplib-search input::-webkit-input-placeholder {
|
74 |
-
color: #9a9a9a;
|
75 |
-
}
|
76 |
-
|
77 |
-
.wpr-tplib-sidebar .wpr-tplib-search input::-moz-placeholder {
|
78 |
-
color: #9a9a9a;
|
79 |
-
}
|
80 |
-
|
81 |
-
.wpr-tplib-sidebar .wpr-tplib-search input:-ms-input-placeholder {
|
82 |
-
color: #9a9a9a;
|
83 |
-
}
|
84 |
-
|
85 |
-
.wpr-tplib-sidebar .wpr-tplib-search input::-ms-input-placeholder {
|
86 |
-
color: #9a9a9a;
|
87 |
-
}
|
88 |
-
|
89 |
-
.wpr-tplib-sidebar .wpr-tplib-search input::placeholder {
|
90 |
-
color: #9a9a9a;
|
91 |
-
}
|
92 |
-
|
93 |
-
.wpr-tplib-filters-wrap {
|
94 |
-
display: -webkit-box;
|
95 |
-
display: -ms-flexbox;
|
96 |
-
display: flex;
|
97 |
-
}
|
98 |
-
|
99 |
-
.wpr-tplib-sub-filters {
|
100 |
-
display: none;
|
101 |
-
margin-left: 20px;
|
102 |
-
}
|
103 |
-
|
104 |
-
.wpr-tplib-sub-filters ul {
|
105 |
-
display: -webkit-box;
|
106 |
-
display: -ms-flexbox;
|
107 |
-
display: flex;
|
108 |
-
}
|
109 |
-
|
110 |
-
.wpr-tplib-sub-filters ul li {
|
111 |
-
padding: 10px 25px;
|
112 |
-
margin-right: 7px;
|
113 |
-
line-height: 15px;
|
114 |
-
font-size: 13px;
|
115 |
-
font-weight: normal;
|
116 |
-
background: #fff;
|
117 |
-
-webkit-box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
118 |
-
box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
119 |
-
cursor: pointer;
|
120 |
-
border-radius: 3px;
|
121 |
-
}
|
122 |
-
|
123 |
-
.wpr-tplib-sub-filters ul li:hover,
|
124 |
-
.wpr-tplib-sub-filters ul .wpr-tplib-activ-filter {
|
125 |
-
background: #6A4BFF;
|
126 |
-
color: #fff;
|
127 |
-
}
|
128 |
-
|
129 |
-
.wpr-tplib-filters {
|
130 |
-
-webkit-box-sizing: border-box;
|
131 |
-
box-sizing: border-box;
|
132 |
-
display: -webkit-box;
|
133 |
-
display: -ms-flexbox;
|
134 |
-
display: flex;
|
135 |
-
-webkit-box-orient: vertical;
|
136 |
-
-webkit-box-direction: normal;
|
137 |
-
-ms-flex-direction: column;
|
138 |
-
flex-direction: column;
|
139 |
-
-webkit-box-align: start;
|
140 |
-
-ms-flex-align: start;
|
141 |
-
align-items: flex-start;
|
142 |
-
position: relative;
|
143 |
-
width: 200px;
|
144 |
-
font-size: 14px;
|
145 |
-
font-weight: normal;
|
146 |
-
font-family: "Roboto",Arial,Helvetica,Verdana,sans-serif;
|
147 |
-
color: #6d7882;
|
148 |
-
}
|
149 |
-
|
150 |
-
.wpr-tplib-filters h3 {
|
151 |
-
display: -webkit-box;
|
152 |
-
display: -ms-flexbox;
|
153 |
-
display: flex;
|
154 |
-
width: 100%;
|
155 |
-
padding: 10px 15px;
|
156 |
-
margin: 0;
|
157 |
-
font-size: 13px;
|
158 |
-
font-weight: normal;
|
159 |
-
font-family: "Roboto",Arial,Helvetica,Verdana,sans-serif;
|
160 |
-
background: #fff;
|
161 |
-
-webkit-box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
162 |
-
box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
163 |
-
cursor: pointer;
|
164 |
-
border-radius: 3px;
|
165 |
-
}
|
166 |
-
|
167 |
-
.wpr-tplib-filters h3 span {
|
168 |
-
width: 100%;
|
169 |
-
}
|
170 |
-
|
171 |
-
.wpr-tplib-filters h3 i.fa-angle-down:before {
|
172 |
-
content: "\f347";
|
173 |
-
font-family: dashicons;
|
174 |
-
line-height: 18px;
|
175 |
-
font-weight: 400;
|
176 |
-
font-style: normal;
|
177 |
-
speak: never;
|
178 |
-
text-decoration: inherit;
|
179 |
-
text-transform: none;
|
180 |
-
text-rendering: auto;
|
181 |
-
-webkit-font-smoothing: antialiased;
|
182 |
-
-moz-osx-font-smoothing: grayscale;
|
183 |
-
font-size: 15px;
|
184 |
-
vertical-align: top;
|
185 |
-
text-align: center;
|
186 |
-
}
|
187 |
-
|
188 |
-
.wpr-tplib-filters-list {
|
189 |
-
visibility: hidden;
|
190 |
-
opacity: 0;
|
191 |
-
position: absolute;
|
192 |
-
top: 38px;
|
193 |
-
z-index: 999;
|
194 |
-
width: 700px;
|
195 |
-
padding: 20px 30px;
|
196 |
-
background: #fff;
|
197 |
-
-webkit-box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
198 |
-
box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
199 |
-
-webkit-transition: all 0.2s ease-in;
|
200 |
-
-o-transition: all 0.2s ease-in;
|
201 |
-
transition: all 0.2s ease-in;
|
202 |
-
border-radius: 3px;
|
203 |
-
}
|
204 |
-
|
205 |
-
.wpr-tplib-filters-list ul {
|
206 |
-
display: -webkit-box;
|
207 |
-
display: -ms-flexbox;
|
208 |
-
display: flex;
|
209 |
-
-ms-flex-wrap: wrap;
|
210 |
-
flex-wrap: wrap;
|
211 |
-
margin-top: 0;
|
212 |
-
}
|
213 |
-
|
214 |
-
.wpr-tplib-filters-list ul li {
|
215 |
-
-webkit-box-sizing: border-box;
|
216 |
-
box-sizing: border-box;
|
217 |
-
width: 25%;
|
218 |
-
padding: 12px;
|
219 |
-
color: #6d7882;
|
220 |
-
background: #fff;
|
221 |
-
font-size: 13px;
|
222 |
-
line-height: 1;
|
223 |
-
cursor: pointer;
|
224 |
-
}
|
225 |
-
|
226 |
-
.wpr-tplib-filters-list ul li:hover {
|
227 |
-
background: #f9f9f9;
|
228 |
-
color: #222;
|
229 |
-
}
|
230 |
-
|
231 |
-
.wpr-tplib-template-gird {
|
232 |
-
overflow: auto;
|
233 |
-
margin-left: -10px;
|
234 |
-
padding: 0 30px;
|
235 |
-
}
|
236 |
-
|
237 |
-
.elementor-clearfix:after {
|
238 |
-
content: '';
|
239 |
-
display: block;
|
240 |
-
clear: both;
|
241 |
-
width: 0;
|
242 |
-
height: 0;
|
243 |
-
}
|
244 |
-
|
245 |
-
.wpr-tplib-template-wrap {
|
246 |
-
position: relative;
|
247 |
-
float: left;
|
248 |
-
overflow: hidden;
|
249 |
-
width: 18.5%;
|
250 |
-
margin: 10px;
|
251 |
-
border-radius: 3px;
|
252 |
-
-webkit-box-shadow: 0 1px 20px 0 rgba(0,0,0,0.07);
|
253 |
-
box-shadow: 0 1px 20px 0 rgba(0,0,0,0.07);
|
254 |
-
}
|
255 |
-
|
256 |
-
.wpr-tplib-template-wrap:not(.wpr-tplib-pro-active):before {
|
257 |
-
content: 'Free';
|
258 |
-
display: block;
|
259 |
-
position: absolute;
|
260 |
-
top: 10px;
|
261 |
-
right: 10px;
|
262 |
-
z-index: 1;
|
263 |
-
width: 45px;
|
264 |
-
padding: 4px;
|
265 |
-
font-size: 11px;
|
266 |
-
font-weight: bold;
|
267 |
-
letter-spacing: 0.3px;
|
268 |
-
text-transform: uppercase;
|
269 |
-
text-align: center;
|
270 |
-
background: #555;
|
271 |
-
color: #fff;
|
272 |
-
-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
|
273 |
-
box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
|
274 |
-
border-radius: 3px;
|
275 |
-
}
|
276 |
-
|
277 |
-
.wpr-tplib-pro-wrap:not(.wpr-tplib-pro-active):before {
|
278 |
-
content: 'Pro';
|
279 |
-
background: #6A4BFF;
|
280 |
-
}
|
281 |
-
|
282 |
-
@media screen and ( max-width: 1364px ) {
|
283 |
-
.wpr-tplib-template-wrap {
|
284 |
-
width: 23%;
|
285 |
-
}
|
286 |
-
}
|
287 |
-
|
288 |
-
.wpr-tplib-template {
|
289 |
-
}
|
290 |
-
|
291 |
-
.wpr-tplib-insert-template:not(.wpr-tplib-insert-pro) {
|
292 |
-
display: none;
|
293 |
-
}
|
294 |
-
|
295 |
-
.wpr-tplib-template-wrap:hover .wpr-tplib-insert-pro {
|
296 |
-
opacity: 1;
|
297 |
-
visibility: visible;
|
298 |
-
}
|
299 |
-
|
300 |
-
.wpr-tplib-template-media {
|
301 |
-
position: relative;
|
302 |
-
background-color: #e8e8e8;
|
303 |
-
}
|
304 |
-
|
305 |
-
.wpr-tplib-template-media img {
|
306 |
-
display: block;
|
307 |
-
width: 100%;
|
308 |
-
max-width: 100%;
|
309 |
-
height: auto;
|
310 |
-
}
|
311 |
-
|
312 |
-
.wpr-tplib-template-media:hover .wpr-tplib-template-media-overlay {
|
313 |
-
opacity: 1;
|
314 |
-
}
|
315 |
-
|
316 |
-
.wpr-tplib-template-media-overlay {
|
317 |
-
opacity: 0;
|
318 |
-
position: absolute;
|
319 |
-
top: 0;
|
320 |
-
left: 0;
|
321 |
-
width: 100%;
|
322 |
-
height: 100%;
|
323 |
-
background-color: rgba(0, 0, 0, 0.5);
|
324 |
-
color: #fff;
|
325 |
-
cursor: pointer;
|
326 |
-
-webkit-transition: opacity 0.1s ease-in;
|
327 |
-
-o-transition: opacity 0.1s ease-in;
|
328 |
-
transition: opacity 0.1s ease-in;
|
329 |
-
}
|
330 |
-
|
331 |
-
.wpr-tplib-template-media-overlay i {
|
332 |
-
position: absolute;
|
333 |
-
top: 50%;
|
334 |
-
left: 50%;
|
335 |
-
-webkit-transform: translate(-50%, -50%);
|
336 |
-
-ms-transform: translate(-50%, -50%);
|
337 |
-
transform: translate(-50%, -50%);
|
338 |
-
font-size: 25px;
|
339 |
-
}
|
340 |
-
|
341 |
-
.wpr-tplib-preview-wrap {
|
342 |
-
display: none;
|
343 |
-
}
|
344 |
-
|
345 |
-
.wpr-tplib-image {
|
346 |
-
display: -webkit-box;
|
347 |
-
display: -ms-flexbox;
|
348 |
-
display: flex;
|
349 |
-
-webkit-box-pack: center;
|
350 |
-
-ms-flex-pack: center;
|
351 |
-
justify-content: center;
|
352 |
-
padding: 20px;
|
353 |
-
}
|
354 |
-
|
355 |
-
.wpr-tplib-iframe {
|
356 |
-
position: relative;
|
357 |
-
padding-top: 56.25%;
|
358 |
-
}
|
359 |
-
|
360 |
-
.wpr-tplib-iframe iframe {
|
361 |
-
position: absolute;
|
362 |
-
top: 0;
|
363 |
-
left: 0;
|
364 |
-
width: 100%;
|
365 |
-
height: 100%;
|
366 |
-
border: none;
|
367 |
-
}
|
368 |
-
|
369 |
-
.wpr-tplib-template-footer {
|
370 |
-
display: -webkit-box;
|
371 |
-
display: -ms-flexbox;
|
372 |
-
display: flex;
|
373 |
-
-webkit-box-orient: vertical;
|
374 |
-
-webkit-box-direction: normal;
|
375 |
-
-ms-flex-flow: column wrap;
|
376 |
-
flex-flow: column wrap;
|
377 |
-
-ms-flex-line-pack: justify;
|
378 |
-
align-content: space-between;
|
379 |
-
-webkit-box-pack: center;
|
380 |
-
-ms-flex-pack: center;
|
381 |
-
justify-content: center;
|
382 |
-
height: 45px;
|
383 |
-
padding: 5px 15px;
|
384 |
-
background-color: #fff;
|
385 |
-
border-top: 1px solid #efefef;
|
386 |
-
}
|
387 |
-
|
388 |
-
.wpr-tplib-template-footer h3 {
|
389 |
-
overflow: hidden;
|
390 |
-
color: #6d7882;
|
391 |
-
font-family: "Roboto",Arial,Helvetica,Verdana,sans-serif;
|
392 |
-
font-size: 13px;
|
393 |
-
font-weight: normal;
|
394 |
-
white-space: nowrap;
|
395 |
-
-o-text-overflow: ellipsis;
|
396 |
-
text-overflow: ellipsis;
|
397 |
-
}
|
398 |
-
|
399 |
-
.wpr-tplib-template-footer .wpr-tplib-insert-template {
|
400 |
-
opacity: 0;
|
401 |
-
visibility: hidden;
|
402 |
-
padding: 6px 10px;
|
403 |
-
color: #fff;
|
404 |
-
background-color: #6A4BFF;
|
405 |
-
font-family: "Roboto",Arial,Helvetica,Verdana,sans-serif;
|
406 |
-
font-size: 13px;
|
407 |
-
line-height: 1;
|
408 |
-
letter-spacing: 0.3px;
|
409 |
-
border-radius: 3px;
|
410 |
-
cursor: pointer;
|
411 |
-
-webkit-transition: all 0.1s ease-in;
|
412 |
-
-o-transition: all 0.1s ease-in;
|
413 |
-
transition: all 0.1s ease-in;
|
414 |
-
}
|
415 |
-
|
416 |
-
|
417 |
-
#masonry-effect {
|
418 |
-
display: -webkit-box;
|
419 |
-
display: -ms-flexbox;
|
420 |
-
display: flex;
|
421 |
-
-webkit-box-orient: horizontal;
|
422 |
-
-webkit-box-direction: normal;
|
423 |
-
-ms-flex-direction: row;
|
424 |
-
flex-direction: row;
|
425 |
-
-ms-flex-wrap: wrap;
|
426 |
-
flex-wrap: wrap;
|
427 |
-
}
|
428 |
-
.item {
|
429 |
-
-webkit-box-sizing: border-box;
|
430 |
-
box-sizing: border-box;
|
431 |
-
-webkit-box-orient: vertical;
|
432 |
-
-webkit-box-direction: normal;
|
433 |
-
-ms-flex-direction: column;
|
434 |
-
flex-direction: column;
|
435 |
-
position: relative;
|
436 |
-
width: calc(33.3%);
|
437 |
}
|
1 |
+
#wpcontent {
|
2 |
+
padding: 0;
|
3 |
+
}
|
4 |
+
|
5 |
+
.wpr-settings-page-header {
|
6 |
+
padding: 10px 30px 30px;
|
7 |
+
}
|
8 |
+
|
9 |
+
.wpr-settings-page-header h1 {
|
10 |
+
font-size: 42px;
|
11 |
+
}
|
12 |
+
|
13 |
+
.wpr-settings-page-header p {
|
14 |
+
margin-top: 5px;
|
15 |
+
color: #5a5a5a;
|
16 |
+
font-size: 16px;
|
17 |
+
margin-bottom: 30px;
|
18 |
+
}
|
19 |
+
|
20 |
+
.wpr-premade-blocks-tutorial {
|
21 |
+
display: inline-block;
|
22 |
+
margin-left: 45px;
|
23 |
+
padding: 9px 25px;
|
24 |
+
border: 0;
|
25 |
+
color: #fff;
|
26 |
+
background: #6A4BFF;
|
27 |
+
-webkit-box-shadow: 2px 2px 5px rgb(0 0 0 / 30%);
|
28 |
+
box-shadow: 2px 2px 5px rgb(0 0 0 / 30%);
|
29 |
+
font-size: 14px;
|
30 |
+
text-decoration: none;
|
31 |
+
border-radius: 3px;
|
32 |
+
}
|
33 |
+
|
34 |
+
.wpr-premade-blocks-tutorial:hover,
|
35 |
+
.wpr-premade-blocks-tutorial:focus {
|
36 |
+
color: #fff;
|
37 |
+
background: #5a39fb;
|
38 |
+
}
|
39 |
+
|
40 |
+
.wpr-tplib-content-wrap {
|
41 |
+
}
|
42 |
+
|
43 |
+
.wpr-tplib-sidebar {
|
44 |
+
padding: 30px;
|
45 |
+
display: -webkit-box;
|
46 |
+
display: -ms-flexbox;
|
47 |
+
display: flex;
|
48 |
+
}
|
49 |
+
|
50 |
+
.wpr-tplib-sidebar .wpr-tplib-search {
|
51 |
+
display: none;
|
52 |
+
position: relative;
|
53 |
+
margin: 30px 0;
|
54 |
+
}
|
55 |
+
|
56 |
+
.wpr-tplib-sidebar .wpr-tplib-search i {
|
57 |
+
position: absolute;
|
58 |
+
top: 50%;
|
59 |
+
right: 10px;
|
60 |
+
font-size: 12px;
|
61 |
+
-webkit-transform: translateY(-50%);
|
62 |
+
-ms-transform: translateY(-50%);
|
63 |
+
transform: translateY(-50%);
|
64 |
+
}
|
65 |
+
|
66 |
+
.wpr-tplib-sidebar .wpr-tplib-search input {
|
67 |
+
width: 100%;
|
68 |
+
padding: 8px 10px;
|
69 |
+
border: 0;
|
70 |
+
border-bottom: 1px solid #efefef;
|
71 |
+
}
|
72 |
+
|
73 |
+
.wpr-tplib-sidebar .wpr-tplib-search input::-webkit-input-placeholder {
|
74 |
+
color: #9a9a9a;
|
75 |
+
}
|
76 |
+
|
77 |
+
.wpr-tplib-sidebar .wpr-tplib-search input::-moz-placeholder {
|
78 |
+
color: #9a9a9a;
|
79 |
+
}
|
80 |
+
|
81 |
+
.wpr-tplib-sidebar .wpr-tplib-search input:-ms-input-placeholder {
|
82 |
+
color: #9a9a9a;
|
83 |
+
}
|
84 |
+
|
85 |
+
.wpr-tplib-sidebar .wpr-tplib-search input::-ms-input-placeholder {
|
86 |
+
color: #9a9a9a;
|
87 |
+
}
|
88 |
+
|
89 |
+
.wpr-tplib-sidebar .wpr-tplib-search input::placeholder {
|
90 |
+
color: #9a9a9a;
|
91 |
+
}
|
92 |
+
|
93 |
+
.wpr-tplib-filters-wrap {
|
94 |
+
display: -webkit-box;
|
95 |
+
display: -ms-flexbox;
|
96 |
+
display: flex;
|
97 |
+
}
|
98 |
+
|
99 |
+
.wpr-tplib-sub-filters {
|
100 |
+
display: none;
|
101 |
+
margin-left: 20px;
|
102 |
+
}
|
103 |
+
|
104 |
+
.wpr-tplib-sub-filters ul {
|
105 |
+
display: -webkit-box;
|
106 |
+
display: -ms-flexbox;
|
107 |
+
display: flex;
|
108 |
+
}
|
109 |
+
|
110 |
+
.wpr-tplib-sub-filters ul li {
|
111 |
+
padding: 10px 25px;
|
112 |
+
margin-right: 7px;
|
113 |
+
line-height: 15px;
|
114 |
+
font-size: 13px;
|
115 |
+
font-weight: normal;
|
116 |
+
background: #fff;
|
117 |
+
-webkit-box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
118 |
+
box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
119 |
+
cursor: pointer;
|
120 |
+
border-radius: 3px;
|
121 |
+
}
|
122 |
+
|
123 |
+
.wpr-tplib-sub-filters ul li:hover,
|
124 |
+
.wpr-tplib-sub-filters ul .wpr-tplib-activ-filter {
|
125 |
+
background: #6A4BFF;
|
126 |
+
color: #fff;
|
127 |
+
}
|
128 |
+
|
129 |
+
.wpr-tplib-filters {
|
130 |
+
-webkit-box-sizing: border-box;
|
131 |
+
box-sizing: border-box;
|
132 |
+
display: -webkit-box;
|
133 |
+
display: -ms-flexbox;
|
134 |
+
display: flex;
|
135 |
+
-webkit-box-orient: vertical;
|
136 |
+
-webkit-box-direction: normal;
|
137 |
+
-ms-flex-direction: column;
|
138 |
+
flex-direction: column;
|
139 |
+
-webkit-box-align: start;
|
140 |
+
-ms-flex-align: start;
|
141 |
+
align-items: flex-start;
|
142 |
+
position: relative;
|
143 |
+
width: 200px;
|
144 |
+
font-size: 14px;
|
145 |
+
font-weight: normal;
|
146 |
+
font-family: "Roboto",Arial,Helvetica,Verdana,sans-serif;
|
147 |
+
color: #6d7882;
|
148 |
+
}
|
149 |
+
|
150 |
+
.wpr-tplib-filters h3 {
|
151 |
+
display: -webkit-box;
|
152 |
+
display: -ms-flexbox;
|
153 |
+
display: flex;
|
154 |
+
width: 100%;
|
155 |
+
padding: 10px 15px;
|
156 |
+
margin: 0;
|
157 |
+
font-size: 13px;
|
158 |
+
font-weight: normal;
|
159 |
+
font-family: "Roboto",Arial,Helvetica,Verdana,sans-serif;
|
160 |
+
background: #fff;
|
161 |
+
-webkit-box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
162 |
+
box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
163 |
+
cursor: pointer;
|
164 |
+
border-radius: 3px;
|
165 |
+
}
|
166 |
+
|
167 |
+
.wpr-tplib-filters h3 span {
|
168 |
+
width: 100%;
|
169 |
+
}
|
170 |
+
|
171 |
+
.wpr-tplib-filters h3 i.fa-angle-down:before {
|
172 |
+
content: "\f347";
|
173 |
+
font-family: dashicons;
|
174 |
+
line-height: 18px;
|
175 |
+
font-weight: 400;
|
176 |
+
font-style: normal;
|
177 |
+
speak: never;
|
178 |
+
text-decoration: inherit;
|
179 |
+
text-transform: none;
|
180 |
+
text-rendering: auto;
|
181 |
+
-webkit-font-smoothing: antialiased;
|
182 |
+
-moz-osx-font-smoothing: grayscale;
|
183 |
+
font-size: 15px;
|
184 |
+
vertical-align: top;
|
185 |
+
text-align: center;
|
186 |
+
}
|
187 |
+
|
188 |
+
.wpr-tplib-filters-list {
|
189 |
+
visibility: hidden;
|
190 |
+
opacity: 0;
|
191 |
+
position: absolute;
|
192 |
+
top: 38px;
|
193 |
+
z-index: 999;
|
194 |
+
width: 700px;
|
195 |
+
padding: 20px 30px;
|
196 |
+
background: #fff;
|
197 |
+
-webkit-box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
198 |
+
box-shadow: 0 2px 5px 0 rgba(0,0,0,0.05);
|
199 |
+
-webkit-transition: all 0.2s ease-in;
|
200 |
+
-o-transition: all 0.2s ease-in;
|
201 |
+
transition: all 0.2s ease-in;
|
202 |
+
border-radius: 3px;
|
203 |
+
}
|
204 |
+
|
205 |
+
.wpr-tplib-filters-list ul {
|
206 |
+
display: -webkit-box;
|
207 |
+
display: -ms-flexbox;
|
208 |
+
display: flex;
|
209 |
+
-ms-flex-wrap: wrap;
|
210 |
+
flex-wrap: wrap;
|
211 |
+
margin-top: 0;
|
212 |
+
}
|
213 |
+
|
214 |
+
.wpr-tplib-filters-list ul li {
|
215 |
+
-webkit-box-sizing: border-box;
|
216 |
+
box-sizing: border-box;
|
217 |
+
width: 25%;
|
218 |
+
padding: 12px;
|
219 |
+
color: #6d7882;
|
220 |
+
background: #fff;
|
221 |
+
font-size: 13px;
|
222 |
+
line-height: 1;
|
223 |
+
cursor: pointer;
|
224 |
+
}
|
225 |
+
|
226 |
+
.wpr-tplib-filters-list ul li:hover {
|
227 |
+
background: #f9f9f9;
|
228 |
+
color: #222;
|
229 |
+
}
|
230 |
+
|
231 |
+
.wpr-tplib-template-gird {
|
232 |
+
overflow: auto;
|
233 |
+
margin-left: -10px;
|
234 |
+
padding: 0 30px;
|
235 |
+
}
|
236 |
+
|
237 |
+
.elementor-clearfix:after {
|
238 |
+
content: '';
|
239 |
+
display: block;
|
240 |
+
clear: both;
|
241 |
+
width: 0;
|
242 |
+
height: 0;
|
243 |
+
}
|
244 |
+
|
245 |
+
.wpr-tplib-template-wrap {
|
246 |
+
position: relative;
|
247 |
+
float: left;
|
248 |
+
overflow: hidden;
|
249 |
+
width: 18.5%;
|
250 |
+
margin: 10px;
|
251 |
+
border-radius: 3px;
|
252 |
+
-webkit-box-shadow: 0 1px 20px 0 rgba(0,0,0,0.07);
|
253 |
+
box-shadow: 0 1px 20px 0 rgba(0,0,0,0.07);
|
254 |
+
}
|
255 |
+
|
256 |
+
.wpr-tplib-template-wrap:not(.wpr-tplib-pro-active):before {
|
257 |
+
content: 'Free';
|
258 |
+
display: block;
|
259 |
+
position: absolute;
|
260 |
+
top: 10px;
|
261 |
+
right: 10px;
|
262 |
+
z-index: 1;
|
263 |
+
width: 45px;
|
264 |
+
padding: 4px;
|
265 |
+
font-size: 11px;
|
266 |
+
font-weight: bold;
|
267 |
+
letter-spacing: 0.3px;
|
268 |
+
text-transform: uppercase;
|
269 |
+
text-align: center;
|
270 |
+
background: #555;
|
271 |
+
color: #fff;
|
272 |
+
-webkit-box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
|
273 |
+
box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
|
274 |
+
border-radius: 3px;
|
275 |
+
}
|
276 |
+
|
277 |
+
.wpr-tplib-pro-wrap:not(.wpr-tplib-pro-active):before {
|
278 |
+
content: 'Pro';
|
279 |
+
background: #6A4BFF;
|
280 |
+
}
|
281 |
+
|
282 |
+
@media screen and ( max-width: 1364px ) {
|
283 |
+
.wpr-tplib-template-wrap {
|
284 |
+
width: 23%;
|
285 |
+
}
|
286 |
+
}
|
287 |
+
|
288 |
+
.wpr-tplib-template {
|
289 |
+
}
|
290 |
+
|
291 |
+
.wpr-tplib-insert-template:not(.wpr-tplib-insert-pro) {
|
292 |
+
display: none;
|
293 |
+
}
|
294 |
+
|
295 |
+
.wpr-tplib-template-wrap:hover .wpr-tplib-insert-pro {
|
296 |
+
opacity: 1;
|
297 |
+
visibility: visible;
|
298 |
+
}
|
299 |
+
|
300 |
+
.wpr-tplib-template-media {
|
301 |
+
position: relative;
|
302 |
+
background-color: #e8e8e8;
|
303 |
+
}
|
304 |
+
|
305 |
+
.wpr-tplib-template-media img {
|
306 |
+
display: block;
|
307 |
+
width: 100%;
|
308 |
+
max-width: 100%;
|
309 |
+
height: auto;
|
310 |
+
}
|
311 |
+
|
312 |
+
.wpr-tplib-template-media:hover .wpr-tplib-template-media-overlay {
|
313 |
+
opacity: 1;
|
314 |
+
}
|
315 |
+
|
316 |
+
.wpr-tplib-template-media-overlay {
|
317 |
+
opacity: 0;
|
318 |
+
position: absolute;
|
319 |
+
top: 0;
|
320 |
+
left: 0;
|
321 |
+
width: 100%;
|
322 |
+
height: 100%;
|
323 |
+
background-color: rgba(0, 0, 0, 0.5);
|
324 |
+
color: #fff;
|
325 |
+
cursor: pointer;
|
326 |
+
-webkit-transition: opacity 0.1s ease-in;
|
327 |
+
-o-transition: opacity 0.1s ease-in;
|
328 |
+
transition: opacity 0.1s ease-in;
|
329 |
+
}
|
330 |
+
|
331 |
+
.wpr-tplib-template-media-overlay i {
|
332 |
+
position: absolute;
|
333 |
+
top: 50%;
|
334 |
+
left: 50%;
|
335 |
+
-webkit-transform: translate(-50%, -50%);
|
336 |
+
-ms-transform: translate(-50%, -50%);
|
337 |
+
transform: translate(-50%, -50%);
|
338 |
+
font-size: 25px;
|
339 |
+
}
|
340 |
+
|
341 |
+
.wpr-tplib-preview-wrap {
|
342 |
+
display: none;
|
343 |
+
}
|
344 |
+
|
345 |
+
.wpr-tplib-image {
|
346 |
+
display: -webkit-box;
|
347 |
+
display: -ms-flexbox;
|
348 |
+
display: flex;
|
349 |
+
-webkit-box-pack: center;
|
350 |
+
-ms-flex-pack: center;
|
351 |
+
justify-content: center;
|
352 |
+
padding: 20px;
|
353 |
+
}
|
354 |
+
|
355 |
+
.wpr-tplib-iframe {
|
356 |
+
position: relative;
|
357 |
+
padding-top: 56.25%;
|
358 |
+
}
|
359 |
+
|
360 |
+
.wpr-tplib-iframe iframe {
|
361 |
+
position: absolute;
|
362 |
+
top: 0;
|
363 |
+
left: 0;
|
364 |
+
width: 100%;
|
365 |
+
height: 100%;
|
366 |
+
border: none;
|
367 |
+
}
|
368 |
+
|
369 |
+
.wpr-tplib-template-footer {
|
370 |
+
display: -webkit-box;
|
371 |
+
display: -ms-flexbox;
|
372 |
+
display: flex;
|
373 |
+
-webkit-box-orient: vertical;
|
374 |
+
-webkit-box-direction: normal;
|
375 |
+
-ms-flex-flow: column wrap;
|
376 |
+
flex-flow: column wrap;
|
377 |
+
-ms-flex-line-pack: justify;
|
378 |
+
align-content: space-between;
|
379 |
+
-webkit-box-pack: center;
|
380 |
+
-ms-flex-pack: center;
|
381 |
+
justify-content: center;
|
382 |
+
height: 45px;
|
383 |
+
padding: 5px 15px;
|
384 |
+
background-color: #fff;
|
385 |
+
border-top: 1px solid #efefef;
|
386 |
+
}
|
387 |
+
|
388 |
+
.wpr-tplib-template-footer h3 {
|
389 |
+
overflow: hidden;
|
390 |
+
color: #6d7882;
|
391 |
+
font-family: "Roboto",Arial,Helvetica,Verdana,sans-serif;
|
392 |
+
font-size: 13px;
|
393 |
+
font-weight: normal;
|
394 |
+
white-space: nowrap;
|
395 |
+
-o-text-overflow: ellipsis;
|
396 |
+
text-overflow: ellipsis;
|
397 |
+
}
|
398 |
+
|
399 |
+
.wpr-tplib-template-footer .wpr-tplib-insert-template {
|
400 |
+
opacity: 0;
|
401 |
+
visibility: hidden;
|
402 |
+
padding: 6px 10px;
|
403 |
+
color: #fff;
|
404 |
+
background-color: #6A4BFF;
|
405 |
+
font-family: "Roboto",Arial,Helvetica,Verdana,sans-serif;
|
406 |
+
font-size: 13px;
|
407 |
+
line-height: 1;
|
408 |
+
letter-spacing: 0.3px;
|
409 |
+
border-radius: 3px;
|
410 |
+
cursor: pointer;
|
411 |
+
-webkit-transition: all 0.1s ease-in;
|
412 |
+
-o-transition: all 0.1s ease-in;
|
413 |
+
transition: all 0.1s ease-in;
|
414 |
+
}
|
415 |
+
|
416 |
+
|
417 |
+
#masonry-effect {
|
418 |
+
display: -webkit-box;
|
419 |
+
display: -ms-flexbox;
|
420 |
+
display: flex;
|
421 |
+
-webkit-box-orient: horizontal;
|
422 |
+
-webkit-box-direction: normal;
|
423 |
+
-ms-flex-direction: row;
|
424 |
+
flex-direction: row;
|
425 |
+
-ms-flex-wrap: wrap;
|
426 |
+
flex-wrap: wrap;
|
427 |
+
}
|
428 |
+
.item {
|
429 |
+
-webkit-box-sizing: border-box;
|
430 |
+
box-sizing: border-box;
|
431 |
+
-webkit-box-orient: vertical;
|
432 |
+
-webkit-box-direction: normal;
|
433 |
+
-ms-flex-direction: column;
|
434 |
+
flex-direction: column;
|
435 |
+
position: relative;
|
436 |
+
width: calc(33.3%);
|
437 |
}
|
assets/css/admin/templates-kit.css
CHANGED
@@ -1,604 +1,604 @@
|
|
1 |
-
.royal-addons_page_wpr-templates-kit #wpwrap {
|
2 |
-
background: #F6F6F6;
|
3 |
-
}
|
4 |
-
|
5 |
-
.royal-addons_page_wpr-templates-kit #wpcontent {
|
6 |
-
padding: 0;
|
7 |
-
}
|
8 |
-
|
9 |
-
img {
|
10 |
-
display: block;
|
11 |
-
max-width: 100%;
|
12 |
-
width: 100%;
|
13 |
-
}
|
14 |
-
|
15 |
-
.wpr-templates-kit-page > header {
|
16 |
-
position: sticky;
|
17 |
-
top: 32px;
|
18 |
-
z-index: 99;
|
19 |
-
display: -webkit-box;
|
20 |
-
display: -ms-flexbox;
|
21 |
-
display: flex;
|
22 |
-
-webkit-box-pack: justify;
|
23 |
-
-ms-flex-pack: justify;
|
24 |
-
justify-content: space-between;
|
25 |
-
background: #fff;
|
26 |
-
-webkit-box-shadow: 0 0 7px 0 rgba(0,0,0,0.2);
|
27 |
-
box-shadow: 0 0 7px 0 rgba(0,0,0,0.2);
|
28 |
-
}
|
29 |
-
|
30 |
-
.wpr-templates-kit-logo {
|
31 |
-
display: -webkit-box;
|
32 |
-
display: -ms-flexbox;
|
33 |
-
display: flex;
|
34 |
-
}
|
35 |
-
|
36 |
-
.wpr-templates-kit-logo div {
|
37 |
-
padding: 20px;
|
38 |
-
border-right: 1px solid #e8e8e8;
|
39 |
-
}
|
40 |
-
|
41 |
-
.wpr-templates-kit-logo .back-btn {
|
42 |
-
display: none;
|
43 |
-
-webkit-box-align: center;
|
44 |
-
-ms-flex-align: center;
|
45 |
-
align-items: center;
|
46 |
-
font-weight: bold;
|
47 |
-
color: #6d7882;
|
48 |
-
cursor: pointer;
|
49 |
-
}
|
50 |
-
|
51 |
-
.wpr-templates-kit-logo .back-btn:hover {
|
52 |
-
color: #222;
|
53 |
-
}
|
54 |
-
|
55 |
-
.wpr-templates-kit-search {
|
56 |
-
display: -webkit-box;
|
57 |
-
display: -ms-flexbox;
|
58 |
-
display: flex;
|
59 |
-
-webkit-box-align: center;
|
60 |
-
-ms-flex-align: center;
|
61 |
-
align-items: center;
|
62 |
-
position: absolute;
|
63 |
-
top: 20px;
|
64 |
-
left: 50%;
|
65 |
-
-webkit-transform: translateX(-50%);
|
66 |
-
-ms-transform: translateX(-50%);
|
67 |
-
transform: translateX(-50%);
|
68 |
-
}
|
69 |
-
|
70 |
-
.wpr-templates-kit-search input {
|
71 |
-
width: 500px;
|
72 |
-
height: 45px;
|
73 |
-
padding-left: 15px;
|
74 |
-
border: 2px solid #e8e8e8 !important;
|
75 |
-
-webkit-box-shadow: none !important;
|
76 |
-
box-shadow: none !important;
|
77 |
-
}
|
78 |
-
|
79 |
-
.wpr-templates-kit-search .dashicons {
|
80 |
-
margin-left: -32px;
|
81 |
-
color: #777;
|
82 |
-
}
|
83 |
-
|
84 |
-
.wpr-templates-kit-price-filter {
|
85 |
-
position: relative;
|
86 |
-
width: 110px;
|
87 |
-
height: 40px;
|
88 |
-
margin: 20px;
|
89 |
-
border: 2px solid #e8e8e8;
|
90 |
-
line-height: 40px;
|
91 |
-
padding: 0 20px;
|
92 |
-
border-radius: 3px;
|
93 |
-
font-size: 14px;
|
94 |
-
cursor: pointer;
|
95 |
-
}
|
96 |
-
|
97 |
-
.wpr-templates-kit-price-filter .dashicons {
|
98 |
-
position: absolute;
|
99 |
-
right: 12px;
|
100 |
-
line-height: 40px;
|
101 |
-
font-size: 14px;
|
102 |
-
}
|
103 |
-
|
104 |
-
.wpr-templates-kit-price-filter:hover ul {
|
105 |
-
display: block;
|
106 |
-
}
|
107 |
-
|
108 |
-
.wpr-templates-kit-price-filter ul {
|
109 |
-
display: none;
|
110 |
-
background: #fff;
|
111 |
-
position: absolute;
|
112 |
-
width: 100%;
|
113 |
-
top: 26px;
|
114 |
-
left: -2px;
|
115 |
-
padding: 0;
|
116 |
-
border: 2px solid #e8e8e8;
|
117 |
-
}
|
118 |
-
|
119 |
-
.wpr-templates-kit-price-filter ul li {
|
120 |
-
padding: 0 20px;
|
121 |
-
line-height: 32px;
|
122 |
-
margin-bottom: 0 !important;
|
123 |
-
border-bottom: 1px solid #e8e8e8;
|
124 |
-
}
|
125 |
-
|
126 |
-
.wpr-templates-kit-price-filter ul li:last-child {
|
127 |
-
border-bottom: 0;
|
128 |
-
}
|
129 |
-
|
130 |
-
.wpr-templates-kit-price-filter ul li:hover {
|
131 |
-
background: #e8e8e8;
|
132 |
-
}
|
133 |
-
|
134 |
-
.wpr-templates-kit-filters {
|
135 |
-
display: none;
|
136 |
-
padding: 20px;
|
137 |
-
}
|
138 |
-
|
139 |
-
.wpr-templates-kit-filters div {
|
140 |
-
padding: 10px 20px;
|
141 |
-
border: 2px solid #e8e8e8;
|
142 |
-
border-radius: 3px;
|
143 |
-
font-size: 16px;
|
144 |
-
}
|
145 |
-
|
146 |
-
.wpr-templates-kit-filters ul {
|
147 |
-
display: none;
|
148 |
-
}
|
149 |
-
|
150 |
-
.wpr-templates-kit-page-title {
|
151 |
-
text-align: center;
|
152 |
-
margin-top: 65px;
|
153 |
-
margin-bottom: 35px;
|
154 |
-
}
|
155 |
-
|
156 |
-
.wpr-templates-kit-page-title h1 {
|
157 |
-
font-size: 35px;
|
158 |
-
color: #555;
|
159 |
-
}
|
160 |
-
|
161 |
-
.button.wpr-options-button {
|
162 |
-
padding: 3px 18px;
|
163 |
-
border: 0;
|
164 |
-
color: #fff;
|
165 |
-
background: #6A4BFF;
|
166 |
-
-webkit-box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
167 |
-
box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
168 |
-
font-size: 14px;
|
169 |
-
}
|
170 |
-
|
171 |
-
.button.wpr-options-button:hover,
|
172 |
-
.button.wpr-options-button:focus {
|
173 |
-
color: #fff;
|
174 |
-
background: #6A4BFF;
|
175 |
-
border: none;
|
176 |
-
}
|
177 |
-
|
178 |
-
.button.wpr-options-button .dashicons {
|
179 |
-
font-size: 16px;
|
180 |
-
line-height: 32px;
|
181 |
-
}
|
182 |
-
|
183 |
-
.wpr-templates-kit-grid {
|
184 |
-
display: -ms-grid;
|
185 |
-
display: grid;
|
186 |
-
-ms-grid-columns: 1fr 20px 1fr 20px 1fr 20px 1fr;
|
187 |
-
grid-template-columns: repeat(4, 1fr);
|
188 |
-
grid-column-gap: 30px;
|
189 |
-
grid-row-gap: 30px;
|
190 |
-
padding: 30px;
|
191 |
-
}
|
192 |
-
|
193 |
-
|
194 |
-
@media screen and (max-width: 1400px) {
|
195 |
-
.wpr-templates-kit-grid {
|
196 |
-
grid-template-columns: repeat(3, 1fr);
|
197 |
-
}
|
198 |
-
}
|
199 |
-
|
200 |
-
.wpr-templates-kit-grid .grid-item {
|
201 |
-
position: relative;
|
202 |
-
overflow: hidden;
|
203 |
-
border: 1px solid #e8e8e8;
|
204 |
-
-webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,0.1);
|
205 |
-
box-shadow: 0 0 3px 0 rgba(0,0,0,0.1);
|
206 |
-
background: #fff;
|
207 |
-
}
|
208 |
-
|
209 |
-
|
210 |
-
.wpr-templates-kit-grid .grid-item[data-price="pro"]:before {
|
211 |
-
content: 'Premium';
|
212 |
-
display: block;
|
213 |
-
position: absolute;
|
214 |
-
top: 20px;
|
215 |
-
right: -30px;
|
216 |
-
z-index: 10;
|
217 |
-
-webkit-transform: rotate(45deg);
|
218 |
-
-ms-transform: rotate(45deg);
|
219 |
-
transform: rotate(45deg);
|
220 |
-
padding: 7px 40px;
|
221 |
-
font-size: 13px;
|
222 |
-
letter-spacing: .4px;
|
223 |
-
background: #6a4bff;
|
224 |
-
color: #fff;
|
225 |
-
-webkit-box-shadow: 0 0 5px 0 rgb(0 0 0 / 70%);
|
226 |
-
box-shadow: 0 0 5px 0 rgb(0 0 0 / 70%);
|
227 |
-
}
|
228 |
-
|
229 |
-
.wpr-templates-kit-grid .image-wrap {
|
230 |
-
position: relative;
|
231 |
-
border-bottom: 1px solid #e8e8e8;
|
232 |
-
}
|
233 |
-
|
234 |
-
.wpr-templates-kit-grid .image-wrap:hover .image-overlay {
|
235 |
-
opacity: 1;
|
236 |
-
}
|
237 |
-
|
238 |
-
.wpr-templates-kit-grid .image-overlay {
|
239 |
-
opacity: 0;
|
240 |
-
display: -webkit-box;
|
241 |
-
display: -ms-flexbox;
|
242 |
-
display: flex;
|
243 |
-
-webkit-box-align: center;
|
244 |
-
-ms-flex-align: center;
|
245 |
-
align-items: center;
|
246 |
-
-webkit-box-pack: center;
|
247 |
-
-ms-flex-pack: center;
|
248 |
-
justify-content: center;
|
249 |
-
position: absolute;
|
250 |
-
top: 0;
|
251 |
-
left: 0;
|
252 |
-
width: 100%;
|
253 |
-
height: 100%;
|
254 |
-
background: rgba(0,0,0,0.2);
|
255 |
-
cursor: pointer;
|
256 |
-
-webkit-transition: opacity 0.2s ease-in;
|
257 |
-
-o-transition: opacity 0.2s ease-in;
|
258 |
-
transition: opacity 0.2s ease-in;
|
259 |
-
}
|
260 |
-
|
261 |
-
.wpr-templates-kit-grid .image-overlay .dashicons {
|
262 |
-
font-size: 30px;
|
263 |
-
color: #fff;
|
264 |
-
}
|
265 |
-
|
266 |
-
.wpr-templates-kit-grid .grid-item footer {
|
267 |
-
display: -webkit-box;
|
268 |
-
display: -ms-flexbox;
|
269 |
-
display: flex;
|
270 |
-
padding: 15px;
|
271 |
-
-webkit-box-pack: justify;
|
272 |
-
-ms-flex-pack: justify;
|
273 |
-
justify-content: space-between;
|
274 |
-
}
|
275 |
-
|
276 |
-
.wpr-templates-kit-grid .grid-item footer h3 {
|
277 |
-
margin: 0;
|
278 |
-
font-size: 16px;
|
279 |
-
text-transform: capitalize;
|
280 |
-
}
|
281 |
-
|
282 |
-
.wpr-templates-kit-grid .grid-item footer span {
|
283 |
-
position: relative;
|
284 |
-
min-width: 77px;
|
285 |
-
height: 20px;
|
286 |
-
background-color: #5130ef;
|
287 |
-
color: #fff;
|
288 |
-
font-size: 12px;
|
289 |
-
padding: 2px 10px;
|
290 |
-
border-radius: 3px;
|
291 |
-
}
|
292 |
-
|
293 |
-
span.wpr-woo-builder-label {
|
294 |
-
background-color: #7B51AD !important;
|
295 |
-
text-align: center;
|
296 |
-
}
|
297 |
-
|
298 |
-
.wpr-templates-kit-grid .grid-item footer span:after {
|
299 |
-
display: none;
|
300 |
-
width: 125px;
|
301 |
-
position: absolute;
|
302 |
-
top: -50px;
|
303 |
-
left: 30%;
|
304 |
-
-webkit-transform: translateX(-50%);
|
305 |
-
-ms-transform: translateX(-50%);
|
306 |
-
transform: translateX(-50%);
|
307 |
-
padding: 7px 10px;
|
308 |
-
border-radius: 3px;
|
309 |
-
background-color: #333;
|
310 |
-
font-size: 12px;
|
311 |
-
line-height: 15px;
|
312 |
-
-webkit-box-shadow: 0 0 5px rgba(0,0,0,0.4);
|
313 |
-
box-shadow: 0 0 5px rgba(0,0,0,0.4);
|
314 |
-
}
|
315 |
-
|
316 |
-
.wpr-templates-kit-grid .grid-item footer span.wpr-theme-builder-label:after {
|
317 |
-
content: "This Kit includes Theme Builder templates.";
|
318 |
-
}
|
319 |
-
|
320 |
-
.wpr-templates-kit-grid .grid-item footer span.wpr-woo-builder-label:after {
|
321 |
-
content: "This Kit includes WooCommerce Builder templates.";
|
322 |
-
}
|
323 |
-
|
324 |
-
.wpr-templates-kit-grid .grid-item footer span:hover:after {
|
325 |
-
display: block;
|
326 |
-
}
|
327 |
-
|
328 |
-
.wpr-templates-kit-single {
|
329 |
-
display: none;
|
330 |
-
}
|
331 |
-
|
332 |
-
.wpr-templates-kit-single .grid-item a {
|
333 |
-
text-decoration: none;
|
334 |
-
}
|
335 |
-
|
336 |
-
.wpr-templates-kit-single .action-buttons-wrap {
|
337 |
-
display: -webkit-box;
|
338 |
-
display: -ms-flexbox;
|
339 |
-
display: flex;
|
340 |
-
-webkit-box-pack: justify;
|
341 |
-
-ms-flex-pack: justify;
|
342 |
-
justify-content: space-between;
|
343 |
-
position: fixed;
|
344 |
-
bottom: 0;
|
345 |
-
left: 0;
|
346 |
-
right: 0;
|
347 |
-
z-index: 10;
|
348 |
-
padding: 25px 30px;
|
349 |
-
background: #fff;
|
350 |
-
-webkit-box-shadow: 0 0 7px 0 rgba(0,0,0,0.2);
|
351 |
-
box-shadow: 0 0 7px 0 rgba(0,0,0,0.2);
|
352 |
-
}
|
353 |
-
|
354 |
-
.action-buttons-wrap a,
|
355 |
-
.action-buttons-wrap button {
|
356 |
-
padding: 5px 25px !important;
|
357 |
-
}
|
358 |
-
|
359 |
-
.wpr-templates-kit-single .preview-demo .dashicons {
|
360 |
-
font-size: 14px;
|
361 |
-
line-height: 28px;
|
362 |
-
}
|
363 |
-
|
364 |
-
.wpr-templates-kit-single .import-kit,
|
365 |
-
.wpr-templates-kit-single .get-access {
|
366 |
-
background: #6A4BFF;
|
367 |
-
color: #fff;
|
368 |
-
}
|
369 |
-
|
370 |
-
.wpr-templates-kit-single .import-kit:hover,
|
371 |
-
.wpr-templates-kit-single .import-kit:focus,
|
372 |
-
.wpr-templates-kit-single .get-access:hover,
|
373 |
-
.wpr-templates-kit-single .get-access:focus {
|
374 |
-
background: #5130ef;
|
375 |
-
color: #fff;
|
376 |
-
-webkit-box-shadow: none !important;
|
377 |
-
box-shadow: none !important;
|
378 |
-
}
|
379 |
-
|
380 |
-
.wpr-templates-kit-single .import-kit .dashicons,
|
381 |
-
.wpr-templates-kit-single .get-access .dashicons {
|
382 |
-
font-size: 14px;
|
383 |
-
line-height: 30px;
|
384 |
-
}
|
385 |
-
|
386 |
-
.wpr-templates-kit-single .selected-template {
|
387 |
-
border: 1px solid #2271B1;
|
388 |
-
-webkit-box-shadow: 0 0 5px 0 rgba(0,0,0,0.1);
|
389 |
-
box-shadow: 0 0 5px 0 rgba(0,0,0,0.1);
|
390 |
-
}
|
391 |
-
|
392 |
-
.import-template-buttons .import-template {
|
393 |
-
display: none;
|
394 |
-
}
|
395 |
-
|
396 |
-
.wpr-templates-kit-single .import-template strong {
|
397 |
-
text-transform: capitalize;
|
398 |
-
}
|
399 |
-
|
400 |
-
.wpr-import-kit-popup-wrap {
|
401 |
-
display: none;
|
402 |
-
position: relative;
|
403 |
-
z-index: 9999999;
|
404 |
-
}
|
405 |
-
|
406 |
-
.wpr-import-kit-popup-wrap .overlay {
|
407 |
-
position: fixed;
|
408 |
-
top: 0;
|
409 |
-
left: 0;
|
410 |
-
z-index: 9999999;
|
411 |
-
width: 100%;
|
412 |
-
height: 100%;
|
413 |
-
background: rgba(0,0,0,0.5);
|
414 |
-
}
|
415 |
-
|
416 |
-
.wpr-import-help {
|
417 |
-
margin-top: 20px;
|
418 |
-
text-align: right;
|
419 |
-
}
|
420 |
-
|
421 |
-
.wpr-import-help a {
|
422 |
-
width: 50%;
|
423 |
-
font-size: 12px;
|
424 |
-
text-align: right;
|
425 |
-
text-decoration: none;
|
426 |
-
color: #8F5D64;
|
427 |
-
}
|
428 |
-
|
429 |
-
.wpr-import-help a:hover {
|
430 |
-
text-decoration: underline;
|
431 |
-
}
|
432 |
-
|
433 |
-
.wpr-import-help a span {
|
434 |
-
vertical-align: middle;
|
435 |
-
margin-bottom: 2px;
|
436 |
-
font-size: 12px !important;
|
437 |
-
width: 12px !important;
|
438 |
-
height: 12px !important;
|
439 |
-
text-decoration: none !important
|
440 |
-
}
|
441 |
-
|
442 |
-
.wpr-import-kit-popup {
|
443 |
-
overflow: hidden;
|
444 |
-
position: fixed;
|
445 |
-
top: 50%;
|
446 |
-
left: 50%;
|
447 |
-
-webkit-transform: translate(-50%,-50%);
|
448 |
-
-ms-transform: translate(-50%,-50%);
|
449 |
-
transform: translate(-50%,-50%);
|
450 |
-
z-index: 9999999;
|
451 |
-
width: 555px;
|
452 |
-
background: #f5f5f5;
|
453 |
-
border-radius: 3px;
|
454 |
-
}
|
455 |
-
|
456 |
-
.wpr-import-kit-popup header {
|
457 |
-
display: -webkit-box;
|
458 |
-
display: -ms-flexbox;
|
459 |
-
display: flex;
|
460 |
-
-webkit-box-pack: justify;
|
461 |
-
-ms-flex-pack: justify;
|
462 |
-
justify-content: space-between;
|
463 |
-
padding-left: 25px;
|
464 |
-
-webkit-box-shadow: 2px 0 5px 0 rgba(0,0,0,0.2);
|
465 |
-
box-shadow: 2px 0 5px 0 rgba(0,0,0,0.2);
|
466 |
-
}
|
467 |
-
|
468 |
-
.wpr-import-kit-popup .close-btn {
|
469 |
-
display: none;
|
470 |
-
height: 50px;
|
471 |
-
line-height: 50px;
|
472 |
-
width: 50px;
|
473 |
-
cursor: pointer;
|
474 |
-
border-left: 1px solid #eee;
|
475 |
-
color: #aaa;
|
476 |
-
font-size: 22px;
|
477 |
-
}
|
478 |
-
|
479 |
-
.wpr-import-kit-popup .content {
|
480 |
-
padding: 25px;
|
481 |
-
}
|
482 |
-
|
483 |
-
.wpr-import-kit-popup .content p:first-child {
|
484 |
-
margin-top: 0;
|
485 |
-
}
|
486 |
-
|
487 |
-
.wpr-import-kit-popup .progress-wrap {
|
488 |
-
background: #fff;
|
489 |
-
border-radius: 3px;
|
490 |
-
margin-top: 25px;
|
491 |
-
}
|
492 |
-
|
493 |
-
.wpr-import-kit-popup .progress-wrap strong {
|
494 |
-
padding: 10px;
|
495 |
-
display: block;
|
496 |
-
}
|
497 |
-
|
498 |
-
.wpr-import-kit-popup .progress-bar {
|
499 |
-
width: 30px;
|
500 |
-
height: 4px;
|
501 |
-
background: #2271B1;
|
502 |
-
}
|
503 |
-
|
504 |
-
.dot-flashing {
|
505 |
-
display: inline-block;
|
506 |
-
margin-left: 10px;
|
507 |
-
margin-bottom: -1px;
|
508 |
-
position: relative;
|
509 |
-
width: 3px;
|
510 |
-
height: 3px;
|
511 |
-
border-radius: 10px;
|
512 |
-
background-color: #3c434a;
|
513 |
-
color: #3c434a;
|
514 |
-
-webkit-animation: dotFlashing 1s infinite linear alternate;
|
515 |
-
animation: dotFlashing 1s infinite linear alternate;
|
516 |
-
-webkit-animation-delay: .5s;
|
517 |
-
animation-delay: .5s;
|
518 |
-
}
|
519 |
-
|
520 |
-
.dot-flashing::before, .dot-flashing::after {
|
521 |
-
content: '';
|
522 |
-
display: inline-block;
|
523 |
-
position: absolute;
|
524 |
-
top: 0;
|
525 |
-
}
|
526 |
-
|
527 |
-
.dot-flashing::before {
|
528 |
-
left: -6px;
|
529 |
-
width: 3px;
|
530 |
-
height: 3px;
|
531 |
-
border-radius: 10px;
|
532 |
-
background-color: #3c434a;
|
533 |
-
color: #3c434a;
|
534 |
-
-webkit-animation: dotFlashing 1s infinite alternate;
|
535 |
-
animation: dotFlashing 1s infinite alternate;
|
536 |
-
-webkit-animation-delay: 0s;
|
537 |
-
animation-delay: 0s;
|
538 |
-
}
|
539 |
-
|
540 |
-
.dot-flashing::after {
|
541 |
-
left: 6px;
|
542 |
-
width: 3px;
|
543 |
-
height: 3px;
|
544 |
-
border-radius: 10px;
|
545 |
-
background-color: #3c434a;
|
546 |
-
color: #3c434a;
|
547 |
-
-webkit-animation: dotFlashing 1s infinite alternate;
|
548 |
-
animation: dotFlashing 1s infinite alternate;
|
549 |
-
-webkit-animation-delay: 1s;
|
550 |
-
animation-delay: 1s;
|
551 |
-
}
|
552 |
-
|
553 |
-
@-webkit-keyframes dotFlashing {
|
554 |
-
0% {
|
555 |
-
background-color: #3c434a;
|
556 |
-
}
|
557 |
-
50%,
|
558 |
-
100% {
|
559 |
-
background-color: #ebe6ff;
|
560 |
-
}
|
561 |
-
}
|
562 |
-
|
563 |
-
@keyframes dotFlashing {
|
564 |
-
0% {
|
565 |
-
background-color: #3c434a;
|
566 |
-
}
|
567 |
-
50%,
|
568 |
-
100% {
|
569 |
-
background-color: #ebe6ff;
|
570 |
-
}
|
571 |
-
}
|
572 |
-
|
573 |
-
.wpr-templates-kit-not-found {
|
574 |
-
display: none;
|
575 |
-
-webkit-box-orient: vertical;
|
576 |
-
-webkit-box-direction: normal;
|
577 |
-
-ms-flex-direction: column;
|
578 |
-
flex-direction: column;
|
579 |
-
-webkit-box-align: center;
|
580 |
-
-ms-flex-align: center;
|
581 |
-
align-items: center
|
582 |
-
}
|
583 |
-
|
584 |
-
.wpr-templates-kit-not-found img {
|
585 |
-
width: 180px;
|
586 |
-
}
|
587 |
-
|
588 |
-
.wpr-templates-kit-not-found h1 {
|
589 |
-
margin: 0;
|
590 |
-
}
|
591 |
-
|
592 |
-
.wpr-templates-kit-not-found a {
|
593 |
-
display: inline-block;
|
594 |
-
padding: 10px 25px;
|
595 |
-
margin-top: 15px;
|
596 |
-
background: #6A4BFF;
|
597 |
-
color: #fff;
|
598 |
-
text-decoration: none;
|
599 |
-
border-radius: 3px;
|
600 |
-
}
|
601 |
-
|
602 |
-
.wpr-templates-kit-not-found a:hover {
|
603 |
-
background: #5836fd;
|
604 |
}
|
1 |
+
.royal-addons_page_wpr-templates-kit #wpwrap {
|
2 |
+
background: #F6F6F6;
|
3 |
+
}
|
4 |
+
|
5 |
+
.royal-addons_page_wpr-templates-kit #wpcontent {
|
6 |
+
padding: 0;
|
7 |
+
}
|
8 |
+
|
9 |
+
img {
|
10 |
+
display: block;
|
11 |
+
max-width: 100%;
|
12 |
+
width: 100%;
|
13 |
+
}
|
14 |
+
|
15 |
+
.wpr-templates-kit-page > header {
|
16 |
+
position: sticky;
|
17 |
+
top: 32px;
|
18 |
+
z-index: 99;
|
19 |
+
display: -webkit-box;
|
20 |
+
display: -ms-flexbox;
|
21 |
+
display: flex;
|
22 |
+
-webkit-box-pack: justify;
|
23 |
+
-ms-flex-pack: justify;
|
24 |
+
justify-content: space-between;
|
25 |
+
background: #fff;
|
26 |
+
-webkit-box-shadow: 0 0 7px 0 rgba(0,0,0,0.2);
|
27 |
+
box-shadow: 0 0 7px 0 rgba(0,0,0,0.2);
|
28 |
+
}
|
29 |
+
|
30 |
+
.wpr-templates-kit-logo {
|
31 |
+
display: -webkit-box;
|
32 |
+
display: -ms-flexbox;
|
33 |
+
display: flex;
|
34 |
+
}
|
35 |
+
|
36 |
+
.wpr-templates-kit-logo div {
|
37 |
+
padding: 20px;
|
38 |
+
border-right: 1px solid #e8e8e8;
|
39 |
+
}
|
40 |
+
|
41 |
+
.wpr-templates-kit-logo .back-btn {
|
42 |
+
display: none;
|
43 |
+
-webkit-box-align: center;
|
44 |
+
-ms-flex-align: center;
|
45 |
+
align-items: center;
|
46 |
+
font-weight: bold;
|
47 |
+
color: #6d7882;
|
48 |
+
cursor: pointer;
|
49 |
+
}
|
50 |
+
|
51 |
+
.wpr-templates-kit-logo .back-btn:hover {
|
52 |
+
color: #222;
|
53 |
+
}
|
54 |
+
|
55 |
+
.wpr-templates-kit-search {
|
56 |
+
display: -webkit-box;
|
57 |
+
display: -ms-flexbox;
|
58 |
+
display: flex;
|
59 |
+
-webkit-box-align: center;
|
60 |
+
-ms-flex-align: center;
|
61 |
+
align-items: center;
|
62 |
+
position: absolute;
|
63 |
+
top: 20px;
|
64 |
+
left: 50%;
|
65 |
+
-webkit-transform: translateX(-50%);
|
66 |
+
-ms-transform: translateX(-50%);
|
67 |
+
transform: translateX(-50%);
|
68 |
+
}
|
69 |
+
|
70 |
+
.wpr-templates-kit-search input {
|
71 |
+
width: 500px;
|
72 |
+
height: 45px;
|
73 |
+
padding-left: 15px;
|
74 |
+
border: 2px solid #e8e8e8 !important;
|
75 |
+
-webkit-box-shadow: none !important;
|
76 |
+
box-shadow: none !important;
|
77 |
+
}
|
78 |
+
|
79 |
+
.wpr-templates-kit-search .dashicons {
|
80 |
+
margin-left: -32px;
|
81 |
+
color: #777;
|
82 |
+
}
|
83 |
+
|
84 |
+
.wpr-templates-kit-price-filter {
|
85 |
+
position: relative;
|
86 |
+
width: 110px;
|
87 |
+
height: 40px;
|
88 |
+
margin: 20px;
|
89 |
+
border: 2px solid #e8e8e8;
|
90 |
+
line-height: 40px;
|
91 |
+
padding: 0 20px;
|
92 |
+
border-radius: 3px;
|
93 |
+
font-size: 14px;
|
94 |
+
cursor: pointer;
|
95 |
+
}
|
96 |
+
|
97 |
+
.wpr-templates-kit-price-filter .dashicons {
|
98 |
+
position: absolute;
|
99 |
+
right: 12px;
|
100 |
+
line-height: 40px;
|
101 |
+
font-size: 14px;
|
102 |
+
}
|
103 |
+
|
104 |
+
.wpr-templates-kit-price-filter:hover ul {
|
105 |
+
display: block;
|
106 |
+
}
|
107 |
+
|
108 |
+
.wpr-templates-kit-price-filter ul {
|
109 |
+
display: none;
|
110 |
+
background: #fff;
|
111 |
+
position: absolute;
|
112 |
+
width: 100%;
|
113 |
+
top: 26px;
|
114 |
+
left: -2px;
|
115 |
+
padding: 0;
|
116 |
+
border: 2px solid #e8e8e8;
|
117 |
+
}
|
118 |
+
|
119 |
+
.wpr-templates-kit-price-filter ul li {
|
120 |
+
padding: 0 20px;
|
121 |
+
line-height: 32px;
|
122 |
+
margin-bottom: 0 !important;
|
123 |
+
border-bottom: 1px solid #e8e8e8;
|
124 |
+
}
|
125 |
+
|
126 |
+
.wpr-templates-kit-price-filter ul li:last-child {
|
127 |
+
border-bottom: 0;
|
128 |
+
}
|
129 |
+
|
130 |
+
.wpr-templates-kit-price-filter ul li:hover {
|
131 |
+
background: #e8e8e8;
|
132 |
+
}
|
133 |
+
|
134 |
+
.wpr-templates-kit-filters {
|
135 |
+
display: none;
|
136 |
+
padding: 20px;
|
137 |
+
}
|
138 |
+
|
139 |
+
.wpr-templates-kit-filters div {
|
140 |
+
padding: 10px 20px;
|
141 |
+
border: 2px solid #e8e8e8;
|
142 |
+
border-radius: 3px;
|
143 |
+
font-size: 16px;
|
144 |
+
}
|
145 |
+
|
146 |
+
.wpr-templates-kit-filters ul {
|
147 |
+
display: none;
|
148 |
+
}
|
149 |
+
|
150 |
+
.wpr-templates-kit-page-title {
|
151 |
+
text-align: center;
|
152 |
+
margin-top: 65px;
|
153 |
+
margin-bottom: 35px;
|
154 |
+
}
|
155 |
+
|
156 |
+
.wpr-templates-kit-page-title h1 {
|
157 |
+
font-size: 35px;
|
158 |
+
color: #555;
|
159 |
+
}
|
160 |
+
|
161 |
+
.button.wpr-options-button {
|
162 |
+
padding: 3px 18px;
|
163 |
+
border: 0;
|
164 |
+
color: #fff;
|
165 |
+
background: #6A4BFF;
|
166 |
+
-webkit-box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
167 |
+
box-shadow: 2px 2px 5px rgba(0,0,0,0.3);
|
168 |
+
font-size: 14px;
|
169 |
+
}
|
170 |
+
|
171 |
+
.button.wpr-options-button:hover,
|
172 |
+
.button.wpr-options-button:focus {
|
173 |
+
color: #fff;
|
174 |
+
background: #6A4BFF;
|
175 |
+
border: none;
|
176 |
+
}
|
177 |
+
|
178 |
+
.button.wpr-options-button .dashicons {
|
179 |
+
font-size: 16px;
|
180 |
+
line-height: 32px;
|
181 |
+
}
|
182 |
+
|
183 |
+
.wpr-templates-kit-grid {
|
184 |
+
display: -ms-grid;
|
185 |
+
display: grid;
|
186 |
+
-ms-grid-columns: 1fr 20px 1fr 20px 1fr 20px 1fr;
|
187 |
+
grid-template-columns: repeat(4, 1fr);
|
188 |
+
grid-column-gap: 30px;
|
189 |
+
grid-row-gap: 30px;
|
190 |
+
padding: 30px;
|
191 |
+
}
|
192 |
+
|
193 |
+
|
194 |
+
@media screen and (max-width: 1400px) {
|
195 |
+
.wpr-templates-kit-grid {
|
196 |
+
grid-template-columns: repeat(3, 1fr);
|
197 |
+
}
|
198 |
+
}
|
199 |
+
|
200 |
+
.wpr-templates-kit-grid .grid-item {
|
201 |
+
position: relative;
|
202 |
+
overflow: hidden;
|
203 |
+
border: 1px solid #e8e8e8;
|
204 |
+
-webkit-box-shadow: 0 0 3px 0 rgba(0,0,0,0.1);
|
205 |
+
box-shadow: 0 0 3px 0 rgba(0,0,0,0.1);
|
206 |
+
background: #fff;
|
207 |
+
}
|
208 |
+
|
209 |
+
|
210 |
+
.wpr-templates-kit-grid .grid-item[data-price="pro"]:before {
|
211 |
+
content: 'Premium';
|
212 |
+
display: block;
|
213 |
+
position: absolute;
|
214 |
+
top: 20px;
|
215 |
+
right: -30px;
|
216 |
+
z-index: 10;
|
217 |
+
-webkit-transform: rotate(45deg);
|
218 |
+
-ms-transform: rotate(45deg);
|
219 |
+
transform: rotate(45deg);
|
220 |
+
padding: 7px 40px;
|
221 |
+
font-size: 13px;
|
222 |
+
letter-spacing: .4px;
|
223 |
+
background: #6a4bff;
|
224 |
+
color: #fff;
|
225 |
+
-webkit-box-shadow: 0 0 5px 0 rgb(0 0 0 / 70%);
|
226 |
+
box-shadow: 0 0 5px 0 rgb(0 0 0 / 70%);
|
227 |
+
}
|
228 |
+
|
229 |
+
.wpr-templates-kit-grid .image-wrap {
|
230 |
+
position: relative;
|
231 |
+
border-bottom: 1px solid #e8e8e8;
|
232 |
+
}
|
233 |
+
|
234 |
+
.wpr-templates-kit-grid .image-wrap:hover .image-overlay {
|
235 |
+
opacity: 1;
|
236 |
+
}
|
237 |
+
|
238 |
+
.wpr-templates-kit-grid .image-overlay {
|
239 |
+
opacity: 0;
|
240 |
+
display: -webkit-box;
|
241 |
+
display: -ms-flexbox;
|
242 |
+
display: flex;
|
243 |
+
-webkit-box-align: center;
|
244 |
+
-ms-flex-align: center;
|
245 |
+
align-items: center;
|
246 |
+
-webkit-box-pack: center;
|
247 |
+
-ms-flex-pack: center;
|
248 |
+
justify-content: center;
|
249 |
+
position: absolute;
|
250 |
+
top: 0;
|
251 |
+
left: 0;
|
252 |
+
width: 100%;
|
253 |
+
height: 100%;
|
254 |
+
background: rgba(0,0,0,0.2);
|
255 |
+
cursor: pointer;
|
256 |
+
-webkit-transition: opacity 0.2s ease-in;
|
257 |
+
-o-transition: opacity 0.2s ease-in;
|
258 |
+
transition: opacity 0.2s ease-in;
|
259 |
+
}
|
260 |
+
|
261 |
+
.wpr-templates-kit-grid .image-overlay .dashicons {
|
262 |
+
font-size: 30px;
|
263 |
+
color: #fff;
|
264 |
+
}
|
265 |
+
|
266 |
+
.wpr-templates-kit-grid .grid-item footer {
|
267 |
+
display: -webkit-box;
|
268 |
+
display: -ms-flexbox;
|
269 |
+
display: flex;
|
270 |
+
padding: 15px;
|
271 |
+
-webkit-box-pack: justify;
|
272 |
+
-ms-flex-pack: justify;
|
273 |
+
justify-content: space-between;
|
274 |
+
}
|
275 |
+
|
276 |
+
.wpr-templates-kit-grid .grid-item footer h3 {
|
277 |
+
margin: 0;
|
278 |
+
font-size: 16px;
|
279 |
+
text-transform: capitalize;
|
280 |
+
}
|
281 |
+
|
282 |
+
.wpr-templates-kit-grid .grid-item footer span {
|
283 |
+
position: relative;
|
284 |
+
min-width: 77px;
|
285 |
+
height: 20px;
|
286 |
+
background-color: #5130ef;
|
287 |
+
color: #fff;
|
288 |
+
font-size: 12px;
|
289 |
+
padding: 2px 10px;
|
290 |
+
border-radius: 3px;
|
291 |
+
}
|
292 |
+
|
293 |
+
span.wpr-woo-builder-label {
|
294 |
+
background-color: #7B51AD !important;
|
295 |
+
text-align: center;
|
296 |
+
}
|
297 |
+
|
298 |
+
.wpr-templates-kit-grid .grid-item footer span:after {
|
299 |
+
display: none;
|
300 |
+
width: 125px;
|
301 |
+
position: absolute;
|
302 |
+
top: -50px;
|
303 |
+
left: 30%;
|
304 |
+
-webkit-transform: translateX(-50%);
|
305 |
+
-ms-transform: translateX(-50%);
|
306 |
+
transform: translateX(-50%);
|
307 |
+
padding: 7px 10px;
|
308 |
+
border-radius: 3px;
|
309 |
+
background-color: #333;
|
310 |
+
font-size: 12px;
|
311 |
+
line-height: 15px;
|
312 |
+
-webkit-box-shadow: 0 0 5px rgba(0,0,0,0.4);
|
313 |
+
box-shadow: 0 0 5px rgba(0,0,0,0.4);
|
314 |
+
}
|
315 |
+
|
316 |
+
.wpr-templates-kit-grid .grid-item footer span.wpr-theme-builder-label:after {
|
317 |
+
content: "This Kit includes Theme Builder templates.";
|
318 |
+
}
|
319 |
+
|
320 |
+
.wpr-templates-kit-grid .grid-item footer span.wpr-woo-builder-label:after {
|
321 |
+
content: "This Kit includes WooCommerce Builder templates.";
|
322 |
+
}
|
323 |
+
|
324 |
+
.wpr-templates-kit-grid .grid-item footer span:hover:after {
|
325 |
+
display: block;
|
326 |
+
}
|
327 |
+
|
328 |
+
.wpr-templates-kit-single {
|
329 |
+
display: none;
|
330 |
+
}
|
331 |
+
|
332 |
+
.wpr-templates-kit-single .grid-item a {
|
333 |
+
text-decoration: none;
|
334 |
+
}
|
335 |
+
|
336 |
+
.wpr-templates-kit-single .action-buttons-wrap {
|
337 |
+
display: -webkit-box;
|
338 |
+
display: -ms-flexbox;
|
339 |
+
display: flex;
|
340 |
+
-webkit-box-pack: justify;
|
341 |
+
-ms-flex-pack: justify;
|
342 |
+
justify-content: space-between;
|
343 |
+
position: fixed;
|
344 |
+
bottom: 0;
|
345 |
+
left: 0;
|
346 |
+
right: 0;
|
347 |
+
z-index: 10;
|
348 |
+
padding: 25px 30px;
|
349 |
+
background: #fff;
|
350 |
+
-webkit-box-shadow: 0 0 7px 0 rgba(0,0,0,0.2);
|
351 |
+
box-shadow: 0 0 7px 0 rgba(0,0,0,0.2);
|
352 |
+
}
|
353 |
+
|
354 |
+
.action-buttons-wrap a,
|
355 |
+
.action-buttons-wrap button {
|
356 |
+
padding: 5px 25px !important;
|
357 |
+
}
|
358 |
+
|
359 |
+
.wpr-templates-kit-single .preview-demo .dashicons {
|
360 |
+
font-size: 14px;
|
361 |
+
line-height: 28px;
|
362 |
+
}
|
363 |
+
|
364 |
+
.wpr-templates-kit-single .import-kit,
|
365 |
+
.wpr-templates-kit-single .get-access {
|
366 |
+
background: #6A4BFF;
|
367 |
+
color: #fff;
|
368 |
+
}
|
369 |
+
|
370 |
+
.wpr-templates-kit-single .import-kit:hover,
|
371 |
+
.wpr-templates-kit-single .import-kit:focus,
|
372 |
+
.wpr-templates-kit-single .get-access:hover,
|
373 |
+
.wpr-templates-kit-single .get-access:focus {
|
374 |
+
background: #5130ef;
|
375 |
+
color: #fff;
|
376 |
+
-webkit-box-shadow: none !important;
|
377 |
+
box-shadow: none !important;
|
378 |
+
}
|
379 |
+
|
380 |
+
.wpr-templates-kit-single .import-kit .dashicons,
|
381 |
+
.wpr-templates-kit-single .get-access .dashicons {
|
382 |
+
font-size: 14px;
|
383 |
+
line-height: 30px;
|
384 |
+
}
|
385 |
+
|
386 |
+
.wpr-templates-kit-single .selected-template {
|
387 |
+
border: 1px solid #2271B1;
|
388 |
+
-webkit-box-shadow: 0 0 5px 0 rgba(0,0,0,0.1);
|
389 |
+
box-shadow: 0 0 5px 0 rgba(0,0,0,0.1);
|
390 |
+
}
|
391 |
+
|
392 |
+
.import-template-buttons .import-template {
|
393 |
+
display: none;
|
394 |
+
}
|
395 |
+
|
396 |
+
.wpr-templates-kit-single .import-template strong {
|
397 |
+
text-transform: capitalize;
|
398 |
+
}
|
399 |
+
|
400 |
+
.wpr-import-kit-popup-wrap {
|
401 |
+
display: none;
|
402 |
+
position: relative;
|
403 |
+
z-index: 9999999;
|
404 |
+
}
|
405 |
+
|
406 |
+
.wpr-import-kit-popup-wrap .overlay {
|
407 |
+
position: fixed;
|
408 |
+
top: 0;
|
409 |
+
left: 0;
|
410 |
+
z-index: 9999999;
|
411 |
+
width: 100%;
|
412 |
+
height: 100%;
|
413 |
+
background: rgba(0,0,0,0.5);
|
414 |
+
}
|
415 |
+
|
416 |
+
.wpr-import-help {
|
417 |
+
margin-top: 20px;
|
418 |
+
text-align: right;
|
419 |
+
}
|
420 |
+
|
421 |
+
.wpr-import-help a {
|
422 |
+
width: 50%;
|
423 |
+
font-size: 12px;
|
424 |
+
text-align: right;
|
425 |
+
text-decoration: none;
|
426 |
+
color: #8F5D64;
|
427 |
+
}
|
428 |
+
|
429 |
+
.wpr-import-help a:hover {
|
430 |
+
text-decoration: underline;
|
431 |
+
}
|
432 |
+
|
433 |
+
.wpr-import-help a span {
|
434 |
+
vertical-align: middle;
|
435 |
+
margin-bottom: 2px;
|
436 |
+
font-size: 12px !important;
|
437 |
+
width: 12px !important;
|
438 |
+
height: 12px !important;
|
439 |
+
text-decoration: none !important
|
440 |
+
}
|
441 |
+
|
442 |
+
.wpr-import-kit-popup {
|
443 |
+
overflow: hidden;
|
444 |
+
position: fixed;
|
445 |
+
top: 50%;
|
446 |
+
left: 50%;
|
447 |
+
-webkit-transform: translate(-50%,-50%);
|
448 |
+
-ms-transform: translate(-50%,-50%);
|
449 |
+
transform: translate(-50%,-50%);
|
450 |
+
z-index: 9999999;
|
451 |
+
width: 555px;
|
452 |
+
background: #f5f5f5;
|
453 |
+
border-radius: 3px;
|
454 |
+
}
|
455 |
+
|
456 |
+
.wpr-import-kit-popup header {
|
457 |
+
display: -webkit-box;
|
458 |
+
display: -ms-flexbox;
|
459 |
+
display: flex;
|
460 |
+
-webkit-box-pack: justify;
|
461 |
+
-ms-flex-pack: justify;
|
462 |
+
justify-content: space-between;
|
463 |
+
padding-left: 25px;
|
464 |
+
-webkit-box-shadow: 2px 0 5px 0 rgba(0,0,0,0.2);
|
465 |
+
box-shadow: 2px 0 5px 0 rgba(0,0,0,0.2);
|
466 |
+
}
|
467 |
+
|
468 |
+
.wpr-import-kit-popup .close-btn {
|
469 |
+
display: none;
|
470 |
+
height: 50px;
|
471 |
+
line-height: 50px;
|
472 |
+
width: 50px;
|
473 |
+
cursor: pointer;
|
474 |
+
border-left: 1px solid #eee;
|
475 |
+
color: #aaa;
|
476 |
+
font-size: 22px;
|
477 |
+
}
|
478 |
+
|
479 |
+
.wpr-import-kit-popup .content {
|
480 |
+
padding: 25px;
|
481 |
+
}
|
482 |
+
|
483 |
+
.wpr-import-kit-popup .content p:first-child {
|
484 |
+
margin-top: 0;
|
485 |
+
}
|
486 |
+
|
487 |
+
.wpr-import-kit-popup .progress-wrap {
|
488 |
+
background: #fff;
|
489 |
+
border-radius: 3px;
|
490 |
+
margin-top: 25px;
|
491 |
+
}
|
492 |
+
|
493 |
+
.wpr-import-kit-popup .progress-wrap strong {
|
494 |
+
padding: 10px;
|
495 |
+
display: block;
|
496 |
+
}
|
497 |
+
|
498 |
+
.wpr-import-kit-popup .progress-bar {
|
499 |
+
width: 30px;
|
500 |
+
height: 4px;
|
501 |
+
background: #2271B1;
|
502 |
+
}
|
503 |
+
|
504 |
+
.dot-flashing {
|
505 |
+
display: inline-block;
|
506 |
+
margin-left: 10px;
|
507 |
+
margin-bottom: -1px;
|
508 |
+
position: relative;
|
509 |
+
width: 3px;
|
510 |
+
height: 3px;
|
511 |
+
border-radius: 10px;
|
512 |
+
background-color: #3c434a;
|
513 |
+
color: #3c434a;
|
514 |
+
-webkit-animation: dotFlashing 1s infinite linear alternate;
|
515 |
+
animation: dotFlashing 1s infinite linear alternate;
|
516 |
+
-webkit-animation-delay: .5s;
|
517 |
+
animation-delay: .5s;
|
518 |
+
}
|
519 |
+
|
520 |
+
.dot-flashing::before, .dot-flashing::after {
|
521 |
+
content: '';
|
522 |
+
display: inline-block;
|
523 |
+
position: absolute;
|
524 |
+
top: 0;
|
525 |
+
}
|
526 |
+
|
527 |
+
.dot-flashing::before {
|
528 |
+
left: -6px;
|
529 |
+
width: 3px;
|
530 |
+
height: 3px;
|
531 |
+
border-radius: 10px;
|
532 |
+
background-color: #3c434a;
|
533 |
+
color: #3c434a;
|
534 |
+
-webkit-animation: dotFlashing 1s infinite alternate;
|
535 |
+
animation: dotFlashing 1s infinite alternate;
|
536 |
+
-webkit-animation-delay: 0s;
|
537 |
+
animation-delay: 0s;
|
538 |
+
}
|
539 |
+
|
540 |
+
.dot-flashing::after {
|
541 |
+
left: 6px;
|
542 |
+
width: 3px;
|
543 |
+
height: 3px;
|
544 |
+
border-radius: 10px;
|
545 |
+
background-color: #3c434a;
|
546 |
+
color: #3c434a;
|
547 |
+
-webkit-animation: dotFlashing 1s infinite alternate;
|
548 |
+
animation: dotFlashing 1s infinite alternate;
|
549 |
+
-webkit-animation-delay: 1s;
|
550 |
+
animation-delay: 1s;
|
551 |
+
}
|
552 |
+
|
553 |
+
@-webkit-keyframes dotFlashing {
|
554 |
+
0% {
|
555 |
+
background-color: #3c434a;
|
556 |
+
}
|
557 |
+
50%,
|
558 |
+
100% {
|
559 |
+
background-color: #ebe6ff;
|
560 |
+
}
|
561 |
+
}
|
562 |
+
|
563 |
+
@keyframes dotFlashing {
|
564 |
+
0% {
|
565 |
+
background-color: #3c434a;
|
566 |
+
}
|
567 |
+
50%,
|
568 |
+
100% {
|
569 |
+
background-color: #ebe6ff;
|
570 |
+
}
|
571 |
+
}
|
572 |
+
|
573 |
+
.wpr-templates-kit-not-found {
|
574 |
+
display: none;
|
575 |
+
-webkit-box-orient: vertical;
|
576 |
+
-webkit-box-direction: normal;
|
577 |
+
-ms-flex-direction: column;
|
578 |
+
flex-direction: column;
|
579 |
+
-webkit-box-align: center;
|
580 |
+
-ms-flex-align: center;
|
581 |
+
align-items: center
|
582 |
+
}
|
583 |
+
|
584 |
+
.wpr-templates-kit-not-found img {
|
585 |
+
width: 180px;
|
586 |
+
}
|
587 |
+
|
588 |
+
.wpr-templates-kit-not-found h1 {
|
589 |
+
margin: 0;
|
590 |
+
}
|
591 |
+
|
592 |
+
.wpr-templates-kit-not-found a {
|
593 |
+
display: inline-block;
|
594 |
+
padding: 10px 25px;
|
595 |
+
margin-top: 15px;
|
596 |
+
background: #6A4BFF;
|
597 |
+
color: #fff;
|
598 |
+
text-decoration: none;
|
599 |
+
border-radius: 3px;
|
600 |
+
}
|
601 |
+
|
602 |
+
.wpr-templates-kit-not-found a:hover {
|
603 |
+
background: #5836fd;
|
604 |
}
|
assets/css/admin/wporg-theme-notice.css
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
-
.rek-notice {
|
2 |
-
display: none !important;
|
3 |
}
|
1 |
+
.rek-notice {
|
2 |
+
display: none !important;
|
3 |
}
|
assets/css/editor.css
CHANGED
@@ -1,944 +1,944 @@
|
|
1 |
-
/*--------------------------------------------------------------
|
2 |
-
== General
|
3 |
-
--------------------------------------------------------------*/
|
4 |
-
.wpr-elementor-hidden-control {
|
5 |
-
overflow: hidden;
|
6 |
-
width: 0 !important;
|
7 |
-
height: 0 !important;
|
8 |
-
padding: 0 !important;
|
9 |
-
margin: 0 !important;
|
10 |
-
visibility: hidden !important;
|
11 |
-
opacity: 0 !important;
|
12 |
-
}
|
13 |
-
|
14 |
-
|
15 |
-
/*--------------------------------------------------------------
|
16 |
-
== WPR Widgets
|
17 |
-
--------------------------------------------------------------*/
|
18 |
-
.elementor-panel .wpr-icon:after {
|
19 |
-
content: 'R';
|
20 |
-
display: block;
|
21 |
-
position: absolute;
|
22 |
-
top: 3px;
|
23 |
-
right: 3px;
|
24 |
-
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
25 |
-
font-size: 10px;
|
26 |
-
font-weight: bold;
|
27 |
-
color: #ffffff;
|
28 |
-
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
29 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
30 |
-
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
31 |
-
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
32 |
-
box-shadow: 0 0 2px 2px #b8c7ff;
|
33 |
-
width: 19px;
|
34 |
-
height: 19px;
|
35 |
-
line-height: 19px;
|
36 |
-
border-radius: 15px;
|
37 |
-
margin: 3px;
|
38 |
-
}
|
39 |
-
|
40 |
-
.elementor-panel .elementor-element .icon {
|
41 |
-
position: relative !important;
|
42 |
-
}
|
43 |
-
|
44 |
-
.elementor-element--promotion .wpr-icon:after {
|
45 |
-
top: 22px;
|
46 |
-
right: -1px;
|
47 |
-
opacity: 0.7;
|
48 |
-
}
|
49 |
-
|
50 |
-
#elementor-element--promotion__dialog .dialog-button {
|
51 |
-
text-align: center;
|
52 |
-
}
|
53 |
-
|
54 |
-
.elementor-control-type-section[class*="elementor-control-wpr_section_"]:after {
|
55 |
-
content: 'R';
|
56 |
-
display: block;
|
57 |
-
position: absolute;
|
58 |
-
top: 7px;
|
59 |
-
right: 7px;
|
60 |
-
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
61 |
-
font-size: 10px;
|
62 |
-
font-weight: bold;
|
63 |
-
color: #ffffff;
|
64 |
-
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
65 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
66 |
-
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
67 |
-
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
68 |
-
box-shadow: 0 0 2px 2px #b8c7ff;
|
69 |
-
width: 19px;
|
70 |
-
height: 19px;
|
71 |
-
line-height: 19px;
|
72 |
-
border-radius: 15px;
|
73 |
-
margin: 3px;
|
74 |
-
text-align: center;
|
75 |
-
}
|
76 |
-
|
77 |
-
/*--------------------------------------------------------------
|
78 |
-
== Adjustments
|
79 |
-
--------------------------------------------------------------*/
|
80 |
-
.elementor-control-element_select,
|
81 |
-
.elementor-control-element_align_hr,
|
82 |
-
.elementor-control-element_read_more_text,
|
83 |
-
.elementor-control-element_tax_sep,
|
84 |
-
.elementor-control-element_sharing_icon_6,
|
85 |
-
.elementor-control-element_sharing_trigger_direction,
|
86 |
-
.elementor-control-element_sharing_icon_display,
|
87 |
-
.elementor-control-element_sharing_tooltip,
|
88 |
-
.elementor-control-element_custom_field_wrapper_html,
|
89 |
-
.elementor-control-slider_item_bg_size,
|
90 |
-
.elementor-control-element_addcart_variable_txt,
|
91 |
-
.elementor-control-type,
|
92 |
-
.elementor-control-show_last_update_date {
|
93 |
-
margin-bottom: 15px;
|
94 |
-
}
|
95 |
-
|
96 |
-
.elementor-control-slider_content_bg_color,
|
97 |
-
.elementor-control-slider_nav_border_border,
|
98 |
-
.elementor-control-slider_nav_border_radius,
|
99 |
-
.elementor-control-scroll_btn_vr,
|
100 |
-
.elementor-control-pagination_load_more_text,
|
101 |
-
.elementor-control-pagination_finish_text,
|
102 |
-
.elementor-control-pagination_prev_next,
|
103 |
-
.elementor-control-author_transition_duration,
|
104 |
-
.elementor-control-comments_transition_duration,
|
105 |
-
.elementor-control-likes_transition_duration,
|
106 |
-
.elementor-control-sharing_transition_duration,
|
107 |
-
.elementor-control-lightbox_transition_duration,
|
108 |
-
.elementor-control-custom_field1_transition_duration,
|
109 |
-
.elementor-control-custom_field2_transition_duration,
|
110 |
-
.elementor-control-custom_field3_transition_duration,
|
111 |
-
.elementor-control-custom_field4_transition_duration,
|
112 |
-
.elementor-control-filters_transition_duration,
|
113 |
-
.elementor-control-pagination_transition_duration,
|
114 |
-
.elementor-control-element_extra_text_pos,
|
115 |
-
.elementor-control-element_custom_field_wrapper,
|
116 |
-
.elementor-control-overlay_post_link,
|
117 |
-
.elementor-control-read_more_animation_height,
|
118 |
-
.elementor-control-archive_link_transition_duration,
|
119 |
-
.elementor-control-post_info_tax_select,
|
120 |
-
.elementor-control-post_info_link_wrap,
|
121 |
-
.elementor-control-post_info_modified_time,
|
122 |
-
.elementor-control-tabs_sharing_custom_colors,
|
123 |
-
.elementor-control-post_info_show_avatar,
|
124 |
-
.elementor-control-post_info_cf,
|
125 |
-
.elementor-control-pricing_items .elementor-control-price,
|
126 |
-
.elementor-control-pricing_items .elementor-control-feature_text,
|
127 |
-
.elementor-control-pricing_items .elementor-control-btn_text,
|
128 |
-
.elementor-control-divider_style,
|
129 |
-
.elementor-control-filters_pointer,
|
130 |
-
.elementor-control-title_transition_duration,
|
131 |
-
.elementor-control-tax1_transition_duration,
|
132 |
-
.elementor-control-tax2_transition_duration,
|
133 |
-
.elementor-control-filters_transition_duration,
|
134 |
-
.elementor-control-pagination_older_text,
|
135 |
-
.elementor-control-tooltip_position,
|
136 |
-
.elementor-control-post_info_comments_text_1 {
|
137 |
-
padding-top: 15px !important;
|
138 |
-
}
|
139 |
-
|
140 |
-
.elementor-control-post_info_custom_field_video_tutorial {
|
141 |
-
margin-top: 15px;
|
142 |
-
}
|
143 |
-
|
144 |
-
.elementor-control-title_pointer_animation + .elementor-control-title_transition_duration,
|
145 |
-
.elementor-control-tax1_pointer_animation + .elementor-control-tax1_transition_duration,
|
146 |
-
.elementor-control-tax2_pointer_animation + .elementor-control-tax2_transition_duration,
|
147 |
-
.elementor-control-filters_pointer_animation + .elementor-control-filters_transition_duration {
|
148 |
-
padding-top: 0 !important;
|
149 |
-
}
|
150 |
-
|
151 |
-
.elementor-control-pagination_load_more_text {
|
152 |
-
padding-bottom: 0 !important;
|
153 |
-
}
|
154 |
-
|
155 |
-
.elementor-control-filters_transition_duration,
|
156 |
-
.elementor-control-show_last_update_date {
|
157 |
-
padding-top: 0 !important;
|
158 |
-
}
|
159 |
-
|
160 |
-
.elementor-control-animation_divider,
|
161 |
-
.elementor-control-overlay_divider,
|
162 |
-
.elementor-control-slider_item_btn_1_divider,
|
163 |
-
.elementor-control-slider_item_btn_2_divider,
|
164 |
-
.elementor-control-slider_btn_typography_1_divider,
|
165 |
-
.elementor-control-slider_btn_box_shadow_1_divider,
|
166 |
-
.elementor-control-slider_btn_typography_2_divider,
|
167 |
-
.elementor-control-slider_btn_box_shadow_2_divider,
|
168 |
-
.elementor-control-testimonial_title_divider,
|
169 |
-
.elementor-control-social_media_divider,
|
170 |
-
.elementor-control-social_divider_1,
|
171 |
-
.elementor-control-social_divider_2,
|
172 |
-
.elementor-control-social_divider_3,
|
173 |
-
.elementor-control-social_divider_4,
|
174 |
-
.elementor-control-social_divider_5,
|
175 |
-
.elementor-control-custom_field_wrapper_html_divider1,
|
176 |
-
.elementor-control-custom_field_wrapper_html_divider2,
|
177 |
-
.elementor-control-lightbox_shadow_divider {
|
178 |
-
padding: 0 !important;
|
179 |
-
}
|
180 |
-
|
181 |
-
.elementor-control-custom_field_wrapper_html_divider1 hr,
|
182 |
-
.elementor-control-lightbox_shadow_divider hr {
|
183 |
-
height: 1px !important;
|
184 |
-
}
|
185 |
-
|
186 |
-
.elementor-control-element_show_on {
|
187 |
-
padding-top: 15px !important;
|
188 |
-
border-top: 1px solid #d5dadf;
|
189 |
-
}
|
190 |
-
|
191 |
-
[class*="wpr__section_"] ~ .elementor-control-type-number .elementor-control-input-wrapper,
|
192 |
-
[class*="wpr__section_"] ~ .elementor-control-type-repeater .elementor-control-type-number .elementor-control-input-wrapper {
|
193 |
-
max-width: 30% !important;
|
194 |
-
margin-left: auto !important;
|
195 |
-
}
|
196 |
-
|
197 |
-
[class*="wpr__section_"] ~ .elementor-control-type-select .elementor-control-input-wrapper,
|
198 |
-
[class*="wpr__section_"] ~ .elementor-control-type-repeater .elementor-control-type-select .elementor-control-input-wrapper {
|
199 |
-
width: auto !important;
|
200 |
-
min-width: 30% !important;
|
201 |
-
margin-left: auto !important;
|
202 |
-
}
|
203 |
-
|
204 |
-
.elementor-control-submit_preview_changes .elementor-control-input-wrapper {
|
205 |
-
text-align: center !important;
|
206 |
-
}
|
207 |
-
|
208 |
-
.elementor-control-query_manual_related,
|
209 |
-
.elementor-control-query_manual_current {
|
210 |
-
display: none !important;
|
211 |
-
}
|
212 |
-
|
213 |
-
/* Fix Select Inputs */
|
214 |
-
.elementor-control-button_hover_animation .elementor-control-input-wrapper,
|
215 |
-
.elementor-control-front_btn_animation .elementor-control-input-wrapper,
|
216 |
-
.elementor-control-back_btn_animation .elementor-control-input-wrapper,
|
217 |
-
|
218 |
-
.elementor-control-select_template .select2-selection,
|
219 |
-
.elementor-control-switcher_first_select_template .select2-selection,
|
220 |
-
.elementor-control-switcher_second_select_template .select2-selection,
|
221 |
-
.elementor-control-switcher_select_template .select2-selection,
|
222 |
-
.elementor-control-slider_select_template .select2-selection {
|
223 |
-
width: 135px !important;
|
224 |
-
}
|
225 |
-
|
226 |
-
.elementor-control-type-repeater .elementor-control-content > label {
|
227 |
-
display: none !important;
|
228 |
-
}
|
229 |
-
|
230 |
-
|
231 |
-
/*--------------------------------------------------------------
|
232 |
-
== Notification
|
233 |
-
--------------------------------------------------------------*/
|
234 |
-
#wpr-template-settings-notification {
|
235 |
-
position: fixed;
|
236 |
-
left: 40px;
|
237 |
-
bottom: 5px;
|
238 |
-
z-index: 9999;
|
239 |
-
padding: 13px 25px;
|
240 |
-
background: #fff;
|
241 |
-
color: #222;
|
242 |
-
-webkit-box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.3);
|
243 |
-
box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.3);
|
244 |
-
border-radius: 3px;
|
245 |
-
}
|
246 |
-
|
247 |
-
#wpr-template-settings-notification:before {
|
248 |
-
content: "";
|
249 |
-
position: absolute;
|
250 |
-
left: -6px;
|
251 |
-
bottom: 10px;
|
252 |
-
width: 0;
|
253 |
-
height: 0;
|
254 |
-
border-top: 6px solid transparent;
|
255 |
-
border-bottom: 6px solid transparent;
|
256 |
-
border-right-style: solid;
|
257 |
-
border-right-width: 6px;
|
258 |
-
border-right-color: #fff;
|
259 |
-
}
|
260 |
-
|
261 |
-
#wpr-template-settings-notification h4 {
|
262 |
-
margin-bottom: 10px;
|
263 |
-
}
|
264 |
-
|
265 |
-
#wpr-template-settings-notification h4 span {
|
266 |
-
font-size: 14px;
|
267 |
-
vertical-align: super;
|
268 |
-
color: #5f5f5f;
|
269 |
-
}
|
270 |
-
|
271 |
-
#wpr-template-settings-notification h4 i {
|
272 |
-
margin-right: 10px;
|
273 |
-
color: #3db050;
|
274 |
-
font-size: 24px;
|
275 |
-
}
|
276 |
-
|
277 |
-
#wpr-template-settings-notification p {
|
278 |
-
color: #666;
|
279 |
-
font-size: 12px;
|
280 |
-
line-height: 1.5;
|
281 |
-
}
|
282 |
-
|
283 |
-
#wpr-template-settings-notification > i {
|
284 |
-
position: absolute;
|
285 |
-
top: 7px;
|
286 |
-
right: 7px;
|
287 |
-
cursor: pointer;
|
288 |
-
color: #999;
|
289 |
-
}
|
290 |
-
|
291 |
-
.elementor-control-cf7_notice,
|
292 |
-
.elementor-control-wpforms_notice,
|
293 |
-
.elementor-control-ninja_forms_notice,
|
294 |
-
.elementor-control-caldera_notice {
|
295 |
-
color: red;
|
296 |
-
}
|
297 |
-
|
298 |
-
/* Help Button - select with referrals - [href^="https://royal-elementor-addons.com/contact/"] */
|
299 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"] {
|
300 |
-
display: inline-block;
|
301 |
-
padding: 12px 35px;
|
302 |
-
font-size: 13px;
|
303 |
-
font-weight: normal;
|
304 |
-
color: #fff;
|
305 |
-
background: #6A65FF;
|
306 |
-
border-radius: 3px;
|
307 |
-
-webkit-box-shadow: 0 2px 7px 0 rgba(0,0,0,0.3);
|
308 |
-
box-shadow: 0 2px 7px 0 rgba(0,0,0,0.3);
|
309 |
-
letter-spacing: 0.3px;
|
310 |
-
-webkit-transition: all 0.2s ease-in;
|
311 |
-
-o-transition: all 0.2s ease-in;
|
312 |
-
transition: all 0.2s ease-in;
|
313 |
-
}
|
314 |
-
|
315 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover {
|
316 |
-
color: #fff;
|
317 |
-
background: #6A4BFF;
|
318 |
-
}
|
319 |
-
|
320 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"] i {
|
321 |
-
color: #fff;
|
322 |
-
font-size: 14px;
|
323 |
-
vertical-align: top;
|
324 |
-
}
|
325 |
-
|
326 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover i {
|
327 |
-
color: #fff;
|
328 |
-
}
|
329 |
-
|
330 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover i:before {
|
331 |
-
content: '\e942' !important;
|
332 |
-
}
|
333 |
-
|
334 |
-
.elementor-control-posts_slider_notice .elementor-control-raw-html {
|
335 |
-
font-style: normal !important;
|
336 |
-
}
|
337 |
-
|
338 |
-
.elementor-control-product_notice_widget_info .elementor-control-raw-html {
|
339 |
-
color: red;
|
340 |
-
}
|
341 |
-
|
342 |
-
|
343 |
-
/*--------------------------------------------------------------
|
344 |
-
== Modal Popup Editor
|
345 |
-
--------------------------------------------------------------*/
|
346 |
-
.elementor-editor-wpr-popups .elementor-control-document_settings,
|
347 |
-
.elementor-editor-wpr-popups .elementor-control-post_title,
|
348 |
-
.elementor-editor-wpr-popups .elementor-control-post_status {
|
349 |
-
display: none !important;
|
350 |
-
}
|
351 |
-
|
352 |
-
|
353 |
-
/*--------------------------------------------------------------
|
354 |
-
== Elementor Editor Popup
|
355 |
-
--------------------------------------------------------------*/
|
356 |
-
#wpr-template-editor-popup .dialog-widget-content {
|
357 |
-
width: 90vw;
|
358 |
-
height: 90vh;
|
359 |
-
}
|
360 |
-
|
361 |
-
#wpr-template-editor-popup .dialog-message {
|
362 |
-
padding: 0;
|
363 |
-
width: 100%;
|
364 |
-
height: 100%;
|
365 |
-
}
|
366 |
-
|
367 |
-
#wpr-template-editor-popup .dialog-close-button {
|
368 |
-
font-size: 24px;
|
369 |
-
color: #222;
|
370 |
-
}
|
371 |
-
|
372 |
-
#wpr-template-editor-popup .dialog-header {
|
373 |
-
display: none;
|
374 |
-
}
|
375 |
-
|
376 |
-
#wpr-template-editor-loading {
|
377 |
-
position: absolute;
|
378 |
-
top: 0;
|
379 |
-
left: 0;
|
380 |
-
width: 100%;
|
381 |
-
height: 100%;
|
382 |
-
background: #f1f3f5;
|
383 |
-
z-index: 9999;
|
384 |
-
-webkit-transform: translateZ(0);
|
385 |
-
transform: translateZ(0);
|
386 |
-
display: -webkit-box;
|
387 |
-
display: -ms-flexbox;
|
388 |
-
display: flex;
|
389 |
-
-webkit-box-pack: center;
|
390 |
-
-ms-flex-pack: center;
|
391 |
-
justify-content: center;
|
392 |
-
-webkit-box-align: center;
|
393 |
-
-ms-flex-align: center;
|
394 |
-
align-items: center;
|
395 |
-
}
|
396 |
-
|
397 |
-
#wpr-template-editor-loading .elementor-loader-wrapper {
|
398 |
-
top: auto;
|
399 |
-
left: auto;
|
400 |
-
-webkit-transform: none;
|
401 |
-
-ms-transform: none;
|
402 |
-
transform: none;
|
403 |
-
}
|
404 |
-
|
405 |
-
/* Disable Transitions on Responsive Preview */
|
406 |
-
#elementor-preview-responsive-wrapper {
|
407 |
-
-webkit-transition: none !important;
|
408 |
-
-o-transition: none !important;
|
409 |
-
transition: none !important;
|
410 |
-
}
|
411 |
-
|
412 |
-
|
413 |
-
/*--------------------------------------------------------------
|
414 |
-
== Magazine Grid Layout
|
415 |
-
--------------------------------------------------------------*/
|
416 |
-
.elementor-control-layout_select.elementor-control .elementor-control-field {
|
417 |
-
-webkit-box-orient: vertical !important;
|
418 |
-
-webkit-box-direction: normal !important;
|
419 |
-
-ms-flex-direction: column !important;
|
420 |
-
flex-direction: column !important;
|
421 |
-
-webkit-box-align: start;
|
422 |
-
-ms-flex-align: start;
|
423 |
-
align-items: flex-start;
|
424 |
-
}
|
425 |
-
|
426 |
-
.elementor-control-layout_select.elementor-control .elementor-control-input-wrapper {
|
427 |
-
display: -webkit-box;
|
428 |
-
display: -ms-flexbox;
|
429 |
-
display: flex;
|
430 |
-
width: 100% !important;
|
431 |
-
margin-top: 10px;
|
432 |
-
}
|
433 |
-
|
434 |
-
.elementor-control-layout_select.elementor-control .elementor-choices {
|
435 |
-
-ms-flex-wrap: wrap;
|
436 |
-
flex-wrap: wrap;
|
437 |
-
-webkit-box-align: stretch;
|
438 |
-
-ms-flex-align: stretch;
|
439 |
-
align-items: stretch;
|
440 |
-
width: 100% !important;
|
441 |
-
height: auto;
|
442 |
-
border: 1px solid #dfd5d5;
|
443 |
-
}
|
444 |
-
|
445 |
-
.elementor-control-layout_select.elementor-control .elementor-choices label {
|
446 |
-
width: 33.3%;
|
447 |
-
height: 50px;
|
448 |
-
background-size: 75%;
|
449 |
-
background-position: center center;
|
450 |
-
background-repeat: no-repeat;
|
451 |
-
}
|
452 |
-
|
453 |
-
.elementor-control-layout_select input[type="radio"]:checked + label {
|
454 |
-
border: 2px solid #D30C5C;
|
455 |
-
border-radius: 0 !important;
|
456 |
-
background-color: #ffffff;
|
457 |
-
}
|
458 |
-
|
459 |
-
.elementor-control-layout_select label:nth-child(2) {
|
460 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='15.2' class='st1' width='22.2' height='11.9'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='9.2'/%3E%3C/g%3E%3C/svg%3E");
|
461 |
-
}
|
462 |
-
|
463 |
-
.elementor-control-layout_select label:nth-child(4) {
|
464 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
465 |
-
}
|
466 |
-
|
467 |
-
.elementor-control-layout_select label:nth-child(6) {
|
468 |
-
background: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Cg%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
|
469 |
-
}
|
470 |
-
|
471 |
-
.elementor-control-layout_select label:nth-child(8) {
|
472 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
473 |
-
}
|
474 |
-
|
475 |
-
.elementor-control-layout_select label:nth-child(10) {
|
476 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='13.9' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3Crect x='2.3' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='2.3' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
477 |
-
}
|
478 |
-
|
479 |
-
.elementor-control-layout_select label:nth-child(12) {
|
480 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='28.5' height='22.2'/%3E%3Crect x='31.8' y='12.9' class='st1' width='15.9' height='6.3'/%3E%3Crect x='31.8' y='4.9' class='st1' width='15.9' height='6.8'/%3E%3Crect x='31.8' y='20.3' class='st1' width='15.9' height='6.8'/%3E%3C/g%3E%3C/svg%3E");
|
481 |
-
}
|
482 |
-
|
483 |
-
.elementor-control-layout_select label:nth-child(14) {
|
484 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='13.9' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='2.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
485 |
-
}
|
486 |
-
|
487 |
-
.elementor-control-layout_select label:nth-child(16) {
|
488 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='33.9' height='13.2'/%3E%3Crect x='2.2' y='19.3' class='st1' width='16.4' height='7.8'/%3E%3Crect x='19.7' y='19.3' class='st1' width='16.4' height='7.8'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='13.2'/%3E%3Crect x='37.2' y='19.3' class='st1' width='10.5' height='7.8'/%3E%3C/g%3E%3C/svg%3E");
|
489 |
-
}
|
490 |
-
|
491 |
-
.elementor-control-layout_select label:nth-child(18) {
|
492 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='12.1'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='12.1'/%3E%3Crect x='2.2' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3Crect x='17.8' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3Crect x='33.3' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3C/g%3E%3C/svg%3E");
|
493 |
-
}
|
494 |
-
|
495 |
-
.elementor-control-layout_select label:nth-child(20) {
|
496 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
497 |
-
}
|
498 |
-
|
499 |
-
.elementor-control-layout_select label:nth-child(22) {
|
500 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='14.5' height='22.2'/%3E%3Crect x='33.4' y='4.9' class='st1' width='14.4' height='22.2'/%3E%3Crect x='17.9' y='4.9' class='st1' width='14.4' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
501 |
-
}
|
502 |
-
|
503 |
-
.elementor-control-layout_select label:nth-child(24) {
|
504 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='10.6' height='22.2'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='14' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
505 |
-
}
|
506 |
-
|
507 |
-
/*--------------------------------------------------------------
|
508 |
-
== Widget Preview and Library buttons
|
509 |
-
--------------------------------------------------------------*/
|
510 |
-
.elementor-control-wpr_library_buttons {
|
511 |
-
height: 60px;
|
512 |
-
padding: 0;
|
513 |
-
}
|
514 |
-
|
515 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html {
|
516 |
-
padding: 0 10px 10px 10px;
|
517 |
-
border-bottom: 1px solid #efefef;
|
518 |
-
}
|
519 |
-
|
520 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html div {
|
521 |
-
display: -webkit-box;
|
522 |
-
display: -ms-flexbox;
|
523 |
-
display: flex;
|
524 |
-
-webkit-box-pack: center;
|
525 |
-
-ms-flex-pack: center;
|
526 |
-
justify-content: center;
|
527 |
-
}
|
528 |
-
|
529 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a {
|
530 |
-
-webkit-box-flex: 1;
|
531 |
-
-ms-flex-positive: 1;
|
532 |
-
flex-grow: 1;
|
533 |
-
padding: 10px 15px;
|
534 |
-
border-radius: 3px;
|
535 |
-
/*box-shadow: 1px 2px 5px 0 rgba(0,0,0,0.2);*/
|
536 |
-
white-space: nowrap;
|
537 |
-
overflow: hidden;
|
538 |
-
-o-text-overflow: ellipsis;
|
539 |
-
text-overflow: ellipsis;
|
540 |
-
text-align: center;
|
541 |
-
}
|
542 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a:first-child {
|
543 |
-
background-color: #1CB4E4;
|
544 |
-
color: #fff;
|
545 |
-
margin-right: 3px;
|
546 |
-
}
|
547 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a:last-child {
|
548 |
-
margin-left: 3px;
|
549 |
-
background-color: #6A65FF;
|
550 |
-
color: #fff;
|
551 |
-
}
|
552 |
-
|
553 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html > a {
|
554 |
-
display: block;
|
555 |
-
margin-top: 10px;
|
556 |
-
line-height: 20px;
|
557 |
-
color: #777;
|
558 |
-
border: none !important;
|
559 |
-
}
|
560 |
-
|
561 |
-
.elementor-section-title > a {
|
562 |
-
top: 10px;
|
563 |
-
right: 20px;
|
564 |
-
position: absolute;
|
565 |
-
line-height: 20px;
|
566 |
-
}
|
567 |
-
|
568 |
-
.elementor-section-title > a:hover {
|
569 |
-
border-color: transparent;
|
570 |
-
}
|
571 |
-
|
572 |
-
/*--------------------------------------------------------------
|
573 |
-
== Apply Changes Button
|
574 |
-
--------------------------------------------------------------*/
|
575 |
-
.editor-wpr-preview-update {
|
576 |
-
margin: 0;
|
577 |
-
display: -webkit-box;
|
578 |
-
display: -ms-flexbox;
|
579 |
-
display: flex;
|
580 |
-
-webkit-box-pack: justify;
|
581 |
-
-ms-flex-pack: justify;
|
582 |
-
justify-content: space-between;
|
583 |
-
}
|
584 |
-
|
585 |
-
.editor-wpr-preview-update button {
|
586 |
-
font-size: 13px;
|
587 |
-
padding: 5px 10px;
|
588 |
-
}
|
589 |
-
|
590 |
-
|
591 |
-
/*--------------------------------------------------------------
|
592 |
-
== Free/Pro Options
|
593 |
-
--------------------------------------------------------------*/
|
594 |
-
.elementor-control select option[value*=pro-] {
|
595 |
-
background: #f0f0f0;
|
596 |
-
}
|
597 |
-
|
598 |
-
.elementor-control[class*="pro_notice"] {
|
599 |
-
padding: 5px 0 15px 0 !important;
|
600 |
-
}
|
601 |
-
|
602 |
-
.wpr-pro-notice {
|
603 |
-
padding: 20px;
|
604 |
-
border-top: 1px solid #e6e9ec;
|
605 |
-
border-bottom: 1px solid #e6e9ec;
|
606 |
-
background-color: #f2fbff;
|
607 |
-
line-height: 1.4;
|
608 |
-
text-align: center;
|
609 |
-
}
|
610 |
-
|
611 |
-
.wpr-pro-notice-video {
|
612 |
-
display: block;
|
613 |
-
margin-top: 7px;
|
614 |
-
line-height: 20px;
|
615 |
-
border: none !important;
|
616 |
-
}
|
617 |
-
|
618 |
-
#elementor-controls .elementor-control-slider_section_pro_notice {
|
619 |
-
margin-top: -16px;
|
620 |
-
padding-bottom: 0 !important;
|
621 |
-
}
|
622 |
-
|
623 |
-
.elementor-control-layout_select_pro_notice + div,
|
624 |
-
.elementor-control-element_align_pro_notice + div {
|
625 |
-
padding-top: 15px;
|
626 |
-
}
|
627 |
-
|
628 |
-
.elementor-control-layout_select .elementor-choices label {
|
629 |
-
position: relative;
|
630 |
-
}
|
631 |
-
|
632 |
-
.elementor-control-layout_select .elementor-choices label:nth-child(2):after,
|
633 |
-
.elementor-control-layout_select .elementor-choices label:nth-child(4):after,
|
634 |
-
.elementor-control-layout_select .elementor-choices label:nth-child(6):after,
|
635 |
-
.elementor-control-layout_select .elementor-choices label:nth-child(8):after,
|
636 |
-
.elementor-control-layout_select .elementor-choices label:nth-child(10):after,
|
637 |
-
.elementor-control-layout_select .elementor-choices label:nth-child(12):after {
|
638 |
-
content: ' ';
|
639 |
-
display: block;
|
640 |
-
width: 100%;
|
641 |
-
height: 100%;
|
642 |
-
position: absolute;
|
643 |
-
top: 0;
|
644 |
-
left: 0;
|
645 |
-
background: rgba(0,0,0,0.2);
|
646 |
-
}
|
647 |
-
|
648 |
-
/* Adjustments */
|
649 |
-
.elementor-control.elementor-control-element_align_pro_notice,
|
650 |
-
.elementor-control.elementor-control-search_pro_notice,
|
651 |
-
.elementor-control.elementor-control-layout_select_pro_notice,
|
652 |
-
.elementor-control.elementor-control-grid_columns_pro_notice,
|
653 |
-
.elementor-control.elementor-control-slider_content_type_pro_notice,
|
654 |
-
.elementor-control.elementor-control-slider_repeater_pro_notice,
|
655 |
-
.elementor-control.elementor-control-slider_dots_layout_pro_notice,
|
656 |
-
.elementor-control.elementor-control-testimonial_repeater_pro_notice,
|
657 |
-
.elementor-control.elementor-control-testimonial_icon_pro_notice,
|
658 |
-
.elementor-control.elementor-control-menu_layout_pro_notice,
|
659 |
-
.elementor-control.elementor-control-menu_items_submenu_entrance_pro_notice,
|
660 |
-
.elementor-control.elementor-control-switcher_label_style_pro_notice,
|
661 |
-
.elementor-control.elementor-control-countdown_type_pro_notice,
|
662 |
-
.elementor-control.elementor-control-layout_pro_notice,
|
663 |
-
.elementor-control.elementor-control-anim_timing_pro_notice,
|
664 |
-
.elementor-control.elementor-control-tab_content_type_pro_notice,
|
665 |
-
.elementor-control.elementor-control-tabs_repeater_pro_notice,
|
666 |
-
.elementor-control.elementor-control-tabs_align_pro_notice,
|
667 |
-
.elementor-control.elementor-control-front_trigger_pro_notice,
|
668 |
-
.elementor-control.elementor-control-back_link_type_pro_notice,
|
669 |
-
.elementor-control.elementor-control-box_anim_timing_pro_notice,
|
670 |
-
.elementor-control.elementor-control-image_style_pro_notice,
|
671 |
-
.elementor-control.elementor-control-image_animation_timing_pro_notice,
|
672 |
-
.elementor-control.elementor-control-label_display_pro_notice,
|
673 |
-
.elementor-control.elementor-control-post_type_pro_notice,
|
674 |
-
.elementor-control.elementor-control-type_select_pro_notice,
|
675 |
-
.elementor-control.elementor-control-icon_style_pro_notice,
|
676 |
-
.elementor-control.elementor-control-dual_button_pro_notice,
|
677 |
-
.elementor-control.elementor-control-team_member_pro_notice,
|
678 |
-
.elementor-control.elementor-control-price_list_pro_notice,
|
679 |
-
.elementor-control.elementor-control-business_hours_pro_notice,
|
680 |
-
.elementor-control.elementor-control-sharing_columns_pro_notice,
|
681 |
-
.elementor-control.elementor-control-popup_trigger_pro_notice,
|
682 |
-
.elementor-control.elementor-control-popup_show_again_delay_pro_notice,
|
683 |
-
.elementor-control.elementor-control-group_popup_settings_pro_notice,
|
684 |
-
.elementor-control.elementor-control-which_particle_pro_notice,
|
685 |
-
.elementor-control.elementor-control-paralax_repeater_pro_notice,
|
686 |
-
.elementor-control.elementor-control-opnepage_pro_notice,
|
687 |
-
.elementor-control.elementor-control-timeline_repeater_pro_notice,
|
688 |
-
.elementor-control.elementor-control-limit_grid_items_pro_notice,
|
689 |
-
.elementor-control.elementor-control-post_nav_layout_pro_notice,
|
690 |
-
.elementor-control.elementor-control-author_name_links_to_pro_notice,
|
691 |
-
.elementor-control.elementor-control-author_title_links_to_pro_notice,
|
692 |
-
.elementor-control.elementor-control-comments_form_layout_pro_notice,
|
693 |
-
.elementor-control.elementor-control-sharing_repeater_pro_notice,
|
694 |
-
.elementor-control.elementor-control-mini_cart_style_pro_notice,
|
695 |
-
.elementor-control.elementor-control-tabs_position_pro_notice,
|
696 |
-
.elementor-control.elementor-control-choose_table_type_pro_notice,
|
697 |
-
.elementor-control.elementor-control-accordion_repeater_pro_notice,
|
698 |
-
.elementor-control.elementor-control-acc_repeater_pro_notice,
|
699 |
-
.elementor-control.elementor-control-data_source_pro_notice,
|
700 |
-
.elementor-control.elementor-control-charts_repeater_pro_notice,
|
701 |
-
.elementor-control.elementor-control-mob_menu_display_as_pro_notice {
|
702 |
-
padding-bottom: 0 !important;
|
703 |
-
}
|
704 |
-
|
705 |
-
.elementor-control-search_pro_notice .wpr-pro-notice,
|
706 |
-
.elementor-control-grid_columns_pro_notice .wpr-pro-notice,
|
707 |
-
.elementor-control-slider_content_type_pro_notice .wpr-pro-notice,
|
708 |
-
.elementor-control-slider_repeater_pro_notice .wpr-pro-notice,
|
709 |
-
.elementor-control-slider_dots_layout_pro_notice .wpr-pro-notice,
|
710 |
-
.elementor-control-testimonial_repeater_pro_notice .wpr-pro-notice,
|
711 |
-
.elementor-control-testimonial_icon_pro_notice .wpr-pro-notice,
|
712 |
-
.elementor-control-menu_layout_pro_notice .wpr-pro-notice,
|
713 |
-
.elementor-control-menu_items_submenu_entrance_pro_notice .wpr-pro-notice,
|
714 |
-
.elementor-control-switcher_label_style_pro_notice .wpr-pro-notice,
|
715 |
-
.elementor-control-countdown_type_pro_notice .wpr-pro-notice,
|
716 |
-
.elementor-control-layout_pro_notice .wpr-pro-notice,
|
717 |
-
.elementor-control-anim_timing_pro_notice .wpr-pro-notice,
|
718 |
-
.elementor-control-tab_content_type_pro_notice .wpr-pro-notice,
|
719 |
-
.elementor-control-tabs_repeater_pro_notice .wpr-pro-notice,
|
720 |
-
.elementor-control-tabs_align_pro_notice .wpr-pro-notice,
|
721 |
-
.elementor-control-front_trigger_pro_notice .wpr-pro-notice,
|
722 |
-
.elementor-control-back_link_type_pro_notice .wpr-pro-notice,
|
723 |
-
.elementor-control-box_anim_timing_pro_notice .wpr-pro-notice,
|
724 |
-
.elementor-control-image_style_pro_notice .wpr-pro-notice,
|
725 |
-
.elementor-control-image_animation_timing_pro_notice .wpr-pro-notice,
|
726 |
-
.elementor-control-label_display_pro_notice .wpr-pro-notice,
|
727 |
-
.elementor-control-post_type_pro_notice .wpr-pro-notice,
|
728 |
-
.elementor-control-type_select_pro_notice .wpr-pro-notice,
|
729 |
-
.elementor-control-icon_style_pro_notice .wpr-pro-notice,
|
730 |
-
.elementor-control-dual_button_pro_notice .wpr-pro-notice,
|
731 |
-
.elementor-control-team_member_pro_notice .wpr-pro-notice,
|
732 |
-
.elementor-control-price_list_pro_notice .wpr-pro-notice,
|
733 |
-
.elementor-control-business_hours_pro_notice .wpr-pro-notice,
|
734 |
-
.elementor-control-sharing_columns_pro_notice .wpr-pro-notice,
|
735 |
-
.elementor-control-popup_trigger_pro_notice .wpr-pro-notice,
|
736 |
-
.elementor-control-popup_show_again_delay_pro_notice .wpr-pro-notice,
|
737 |
-
.elementor-control-group_popup_settings_pro_notice .wpr-pro-notice,
|
738 |
-
.elementor-control-post_nav_layout_pro_notice .wpr-pro-notice,
|
739 |
-
.elementor-control-author_name_links_to_pro_notice .wpr-pro-notice,
|
740 |
-
.elementor-control-author_title_links_to_pro_notice .wpr-pro-notice,
|
741 |
-
.elementor-control-comments_form_layout_pro_notice .wpr-pro-notice,
|
742 |
-
.elementor-control-sharing_repeater_pro_notice .wpr-pro-notice,
|
743 |
-
.elementor-control-mini_cart_style_pro_notice .wpr-pro-notice,
|
744 |
-
.elementor-control-tabs_position_pro_notice .wpr-pro-notice,
|
745 |
-
.elementor-control-choose_table_type_pro_notice .wpr-pro-notice,
|
746 |
-
.elementor-control-accordion_repeater_pro_notice .wpr-pro-notice,
|
747 |
-
.elementor-control.elementor-control-data_source_pro_notice .wpr-pro-notice,
|
748 |
-
.elementor-control.elementor-control-mob_menu_display_as_pro_notice .wpr-pro-notice {
|
749 |
-
border-bottom: none !important;
|
750 |
-
}
|
751 |
-
|
752 |
-
/* Both */
|
753 |
-
.elementor-control.elementor-control-pagination_type_pro_notice,
|
754 |
-
.elementor-control.elementor-control-tooltip_trigger_pro_notice,
|
755 |
-
.elementor-control.elementor-control-post_info_select_pro_notice {
|
756 |
-
padding-top: 0 !important;
|
757 |
-
padding-bottom: 0 !important;
|
758 |
-
}
|
759 |
-
|
760 |
-
.elementor-control-pagination_type_pro_notice .wpr-pro-notice {
|
761 |
-
border-top: none !important;
|
762 |
-
border-bottom: none !important;
|
763 |
-
}
|
764 |
-
|
765 |
-
.elementor-control-pro_features_section .elementor-section-toggle,
|
766 |
-
.elementor-control-pro_features_section .elementor-section-title {
|
767 |
-
color: #f54;
|
768 |
-
}
|
769 |
-
|
770 |
-
.elementor-control-pro_features_section .elementor-section-title {
|
771 |
-
line-height: 20px;
|
772 |
-
}
|
773 |
-
.elementor-control-pro_features_section .elementor-section-title .dashicons {
|
774 |
-
line-height: 20px;
|
775 |
-
font-size: 13px;
|
776 |
-
}
|
777 |
-
|
778 |
-
.wpr-pro-features-list {
|
779 |
-
text-align: center;
|
780 |
-
}
|
781 |
-
|
782 |
-
.wpr-pro-features-list ul {
|
783 |
-
text-align: left;
|
784 |
-
}
|
785 |
-
|
786 |
-
.wpr-pro-features-list ul li {
|
787 |
-
position: relative;
|
788 |
-
line-height: 22px;
|
789 |
-
padding-left: 20px;
|
790 |
-
}
|
791 |
-
|
792 |
-
.wpr-pro-features-list ul li::before {
|
793 |
-
content: '.';
|
794 |
-
font-size: 38px;
|
795 |
-
position: absolute;
|
796 |
-
top: -11px;
|
797 |
-
left: 0;
|
798 |
-
}
|
799 |
-
|
800 |
-
.wpr-pro-features-list ul + a {
|
801 |
-
display: inline-block;
|
802 |
-
background-color: #f54;
|
803 |
-
color: #fff;
|
804 |
-
margin: 15px 15px 10px 0;
|
805 |
-
padding: 7px 12px;
|
806 |
-
border-radius: 3px;
|
807 |
-
}
|
808 |
-
|
809 |
-
.wpr-pro-features-list ul + a:hover {
|
810 |
-
color: #fff;
|
811 |
-
}
|
812 |
-
|
813 |
-
/* Video Tutorial Link */
|
814 |
-
.elementor-control[class*="video_tutorial"] {
|
815 |
-
padding-top: 0 !important;
|
816 |
-
padding-bottom: 5px !important;
|
817 |
-
}
|
818 |
-
|
819 |
-
.elementor-control.elementor-control-woo_grid_notice_video_tutorial,
|
820 |
-
.elementor-control-show_last_update_date {
|
821 |
-
padding-bottom: 15px !important;
|
822 |
-
}
|
823 |
-
|
824 |
-
.elementor-control.elementor-control-woo_grid_notice_video_tutorial a {
|
825 |
-
display: inline-block;
|
826 |
-
margin-top: 5px;
|
827 |
-
}
|
828 |
-
|
829 |
-
.elementor-control[class*="video_tutorial"] a {
|
830 |
-
line-height: 16px;
|
831 |
-
font-size: 12px;
|
832 |
-
}
|
833 |
-
|
834 |
-
.elementor-control[class*="video_tutorial"] a .dashicons {
|
835 |
-
font-size: 16px;
|
836 |
-
}
|
837 |
-
|
838 |
-
/* Pro Control Class */
|
839 |
-
.elementor-control.wpr-pro-control label i {
|
840 |
-
color: #aeaeae;
|
841 |
-
font-size: 14px;
|
842 |
-
margin-left: 3px;
|
843 |
-
}
|
844 |
-
|
845 |
-
.elementor-control.wpr-pro-control .elementor-control-content:before {
|
846 |
-
content: '';
|
847 |
-
position: absolute;
|
848 |
-
width: 100%;
|
849 |
-
height: 100%;
|
850 |
-
z-index: 9;
|
851 |
-
background: transparent;
|
852 |
-
}
|
853 |
-
|
854 |
-
.elementor-control.wpr-pro-control .elementor-control-content:after {
|
855 |
-
content: "This option is available in the Pro Version.";
|
856 |
-
visibility: hidden;
|
857 |
-
opacity: 0;
|
858 |
-
position: absolute;
|
859 |
-
top: 30px;
|
860 |
-
padding: 15px;
|
861 |
-
z-index: 99;
|
862 |
-
margin-top: 10px;
|
863 |
-
font-size: 12px;
|
864 |
-
color: #93003c;
|
865 |
-
background-color: #ffffff;
|
866 |
-
border-radius: 5px;
|
867 |
-
-webkit-box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
|
868 |
-
box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
|
869 |
-
border: 1px solid #e6e9ec;
|
870 |
-
-webkit-transition: all 0.2s ease-in;
|
871 |
-
-o-transition: all 0.2s ease-in;
|
872 |
-
transition: all 0.2s ease-in;
|
873 |
-
}
|
874 |
-
|
875 |
-
.elementor-repeater-fields .elementor-control.wpr-pro-control .elementor-control-content:after {
|
876 |
-
content: "This is available in the Pro Version.";
|
877 |
-
}
|
878 |
-
|
879 |
-
.elementor-control.wpr-pro-control.no-distance .elementor-control-content:after {
|
880 |
-
margin: 0;
|
881 |
-
}
|
882 |
-
|
883 |
-
.elementor-control.wpr-pro-control .elementor-control-content:hover:after {
|
884 |
-
visibility: visible;
|
885 |
-
opacity: 1;
|
886 |
-
}
|
887 |
-
|
888 |
-
/*--------------------------------------------------------------
|
889 |
-
== Theme Builder Widgets
|
890 |
-
--------------------------------------------------------------*/
|
891 |
-
#elementor-panel-categories {
|
892 |
-
display: -webkit-box;
|
893 |
-
display: -ms-flexbox;
|
894 |
-
display: flex;
|
895 |
-
-webkit-box-orient: vertical;
|
896 |
-
-webkit-box-direction: normal;
|
897 |
-
-ms-flex-direction: column;
|
898 |
-
flex-direction: column;
|
899 |
-
}
|
900 |
-
|
901 |
-
#elementor-panel-categories > div {
|
902 |
-
-webkit-box-ordinal-group: 3;
|
903 |
-
-ms-flex-order: 2;
|
904 |
-
order: 2;
|
905 |
-
}
|
906 |
-
|
907 |
-
#elementor-panel-category-wpr-theme-builder-widgets,
|
908 |
-
#elementor-panel-category-wpr-woocommerce-builder-widgets {
|
909 |
-
-webkit-box-ordinal-group: 2 !important;
|
910 |
-
-ms-flex-order: 1 !important;
|
911 |
-
order: 1 !important;
|
912 |
-
}
|
913 |
-
|
914 |
-
.elementor-editor-wpr-theme-builder #elementor-panel-footer-saver-preview {
|
915 |
-
display: none !important;
|
916 |
-
}
|
917 |
-
|
918 |
-
|
919 |
-
/*--------------------------------------------------------------
|
920 |
-
== Elementor Search Notice
|
921 |
-
--------------------------------------------------------------*/
|
922 |
-
.wpr-elementor-search-notice {
|
923 |
-
background: #fff;
|
924 |
-
font-size: 13px;
|
925 |
-
padding: 20px;
|
926 |
-
line-height: 18px;
|
927 |
-
margin: 10px;
|
928 |
-
border-left: 3px solid #71d7f7;
|
929 |
-
-webkit-box-shadow: 0 1px 4px 0 rgb(0 0 0 / 7%);
|
930 |
-
box-shadow: 0 1px 4px 0 rgb(0 0 0 / 7%);
|
931 |
-
}
|
932 |
-
|
933 |
-
|
934 |
-
/*--------------------------------------------------------------
|
935 |
-
== Debug
|
936 |
-
--------------------------------------------------------------*/
|
937 |
-
pre.xdebug-var-dump {
|
938 |
-
position: absolute;
|
939 |
-
z-index: 999999;
|
940 |
-
background: #fff;
|
941 |
-
border: 2px solid #000;
|
942 |
-
padding: 20px;
|
943 |
-
left: 300px;
|
944 |
}
|
1 |
+
/*--------------------------------------------------------------
|
2 |
+
== General
|
3 |
+
--------------------------------------------------------------*/
|
4 |
+
.wpr-elementor-hidden-control {
|
5 |
+
overflow: hidden;
|
6 |
+
width: 0 !important;
|
7 |
+
height: 0 !important;
|
8 |
+
padding: 0 !important;
|
9 |
+
margin: 0 !important;
|
10 |
+
visibility: hidden !important;
|
11 |
+
opacity: 0 !important;
|
12 |
+
}
|
13 |
+
|
14 |
+
|
15 |
+
/*--------------------------------------------------------------
|
16 |
+
== WPR Widgets
|
17 |
+
--------------------------------------------------------------*/
|
18 |
+
.elementor-panel .wpr-icon:after {
|
19 |
+
content: 'R';
|
20 |
+
display: block;
|
21 |
+
position: absolute;
|
22 |
+
top: 3px;
|
23 |
+
right: 3px;
|
24 |
+
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
25 |
+
font-size: 10px;
|
26 |
+
font-weight: bold;
|
27 |
+
color: #ffffff;
|
28 |
+
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
29 |
+
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
30 |
+
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
31 |
+
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
32 |
+
box-shadow: 0 0 2px 2px #b8c7ff;
|
33 |
+
width: 19px;
|
34 |
+
height: 19px;
|
35 |
+
line-height: 19px;
|
36 |
+
border-radius: 15px;
|
37 |
+
margin: 3px;
|
38 |
+
}
|
39 |
+
|
40 |
+
.elementor-panel .elementor-element .icon {
|
41 |
+
position: relative !important;
|
42 |
+
}
|
43 |
+
|
44 |
+
.elementor-element--promotion .wpr-icon:after {
|
45 |
+
top: 22px;
|
46 |
+
right: -1px;
|
47 |
+
opacity: 0.7;
|
48 |
+
}
|
49 |
+
|
50 |
+
#elementor-element--promotion__dialog .dialog-button {
|
51 |
+
text-align: center;
|
52 |
+
}
|
53 |
+
|
54 |
+
.elementor-control-type-section[class*="elementor-control-wpr_section_"]:after {
|
55 |
+
content: 'R';
|
56 |
+
display: block;
|
57 |
+
position: absolute;
|
58 |
+
top: 7px;
|
59 |
+
right: 7px;
|
60 |
+
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
61 |
+
font-size: 10px;
|
62 |
+
font-weight: bold;
|
63 |
+
color: #ffffff;
|
64 |
+
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
65 |
+
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
66 |
+
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
67 |
+
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
68 |
+
box-shadow: 0 0 2px 2px #b8c7ff;
|
69 |
+
width: 19px;
|
70 |
+
height: 19px;
|
71 |
+
line-height: 19px;
|
72 |
+
border-radius: 15px;
|
73 |
+
margin: 3px;
|
74 |
+
text-align: center;
|
75 |
+
}
|
76 |
+
|
77 |
+
/*--------------------------------------------------------------
|
78 |
+
== Adjustments
|
79 |
+
--------------------------------------------------------------*/
|
80 |
+
.elementor-control-element_select,
|
81 |
+
.elementor-control-element_align_hr,
|
82 |
+
.elementor-control-element_read_more_text,
|
83 |
+
.elementor-control-element_tax_sep,
|
84 |
+
.elementor-control-element_sharing_icon_6,
|
85 |
+
.elementor-control-element_sharing_trigger_direction,
|
86 |
+
.elementor-control-element_sharing_icon_display,
|
87 |
+
.elementor-control-element_sharing_tooltip,
|
88 |
+
.elementor-control-element_custom_field_wrapper_html,
|
89 |
+
.elementor-control-slider_item_bg_size,
|
90 |
+
.elementor-control-element_addcart_variable_txt,
|
91 |
+
.elementor-control-type,
|
92 |
+
.elementor-control-show_last_update_date {
|
93 |
+
margin-bottom: 15px;
|
94 |
+
}
|
95 |
+
|
96 |
+
.elementor-control-slider_content_bg_color,
|
97 |
+
.elementor-control-slider_nav_border_border,
|
98 |
+
.elementor-control-slider_nav_border_radius,
|
99 |
+
.elementor-control-scroll_btn_vr,
|
100 |
+
.elementor-control-pagination_load_more_text,
|
101 |
+
.elementor-control-pagination_finish_text,
|
102 |
+
.elementor-control-pagination_prev_next,
|
103 |
+
.elementor-control-author_transition_duration,
|
104 |
+
.elementor-control-comments_transition_duration,
|
105 |
+
.elementor-control-likes_transition_duration,
|
106 |
+
.elementor-control-sharing_transition_duration,
|
107 |
+
.elementor-control-lightbox_transition_duration,
|
108 |
+
.elementor-control-custom_field1_transition_duration,
|
109 |
+
.elementor-control-custom_field2_transition_duration,
|
110 |
+
.elementor-control-custom_field3_transition_duration,
|
111 |
+
.elementor-control-custom_field4_transition_duration,
|
112 |
+
.elementor-control-filters_transition_duration,
|
113 |
+
.elementor-control-pagination_transition_duration,
|
114 |
+
.elementor-control-element_extra_text_pos,
|
115 |
+
.elementor-control-element_custom_field_wrapper,
|
116 |
+
.elementor-control-overlay_post_link,
|
117 |
+
.elementor-control-read_more_animation_height,
|
118 |
+
.elementor-control-archive_link_transition_duration,
|
119 |
+
.elementor-control-post_info_tax_select,
|
120 |
+
.elementor-control-post_info_link_wrap,
|
121 |
+
.elementor-control-post_info_modified_time,
|
122 |
+
.elementor-control-tabs_sharing_custom_colors,
|
123 |
+
.elementor-control-post_info_show_avatar,
|
124 |
+
.elementor-control-post_info_cf,
|
125 |
+
.elementor-control-pricing_items .elementor-control-price,
|
126 |
+
.elementor-control-pricing_items .elementor-control-feature_text,
|
127 |
+
.elementor-control-pricing_items .elementor-control-btn_text,
|
128 |
+
.elementor-control-divider_style,
|
129 |
+
.elementor-control-filters_pointer,
|
130 |
+
.elementor-control-title_transition_duration,
|
131 |
+
.elementor-control-tax1_transition_duration,
|
132 |
+
.elementor-control-tax2_transition_duration,
|
133 |
+
.elementor-control-filters_transition_duration,
|
134 |
+
.elementor-control-pagination_older_text,
|
135 |
+
.elementor-control-tooltip_position,
|
136 |
+
.elementor-control-post_info_comments_text_1 {
|
137 |
+
padding-top: 15px !important;
|
138 |
+
}
|
139 |
+
|
140 |
+
.elementor-control-post_info_custom_field_video_tutorial {
|
141 |
+
margin-top: 15px;
|
142 |
+
}
|
143 |
+
|
144 |
+
.elementor-control-title_pointer_animation + .elementor-control-title_transition_duration,
|
145 |
+
.elementor-control-tax1_pointer_animation + .elementor-control-tax1_transition_duration,
|
146 |
+
.elementor-control-tax2_pointer_animation + .elementor-control-tax2_transition_duration,
|
147 |
+
.elementor-control-filters_pointer_animation + .elementor-control-filters_transition_duration {
|
148 |
+
padding-top: 0 !important;
|
149 |
+
}
|
150 |
+
|
151 |
+
.elementor-control-pagination_load_more_text {
|
152 |
+
padding-bottom: 0 !important;
|
153 |
+
}
|
154 |
+
|
155 |
+
.elementor-control-filters_transition_duration,
|
156 |
+
.elementor-control-show_last_update_date {
|
157 |
+
padding-top: 0 !important;
|
158 |
+
}
|
159 |
+
|
160 |
+
.elementor-control-animation_divider,
|
161 |
+
.elementor-control-overlay_divider,
|
162 |
+
.elementor-control-slider_item_btn_1_divider,
|
163 |
+
.elementor-control-slider_item_btn_2_divider,
|
164 |
+
.elementor-control-slider_btn_typography_1_divider,
|
165 |
+
.elementor-control-slider_btn_box_shadow_1_divider,
|
166 |
+
.elementor-control-slider_btn_typography_2_divider,
|
167 |
+
.elementor-control-slider_btn_box_shadow_2_divider,
|
168 |
+
.elementor-control-testimonial_title_divider,
|
169 |
+
.elementor-control-social_media_divider,
|
170 |
+
.elementor-control-social_divider_1,
|
171 |
+
.elementor-control-social_divider_2,
|
172 |
+
.elementor-control-social_divider_3,
|
173 |
+
.elementor-control-social_divider_4,
|
174 |
+
.elementor-control-social_divider_5,
|
175 |
+
.elementor-control-custom_field_wrapper_html_divider1,
|
176 |
+
.elementor-control-custom_field_wrapper_html_divider2,
|
177 |
+
.elementor-control-lightbox_shadow_divider {
|
178 |
+
padding: 0 !important;
|
179 |
+
}
|
180 |
+
|
181 |
+
.elementor-control-custom_field_wrapper_html_divider1 hr,
|
182 |
+
.elementor-control-lightbox_shadow_divider hr {
|
183 |
+
height: 1px !important;
|
184 |
+
}
|
185 |
+
|
186 |
+
.elementor-control-element_show_on {
|
187 |
+
padding-top: 15px !important;
|
188 |
+
border-top: 1px solid #d5dadf;
|
189 |
+
}
|
190 |
+
|
191 |
+
[class*="wpr__section_"] ~ .elementor-control-type-number .elementor-control-input-wrapper,
|
192 |
+
[class*="wpr__section_"] ~ .elementor-control-type-repeater .elementor-control-type-number .elementor-control-input-wrapper {
|
193 |
+
max-width: 30% !important;
|
194 |
+
margin-left: auto !important;
|
195 |
+
}
|
196 |
+
|
197 |
+
[class*="wpr__section_"] ~ .elementor-control-type-select .elementor-control-input-wrapper,
|
198 |
+
[class*="wpr__section_"] ~ .elementor-control-type-repeater .elementor-control-type-select .elementor-control-input-wrapper {
|
199 |
+
width: auto !important;
|
200 |
+
min-width: 30% !important;
|
201 |
+
margin-left: auto !important;
|
202 |
+
}
|
203 |
+
|
204 |
+
.elementor-control-submit_preview_changes .elementor-control-input-wrapper {
|
205 |
+
text-align: center !important;
|
206 |
+
}
|
207 |
+
|
208 |
+
.elementor-control-query_manual_related,
|
209 |
+
.elementor-control-query_manual_current {
|
210 |
+
display: none !important;
|
211 |
+
}
|
212 |
+
|
213 |
+
/* Fix Select Inputs */
|
214 |
+
.elementor-control-button_hover_animation .elementor-control-input-wrapper,
|
215 |
+
.elementor-control-front_btn_animation .elementor-control-input-wrapper,
|
216 |
+
.elementor-control-back_btn_animation .elementor-control-input-wrapper,
|
217 |
+
|
218 |
+
.elementor-control-select_template .select2-selection,
|
219 |
+
.elementor-control-switcher_first_select_template .select2-selection,
|
220 |
+
.elementor-control-switcher_second_select_template .select2-selection,
|
221 |
+
.elementor-control-switcher_select_template .select2-selection,
|
222 |
+
.elementor-control-slider_select_template .select2-selection {
|
223 |
+
width: 135px !important;
|
224 |
+
}
|
225 |
+
|
226 |
+
.elementor-control-type-repeater .elementor-control-content > label {
|
227 |
+
display: none !important;
|
228 |
+
}
|
229 |
+
|
230 |
+
|
231 |
+
/*--------------------------------------------------------------
|
232 |
+
== Notification
|
233 |
+
--------------------------------------------------------------*/
|
234 |
+
#wpr-template-settings-notification {
|
235 |
+
position: fixed;
|
236 |
+
left: 40px;
|
237 |
+
bottom: 5px;
|
238 |
+
z-index: 9999;
|
239 |
+
padding: 13px 25px;
|
240 |
+
background: #fff;
|
241 |
+
color: #222;
|
242 |
+
-webkit-box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.3);
|
243 |
+
box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.3);
|
244 |
+
border-radius: 3px;
|
245 |
+
}
|
246 |
+
|
247 |
+
#wpr-template-settings-notification:before {
|
248 |
+
content: "";
|
249 |
+
position: absolute;
|
250 |
+
left: -6px;
|
251 |
+
bottom: 10px;
|
252 |
+
width: 0;
|
253 |
+
height: 0;
|
254 |
+
border-top: 6px solid transparent;
|
255 |
+
border-bottom: 6px solid transparent;
|
256 |
+
border-right-style: solid;
|
257 |
+
border-right-width: 6px;
|
258 |
+
border-right-color: #fff;
|
259 |
+
}
|
260 |
+
|
261 |
+
#wpr-template-settings-notification h4 {
|
262 |
+
margin-bottom: 10px;
|
263 |
+
}
|
264 |
+
|
265 |
+
#wpr-template-settings-notification h4 span {
|
266 |
+
font-size: 14px;
|
267 |
+
vertical-align: super;
|
268 |
+
color: #5f5f5f;
|
269 |
+
}
|
270 |
+
|
271 |
+
#wpr-template-settings-notification h4 i {
|
272 |
+
margin-right: 10px;
|
273 |
+
color: #3db050;
|
274 |
+
font-size: 24px;
|
275 |
+
}
|
276 |
+
|
277 |
+
#wpr-template-settings-notification p {
|
278 |
+
color: #666;
|
279 |
+
font-size: 12px;
|
280 |
+
line-height: 1.5;
|
281 |
+
}
|
282 |
+
|
283 |
+
#wpr-template-settings-notification > i {
|
284 |
+
position: absolute;
|
285 |
+
top: 7px;
|
286 |
+
right: 7px;
|
287 |
+
cursor: pointer;
|
288 |
+
color: #999;
|
289 |
+
}
|
290 |
+
|
291 |
+
.elementor-control-cf7_notice,
|
292 |
+
.elementor-control-wpforms_notice,
|
293 |
+
.elementor-control-ninja_forms_notice,
|
294 |
+
.elementor-control-caldera_notice {
|
295 |
+
color: red;
|
296 |
+
}
|
297 |
+
|
298 |
+
/* Help Button - select with referrals - [href^="https://royal-elementor-addons.com/contact/"] */
|
299 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"] {
|
300 |
+
display: inline-block;
|
301 |
+
padding: 12px 35px;
|
302 |
+
font-size: 13px;
|
303 |
+
font-weight: normal;
|
304 |
+
color: #fff;
|
305 |
+
background: #6A65FF;
|
306 |
+
border-radius: 3px;
|
307 |
+
-webkit-box-shadow: 0 2px 7px 0 rgba(0,0,0,0.3);
|
308 |
+
box-shadow: 0 2px 7px 0 rgba(0,0,0,0.3);
|
309 |
+
letter-spacing: 0.3px;
|
310 |
+
-webkit-transition: all 0.2s ease-in;
|
311 |
+
-o-transition: all 0.2s ease-in;
|
312 |
+
transition: all 0.2s ease-in;
|
313 |
+
}
|
314 |
+
|
315 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover {
|
316 |
+
color: #fff;
|
317 |
+
background: #6A4BFF;
|
318 |
+
}
|
319 |
+
|
320 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"] i {
|
321 |
+
color: #fff;
|
322 |
+
font-size: 14px;
|
323 |
+
vertical-align: top;
|
324 |
+
}
|
325 |
+
|
326 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover i {
|
327 |
+
color: #fff;
|
328 |
+
}
|
329 |
+
|
330 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover i:before {
|
331 |
+
content: '\e942' !important;
|
332 |
+
}
|
333 |
+
|
334 |
+
.elementor-control-posts_slider_notice .elementor-control-raw-html {
|
335 |
+
font-style: normal !important;
|
336 |
+
}
|
337 |
+
|
338 |
+
.elementor-control-product_notice_widget_info .elementor-control-raw-html {
|
339 |
+
color: red;
|
340 |
+
}
|
341 |
+
|
342 |
+
|
343 |
+
/*--------------------------------------------------------------
|
344 |
+
== Modal Popup Editor
|
345 |
+
--------------------------------------------------------------*/
|
346 |
+
.elementor-editor-wpr-popups .elementor-control-document_settings,
|
347 |
+
.elementor-editor-wpr-popups .elementor-control-post_title,
|
348 |
+
.elementor-editor-wpr-popups .elementor-control-post_status {
|
349 |
+
display: none !important;
|
350 |
+
}
|
351 |
+
|
352 |
+
|
353 |
+
/*--------------------------------------------------------------
|
354 |
+
== Elementor Editor Popup
|
355 |
+
--------------------------------------------------------------*/
|
356 |
+
#wpr-template-editor-popup .dialog-widget-content {
|
357 |
+
width: 90vw;
|
358 |
+
height: 90vh;
|
359 |
+
}
|
360 |
+
|
361 |
+
#wpr-template-editor-popup .dialog-message {
|
362 |
+
padding: 0;
|
363 |
+
width: 100%;
|
364 |
+
height: 100%;
|
365 |
+
}
|
366 |
+
|
367 |
+
#wpr-template-editor-popup .dialog-close-button {
|
368 |
+
font-size: 24px;
|
369 |
+
color: #222;
|
370 |
+
}
|
371 |
+
|
372 |
+
#wpr-template-editor-popup .dialog-header {
|
373 |
+
display: none;
|
374 |
+
}
|
375 |
+
|
376 |
+
#wpr-template-editor-loading {
|
377 |
+
position: absolute;
|
378 |
+
top: 0;
|
379 |
+
left: 0;
|
380 |
+
width: 100%;
|
381 |
+
height: 100%;
|
382 |
+
background: #f1f3f5;
|
383 |
+
z-index: 9999;
|
384 |
+
-webkit-transform: translateZ(0);
|
385 |
+
transform: translateZ(0);
|
386 |
+
display: -webkit-box;
|
387 |
+
display: -ms-flexbox;
|
388 |
+
display: flex;
|
389 |
+
-webkit-box-pack: center;
|
390 |
+
-ms-flex-pack: center;
|
391 |
+
justify-content: center;
|
392 |
+
-webkit-box-align: center;
|
393 |
+
-ms-flex-align: center;
|
394 |
+
align-items: center;
|
395 |
+
}
|
396 |
+
|
397 |
+
#wpr-template-editor-loading .elementor-loader-wrapper {
|
398 |
+
top: auto;
|
399 |
+
left: auto;
|
400 |
+
-webkit-transform: none;
|
401 |
+
-ms-transform: none;
|
402 |
+
transform: none;
|
403 |
+
}
|
404 |
+
|
405 |
+
/* Disable Transitions on Responsive Preview */
|
406 |
+
#elementor-preview-responsive-wrapper {
|
407 |
+
-webkit-transition: none !important;
|
408 |
+
-o-transition: none !important;
|
409 |
+
transition: none !important;
|
410 |
+
}
|
411 |
+
|
412 |
+
|
413 |
+
/*--------------------------------------------------------------
|
414 |
+
== Magazine Grid Layout
|
415 |
+
--------------------------------------------------------------*/
|
416 |
+
.elementor-control-layout_select.elementor-control .elementor-control-field {
|
417 |
+
-webkit-box-orient: vertical !important;
|
418 |
+
-webkit-box-direction: normal !important;
|
419 |
+
-ms-flex-direction: column !important;
|
420 |
+
flex-direction: column !important;
|
421 |
+
-webkit-box-align: start;
|
422 |
+
-ms-flex-align: start;
|
423 |
+
align-items: flex-start;
|
424 |
+
}
|
425 |
+
|
426 |
+
.elementor-control-layout_select.elementor-control .elementor-control-input-wrapper {
|
427 |
+
display: -webkit-box;
|
428 |
+
display: -ms-flexbox;
|
429 |
+
display: flex;
|
430 |
+
width: 100% !important;
|
431 |
+
margin-top: 10px;
|
432 |
+
}
|
433 |
+
|
434 |
+
.elementor-control-layout_select.elementor-control .elementor-choices {
|
435 |
+
-ms-flex-wrap: wrap;
|
436 |
+
flex-wrap: wrap;
|
437 |
+
-webkit-box-align: stretch;
|
438 |
+
-ms-flex-align: stretch;
|
439 |
+
align-items: stretch;
|
440 |
+
width: 100% !important;
|
441 |
+
height: auto;
|
442 |
+
border: 1px solid #dfd5d5;
|
443 |
+
}
|
444 |
+
|
445 |
+
.elementor-control-layout_select.elementor-control .elementor-choices label {
|
446 |
+
width: 33.3%;
|
447 |
+
height: 50px;
|
448 |
+
background-size: 75%;
|
449 |
+
background-position: center center;
|
450 |
+
background-repeat: no-repeat;
|
451 |
+
}
|
452 |
+
|
453 |
+
.elementor-control-layout_select input[type="radio"]:checked + label {
|
454 |
+
border: 2px solid #D30C5C;
|
455 |
+
border-radius: 0 !important;
|
456 |
+
background-color: #ffffff;
|
457 |
+
}
|
458 |
+
|
459 |
+
.elementor-control-layout_select label:nth-child(2) {
|
460 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='15.2' class='st1' width='22.2' height='11.9'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='9.2'/%3E%3C/g%3E%3C/svg%3E");
|
461 |
+
}
|
462 |
+
|
463 |
+
.elementor-control-layout_select label:nth-child(4) {
|
464 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
465 |
+
}
|
466 |
+
|
467 |
+
.elementor-control-layout_select label:nth-child(6) {
|
468 |
+
background: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Cg%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
|
469 |
+
}
|
470 |
+
|
471 |
+
.elementor-control-layout_select label:nth-child(8) {
|
472 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
473 |
+
}
|
474 |
+
|
475 |
+
.elementor-control-layout_select label:nth-child(10) {
|
476 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='13.9' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3Crect x='2.3' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='2.3' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
477 |
+
}
|
478 |
+
|
479 |
+
.elementor-control-layout_select label:nth-child(12) {
|
480 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='28.5' height='22.2'/%3E%3Crect x='31.8' y='12.9' class='st1' width='15.9' height='6.3'/%3E%3Crect x='31.8' y='4.9' class='st1' width='15.9' height='6.8'/%3E%3Crect x='31.8' y='20.3' class='st1' width='15.9' height='6.8'/%3E%3C/g%3E%3C/svg%3E");
|
481 |
+
}
|
482 |
+
|
483 |
+
.elementor-control-layout_select label:nth-child(14) {
|
484 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='13.9' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='2.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
485 |
+
}
|
486 |
+
|
487 |
+
.elementor-control-layout_select label:nth-child(16) {
|
488 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='33.9' height='13.2'/%3E%3Crect x='2.2' y='19.3' class='st1' width='16.4' height='7.8'/%3E%3Crect x='19.7' y='19.3' class='st1' width='16.4' height='7.8'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='13.2'/%3E%3Crect x='37.2' y='19.3' class='st1' width='10.5' height='7.8'/%3E%3C/g%3E%3C/svg%3E");
|
489 |
+
}
|
490 |
+
|
491 |
+
.elementor-control-layout_select label:nth-child(18) {
|
492 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='12.1'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='12.1'/%3E%3Crect x='2.2' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3Crect x='17.8' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3Crect x='33.3' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3C/g%3E%3C/svg%3E");
|
493 |
+
}
|
494 |
+
|
495 |
+
.elementor-control-layout_select label:nth-child(20) {
|
496 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
497 |
+
}
|
498 |
+
|
499 |
+
.elementor-control-layout_select label:nth-child(22) {
|
500 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='14.5' height='22.2'/%3E%3Crect x='33.4' y='4.9' class='st1' width='14.4' height='22.2'/%3E%3Crect x='17.9' y='4.9' class='st1' width='14.4' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
501 |
+
}
|
502 |
+
|
503 |
+
.elementor-control-layout_select label:nth-child(24) {
|
504 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='10.6' height='22.2'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='14' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
505 |
+
}
|
506 |
+
|
507 |
+
/*--------------------------------------------------------------
|
508 |
+
== Widget Preview and Library buttons
|
509 |
+
--------------------------------------------------------------*/
|
510 |
+
.elementor-control-wpr_library_buttons {
|
511 |
+
height: 60px;
|
512 |
+
padding: 0;
|
513 |
+
}
|
514 |
+
|
515 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html {
|
516 |
+
padding: 0 10px 10px 10px;
|
517 |
+
border-bottom: 1px solid #efefef;
|
518 |
+
}
|
519 |
+
|
520 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html div {
|
521 |
+
display: -webkit-box;
|
522 |
+
display: -ms-flexbox;
|
523 |
+
display: flex;
|
524 |
+
-webkit-box-pack: center;
|
525 |
+
-ms-flex-pack: center;
|
526 |
+
justify-content: center;
|
527 |
+
}
|
528 |
+
|
529 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a {
|
530 |
+
-webkit-box-flex: 1;
|
531 |
+
-ms-flex-positive: 1;
|
532 |
+
flex-grow: 1;
|
533 |
+
padding: 10px 15px;
|
534 |
+
border-radius: 3px;
|
535 |
+
/*box-shadow: 1px 2px 5px 0 rgba(0,0,0,0.2);*/
|
536 |
+
white-space: nowrap;
|
537 |
+
overflow: hidden;
|
538 |
+
-o-text-overflow: ellipsis;
|
539 |
+
text-overflow: ellipsis;
|
540 |
+
text-align: center;
|
541 |
+
}
|
542 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a:first-child {
|
543 |
+
background-color: #1CB4E4;
|
544 |
+
color: #fff;
|
545 |
+
margin-right: 3px;
|
546 |
+
}
|
547 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a:last-child {
|
548 |
+
margin-left: 3px;
|
549 |
+
background-color: #6A65FF;
|
550 |
+
color: #fff;
|
551 |
+
}
|
552 |
+
|
553 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html > a {
|
554 |
+
display: block;
|
555 |
+
margin-top: 10px;
|
556 |
+
line-height: 20px;
|
557 |
+
color: #777;
|
558 |
+
border: none !important;
|
559 |
+
}
|
560 |
+
|
561 |
+
.elementor-section-title > a {
|
562 |
+
top: 10px;
|
563 |
+
right: 20px;
|
564 |
+
position: absolute;
|
565 |
+
line-height: 20px;
|
566 |
+
}
|
567 |
+
|
568 |
+
.elementor-section-title > a:hover {
|
569 |
+
border-color: transparent;
|
570 |
+
}
|
571 |
+
|
572 |
+
/*--------------------------------------------------------------
|
573 |
+
== Apply Changes Button
|
574 |
+
--------------------------------------------------------------*/
|
575 |
+
.editor-wpr-preview-update {
|
576 |
+
margin: 0;
|
577 |
+
display: -webkit-box;
|
578 |
+
display: -ms-flexbox;
|
579 |
+
display: flex;
|
580 |
+
-webkit-box-pack: justify;
|
581 |
+
-ms-flex-pack: justify;
|
582 |
+
justify-content: space-between;
|
583 |
+
}
|
584 |
+
|
585 |
+
.editor-wpr-preview-update button {
|
586 |
+
font-size: 13px;
|
587 |
+
padding: 5px 10px;
|
588 |
+
}
|
589 |
+
|
590 |
+
|
591 |
+
/*--------------------------------------------------------------
|
592 |
+
== Free/Pro Options
|
593 |
+
--------------------------------------------------------------*/
|
594 |
+
.elementor-control select option[value*=pro-] {
|
595 |
+
background: #f0f0f0;
|
596 |
+
}
|
597 |
+
|
598 |
+
.elementor-control[class*="pro_notice"] {
|
599 |
+
padding: 5px 0 15px 0 !important;
|
600 |
+
}
|
601 |
+
|
602 |
+
.wpr-pro-notice {
|
603 |
+
padding: 20px;
|
604 |
+
border-top: 1px solid #e6e9ec;
|
605 |
+
border-bottom: 1px solid #e6e9ec;
|
606 |
+
background-color: #f2fbff;
|
607 |
+
line-height: 1.4;
|
608 |
+
text-align: center;
|
609 |
+
}
|
610 |
+
|
611 |
+
.wpr-pro-notice-video {
|
612 |
+
display: block;
|
613 |
+
margin-top: 7px;
|
614 |
+
line-height: 20px;
|
615 |
+
border: none !important;
|
616 |
+
}
|
617 |
+
|
618 |
+
#elementor-controls .elementor-control-slider_section_pro_notice {
|
619 |
+
margin-top: -16px;
|
620 |
+
padding-bottom: 0 !important;
|
621 |
+
}
|
622 |
+
|
623 |
+
.elementor-control-layout_select_pro_notice + div,
|
624 |
+
.elementor-control-element_align_pro_notice + div {
|
625 |
+
padding-top: 15px;
|
626 |
+
}
|
627 |
+
|
628 |
+
.elementor-control-layout_select .elementor-choices label {
|
629 |
+
position: relative;
|
630 |
+
}
|
631 |
+
|
632 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(2):after,
|
633 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(4):after,
|
634 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(6):after,
|
635 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(8):after,
|
636 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(10):after,
|
637 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(12):after {
|
638 |
+
content: ' ';
|
639 |
+
display: block;
|
640 |
+
width: 100%;
|
641 |
+
height: 100%;
|
642 |
+
position: absolute;
|
643 |
+
top: 0;
|
644 |
+
left: 0;
|
645 |
+
background: rgba(0,0,0,0.2);
|
646 |
+
}
|
647 |
+
|
648 |
+
/* Adjustments */
|
649 |
+
.elementor-control.elementor-control-element_align_pro_notice,
|
650 |
+
.elementor-control.elementor-control-search_pro_notice,
|
651 |
+
.elementor-control.elementor-control-layout_select_pro_notice,
|
652 |
+
.elementor-control.elementor-control-grid_columns_pro_notice,
|
653 |
+
.elementor-control.elementor-control-slider_content_type_pro_notice,
|
654 |
+
.elementor-control.elementor-control-slider_repeater_pro_notice,
|
655 |
+
.elementor-control.elementor-control-slider_dots_layout_pro_notice,
|
656 |
+
.elementor-control.elementor-control-testimonial_repeater_pro_notice,
|
657 |
+
.elementor-control.elementor-control-testimonial_icon_pro_notice,
|
658 |
+
.elementor-control.elementor-control-menu_layout_pro_notice,
|
659 |
+
.elementor-control.elementor-control-menu_items_submenu_entrance_pro_notice,
|
660 |
+
.elementor-control.elementor-control-switcher_label_style_pro_notice,
|
661 |
+
.elementor-control.elementor-control-countdown_type_pro_notice,
|
662 |
+
.elementor-control.elementor-control-layout_pro_notice,
|
663 |
+
.elementor-control.elementor-control-anim_timing_pro_notice,
|
664 |
+
.elementor-control.elementor-control-tab_content_type_pro_notice,
|
665 |
+
.elementor-control.elementor-control-tabs_repeater_pro_notice,
|
666 |
+
.elementor-control.elementor-control-tabs_align_pro_notice,
|
667 |
+
.elementor-control.elementor-control-front_trigger_pro_notice,
|
668 |
+
.elementor-control.elementor-control-back_link_type_pro_notice,
|
669 |
+
.elementor-control.elementor-control-box_anim_timing_pro_notice,
|
670 |
+
.elementor-control.elementor-control-image_style_pro_notice,
|
671 |
+
.elementor-control.elementor-control-image_animation_timing_pro_notice,
|
672 |
+
.elementor-control.elementor-control-label_display_pro_notice,
|
673 |
+
.elementor-control.elementor-control-post_type_pro_notice,
|
674 |
+
.elementor-control.elementor-control-type_select_pro_notice,
|
675 |
+
.elementor-control.elementor-control-icon_style_pro_notice,
|
676 |
+
.elementor-control.elementor-control-dual_button_pro_notice,
|
677 |
+
.elementor-control.elementor-control-team_member_pro_notice,
|
678 |
+
.elementor-control.elementor-control-price_list_pro_notice,
|
679 |
+
.elementor-control.elementor-control-business_hours_pro_notice,
|
680 |
+
.elementor-control.elementor-control-sharing_columns_pro_notice,
|
681 |
+
.elementor-control.elementor-control-popup_trigger_pro_notice,
|
682 |
+
.elementor-control.elementor-control-popup_show_again_delay_pro_notice,
|
683 |
+
.elementor-control.elementor-control-group_popup_settings_pro_notice,
|
684 |
+
.elementor-control.elementor-control-which_particle_pro_notice,
|
685 |
+
.elementor-control.elementor-control-paralax_repeater_pro_notice,
|
686 |
+
.elementor-control.elementor-control-opnepage_pro_notice,
|
687 |
+
.elementor-control.elementor-control-timeline_repeater_pro_notice,
|
688 |
+
.elementor-control.elementor-control-limit_grid_items_pro_notice,
|
689 |
+
.elementor-control.elementor-control-post_nav_layout_pro_notice,
|
690 |
+
.elementor-control.elementor-control-author_name_links_to_pro_notice,
|
691 |
+
.elementor-control.elementor-control-author_title_links_to_pro_notice,
|
692 |
+
.elementor-control.elementor-control-comments_form_layout_pro_notice,
|
693 |
+
.elementor-control.elementor-control-sharing_repeater_pro_notice,
|
694 |
+
.elementor-control.elementor-control-mini_cart_style_pro_notice,
|
695 |
+
.elementor-control.elementor-control-tabs_position_pro_notice,
|
696 |
+
.elementor-control.elementor-control-choose_table_type_pro_notice,
|
697 |
+
.elementor-control.elementor-control-accordion_repeater_pro_notice,
|
698 |
+
.elementor-control.elementor-control-acc_repeater_pro_notice,
|
699 |
+
.elementor-control.elementor-control-data_source_pro_notice,
|
700 |
+
.elementor-control.elementor-control-charts_repeater_pro_notice,
|
701 |
+
.elementor-control.elementor-control-mob_menu_display_as_pro_notice {
|
702 |
+
padding-bottom: 0 !important;
|
703 |
+
}
|
704 |
+
|
705 |
+
.elementor-control-search_pro_notice .wpr-pro-notice,
|
706 |
+
.elementor-control-grid_columns_pro_notice .wpr-pro-notice,
|
707 |
+
.elementor-control-slider_content_type_pro_notice .wpr-pro-notice,
|
708 |
+
.elementor-control-slider_repeater_pro_notice .wpr-pro-notice,
|
709 |
+
.elementor-control-slider_dots_layout_pro_notice .wpr-pro-notice,
|
710 |
+
.elementor-control-testimonial_repeater_pro_notice .wpr-pro-notice,
|
711 |
+
.elementor-control-testimonial_icon_pro_notice .wpr-pro-notice,
|
712 |
+
.elementor-control-menu_layout_pro_notice .wpr-pro-notice,
|
713 |
+
.elementor-control-menu_items_submenu_entrance_pro_notice .wpr-pro-notice,
|
714 |
+
.elementor-control-switcher_label_style_pro_notice .wpr-pro-notice,
|
715 |
+
.elementor-control-countdown_type_pro_notice .wpr-pro-notice,
|
716 |
+
.elementor-control-layout_pro_notice .wpr-pro-notice,
|
717 |
+
.elementor-control-anim_timing_pro_notice .wpr-pro-notice,
|
718 |
+
.elementor-control-tab_content_type_pro_notice .wpr-pro-notice,
|
719 |
+
.elementor-control-tabs_repeater_pro_notice .wpr-pro-notice,
|
720 |
+
.elementor-control-tabs_align_pro_notice .wpr-pro-notice,
|
721 |
+
.elementor-control-front_trigger_pro_notice .wpr-pro-notice,
|
722 |
+
.elementor-control-back_link_type_pro_notice .wpr-pro-notice,
|
723 |
+
.elementor-control-box_anim_timing_pro_notice .wpr-pro-notice,
|
724 |
+
.elementor-control-image_style_pro_notice .wpr-pro-notice,
|
725 |
+
.elementor-control-image_animation_timing_pro_notice .wpr-pro-notice,
|
726 |
+
.elementor-control-label_display_pro_notice .wpr-pro-notice,
|
727 |
+
.elementor-control-post_type_pro_notice .wpr-pro-notice,
|
728 |
+
.elementor-control-type_select_pro_notice .wpr-pro-notice,
|
729 |
+
.elementor-control-icon_style_pro_notice .wpr-pro-notice,
|
730 |
+
.elementor-control-dual_button_pro_notice .wpr-pro-notice,
|
731 |
+
.elementor-control-team_member_pro_notice .wpr-pro-notice,
|
732 |
+
.elementor-control-price_list_pro_notice .wpr-pro-notice,
|
733 |
+
.elementor-control-business_hours_pro_notice .wpr-pro-notice,
|
734 |
+
.elementor-control-sharing_columns_pro_notice .wpr-pro-notice,
|
735 |
+
.elementor-control-popup_trigger_pro_notice .wpr-pro-notice,
|
736 |
+
.elementor-control-popup_show_again_delay_pro_notice .wpr-pro-notice,
|
737 |
+
.elementor-control-group_popup_settings_pro_notice .wpr-pro-notice,
|
738 |
+
.elementor-control-post_nav_layout_pro_notice .wpr-pro-notice,
|
739 |
+
.elementor-control-author_name_links_to_pro_notice .wpr-pro-notice,
|
740 |
+
.elementor-control-author_title_links_to_pro_notice .wpr-pro-notice,
|
741 |
+
.elementor-control-comments_form_layout_pro_notice .wpr-pro-notice,
|
742 |
+
.elementor-control-sharing_repeater_pro_notice .wpr-pro-notice,
|
743 |
+
.elementor-control-mini_cart_style_pro_notice .wpr-pro-notice,
|
744 |
+
.elementor-control-tabs_position_pro_notice .wpr-pro-notice,
|
745 |
+
.elementor-control-choose_table_type_pro_notice .wpr-pro-notice,
|
746 |
+
.elementor-control-accordion_repeater_pro_notice .wpr-pro-notice,
|
747 |
+
.elementor-control.elementor-control-data_source_pro_notice .wpr-pro-notice,
|
748 |
+
.elementor-control.elementor-control-mob_menu_display_as_pro_notice .wpr-pro-notice {
|
749 |
+
border-bottom: none !important;
|
750 |
+
}
|
751 |
+
|
752 |
+
/* Both */
|
753 |
+
.elementor-control.elementor-control-pagination_type_pro_notice,
|
754 |
+
.elementor-control.elementor-control-tooltip_trigger_pro_notice,
|
755 |
+
.elementor-control.elementor-control-post_info_select_pro_notice {
|
756 |
+
padding-top: 0 !important;
|
757 |
+
padding-bottom: 0 !important;
|
758 |
+
}
|
759 |
+
|
760 |
+
.elementor-control-pagination_type_pro_notice .wpr-pro-notice {
|
761 |
+
border-top: none !important;
|
762 |
+
border-bottom: none !important;
|
763 |
+
}
|
764 |
+
|
765 |
+
.elementor-control-pro_features_section .elementor-section-toggle,
|
766 |
+
.elementor-control-pro_features_section .elementor-section-title {
|
767 |
+
color: #f54;
|
768 |
+
}
|
769 |
+
|
770 |
+
.elementor-control-pro_features_section .elementor-section-title {
|
771 |
+
line-height: 20px;
|
772 |
+
}
|
773 |
+
.elementor-control-pro_features_section .elementor-section-title .dashicons {
|
774 |
+
line-height: 20px;
|
775 |
+
font-size: 13px;
|
776 |
+
}
|
777 |
+
|
778 |
+
.wpr-pro-features-list {
|
779 |
+
text-align: center;
|
780 |
+
}
|
781 |
+
|
782 |
+
.wpr-pro-features-list ul {
|
783 |
+
text-align: left;
|
784 |
+
}
|
785 |
+
|
786 |
+
.wpr-pro-features-list ul li {
|
787 |
+
position: relative;
|
788 |
+
line-height: 22px;
|
789 |
+
padding-left: 20px;
|
790 |
+
}
|
791 |
+
|
792 |
+
.wpr-pro-features-list ul li::before {
|
793 |
+
content: '.';
|
794 |
+
font-size: 38px;
|
795 |
+
position: absolute;
|
796 |
+
top: -11px;
|
797 |
+
left: 0;
|
798 |
+
}
|
799 |
+
|
800 |
+
.wpr-pro-features-list ul + a {
|
801 |
+
display: inline-block;
|
802 |
+
background-color: #f54;
|
803 |
+
color: #fff;
|
804 |
+
margin: 15px 15px 10px 0;
|
805 |
+
padding: 7px 12px;
|
806 |
+
border-radius: 3px;
|
807 |
+
}
|
808 |
+
|
809 |
+
.wpr-pro-features-list ul + a:hover {
|
810 |
+
color: #fff;
|
811 |
+
}
|
812 |
+
|
813 |
+
/* Video Tutorial Link */
|
814 |
+
.elementor-control[class*="video_tutorial"] {
|
815 |
+
padding-top: 0 !important;
|
816 |
+
padding-bottom: 5px !important;
|
817 |
+
}
|
818 |
+
|
819 |
+
.elementor-control.elementor-control-woo_grid_notice_video_tutorial,
|
820 |
+
.elementor-control-show_last_update_date {
|
821 |
+
padding-bottom: 15px !important;
|
822 |
+
}
|
823 |
+
|
824 |
+
.elementor-control.elementor-control-woo_grid_notice_video_tutorial a {
|
825 |
+
display: inline-block;
|
826 |
+
margin-top: 5px;
|
827 |
+
}
|
828 |
+
|
829 |
+
.elementor-control[class*="video_tutorial"] a {
|
830 |
+
line-height: 16px;
|
831 |
+
font-size: 12px;
|
832 |
+
}
|
833 |
+
|
834 |
+
.elementor-control[class*="video_tutorial"] a .dashicons {
|
835 |
+
font-size: 16px;
|
836 |
+
}
|
837 |
+
|
838 |
+
/* Pro Control Class */
|
839 |
+
.elementor-control.wpr-pro-control label i {
|
840 |
+
color: #aeaeae;
|
841 |
+
font-size: 14px;
|
842 |
+
margin-left: 3px;
|
843 |
+
}
|
844 |
+
|
845 |
+
.elementor-control.wpr-pro-control .elementor-control-content:before {
|
846 |
+
content: '';
|
847 |
+
position: absolute;
|
848 |
+
width: 100%;
|
849 |
+
height: 100%;
|
850 |
+
z-index: 9;
|
851 |
+
background: transparent;
|
852 |
+
}
|
853 |
+
|
854 |
+
.elementor-control.wpr-pro-control .elementor-control-content:after {
|
855 |
+
content: "This option is available in the Pro Version.";
|
856 |
+
visibility: hidden;
|
857 |
+
opacity: 0;
|
858 |
+
position: absolute;
|
859 |
+
top: 30px;
|
860 |
+
padding: 15px;
|
861 |
+
z-index: 99;
|
862 |
+
margin-top: 10px;
|
863 |
+
font-size: 12px;
|
864 |
+
color: #93003c;
|
865 |
+
background-color: #ffffff;
|
866 |
+
border-radius: 5px;
|
867 |
+
-webkit-box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
|
868 |
+
box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
|
869 |
+
border: 1px solid #e6e9ec;
|
870 |
+
-webkit-transition: all 0.2s ease-in;
|
871 |
+
-o-transition: all 0.2s ease-in;
|
872 |
+
transition: all 0.2s ease-in;
|
873 |
+
}
|
874 |
+
|
875 |
+
.elementor-repeater-fields .elementor-control.wpr-pro-control .elementor-control-content:after {
|
876 |
+
content: "This is available in the Pro Version.";
|
877 |
+
}
|
878 |
+
|
879 |
+
.elementor-control.wpr-pro-control.no-distance .elementor-control-content:after {
|
880 |
+
margin: 0;
|
881 |
+
}
|
882 |
+
|
883 |
+
.elementor-control.wpr-pro-control .elementor-control-content:hover:after {
|
884 |
+
visibility: visible;
|
885 |
+
opacity: 1;
|
886 |
+
}
|
887 |
+
|
888 |
+
/*--------------------------------------------------------------
|
889 |
+
== Theme Builder Widgets
|
890 |
+
--------------------------------------------------------------*/
|
891 |
+
#elementor-panel-categories {
|
892 |
+
display: -webkit-box;
|
893 |
+
display: -ms-flexbox;
|
894 |
+
display: flex;
|
895 |
+
-webkit-box-orient: vertical;
|
896 |
+
-webkit-box-direction: normal;
|
897 |
+
-ms-flex-direction: column;
|
898 |
+
flex-direction: column;
|
899 |
+
}
|
900 |
+
|
901 |
+
#elementor-panel-categories > div {
|
902 |
+
-webkit-box-ordinal-group: 3;
|
903 |
+
-ms-flex-order: 2;
|
904 |
+
order: 2;
|
905 |
+
}
|
906 |
+
|
907 |
+
#elementor-panel-category-wpr-theme-builder-widgets,
|
908 |
+
#elementor-panel-category-wpr-woocommerce-builder-widgets {
|
909 |
+
-webkit-box-ordinal-group: 2 !important;
|
910 |
+
-ms-flex-order: 1 !important;
|
911 |
+
order: 1 !important;
|
912 |
+
}
|
913 |
+
|
914 |
+
.elementor-editor-wpr-theme-builder #elementor-panel-footer-saver-preview {
|
915 |
+
display: none !important;
|
916 |
+
}
|
917 |
+
|
918 |
+
|
919 |
+
/*--------------------------------------------------------------
|
920 |
+
== Elementor Search Notice
|
921 |
+
--------------------------------------------------------------*/
|
922 |
+
.wpr-elementor-search-notice {
|
923 |
+
background: #fff;
|
924 |
+
font-size: 13px;
|
925 |
+
padding: 20px;
|
926 |
+
line-height: 18px;
|
927 |
+
margin: 10px;
|
928 |
+
border-left: 3px solid #71d7f7;
|
929 |
+
-webkit-box-shadow: 0 1px 4px 0 rgb(0 0 0 / 7%);
|
930 |
+
box-shadow: 0 1px 4px 0 rgb(0 0 0 / 7%);
|
931 |
+
}
|
932 |
+
|
933 |
+
|
934 |
+
/*--------------------------------------------------------------
|
935 |
+
== Debug
|
936 |
+
--------------------------------------------------------------*/
|
937 |
+
pre.xdebug-var-dump {
|
938 |
+
position: absolute;
|
939 |
+
z-index: 999999;
|
940 |
+
background: #fff;
|
941 |
+
border: 2px solid #000;
|
942 |
+
padding: 20px;
|
943 |
+
left: 300px;
|
944 |
}
|
assets/css/editor.min.css
CHANGED
@@ -1,960 +1,1009 @@
|
|
1 |
-
/*--------------------------------------------------------------
|
2 |
-
== General
|
3 |
-
--------------------------------------------------------------*/
|
4 |
-
.wpr-elementor-hidden-control {
|
5 |
-
overflow: hidden;
|
6 |
-
width: 0 !important;
|
7 |
-
height: 0 !important;
|
8 |
-
padding: 0 !important;
|
9 |
-
margin: 0 !important;
|
10 |
-
visibility: hidden !important;
|
11 |
-
opacity: 0 !important;
|
12 |
-
}
|
13 |
-
|
14 |
-
|
15 |
-
/*--------------------------------------------------------------
|
16 |
-
== WPR Widgets
|
17 |
-
--------------------------------------------------------------*/
|
18 |
-
.elementor-panel .wpr-icon:after {
|
19 |
-
content: 'R';
|
20 |
-
display: block;
|
21 |
-
position: absolute;
|
22 |
-
top: 3px;
|
23 |
-
right: 3px;
|
24 |
-
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
25 |
-
font-size: 10px;
|
26 |
-
font-weight: bold;
|
27 |
-
color: #ffffff;
|
28 |
-
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
29 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
30 |
-
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
31 |
-
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
32 |
-
box-shadow: 0 0 2px 2px #b8c7ff;
|
33 |
-
width: 19px;
|
34 |
-
height: 19px;
|
35 |
-
line-height: 19px;
|
36 |
-
border-radius: 15px;
|
37 |
-
margin: 3px;
|
38 |
-
}
|
39 |
-
|
40 |
-
.elementor-panel .elementor-element .icon {
|
41 |
-
position: relative !important;
|
42 |
-
}
|
43 |
-
|
44 |
-
.elementor-element--promotion .wpr-icon:after {
|
45 |
-
top: 22px;
|
46 |
-
right: -1px;
|
47 |
-
opacity: 0.7;
|
48 |
-
}
|
49 |
-
|
50 |
-
#elementor-element--promotion__dialog .dialog-button {
|
51 |
-
text-align: center;
|
52 |
-
}
|
53 |
-
|
54 |
-
.elementor-control-type-section[class*="elementor-control-wpr_section_"]:after {
|
55 |
-
content: 'R';
|
56 |
-
display: block;
|
57 |
-
position: absolute;
|
58 |
-
top: 7px;
|
59 |
-
right: 7px;
|
60 |
-
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
61 |
-
font-size: 10px;
|
62 |
-
font-weight: bold;
|
63 |
-
color: #ffffff;
|
64 |
-
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
65 |
-
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
66 |
-
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
67 |
-
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
68 |
-
box-shadow: 0 0 2px 2px #b8c7ff;
|
69 |
-
width: 19px;
|
70 |
-
height: 19px;
|
71 |
-
line-height: 19px;
|
72 |
-
border-radius: 15px;
|
73 |
-
margin: 3px;
|
74 |
-
text-align: center;
|
75 |
-
}
|
76 |
-
|
77 |
-
/*--------------------------------------------------------------
|
78 |
-
== Adjustments
|
79 |
-
--------------------------------------------------------------*/
|
80 |
-
.elementor-control-element_select,
|
81 |
-
.elementor-control-element_align_hr,
|
82 |
-
.elementor-control-element_read_more_text,
|
83 |
-
.elementor-control-element_tax_sep,
|
84 |
-
.elementor-control-element_sharing_icon_6,
|
85 |
-
.elementor-control-element_sharing_trigger_direction,
|
86 |
-
.elementor-control-element_sharing_icon_display,
|
87 |
-
.elementor-control-element_sharing_tooltip,
|
88 |
-
.elementor-control-element_custom_field_wrapper_html,
|
89 |
-
.elementor-control-slider_item_bg_size,
|
90 |
-
.elementor-control-element_addcart_variable_txt,
|
91 |
-
.elementor-control-type,
|
92 |
-
.elementor-control-show_last_update_date {
|
93 |
-
margin-bottom: 15px;
|
94 |
-
}
|
95 |
-
|
96 |
-
.elementor-control-slider_content_bg_color,
|
97 |
-
.elementor-control-slider_nav_border_border,
|
98 |
-
.elementor-control-slider_nav_border_radius,
|
99 |
-
.elementor-control-scroll_btn_vr,
|
100 |
-
.elementor-control-pagination_load_more_text,
|
101 |
-
.elementor-control-pagination_finish_text,
|
102 |
-
.elementor-control-pagination_prev_next,
|
103 |
-
.elementor-control-author_transition_duration,
|
104 |
-
.elementor-control-comments_transition_duration,
|
105 |
-
.elementor-control-likes_transition_duration,
|
106 |
-
.elementor-control-sharing_transition_duration,
|
107 |
-
.elementor-control-lightbox_transition_duration,
|
108 |
-
.elementor-control-custom_field1_transition_duration,
|
109 |
-
.elementor-control-custom_field2_transition_duration,
|
110 |
-
.elementor-control-custom_field3_transition_duration,
|
111 |
-
.elementor-control-custom_field4_transition_duration,
|
112 |
-
.elementor-control-filters_transition_duration,
|
113 |
-
.elementor-control-pagination_transition_duration,
|
114 |
-
.elementor-control-element_extra_text_pos,
|
115 |
-
.elementor-control-element_custom_field_wrapper,
|
116 |
-
.elementor-control-overlay_post_link,
|
117 |
-
.elementor-control-read_more_animation_height,
|
118 |
-
.elementor-control-archive_link_transition_duration,
|
119 |
-
.elementor-control-post_info_tax_select,
|
120 |
-
.elementor-control-post_info_link_wrap,
|
121 |
-
.elementor-control-post_info_modified_time,
|
122 |
-
.elementor-control-tabs_sharing_custom_colors,
|
123 |
-
.elementor-control-post_info_show_avatar,
|
124 |
-
.elementor-control-post_info_cf,
|
125 |
-
.elementor-control-pricing_items .elementor-control-price,
|
126 |
-
.elementor-control-pricing_items .elementor-control-feature_text,
|
127 |
-
.elementor-control-pricing_items .elementor-control-btn_text,
|
128 |
-
.elementor-control-divider_style,
|
129 |
-
.elementor-control-filters_pointer,
|
130 |
-
.elementor-control-title_transition_duration,
|
131 |
-
.elementor-control-tax1_transition_duration,
|
132 |
-
.elementor-control-tax2_transition_duration,
|
133 |
-
.elementor-control-filters_transition_duration,
|
134 |
-
.elementor-control-pagination_older_text,
|
135 |
-
.elementor-control-tooltip_position,
|
136 |
-
.elementor-control-post_info_comments_text_1 {
|
137 |
-
padding-top: 15px !important;
|
138 |
-
}
|
139 |
-
|
140 |
-
.elementor-control-post_info_custom_field_video_tutorial {
|
141 |
-
margin-top: 15px;
|
142 |
-
}
|
143 |
-
|
144 |
-
.elementor-control-title_pointer_animation + .elementor-control-title_transition_duration,
|
145 |
-
.elementor-control-tax1_pointer_animation + .elementor-control-tax1_transition_duration,
|
146 |
-
.elementor-control-tax2_pointer_animation + .elementor-control-tax2_transition_duration,
|
147 |
-
.elementor-control-filters_pointer_animation + .elementor-control-filters_transition_duration {
|
148 |
-
padding-top: 0 !important;
|
149 |
-
}
|
150 |
-
|
151 |
-
.elementor-control-pagination_load_more_text {
|
152 |
-
padding-bottom: 0 !important;
|
153 |
-
}
|
154 |
-
|
155 |
-
.elementor-control-filters_transition_duration,
|
156 |
-
.elementor-control-show_last_update_date {
|
157 |
-
padding-top: 0 !important;
|
158 |
-
}
|
159 |
-
|
160 |
-
.elementor-control-animation_divider,
|
161 |
-
.elementor-control-overlay_divider,
|
162 |
-
.elementor-control-slider_item_btn_1_divider,
|
163 |
-
.elementor-control-slider_item_btn_2_divider,
|
164 |
-
.elementor-control-slider_btn_typography_1_divider,
|
165 |
-
.elementor-control-slider_btn_box_shadow_1_divider,
|
166 |
-
.elementor-control-slider_btn_typography_2_divider,
|
167 |
-
.elementor-control-slider_btn_box_shadow_2_divider,
|
168 |
-
.elementor-control-testimonial_title_divider,
|
169 |
-
.elementor-control-social_media_divider,
|
170 |
-
.elementor-control-social_divider_1,
|
171 |
-
.elementor-control-social_divider_2,
|
172 |
-
.elementor-control-social_divider_3,
|
173 |
-
.elementor-control-social_divider_4,
|
174 |
-
.elementor-control-social_divider_5,
|
175 |
-
.elementor-control-custom_field_wrapper_html_divider1,
|
176 |
-
.elementor-control-custom_field_wrapper_html_divider2,
|
177 |
-
.elementor-control-lightbox_shadow_divider {
|
178 |
-
padding: 0 !important;
|
179 |
-
}
|
180 |
-
|
181 |
-
.elementor-control-custom_field_wrapper_html_divider1 hr,
|
182 |
-
.elementor-control-lightbox_shadow_divider hr {
|
183 |
-
height: 1px !important;
|
184 |
-
}
|
185 |
-
|
186 |
-
.elementor-control-element_show_on {
|
187 |
-
padding-top: 15px !important;
|
188 |
-
border-top: 1px solid #d5dadf;
|
189 |
-
}
|
190 |
-
|
191 |
-
[class*="wpr__section_"] ~ .elementor-control-type-number .elementor-control-input-wrapper,
|
192 |
-
[class*="wpr__section_"] ~ .elementor-control-type-repeater .elementor-control-type-number .elementor-control-input-wrapper {
|
193 |
-
max-width: 30% !important;
|
194 |
-
margin-left: auto !important;
|
195 |
-
}
|
196 |
-
|
197 |
-
[class*="wpr__section_"] ~ .elementor-control-type-select .elementor-control-input-wrapper,
|
198 |
-
[class*="wpr__section_"] ~ .elementor-control-type-repeater .elementor-control-type-select .elementor-control-input-wrapper {
|
199 |
-
width: auto !important;
|
200 |
-
min-width: 30% !important;
|
201 |
-
margin-left: auto !important;
|
202 |
-
}
|
203 |
-
|
204 |
-
.elementor-control-submit_preview_changes .elementor-control-input-wrapper {
|
205 |
-
text-align: center !important;
|
206 |
-
}
|
207 |
-
|
208 |
-
.elementor-control-query_manual_related,
|
209 |
-
.elementor-control-query_manual_current {
|
210 |
-
display: none !important;
|
211 |
-
}
|
212 |
-
|
213 |
-
/* Fix Select Inputs */
|
214 |
-
.elementor-control-button_hover_animation .elementor-control-input-wrapper,
|
215 |
-
.elementor-control-front_btn_animation .elementor-control-input-wrapper,
|
216 |
-
.elementor-control-back_btn_animation .elementor-control-input-wrapper,
|
217 |
-
|
218 |
-
.elementor-control-select_template .select2-selection,
|
219 |
-
.elementor-control-switcher_first_select_template .select2-selection,
|
220 |
-
.elementor-control-switcher_second_select_template .select2-selection,
|
221 |
-
.elementor-control-switcher_select_template .select2-selection,
|
222 |
-
.elementor-control-slider_select_template .select2-selection {
|
223 |
-
width: 135px !important;
|
224 |
-
}
|
225 |
-
|
226 |
-
.elementor-control-type-repeater .elementor-control-content > label {
|
227 |
-
display: none !important;
|
228 |
-
}
|
229 |
-
|
230 |
-
|
231 |
-
/*--------------------------------------------------------------
|
232 |
-
== Notification
|
233 |
-
--------------------------------------------------------------*/
|
234 |
-
#wpr-template-settings-notification {
|
235 |
-
position: fixed;
|
236 |
-
left: 40px;
|
237 |
-
bottom: 5px;
|
238 |
-
z-index: 9999;
|
239 |
-
padding: 13px 25px;
|
240 |
-
background: #fff;
|
241 |
-
color: #222;
|
242 |
-
-webkit-box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.3);
|
243 |
-
box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.3);
|
244 |
-
border-radius: 3px;
|
245 |
-
}
|
246 |
-
|
247 |
-
#wpr-template-settings-notification:before {
|
248 |
-
content: "";
|
249 |
-
position: absolute;
|
250 |
-
left: -6px;
|
251 |
-
bottom: 10px;
|
252 |
-
width: 0;
|
253 |
-
height: 0;
|
254 |
-
border-top: 6px solid transparent;
|
255 |
-
border-bottom: 6px solid transparent;
|
256 |
-
border-right-style: solid;
|
257 |
-
border-right-width: 6px;
|
258 |
-
border-right-color: #fff;
|
259 |
-
}
|
260 |
-
|
261 |
-
#wpr-template-settings-notification h4 {
|
262 |
-
margin-bottom: 10px;
|
263 |
-
}
|
264 |
-
|
265 |
-
#wpr-template-settings-notification h4 span {
|
266 |
-
font-size: 14px;
|
267 |
-
vertical-align: super;
|
268 |
-
color: #5f5f5f;
|
269 |
-
}
|
270 |
-
|
271 |
-
#wpr-template-settings-notification h4 i {
|
272 |
-
margin-right: 10px;
|
273 |
-
color: #3db050;
|
274 |
-
font-size: 24px;
|
275 |
-
}
|
276 |
-
|
277 |
-
#wpr-template-settings-notification p {
|
278 |
-
color: #666;
|
279 |
-
font-size: 12px;
|
280 |
-
line-height: 1.5;
|
281 |
-
}
|
282 |
-
|
283 |
-
#wpr-template-settings-notification > i {
|
284 |
-
position: absolute;
|
285 |
-
top: 7px;
|
286 |
-
right: 7px;
|
287 |
-
cursor: pointer;
|
288 |
-
color: #999;
|
289 |
-
}
|
290 |
-
|
291 |
-
.elementor-control-cf7_notice,
|
292 |
-
.elementor-control-wpforms_notice,
|
293 |
-
.elementor-control-ninja_forms_notice,
|
294 |
-
.elementor-control-caldera_notice {
|
295 |
-
color: red;
|
296 |
-
}
|
297 |
-
|
298 |
-
/* Help Button - select with referrals - [href^="https://royal-elementor-addons.com/contact/"] */
|
299 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"] {
|
300 |
-
display: inline-block;
|
301 |
-
padding: 12px 35px;
|
302 |
-
font-size: 13px;
|
303 |
-
font-weight: normal;
|
304 |
-
color: #fff;
|
305 |
-
background: #6A65FF;
|
306 |
-
border-radius: 3px;
|
307 |
-
-webkit-box-shadow: 0 2px 7px 0 rgba(0,0,0,0.3);
|
308 |
-
box-shadow: 0 2px 7px 0 rgba(0,0,0,0.3);
|
309 |
-
letter-spacing: 0.3px;
|
310 |
-
-webkit-transition: all 0.2s ease-in;
|
311 |
-
-o-transition: all 0.2s ease-in;
|
312 |
-
transition: all 0.2s ease-in;
|
313 |
-
}
|
314 |
-
|
315 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover {
|
316 |
-
color: #fff;
|
317 |
-
background: #6A4BFF;
|
318 |
-
}
|
319 |
-
|
320 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"] i {
|
321 |
-
color: #fff;
|
322 |
-
font-size: 14px;
|
323 |
-
vertical-align: top;
|
324 |
-
}
|
325 |
-
|
326 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover i {
|
327 |
-
color: #fff;
|
328 |
-
}
|
329 |
-
|
330 |
-
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover i:before {
|
331 |
-
content: '\e942' !important;
|
332 |
-
}
|
333 |
-
|
334 |
-
.elementor-control-posts_slider_notice .elementor-control-raw-html {
|
335 |
-
font-style: normal !important;
|
336 |
-
}
|
337 |
-
|
338 |
-
.elementor-control-product_notice_widget_info .elementor-control-raw-html {
|
339 |
-
color: red;
|
340 |
-
}
|
341 |
-
|
342 |
-
|
343 |
-
/*--------------------------------------------------------------
|
344 |
-
== Modal Popup Editor
|
345 |
-
--------------------------------------------------------------*/
|
346 |
-
.elementor-editor-wpr-popups .elementor-control-document_settings,
|
347 |
-
.elementor-editor-wpr-popups .elementor-control-post_title,
|
348 |
-
.elementor-editor-wpr-popups .elementor-control-post_status {
|
349 |
-
display: none !important;
|
350 |
-
}
|
351 |
-
|
352 |
-
|
353 |
-
/*--------------------------------------------------------------
|
354 |
-
== Elementor Editor Popup
|
355 |
-
--------------------------------------------------------------*/
|
356 |
-
#wpr-template-editor-popup .dialog-widget-content {
|
357 |
-
width: 90vw;
|
358 |
-
height: 90vh;
|
359 |
-
}
|
360 |
-
|
361 |
-
#wpr-template-editor-popup .dialog-message {
|
362 |
-
padding: 0;
|
363 |
-
width: 100%;
|
364 |
-
height: 100%;
|
365 |
-
}
|
366 |
-
|
367 |
-
#wpr-template-editor-popup .dialog-close-button {
|
368 |
-
font-size: 24px;
|
369 |
-
color: #222;
|
370 |
-
}
|
371 |
-
|
372 |
-
#wpr-template-editor-popup .dialog-header {
|
373 |
-
display: none;
|
374 |
-
}
|
375 |
-
|
376 |
-
#wpr-template-editor-loading {
|
377 |
-
position: absolute;
|
378 |
-
top: 0;
|
379 |
-
left: 0;
|
380 |
-
width: 100%;
|
381 |
-
height: 100%;
|
382 |
-
background: #f1f3f5;
|
383 |
-
z-index: 9999;
|
384 |
-
-webkit-transform: translateZ(0);
|
385 |
-
transform: translateZ(0);
|
386 |
-
display: -webkit-box;
|
387 |
-
display: -ms-flexbox;
|
388 |
-
display: flex;
|
389 |
-
-webkit-box-pack: center;
|
390 |
-
-ms-flex-pack: center;
|
391 |
-
justify-content: center;
|
392 |
-
-webkit-box-align: center;
|
393 |
-
-ms-flex-align: center;
|
394 |
-
align-items: center;
|
395 |
-
}
|
396 |
-
|
397 |
-
#wpr-template-editor-loading .elementor-loader-wrapper {
|
398 |
-
top: auto;
|
399 |
-
left: auto;
|
400 |
-
-webkit-transform: none;
|
401 |
-
-ms-transform: none;
|
402 |
-
transform: none;
|
403 |
-
}
|
404 |
-
|
405 |
-
/* Disable Transitions on Responsive Preview */
|
406 |
-
#elementor-preview-responsive-wrapper {
|
407 |
-
-webkit-transition: none !important;
|
408 |
-
-o-transition: none !important;
|
409 |
-
transition: none !important;
|
410 |
-
}
|
411 |
-
|
412 |
-
|
413 |
-
/*--------------------------------------------------------------
|
414 |
-
== Magazine Grid Layout
|
415 |
-
--------------------------------------------------------------*/
|
416 |
-
.elementor-control-layout_select.elementor-control .elementor-control-field {
|
417 |
-
-webkit-box-orient: vertical !important;
|
418 |
-
-webkit-box-direction: normal !important;
|
419 |
-
-ms-flex-direction: column !important;
|
420 |
-
flex-direction: column !important;
|
421 |
-
-webkit-box-align: start;
|
422 |
-
-ms-flex-align: start;
|
423 |
-
align-items: flex-start;
|
424 |
-
}
|
425 |
-
|
426 |
-
.elementor-control-layout_select.elementor-control .elementor-control-input-wrapper {
|
427 |
-
display: -webkit-box;
|
428 |
-
display: -ms-flexbox;
|
429 |
-
display: flex;
|
430 |
-
width: 100% !important;
|
431 |
-
margin-top: 10px;
|
432 |
-
}
|
433 |
-
|
434 |
-
.elementor-control-layout_select.elementor-control .elementor-choices {
|
435 |
-
-ms-flex-wrap: wrap;
|
436 |
-
flex-wrap: wrap;
|
437 |
-
-webkit-box-align: stretch;
|
438 |
-
-ms-flex-align: stretch;
|
439 |
-
align-items: stretch;
|
440 |
-
width: 100% !important;
|
441 |
-
height: auto;
|
442 |
-
border: 1px solid #dfd5d5;
|
443 |
-
}
|
444 |
-
|
445 |
-
.elementor-control-layout_select.elementor-control .elementor-choices label {
|
446 |
-
width: 33.3%;
|
447 |
-
height: 50px;
|
448 |
-
background-size: 75%;
|
449 |
-
background-position: center center;
|
450 |
-
background-repeat: no-repeat;
|
451 |
-
}
|
452 |
-
|
453 |
-
.elementor-control-layout_select input[type="radio"]:checked + label {
|
454 |
-
border: 2px solid #D30C5C;
|
455 |
-
border-radius: 0 !important;
|
456 |
-
background-color: #ffffff;
|
457 |
-
}
|
458 |
-
|
459 |
-
.elementor-control-layout_select label:nth-child(2) {
|
460 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='15.2' class='st1' width='22.2' height='11.9'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='9.2'/%3E%3C/g%3E%3C/svg%3E");
|
461 |
-
}
|
462 |
-
|
463 |
-
.elementor-control-layout_select label:nth-child(4) {
|
464 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
465 |
-
}
|
466 |
-
|
467 |
-
.elementor-control-layout_select label:nth-child(6) {
|
468 |
-
background: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Cg%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
|
469 |
-
}
|
470 |
-
|
471 |
-
.elementor-control-layout_select label:nth-child(8) {
|
472 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
473 |
-
}
|
474 |
-
|
475 |
-
.elementor-control-layout_select label:nth-child(10) {
|
476 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='13.9' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3Crect x='2.3' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='2.3' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
477 |
-
}
|
478 |
-
|
479 |
-
.elementor-control-layout_select label:nth-child(12) {
|
480 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='28.5' height='22.2'/%3E%3Crect x='31.8' y='12.9' class='st1' width='15.9' height='6.3'/%3E%3Crect x='31.8' y='4.9' class='st1' width='15.9' height='6.8'/%3E%3Crect x='31.8' y='20.3' class='st1' width='15.9' height='6.8'/%3E%3C/g%3E%3C/svg%3E");
|
481 |
-
}
|
482 |
-
|
483 |
-
.elementor-control-layout_select label:nth-child(14) {
|
484 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='13.9' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='2.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
485 |
-
}
|
486 |
-
|
487 |
-
.elementor-control-layout_select label:nth-child(16) {
|
488 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='33.9' height='13.2'/%3E%3Crect x='2.2' y='19.3' class='st1' width='16.4' height='7.8'/%3E%3Crect x='19.7' y='19.3' class='st1' width='16.4' height='7.8'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='13.2'/%3E%3Crect x='37.2' y='19.3' class='st1' width='10.5' height='7.8'/%3E%3C/g%3E%3C/svg%3E");
|
489 |
-
}
|
490 |
-
|
491 |
-
.elementor-control-layout_select label:nth-child(18) {
|
492 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='12.1'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='12.1'/%3E%3Crect x='2.2' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3Crect x='17.8' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3Crect x='33.3' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3C/g%3E%3C/svg%3E");
|
493 |
-
}
|
494 |
-
|
495 |
-
.elementor-control-layout_select label:nth-child(20) {
|
496 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
497 |
-
}
|
498 |
-
|
499 |
-
.elementor-control-layout_select label:nth-child(22) {
|
500 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='14.5' height='22.2'/%3E%3Crect x='33.4' y='4.9' class='st1' width='14.4' height='22.2'/%3E%3Crect x='17.9' y='4.9' class='st1' width='14.4' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
501 |
-
}
|
502 |
-
|
503 |
-
.elementor-control-layout_select label:nth-child(24) {
|
504 |
-
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='10.6' height='22.2'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='14' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
505 |
-
}
|
506 |
-
|
507 |
-
/*--------------------------------------------------------------
|
508 |
-
== Widget Preview and Library buttons
|
509 |
-
--------------------------------------------------------------*/
|
510 |
-
|
511 |
-
.elementor-control-wpr_library_buttons .wpr-forms a:last-child,
|
512 |
-
.elementor-control-wpr_library_buttons .wpr-phone-call a:last-child,
|
513 |
-
.elementor-control-wpr_library_buttons .wpr-back-to-top a:last-child,
|
514 |
-
.elementor-control-wpr_library_buttons .wpr-lottie-animations a:last-child,
|
515 |
-
.elementor-control-wpr_library_buttons .wpr-feature-list a:last-child,
|
516 |
-
.elementor-control-wpr_library_buttons .wpr-reading-progress-bar a:last-child,
|
517 |
-
.elementor-control-wpr_library_buttons .wpr-dual-color-heading a:last-child,
|
518 |
-
.elementor-control-wpr_library_buttons .wpr-flip-carousel a:last-child,
|
519 |
-
.elementor-control-wpr_library_buttons .wpr-advanced-accordion a:last-child,
|
520 |
-
.elementor-control-wpr_library_buttons .wpr-image-accordion a:last-child,
|
521 |
-
.elementor-control-wpr_library_buttons .wpr-mega-menu a:last-child,
|
522 |
-
.elementor-control-wpr_library_buttons .wpr-charts a:last-child {
|
523 |
-
display: none;
|
524 |
-
}
|
525 |
-
|
526 |
-
.elementor-control-wpr_library_buttons {
|
527 |
-
height: 60px;
|
528 |
-
padding: 0;
|
529 |
-
}
|
530 |
-
|
531 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html {
|
532 |
-
padding: 0 10px 10px 10px;
|
533 |
-
border-bottom: 1px solid #efefef;
|
534 |
-
}
|
535 |
-
|
536 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html div {
|
537 |
-
display: -webkit-box;
|
538 |
-
display: -ms-flexbox;
|
539 |
-
display: flex;
|
540 |
-
-webkit-box-pack: center;
|
541 |
-
-ms-flex-pack: center;
|
542 |
-
justify-content: center;
|
543 |
-
}
|
544 |
-
|
545 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a {
|
546 |
-
-webkit-box-flex: 1;
|
547 |
-
-ms-flex-positive: 1;
|
548 |
-
flex-grow: 1;
|
549 |
-
padding: 10px 15px;
|
550 |
-
border-radius: 3px;
|
551 |
-
/*box-shadow: 1px 2px 5px 0 rgba(0,0,0,0.2);*/
|
552 |
-
white-space: nowrap;
|
553 |
-
overflow: hidden;
|
554 |
-
-o-text-overflow: ellipsis;
|
555 |
-
text-overflow: ellipsis;
|
556 |
-
text-align: center;
|
557 |
-
}
|
558 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a:first-child {
|
559 |
-
background-color: #1CB4E4;
|
560 |
-
color: #fff;
|
561 |
-
margin-right: 3px;
|
562 |
-
}
|
563 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a:last-child {
|
564 |
-
margin-left: 3px;
|
565 |
-
background-color: #6A65FF;
|
566 |
-
color: #fff;
|
567 |
-
}
|
568 |
-
|
569 |
-
.elementor-control-wpr_library_buttons .elementor-control-raw-html > a {
|
570 |
-
display: block;
|
571 |
-
margin-top: 10px;
|
572 |
-
line-height: 20px;
|
573 |
-
color: #777;
|
574 |
-
border: none !important;
|
575 |
-
}
|
576 |
-
|
577 |
-
.elementor-section-title > a {
|
578 |
-
top: 10px;
|
579 |
-
right: 20px;
|
580 |
-
position: absolute;
|
581 |
-
line-height: 20px;
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
|
626 |
-
|
627 |
-
|
628 |
-
|
629 |
-
|
630 |
-
line-height:
|
631 |
-
|
632 |
-
}
|
633 |
-
|
634 |
-
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
-
|
644 |
-
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
-
|
650 |
-
|
651 |
-
.elementor-control-layout_select .elementor-choices label
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
.
|
669 |
-
|
670 |
-
|
671 |
-
|
672 |
-
.elementor-control.elementor-control-
|
673 |
-
.elementor-control.elementor-control-
|
674 |
-
.elementor-control.elementor-control-
|
675 |
-
.elementor-control.elementor-control-
|
676 |
-
.elementor-control.elementor-control-
|
677 |
-
.elementor-control.elementor-control-
|
678 |
-
.elementor-control.elementor-control-
|
679 |
-
.elementor-control.elementor-control-
|
680 |
-
.elementor-control.elementor-control-
|
681 |
-
.elementor-control.elementor-control-
|
682 |
-
.elementor-control.elementor-control-
|
683 |
-
.elementor-control.elementor-control-
|
684 |
-
.elementor-control.elementor-control-
|
685 |
-
.elementor-control.elementor-control-
|
686 |
-
.elementor-control.elementor-control-
|
687 |
-
.elementor-control.elementor-control-
|
688 |
-
.elementor-control.elementor-control-
|
689 |
-
.elementor-control.elementor-control-
|
690 |
-
.elementor-control.elementor-control-
|
691 |
-
.elementor-control.elementor-control-
|
692 |
-
.elementor-control.elementor-control-
|
693 |
-
.elementor-control.elementor-control-
|
694 |
-
.elementor-control.elementor-control-
|
695 |
-
.elementor-control.elementor-control-
|
696 |
-
.elementor-control.elementor-control-
|
697 |
-
.elementor-control.elementor-control-
|
698 |
-
.elementor-control.elementor-control-
|
699 |
-
.elementor-control.elementor-control-
|
700 |
-
.elementor-control.elementor-control-
|
701 |
-
.elementor-control.elementor-control-
|
702 |
-
.elementor-control.elementor-control-
|
703 |
-
.elementor-control.elementor-control-
|
704 |
-
.elementor-control.elementor-control-
|
705 |
-
.elementor-control.elementor-control-
|
706 |
-
.elementor-control.elementor-control-
|
707 |
-
.elementor-control.elementor-control-
|
708 |
-
.elementor-control.elementor-control-
|
709 |
-
.elementor-control.elementor-control-
|
710 |
-
.elementor-control.elementor-control-
|
711 |
-
.elementor-control.elementor-control-
|
712 |
-
.elementor-control.elementor-control-
|
713 |
-
.elementor-control.elementor-control-
|
714 |
-
.elementor-control.elementor-control-
|
715 |
-
.elementor-control.elementor-control-
|
716 |
-
.elementor-control.elementor-control-
|
717 |
-
.elementor-control.elementor-control-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
.elementor-control
|
722 |
-
.elementor-control
|
723 |
-
.elementor-control
|
724 |
-
.elementor-control
|
725 |
-
|
726 |
-
|
727 |
-
|
728 |
-
.elementor-control-
|
729 |
-
.elementor-control-
|
730 |
-
.elementor-control-
|
731 |
-
.elementor-control-
|
732 |
-
.elementor-control-
|
733 |
-
.elementor-control-
|
734 |
-
.elementor-control-
|
735 |
-
.elementor-control-
|
736 |
-
.elementor-control-
|
737 |
-
.elementor-control-
|
738 |
-
.elementor-control-
|
739 |
-
.elementor-control-
|
740 |
-
.elementor-control-
|
741 |
-
.elementor-control-
|
742 |
-
.elementor-control-
|
743 |
-
.elementor-control-
|
744 |
-
.elementor-control-
|
745 |
-
.elementor-control-
|
746 |
-
.elementor-control-
|
747 |
-
.elementor-control-
|
748 |
-
.elementor-control-
|
749 |
-
.elementor-control-
|
750 |
-
.elementor-control-
|
751 |
-
.elementor-control-
|
752 |
-
.elementor-control-
|
753 |
-
.elementor-control-
|
754 |
-
.elementor-control-
|
755 |
-
.elementor-control-
|
756 |
-
.elementor-control-
|
757 |
-
.elementor-control-
|
758 |
-
.elementor-control-
|
759 |
-
.elementor-control-
|
760 |
-
.elementor-control-
|
761 |
-
.elementor-control-
|
762 |
-
.elementor-control-
|
763 |
-
.elementor-control
|
764 |
-
.elementor-control
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
.elementor-control.
|
770 |
-
.elementor-control.elementor-control-
|
771 |
-
.elementor-control.elementor-control-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
.elementor-control
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
.elementor-control-pro_features_section .elementor-section-title
|
790 |
-
|
791 |
-
|
792 |
-
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
.
|
817 |
-
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
|
825 |
-
|
826 |
-
color: #fff;
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
|
854 |
-
|
855 |
-
|
856 |
-
|
857 |
-
|
858 |
-
|
859 |
-
}
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
|
864 |
-
|
865 |
-
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
|
874 |
-
|
875 |
-
|
876 |
-
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
-
|
883 |
-
|
884 |
-
|
885 |
-
|
886 |
-
-
|
887 |
-
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
|
892 |
-
|
893 |
-
|
894 |
-
|
895 |
-
.
|
896 |
-
|
897 |
-
|
898 |
-
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
|
924 |
-
|
925 |
-
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
|
933 |
-
|
934 |
-
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
-
|
952 |
-
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
|
958 |
-
|
959 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
960 |
}
|
1 |
+
/*--------------------------------------------------------------
|
2 |
+
== General
|
3 |
+
--------------------------------------------------------------*/
|
4 |
+
.wpr-elementor-hidden-control {
|
5 |
+
overflow: hidden;
|
6 |
+
width: 0 !important;
|
7 |
+
height: 0 !important;
|
8 |
+
padding: 0 !important;
|
9 |
+
margin: 0 !important;
|
10 |
+
visibility: hidden !important;
|
11 |
+
opacity: 0 !important;
|
12 |
+
}
|
13 |
+
|
14 |
+
|
15 |
+
/*--------------------------------------------------------------
|
16 |
+
== WPR Widgets
|
17 |
+
--------------------------------------------------------------*/
|
18 |
+
.elementor-panel .wpr-icon:after {
|
19 |
+
content: 'R';
|
20 |
+
display: block;
|
21 |
+
position: absolute;
|
22 |
+
top: 3px;
|
23 |
+
right: 3px;
|
24 |
+
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
25 |
+
font-size: 10px;
|
26 |
+
font-weight: bold;
|
27 |
+
color: #ffffff;
|
28 |
+
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
29 |
+
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
30 |
+
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
31 |
+
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
32 |
+
box-shadow: 0 0 2px 2px #b8c7ff;
|
33 |
+
width: 19px;
|
34 |
+
height: 19px;
|
35 |
+
line-height: 19px;
|
36 |
+
border-radius: 15px;
|
37 |
+
margin: 3px;
|
38 |
+
}
|
39 |
+
|
40 |
+
.elementor-panel .elementor-element .icon {
|
41 |
+
position: relative !important;
|
42 |
+
}
|
43 |
+
|
44 |
+
.elementor-element--promotion .wpr-icon:after {
|
45 |
+
top: 22px;
|
46 |
+
right: -1px;
|
47 |
+
opacity: 0.7;
|
48 |
+
}
|
49 |
+
|
50 |
+
#elementor-element--promotion__dialog .dialog-button {
|
51 |
+
text-align: center;
|
52 |
+
}
|
53 |
+
|
54 |
+
.elementor-control-type-section[class*="elementor-control-wpr_section_"]:after {
|
55 |
+
content: 'R';
|
56 |
+
display: block;
|
57 |
+
position: absolute;
|
58 |
+
top: 7px;
|
59 |
+
right: 7px;
|
60 |
+
font-family: Roboto,Arial,Helvetica,Verdana,sans-serif;
|
61 |
+
font-size: 10px;
|
62 |
+
font-weight: bold;
|
63 |
+
color: #ffffff;
|
64 |
+
background-image: -o-linear-gradient(#6A4BFF, #7E94FE);
|
65 |
+
background-image: -webkit-gradient(linear, left top, left bottom, from(#6A4BFF), to(#7E94FE));
|
66 |
+
background-image: linear-gradient(#6A4BFF, #7E94FE);
|
67 |
+
-webkit-box-shadow: 0 0 2px 2px #b8c7ff;
|
68 |
+
box-shadow: 0 0 2px 2px #b8c7ff;
|
69 |
+
width: 19px;
|
70 |
+
height: 19px;
|
71 |
+
line-height: 19px;
|
72 |
+
border-radius: 15px;
|
73 |
+
margin: 3px;
|
74 |
+
text-align: center;
|
75 |
+
}
|
76 |
+
|
77 |
+
/*--------------------------------------------------------------
|
78 |
+
== Adjustments
|
79 |
+
--------------------------------------------------------------*/
|
80 |
+
.elementor-control-element_select,
|
81 |
+
.elementor-control-element_align_hr,
|
82 |
+
.elementor-control-element_read_more_text,
|
83 |
+
.elementor-control-element_tax_sep,
|
84 |
+
.elementor-control-element_sharing_icon_6,
|
85 |
+
.elementor-control-element_sharing_trigger_direction,
|
86 |
+
.elementor-control-element_sharing_icon_display,
|
87 |
+
.elementor-control-element_sharing_tooltip,
|
88 |
+
.elementor-control-element_custom_field_wrapper_html,
|
89 |
+
.elementor-control-slider_item_bg_size,
|
90 |
+
.elementor-control-element_addcart_variable_txt,
|
91 |
+
.elementor-control-type,
|
92 |
+
.elementor-control-show_last_update_date {
|
93 |
+
margin-bottom: 15px;
|
94 |
+
}
|
95 |
+
|
96 |
+
.elementor-control-slider_content_bg_color,
|
97 |
+
.elementor-control-slider_nav_border_border,
|
98 |
+
.elementor-control-slider_nav_border_radius,
|
99 |
+
.elementor-control-scroll_btn_vr,
|
100 |
+
.elementor-control-pagination_load_more_text,
|
101 |
+
.elementor-control-pagination_finish_text,
|
102 |
+
.elementor-control-pagination_prev_next,
|
103 |
+
.elementor-control-author_transition_duration,
|
104 |
+
.elementor-control-comments_transition_duration,
|
105 |
+
.elementor-control-likes_transition_duration,
|
106 |
+
.elementor-control-sharing_transition_duration,
|
107 |
+
.elementor-control-lightbox_transition_duration,
|
108 |
+
.elementor-control-custom_field1_transition_duration,
|
109 |
+
.elementor-control-custom_field2_transition_duration,
|
110 |
+
.elementor-control-custom_field3_transition_duration,
|
111 |
+
.elementor-control-custom_field4_transition_duration,
|
112 |
+
.elementor-control-filters_transition_duration,
|
113 |
+
.elementor-control-pagination_transition_duration,
|
114 |
+
.elementor-control-element_extra_text_pos,
|
115 |
+
.elementor-control-element_custom_field_wrapper,
|
116 |
+
.elementor-control-overlay_post_link,
|
117 |
+
.elementor-control-read_more_animation_height,
|
118 |
+
.elementor-control-archive_link_transition_duration,
|
119 |
+
.elementor-control-post_info_tax_select,
|
120 |
+
.elementor-control-post_info_link_wrap,
|
121 |
+
.elementor-control-post_info_modified_time,
|
122 |
+
.elementor-control-tabs_sharing_custom_colors,
|
123 |
+
.elementor-control-post_info_show_avatar,
|
124 |
+
.elementor-control-post_info_cf,
|
125 |
+
.elementor-control-pricing_items .elementor-control-price,
|
126 |
+
.elementor-control-pricing_items .elementor-control-feature_text,
|
127 |
+
.elementor-control-pricing_items .elementor-control-btn_text,
|
128 |
+
.elementor-control-divider_style,
|
129 |
+
.elementor-control-filters_pointer,
|
130 |
+
.elementor-control-title_transition_duration,
|
131 |
+
.elementor-control-tax1_transition_duration,
|
132 |
+
.elementor-control-tax2_transition_duration,
|
133 |
+
.elementor-control-filters_transition_duration,
|
134 |
+
.elementor-control-pagination_older_text,
|
135 |
+
.elementor-control-tooltip_position,
|
136 |
+
.elementor-control-post_info_comments_text_1 {
|
137 |
+
padding-top: 15px !important;
|
138 |
+
}
|
139 |
+
|
140 |
+
.elementor-control-post_info_custom_field_video_tutorial {
|
141 |
+
margin-top: 15px;
|
142 |
+
}
|
143 |
+
|
144 |
+
.elementor-control-title_pointer_animation + .elementor-control-title_transition_duration,
|
145 |
+
.elementor-control-tax1_pointer_animation + .elementor-control-tax1_transition_duration,
|
146 |
+
.elementor-control-tax2_pointer_animation + .elementor-control-tax2_transition_duration,
|
147 |
+
.elementor-control-filters_pointer_animation + .elementor-control-filters_transition_duration {
|
148 |
+
padding-top: 0 !important;
|
149 |
+
}
|
150 |
+
|
151 |
+
.elementor-control-pagination_load_more_text {
|
152 |
+
padding-bottom: 0 !important;
|
153 |
+
}
|
154 |
+
|
155 |
+
.elementor-control-filters_transition_duration,
|
156 |
+
.elementor-control-show_last_update_date {
|
157 |
+
padding-top: 0 !important;
|
158 |
+
}
|
159 |
+
|
160 |
+
.elementor-control-animation_divider,
|
161 |
+
.elementor-control-overlay_divider,
|
162 |
+
.elementor-control-slider_item_btn_1_divider,
|
163 |
+
.elementor-control-slider_item_btn_2_divider,
|
164 |
+
.elementor-control-slider_btn_typography_1_divider,
|
165 |
+
.elementor-control-slider_btn_box_shadow_1_divider,
|
166 |
+
.elementor-control-slider_btn_typography_2_divider,
|
167 |
+
.elementor-control-slider_btn_box_shadow_2_divider,
|
168 |
+
.elementor-control-testimonial_title_divider,
|
169 |
+
.elementor-control-social_media_divider,
|
170 |
+
.elementor-control-social_divider_1,
|
171 |
+
.elementor-control-social_divider_2,
|
172 |
+
.elementor-control-social_divider_3,
|
173 |
+
.elementor-control-social_divider_4,
|
174 |
+
.elementor-control-social_divider_5,
|
175 |
+
.elementor-control-custom_field_wrapper_html_divider1,
|
176 |
+
.elementor-control-custom_field_wrapper_html_divider2,
|
177 |
+
.elementor-control-lightbox_shadow_divider {
|
178 |
+
padding: 0 !important;
|
179 |
+
}
|
180 |
+
|
181 |
+
.elementor-control-custom_field_wrapper_html_divider1 hr,
|
182 |
+
.elementor-control-lightbox_shadow_divider hr {
|
183 |
+
height: 1px !important;
|
184 |
+
}
|
185 |
+
|
186 |
+
.elementor-control-element_show_on {
|
187 |
+
padding-top: 15px !important;
|
188 |
+
border-top: 1px solid #d5dadf;
|
189 |
+
}
|
190 |
+
|
191 |
+
[class*="wpr__section_"] ~ .elementor-control-type-number .elementor-control-input-wrapper,
|
192 |
+
[class*="wpr__section_"] ~ .elementor-control-type-repeater .elementor-control-type-number .elementor-control-input-wrapper {
|
193 |
+
max-width: 30% !important;
|
194 |
+
margin-left: auto !important;
|
195 |
+
}
|
196 |
+
|
197 |
+
[class*="wpr__section_"] ~ .elementor-control-type-select .elementor-control-input-wrapper,
|
198 |
+
[class*="wpr__section_"] ~ .elementor-control-type-repeater .elementor-control-type-select .elementor-control-input-wrapper {
|
199 |
+
width: auto !important;
|
200 |
+
min-width: 30% !important;
|
201 |
+
margin-left: auto !important;
|
202 |
+
}
|
203 |
+
|
204 |
+
.elementor-control-submit_preview_changes .elementor-control-input-wrapper {
|
205 |
+
text-align: center !important;
|
206 |
+
}
|
207 |
+
|
208 |
+
.elementor-control-query_manual_related,
|
209 |
+
.elementor-control-query_manual_current {
|
210 |
+
display: none !important;
|
211 |
+
}
|
212 |
+
|
213 |
+
/* Fix Select Inputs */
|
214 |
+
.elementor-control-button_hover_animation .elementor-control-input-wrapper,
|
215 |
+
.elementor-control-front_btn_animation .elementor-control-input-wrapper,
|
216 |
+
.elementor-control-back_btn_animation .elementor-control-input-wrapper,
|
217 |
+
|
218 |
+
.elementor-control-select_template .select2-selection,
|
219 |
+
.elementor-control-switcher_first_select_template .select2-selection,
|
220 |
+
.elementor-control-switcher_second_select_template .select2-selection,
|
221 |
+
.elementor-control-switcher_select_template .select2-selection,
|
222 |
+
.elementor-control-slider_select_template .select2-selection {
|
223 |
+
width: 135px !important;
|
224 |
+
}
|
225 |
+
|
226 |
+
.elementor-control-type-repeater .elementor-control-content > label {
|
227 |
+
display: none !important;
|
228 |
+
}
|
229 |
+
|
230 |
+
|
231 |
+
/*--------------------------------------------------------------
|
232 |
+
== Notification
|
233 |
+
--------------------------------------------------------------*/
|
234 |
+
#wpr-template-settings-notification {
|
235 |
+
position: fixed;
|
236 |
+
left: 40px;
|
237 |
+
bottom: 5px;
|
238 |
+
z-index: 9999;
|
239 |
+
padding: 13px 25px;
|
240 |
+
background: #fff;
|
241 |
+
color: #222;
|
242 |
+
-webkit-box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.3);
|
243 |
+
box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.3);
|
244 |
+
border-radius: 3px;
|
245 |
+
}
|
246 |
+
|
247 |
+
#wpr-template-settings-notification:before {
|
248 |
+
content: "";
|
249 |
+
position: absolute;
|
250 |
+
left: -6px;
|
251 |
+
bottom: 10px;
|
252 |
+
width: 0;
|
253 |
+
height: 0;
|
254 |
+
border-top: 6px solid transparent;
|
255 |
+
border-bottom: 6px solid transparent;
|
256 |
+
border-right-style: solid;
|
257 |
+
border-right-width: 6px;
|
258 |
+
border-right-color: #fff;
|
259 |
+
}
|
260 |
+
|
261 |
+
#wpr-template-settings-notification h4 {
|
262 |
+
margin-bottom: 10px;
|
263 |
+
}
|
264 |
+
|
265 |
+
#wpr-template-settings-notification h4 span {
|
266 |
+
font-size: 14px;
|
267 |
+
vertical-align: super;
|
268 |
+
color: #5f5f5f;
|
269 |
+
}
|
270 |
+
|
271 |
+
#wpr-template-settings-notification h4 i {
|
272 |
+
margin-right: 10px;
|
273 |
+
color: #3db050;
|
274 |
+
font-size: 24px;
|
275 |
+
}
|
276 |
+
|
277 |
+
#wpr-template-settings-notification p {
|
278 |
+
color: #666;
|
279 |
+
font-size: 12px;
|
280 |
+
line-height: 1.5;
|
281 |
+
}
|
282 |
+
|
283 |
+
#wpr-template-settings-notification > i {
|
284 |
+
position: absolute;
|
285 |
+
top: 7px;
|
286 |
+
right: 7px;
|
287 |
+
cursor: pointer;
|
288 |
+
color: #999;
|
289 |
+
}
|
290 |
+
|
291 |
+
.elementor-control-cf7_notice,
|
292 |
+
.elementor-control-wpforms_notice,
|
293 |
+
.elementor-control-ninja_forms_notice,
|
294 |
+
.elementor-control-caldera_notice {
|
295 |
+
color: red;
|
296 |
+
}
|
297 |
+
|
298 |
+
/* Help Button - select with referrals - [href^="https://royal-elementor-addons.com/contact/"] */
|
299 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"] {
|
300 |
+
display: inline-block;
|
301 |
+
padding: 12px 35px;
|
302 |
+
font-size: 13px;
|
303 |
+
font-weight: normal;
|
304 |
+
color: #fff;
|
305 |
+
background: #6A65FF;
|
306 |
+
border-radius: 3px;
|
307 |
+
-webkit-box-shadow: 0 2px 7px 0 rgba(0,0,0,0.3);
|
308 |
+
box-shadow: 0 2px 7px 0 rgba(0,0,0,0.3);
|
309 |
+
letter-spacing: 0.3px;
|
310 |
+
-webkit-transition: all 0.2s ease-in;
|
311 |
+
-o-transition: all 0.2s ease-in;
|
312 |
+
transition: all 0.2s ease-in;
|
313 |
+
}
|
314 |
+
|
315 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover {
|
316 |
+
color: #fff;
|
317 |
+
background: #6A4BFF;
|
318 |
+
}
|
319 |
+
|
320 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"] i {
|
321 |
+
color: #fff;
|
322 |
+
font-size: 14px;
|
323 |
+
vertical-align: top;
|
324 |
+
}
|
325 |
+
|
326 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover i {
|
327 |
+
color: #fff;
|
328 |
+
}
|
329 |
+
|
330 |
+
#elementor-panel__editor__help__link[href^="https://wordpress.org/support/plugin/royal-elementor-addons/"]:hover i:before {
|
331 |
+
content: '\e942' !important;
|
332 |
+
}
|
333 |
+
|
334 |
+
.elementor-control-posts_slider_notice .elementor-control-raw-html {
|
335 |
+
font-style: normal !important;
|
336 |
+
}
|
337 |
+
|
338 |
+
.elementor-control-product_notice_widget_info .elementor-control-raw-html {
|
339 |
+
color: red;
|
340 |
+
}
|
341 |
+
|
342 |
+
|
343 |
+
/*--------------------------------------------------------------
|
344 |
+
== Modal Popup Editor
|
345 |
+
--------------------------------------------------------------*/
|
346 |
+
.elementor-editor-wpr-popups .elementor-control-document_settings,
|
347 |
+
.elementor-editor-wpr-popups .elementor-control-post_title,
|
348 |
+
.elementor-editor-wpr-popups .elementor-control-post_status {
|
349 |
+
display: none !important;
|
350 |
+
}
|
351 |
+
|
352 |
+
|
353 |
+
/*--------------------------------------------------------------
|
354 |
+
== Elementor Editor Popup
|
355 |
+
--------------------------------------------------------------*/
|
356 |
+
#wpr-template-editor-popup .dialog-widget-content {
|
357 |
+
width: 90vw;
|
358 |
+
height: 90vh;
|
359 |
+
}
|
360 |
+
|
361 |
+
#wpr-template-editor-popup .dialog-message {
|
362 |
+
padding: 0;
|
363 |
+
width: 100%;
|
364 |
+
height: 100%;
|
365 |
+
}
|
366 |
+
|
367 |
+
#wpr-template-editor-popup .dialog-close-button {
|
368 |
+
font-size: 24px;
|
369 |
+
color: #222;
|
370 |
+
}
|
371 |
+
|
372 |
+
#wpr-template-editor-popup .dialog-header {
|
373 |
+
display: none;
|
374 |
+
}
|
375 |
+
|
376 |
+
#wpr-template-editor-loading {
|
377 |
+
position: absolute;
|
378 |
+
top: 0;
|
379 |
+
left: 0;
|
380 |
+
width: 100%;
|
381 |
+
height: 100%;
|
382 |
+
background: #f1f3f5;
|
383 |
+
z-index: 9999;
|
384 |
+
-webkit-transform: translateZ(0);
|
385 |
+
transform: translateZ(0);
|
386 |
+
display: -webkit-box;
|
387 |
+
display: -ms-flexbox;
|
388 |
+
display: flex;
|
389 |
+
-webkit-box-pack: center;
|
390 |
+
-ms-flex-pack: center;
|
391 |
+
justify-content: center;
|
392 |
+
-webkit-box-align: center;
|
393 |
+
-ms-flex-align: center;
|
394 |
+
align-items: center;
|
395 |
+
}
|
396 |
+
|
397 |
+
#wpr-template-editor-loading .elementor-loader-wrapper {
|
398 |
+
top: auto;
|
399 |
+
left: auto;
|
400 |
+
-webkit-transform: none;
|
401 |
+
-ms-transform: none;
|
402 |
+
transform: none;
|
403 |
+
}
|
404 |
+
|
405 |
+
/* Disable Transitions on Responsive Preview */
|
406 |
+
#elementor-preview-responsive-wrapper {
|
407 |
+
-webkit-transition: none !important;
|
408 |
+
-o-transition: none !important;
|
409 |
+
transition: none !important;
|
410 |
+
}
|
411 |
+
|
412 |
+
|
413 |
+
/*--------------------------------------------------------------
|
414 |
+
== Magazine Grid Layout
|
415 |
+
--------------------------------------------------------------*/
|
416 |
+
.elementor-control-layout_select.elementor-control .elementor-control-field {
|
417 |
+
-webkit-box-orient: vertical !important;
|
418 |
+
-webkit-box-direction: normal !important;
|
419 |
+
-ms-flex-direction: column !important;
|
420 |
+
flex-direction: column !important;
|
421 |
+
-webkit-box-align: start;
|
422 |
+
-ms-flex-align: start;
|
423 |
+
align-items: flex-start;
|
424 |
+
}
|
425 |
+
|
426 |
+
.elementor-control-layout_select.elementor-control .elementor-control-input-wrapper {
|
427 |
+
display: -webkit-box;
|
428 |
+
display: -ms-flexbox;
|
429 |
+
display: flex;
|
430 |
+
width: 100% !important;
|
431 |
+
margin-top: 10px;
|
432 |
+
}
|
433 |
+
|
434 |
+
.elementor-control-layout_select.elementor-control .elementor-choices {
|
435 |
+
-ms-flex-wrap: wrap;
|
436 |
+
flex-wrap: wrap;
|
437 |
+
-webkit-box-align: stretch;
|
438 |
+
-ms-flex-align: stretch;
|
439 |
+
align-items: stretch;
|
440 |
+
width: 100% !important;
|
441 |
+
height: auto;
|
442 |
+
border: 1px solid #dfd5d5;
|
443 |
+
}
|
444 |
+
|
445 |
+
.elementor-control-layout_select.elementor-control .elementor-choices label {
|
446 |
+
width: 33.3%;
|
447 |
+
height: 50px;
|
448 |
+
background-size: 75%;
|
449 |
+
background-position: center center;
|
450 |
+
background-repeat: no-repeat;
|
451 |
+
}
|
452 |
+
|
453 |
+
.elementor-control-layout_select input[type="radio"]:checked + label {
|
454 |
+
border: 2px solid #D30C5C;
|
455 |
+
border-radius: 0 !important;
|
456 |
+
background-color: #ffffff;
|
457 |
+
}
|
458 |
+
|
459 |
+
.elementor-control-layout_select label:nth-child(2) {
|
460 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='15.2' class='st1' width='22.2' height='11.9'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='9.2'/%3E%3C/g%3E%3C/svg%3E");
|
461 |
+
}
|
462 |
+
|
463 |
+
.elementor-control-layout_select label:nth-child(4) {
|
464 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
465 |
+
}
|
466 |
+
|
467 |
+
.elementor-control-layout_select label:nth-child(6) {
|
468 |
+
background: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Cg%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
|
469 |
+
}
|
470 |
+
|
471 |
+
.elementor-control-layout_select label:nth-child(8) {
|
472 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
473 |
+
}
|
474 |
+
|
475 |
+
.elementor-control-layout_select label:nth-child(10) {
|
476 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='13.9' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='37.2' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3Crect x='2.3' y='16.6' class='st1' width='10.5' height='10.5'/%3E%3Crect x='2.3' y='4.9' class='st1' width='10.5' height='10.5'/%3E%3C/g%3E%3C/svg%3E");
|
477 |
+
}
|
478 |
+
|
479 |
+
.elementor-control-layout_select label:nth-child(12) {
|
480 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='28.5' height='22.2'/%3E%3Crect x='31.8' y='12.9' class='st1' width='15.9' height='6.3'/%3E%3Crect x='31.8' y='4.9' class='st1' width='15.9' height='6.8'/%3E%3Crect x='31.8' y='20.3' class='st1' width='15.9' height='6.8'/%3E%3C/g%3E%3C/svg%3E");
|
481 |
+
}
|
482 |
+
|
483 |
+
.elementor-control-layout_select label:nth-child(14) {
|
484 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='13.9' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='2.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
485 |
+
}
|
486 |
+
|
487 |
+
.elementor-control-layout_select label:nth-child(16) {
|
488 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='33.9' height='13.2'/%3E%3Crect x='2.2' y='19.3' class='st1' width='16.4' height='7.8'/%3E%3Crect x='19.7' y='19.3' class='st1' width='16.4' height='7.8'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='13.2'/%3E%3Crect x='37.2' y='19.3' class='st1' width='10.5' height='7.8'/%3E%3C/g%3E%3C/svg%3E");
|
489 |
+
}
|
490 |
+
|
491 |
+
.elementor-control-layout_select label:nth-child(18) {
|
492 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='12.1'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='12.1'/%3E%3Crect x='2.2' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3Crect x='17.8' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3Crect x='33.3' y='18.2' class='st1' width='14.4' height='8.9'/%3E%3C/g%3E%3C/svg%3E");
|
493 |
+
}
|
494 |
+
|
495 |
+
.elementor-control-layout_select label:nth-child(20) {
|
496 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='22.2' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
497 |
+
}
|
498 |
+
|
499 |
+
.elementor-control-layout_select label:nth-child(22) {
|
500 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='14.5' height='22.2'/%3E%3Crect x='33.4' y='4.9' class='st1' width='14.4' height='22.2'/%3E%3Crect x='17.9' y='4.9' class='st1' width='14.4' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
501 |
+
}
|
502 |
+
|
503 |
+
.elementor-control-layout_select label:nth-child(24) {
|
504 |
+
background-image: url("data:image/svg+xml;charset=utf8,%3C?xml version='1.0' encoding='utf-8'?%3E%3C!-- Generator: Adobe Illustrator 19.2.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) --%3E%3Csvg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' x='0px' y='0px' viewBox='0 0 50 32' style='enable-background:new 0 0 50 32;' xml:space='preserve'%3E%3Cstyle type='text/css'%3E .st0{fill:%23FFFFFF;} .st1{fill:%23C2C1C0;} %3C/style%3E%3Cg id='Background'%3E%3Crect class='st0' width='50' height='32'/%3E%3C/g%3E%3Cg id='Layer_1'%3E%3Crect x='2.2' y='4.9' class='st1' width='10.6' height='22.2'/%3E%3Crect x='37.2' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='25.6' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3Crect x='14' y='4.9' class='st1' width='10.5' height='22.2'/%3E%3C/g%3E%3C/svg%3E");
|
505 |
+
}
|
506 |
+
|
507 |
+
/*--------------------------------------------------------------
|
508 |
+
== Widget Preview and Library buttons
|
509 |
+
--------------------------------------------------------------*/
|
510 |
+
|
511 |
+
.elementor-control-wpr_library_buttons .wpr-forms a:last-child,
|
512 |
+
.elementor-control-wpr_library_buttons .wpr-phone-call a:last-child,
|
513 |
+
.elementor-control-wpr_library_buttons .wpr-back-to-top a:last-child,
|
514 |
+
.elementor-control-wpr_library_buttons .wpr-lottie-animations a:last-child,
|
515 |
+
.elementor-control-wpr_library_buttons .wpr-feature-list a:last-child,
|
516 |
+
.elementor-control-wpr_library_buttons .wpr-reading-progress-bar a:last-child,
|
517 |
+
.elementor-control-wpr_library_buttons .wpr-dual-color-heading a:last-child,
|
518 |
+
.elementor-control-wpr_library_buttons .wpr-flip-carousel a:last-child,
|
519 |
+
.elementor-control-wpr_library_buttons .wpr-advanced-accordion a:last-child,
|
520 |
+
.elementor-control-wpr_library_buttons .wpr-image-accordion a:last-child,
|
521 |
+
.elementor-control-wpr_library_buttons .wpr-mega-menu a:last-child,
|
522 |
+
.elementor-control-wpr_library_buttons .wpr-charts a:last-child {
|
523 |
+
display: none;
|
524 |
+
}
|
525 |
+
|
526 |
+
.elementor-control-wpr_library_buttons {
|
527 |
+
height: 60px;
|
528 |
+
padding: 0;
|
529 |
+
}
|
530 |
+
|
531 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html {
|
532 |
+
padding: 0 10px 10px 10px;
|
533 |
+
border-bottom: 1px solid #efefef;
|
534 |
+
}
|
535 |
+
|
536 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html div {
|
537 |
+
display: -webkit-box;
|
538 |
+
display: -ms-flexbox;
|
539 |
+
display: flex;
|
540 |
+
-webkit-box-pack: center;
|
541 |
+
-ms-flex-pack: center;
|
542 |
+
justify-content: center;
|
543 |
+
}
|
544 |
+
|
545 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a {
|
546 |
+
-webkit-box-flex: 1;
|
547 |
+
-ms-flex-positive: 1;
|
548 |
+
flex-grow: 1;
|
549 |
+
padding: 10px 15px;
|
550 |
+
border-radius: 3px;
|
551 |
+
/*box-shadow: 1px 2px 5px 0 rgba(0,0,0,0.2);*/
|
552 |
+
white-space: nowrap;
|
553 |
+
overflow: hidden;
|
554 |
+
-o-text-overflow: ellipsis;
|
555 |
+
text-overflow: ellipsis;
|
556 |
+
text-align: center;
|
557 |
+
}
|
558 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a:first-child {
|
559 |
+
background-color: #1CB4E4;
|
560 |
+
color: #fff;
|
561 |
+
margin-right: 3px;
|
562 |
+
}
|
563 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html div a:last-child {
|
564 |
+
margin-left: 3px;
|
565 |
+
background-color: #6A65FF;
|
566 |
+
color: #fff;
|
567 |
+
}
|
568 |
+
|
569 |
+
.elementor-control-wpr_library_buttons .elementor-control-raw-html > a {
|
570 |
+
display: block;
|
571 |
+
margin-top: 10px;
|
572 |
+
line-height: 20px;
|
573 |
+
color: #777;
|
574 |
+
border: none !important;
|
575 |
+
}
|
576 |
+
|
577 |
+
.elementor-section-title > a {
|
578 |
+
top: 10px;
|
579 |
+
right: 20px;
|
580 |
+
position: absolute;
|
581 |
+
line-height: 20px;
|
582 |
+
font-size: 12px;
|
583 |
+
}
|
584 |
+
|
585 |
+
.elementor-section-title > a:hover {
|
586 |
+
border-color: transparent;
|
587 |
+
}
|
588 |
+
|
589 |
+
.elementor-section-title > a .dashicons {
|
590 |
+
font-size: 16px;
|
591 |
+
vertical-align: middle;
|
592 |
+
}
|
593 |
+
|
594 |
+
|
595 |
+
/*--------------------------------------------------------------
|
596 |
+
== Apply Changes Button
|
597 |
+
--------------------------------------------------------------*/
|
598 |
+
.editor-wpr-preview-update {
|
599 |
+
margin: 0;
|
600 |
+
display: -webkit-box;
|
601 |
+
display: -ms-flexbox;
|
602 |
+
display: flex;
|
603 |
+
-webkit-box-pack: justify;
|
604 |
+
-ms-flex-pack: justify;
|
605 |
+
justify-content: space-between;
|
606 |
+
}
|
607 |
+
|
608 |
+
.editor-wpr-preview-update button {
|
609 |
+
font-size: 13px;
|
610 |
+
padding: 5px 10px;
|
611 |
+
}
|
612 |
+
|
613 |
+
|
614 |
+
/*--------------------------------------------------------------
|
615 |
+
== Free/Pro Options
|
616 |
+
--------------------------------------------------------------*/
|
617 |
+
.elementor-control select option[value*=pro-] {
|
618 |
+
background: #f0f0f0;
|
619 |
+
}
|
620 |
+
|
621 |
+
.elementor-control[class*="pro_notice"] {
|
622 |
+
padding: 5px 0 15px 0 !important;
|
623 |
+
}
|
624 |
+
|
625 |
+
.wpr-pro-notice {
|
626 |
+
padding: 20px;
|
627 |
+
border-top: 1px solid #e6e9ec;
|
628 |
+
border-bottom: 1px solid #e6e9ec;
|
629 |
+
background-color: #f2fbff;
|
630 |
+
line-height: 1.4;
|
631 |
+
text-align: center;
|
632 |
+
}
|
633 |
+
|
634 |
+
.wpr-pro-notice-video {
|
635 |
+
display: block;
|
636 |
+
margin-top: 7px;
|
637 |
+
line-height: 20px;
|
638 |
+
border: none !important;
|
639 |
+
}
|
640 |
+
|
641 |
+
#elementor-controls .elementor-control-slider_section_pro_notice {
|
642 |
+
margin-top: -16px;
|
643 |
+
padding-bottom: 0 !important;
|
644 |
+
}
|
645 |
+
|
646 |
+
.elementor-control-layout_select_pro_notice + div,
|
647 |
+
.elementor-control-element_align_pro_notice + div {
|
648 |
+
padding-top: 15px;
|
649 |
+
}
|
650 |
+
|
651 |
+
.elementor-control-layout_select .elementor-choices label {
|
652 |
+
position: relative;
|
653 |
+
}
|
654 |
+
|
655 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(2):after,
|
656 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(4):after,
|
657 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(6):after,
|
658 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(8):after,
|
659 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(10):after,
|
660 |
+
.elementor-control-layout_select .elementor-choices label:nth-child(12):after {
|
661 |
+
content: ' ';
|
662 |
+
display: block;
|
663 |
+
width: 100%;
|
664 |
+
height: 100%;
|
665 |
+
position: absolute;
|
666 |
+
top: 0;
|
667 |
+
left: 0;
|
668 |
+
background: rgba(0,0,0,0.2);
|
669 |
+
}
|
670 |
+
|
671 |
+
/* Adjustments */
|
672 |
+
.elementor-control.elementor-control-element_align_pro_notice,
|
673 |
+
.elementor-control.elementor-control-search_pro_notice,
|
674 |
+
.elementor-control.elementor-control-layout_select_pro_notice,
|
675 |
+
.elementor-control.elementor-control-grid_columns_pro_notice,
|
676 |
+
.elementor-control.elementor-control-slider_content_type_pro_notice,
|
677 |
+
.elementor-control.elementor-control-slider_repeater_pro_notice,
|
678 |
+
.elementor-control.elementor-control-slider_dots_layout_pro_notice,
|
679 |
+
.elementor-control.elementor-control-testimonial_repeater_pro_notice,
|
680 |
+
.elementor-control.elementor-control-testimonial_icon_pro_notice,
|
681 |
+
.elementor-control.elementor-control-menu_layout_pro_notice,
|
682 |
+
.elementor-control.elementor-control-menu_items_submenu_entrance_pro_notice,
|
683 |
+
.elementor-control.elementor-control-switcher_label_style_pro_notice,
|
684 |
+
.elementor-control.elementor-control-countdown_type_pro_notice,
|
685 |
+
.elementor-control.elementor-control-layout_pro_notice,
|
686 |
+
.elementor-control.elementor-control-anim_timing_pro_notice,
|
687 |
+
.elementor-control.elementor-control-tab_content_type_pro_notice,
|
688 |
+
.elementor-control.elementor-control-tabs_repeater_pro_notice,
|
689 |
+
.elementor-control.elementor-control-tabs_align_pro_notice,
|
690 |
+
.elementor-control.elementor-control-front_trigger_pro_notice,
|
691 |
+
.elementor-control.elementor-control-back_link_type_pro_notice,
|
692 |
+
.elementor-control.elementor-control-box_anim_timing_pro_notice,
|
693 |
+
.elementor-control.elementor-control-image_style_pro_notice,
|
694 |
+
.elementor-control.elementor-control-image_animation_timing_pro_notice,
|
695 |
+
.elementor-control.elementor-control-label_display_pro_notice,
|
696 |
+
.elementor-control.elementor-control-post_type_pro_notice,
|
697 |
+
.elementor-control.elementor-control-type_select_pro_notice,
|
698 |
+
.elementor-control.elementor-control-icon_style_pro_notice,
|
699 |
+
.elementor-control.elementor-control-dual_button_pro_notice,
|
700 |
+
.elementor-control.elementor-control-team_member_pro_notice,
|
701 |
+
.elementor-control.elementor-control-price_list_pro_notice,
|
702 |
+
.elementor-control.elementor-control-business_hours_pro_notice,
|
703 |
+
.elementor-control.elementor-control-sharing_columns_pro_notice,
|
704 |
+
.elementor-control.elementor-control-popup_trigger_pro_notice,
|
705 |
+
.elementor-control.elementor-control-popup_show_again_delay_pro_notice,
|
706 |
+
.elementor-control.elementor-control-group_popup_settings_pro_notice,
|
707 |
+
.elementor-control.elementor-control-which_particle_pro_notice,
|
708 |
+
.elementor-control.elementor-control-paralax_repeater_pro_notice,
|
709 |
+
.elementor-control.elementor-control-opnepage_pro_notice,
|
710 |
+
.elementor-control.elementor-control-timeline_repeater_pro_notice,
|
711 |
+
.elementor-control.elementor-control-limit_grid_items_pro_notice,
|
712 |
+
.elementor-control.elementor-control-post_nav_layout_pro_notice,
|
713 |
+
.elementor-control.elementor-control-author_name_links_to_pro_notice,
|
714 |
+
.elementor-control.elementor-control-author_title_links_to_pro_notice,
|
715 |
+
.elementor-control.elementor-control-comments_form_layout_pro_notice,
|
716 |
+
.elementor-control.elementor-control-sharing_repeater_pro_notice,
|
717 |
+
.elementor-control.elementor-control-mini_cart_style_pro_notice,
|
718 |
+
.elementor-control.elementor-control-tabs_position_pro_notice,
|
719 |
+
.elementor-control.elementor-control-choose_table_type_pro_notice,
|
720 |
+
.elementor-control.elementor-control-accordion_repeater_pro_notice,
|
721 |
+
.elementor-control.elementor-control-acc_repeater_pro_notice,
|
722 |
+
.elementor-control.elementor-control-data_source_pro_notice,
|
723 |
+
.elementor-control.elementor-control-charts_repeater_pro_notice,
|
724 |
+
.elementor-control.elementor-control-mob_menu_display_as_pro_notice {
|
725 |
+
padding-bottom: 0 !important;
|
726 |
+
}
|
727 |
+
|
728 |
+
.elementor-control-search_pro_notice .wpr-pro-notice,
|
729 |
+
.elementor-control-grid_columns_pro_notice .wpr-pro-notice,
|
730 |
+
.elementor-control-slider_content_type_pro_notice .wpr-pro-notice,
|
731 |
+
.elementor-control-slider_repeater_pro_notice .wpr-pro-notice,
|
732 |
+
.elementor-control-slider_dots_layout_pro_notice .wpr-pro-notice,
|
733 |
+
.elementor-control-testimonial_repeater_pro_notice .wpr-pro-notice,
|
734 |
+
.elementor-control-testimonial_icon_pro_notice .wpr-pro-notice,
|
735 |
+
.elementor-control-menu_layout_pro_notice .wpr-pro-notice,
|
736 |
+
.elementor-control-menu_items_submenu_entrance_pro_notice .wpr-pro-notice,
|
737 |
+
.elementor-control-switcher_label_style_pro_notice .wpr-pro-notice,
|
738 |
+
.elementor-control-countdown_type_pro_notice .wpr-pro-notice,
|
739 |
+
.elementor-control-layout_pro_notice .wpr-pro-notice,
|
740 |
+
.elementor-control-anim_timing_pro_notice .wpr-pro-notice,
|
741 |
+
.elementor-control-tab_content_type_pro_notice .wpr-pro-notice,
|
742 |
+
.elementor-control-tabs_repeater_pro_notice .wpr-pro-notice,
|
743 |
+
.elementor-control-tabs_align_pro_notice .wpr-pro-notice,
|
744 |
+
.elementor-control-front_trigger_pro_notice .wpr-pro-notice,
|
745 |
+
.elementor-control-back_link_type_pro_notice .wpr-pro-notice,
|
746 |
+
.elementor-control-box_anim_timing_pro_notice .wpr-pro-notice,
|
747 |
+
.elementor-control-image_style_pro_notice .wpr-pro-notice,
|
748 |
+
.elementor-control-image_animation_timing_pro_notice .wpr-pro-notice,
|
749 |
+
.elementor-control-label_display_pro_notice .wpr-pro-notice,
|
750 |
+
.elementor-control-post_type_pro_notice .wpr-pro-notice,
|
751 |
+
.elementor-control-type_select_pro_notice .wpr-pro-notice,
|
752 |
+
.elementor-control-icon_style_pro_notice .wpr-pro-notice,
|
753 |
+
.elementor-control-dual_button_pro_notice .wpr-pro-notice,
|
754 |
+
.elementor-control-team_member_pro_notice .wpr-pro-notice,
|
755 |
+
.elementor-control-price_list_pro_notice .wpr-pro-notice,
|
756 |
+
.elementor-control-business_hours_pro_notice .wpr-pro-notice,
|
757 |
+
.elementor-control-sharing_columns_pro_notice .wpr-pro-notice,
|
758 |
+
.elementor-control-popup_trigger_pro_notice .wpr-pro-notice,
|
759 |
+
.elementor-control-popup_show_again_delay_pro_notice .wpr-pro-notice,
|
760 |
+
.elementor-control-group_popup_settings_pro_notice .wpr-pro-notice,
|
761 |
+
.elementor-control-post_nav_layout_pro_notice .wpr-pro-notice,
|
762 |
+
.elementor-control-author_name_links_to_pro_notice .wpr-pro-notice,
|
763 |
+
.elementor-control-author_title_links_to_pro_notice .wpr-pro-notice,
|
764 |
+
.elementor-control-comments_form_layout_pro_notice .wpr-pro-notice,
|
765 |
+
.elementor-control-sharing_repeater_pro_notice .wpr-pro-notice,
|
766 |
+
.elementor-control-mini_cart_style_pro_notice .wpr-pro-notice,
|
767 |
+
.elementor-control-tabs_position_pro_notice .wpr-pro-notice,
|
768 |
+
.elementor-control-choose_table_type_pro_notice .wpr-pro-notice,
|
769 |
+
.elementor-control-accordion_repeater_pro_notice .wpr-pro-notice,
|
770 |
+
.elementor-control.elementor-control-data_source_pro_notice .wpr-pro-notice,
|
771 |
+
.elementor-control.elementor-control-mob_menu_display_as_pro_notice .wpr-pro-notice {
|
772 |
+
border-bottom: none !important;
|
773 |
+
}
|
774 |
+
|
775 |
+
/* Both */
|
776 |
+
.elementor-control.elementor-control-pagination_type_pro_notice,
|
777 |
+
.elementor-control.elementor-control-tooltip_trigger_pro_notice,
|
778 |
+
.elementor-control.elementor-control-post_info_select_pro_notice {
|
779 |
+
padding-top: 0 !important;
|
780 |
+
padding-bottom: 0 !important;
|
781 |
+
}
|
782 |
+
|
783 |
+
.elementor-control-pagination_type_pro_notice .wpr-pro-notice {
|
784 |
+
border-top: none !important;
|
785 |
+
border-bottom: none !important;
|
786 |
+
}
|
787 |
+
|
788 |
+
.elementor-control-pro_features_section .elementor-section-toggle,
|
789 |
+
.elementor-control-pro_features_section .elementor-section-title {
|
790 |
+
color: #f54;
|
791 |
+
}
|
792 |
+
|
793 |
+
.elementor-control-pro_features_section .elementor-section-title {
|
794 |
+
line-height: 20px;
|
795 |
+
}
|
796 |
+
.elementor-control-pro_features_section .elementor-section-title .dashicons {
|
797 |
+
line-height: 20px;
|
798 |
+
font-size: 13px;
|
799 |
+
}
|
800 |
+
|
801 |
+
.wpr-pro-features-list {
|
802 |
+
text-align: center;
|
803 |
+
}
|
804 |
+
|
805 |
+
.wpr-pro-features-list ul {
|
806 |
+
text-align: left;
|
807 |
+
}
|
808 |
+
|
809 |
+
.wpr-pro-features-list ul li {
|
810 |
+
position: relative;
|
811 |
+
line-height: 22px;
|
812 |
+
padding-left: 20px;
|
813 |
+
}
|
814 |
+
|
815 |
+
.wpr-pro-features-list ul li::before {
|
816 |
+
content: '.';
|
817 |
+
font-size: 38px;
|
818 |
+
position: absolute;
|
819 |
+
top: -11px;
|
820 |
+
left: 0;
|
821 |
+
}
|
822 |
+
|
823 |
+
.wpr-pro-features-list ul + a {
|
824 |
+
display: inline-block;
|
825 |
+
background-color: #f54;
|
826 |
+
color: #fff;
|
827 |
+
margin: 15px 15px 10px 0;
|
828 |
+
padding: 7px 12px;
|
829 |
+
border-radius: 3px;
|
830 |
+
}
|
831 |
+
|
832 |
+
.wpr-pro-features-list ul + a:hover {
|
833 |
+
color: #fff;
|
834 |
+
}
|
835 |
+
|
836 |
+
/* Video Tutorial Link */
|
837 |
+
.elementor-control[class*="video_tutorial"] {
|
838 |
+
padding-top: 0 !important;
|
839 |
+
padding-bottom: 5px !important;
|
840 |
+
}
|
841 |
+
|
842 |
+
.elementor-control.elementor-control-woo_grid_notice_video_tutorial,
|
843 |
+
.elementor-control-show_last_update_date {
|
844 |
+
padding-bottom: 15px !important;
|
845 |
+
}
|
846 |
+
|
847 |
+
.elementor-control.elementor-control-woo_grid_notice_video_tutorial a {
|
848 |
+
display: inline-block;
|
849 |
+
margin-top: 5px;
|
850 |
+
}
|
851 |
+
|
852 |
+
.elementor-control[class*="video_tutorial"] a {
|
853 |
+
line-height: 16px;
|
854 |
+
font-size: 12px;
|
855 |
+
}
|
856 |
+
|
857 |
+
.elementor-control[class*="video_tutorial"] a .dashicons {
|
858 |
+
font-size: 16px;
|
859 |
+
}
|
860 |
+
|
861 |
+
/* Pro Control Class */
|
862 |
+
.elementor-control.wpr-pro-control label i {
|
863 |
+
color: #aeaeae;
|
864 |
+
font-size: 14px;
|
865 |
+
margin-left: 3px;
|
866 |
+
}
|
867 |
+
|
868 |
+
.elementor-control.wpr-pro-control .elementor-control-content:before {
|
869 |
+
content: '';
|
870 |
+
position: absolute;
|
871 |
+
width: 100%;
|
872 |
+
height: 100%;
|
873 |
+
z-index: 9;
|
874 |
+
background: transparent;
|
875 |
+
}
|
876 |
+
|
877 |
+
.elementor-control.wpr-pro-control .elementor-control-content:after {
|
878 |
+
content: "This option is available in the Pro Version.";
|
879 |
+
visibility: hidden;
|
880 |
+
opacity: 0;
|
881 |
+
position: absolute;
|
882 |
+
top: 30px;
|
883 |
+
padding: 15px;
|
884 |
+
z-index: 99;
|
885 |
+
margin-top: 10px;
|
886 |
+
font-size: 12px;
|
887 |
+
color: #93003c;
|
888 |
+
background-color: #ffffff;
|
889 |
+
border-radius: 5px;
|
890 |
+
-webkit-box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
|
891 |
+
box-shadow: 1px 1px 5px rgba(0,0,0,0.2);
|
892 |
+
border: 1px solid #e6e9ec;
|
893 |
+
-webkit-transition: all 0.2s ease-in;
|
894 |
+
-o-transition: all 0.2s ease-in;
|
895 |
+
transition: all 0.2s ease-in;
|
896 |
+
}
|
897 |
+
|
898 |
+
.elementor-repeater-fields .elementor-control.wpr-pro-control .elementor-control-content:after {
|
899 |
+
content: "This is available in the Pro Version.";
|
900 |
+
}
|
901 |
+
|
902 |
+
.elementor-control.wpr-pro-control.no-distance .elementor-control-content:after {
|
903 |
+
margin: 0;
|
904 |
+
}
|
905 |
+
|
906 |
+
.elementor-control.wpr-pro-control .elementor-control-content:hover:after {
|
907 |
+
visibility: visible;
|
908 |
+
opacity: 1;
|
909 |
+
}
|
910 |
+
|
911 |
+
/*--------------------------------------------------------------
|
912 |
+
== Request New Feature
|
913 |
+
--------------------------------------------------------------*/
|
914 |
+
.elementor-control-section_request_new_feature .elementor-section-toggle,
|
915 |
+
.elementor-control-section_request_new_feature .elementor-section-title {
|
916 |
+
color: #1CB4E4;
|
917 |
+
line-height: 20px;
|
918 |
+
}
|
919 |
+
|
920 |
+
.elementor-control-section_request_new_feature .elementor-section-title .dashicons {
|
921 |
+
line-height: 20px;
|
922 |
+
font-size: 13px;
|
923 |
+
}
|
924 |
+
|
925 |
+
.elementor-control-request_new_feature {
|
926 |
+
line-height: 20px;
|
927 |
+
}
|
928 |
+
|
929 |
+
.elementor-control-request_new_feature a {
|
930 |
+
display: block;
|
931 |
+
padding: 10px 15px;
|
932 |
+
border-radius: 3px;
|
933 |
+
margin-top: 15px;
|
934 |
+
text-align: center;
|
935 |
+
text-decoration: none;
|
936 |
+
background-color: #1CB4E4;
|
937 |
+
color: #fff;
|
938 |
+
font-size: 13px;
|
939 |
+
font-weight: 500;
|
940 |
+
}
|
941 |
+
|
942 |
+
.elementor-control-request_new_feature a:hover {
|
943 |
+
color: #fff;
|
944 |
+
background-color: #1589ad;
|
945 |
+
}
|
946 |
+
|
947 |
+
.elementor-control-request_new_feature a .dashicons {
|
948 |
+
font-size: 13px;
|
949 |
+
line-height: 18px;
|
950 |
+
}
|
951 |
+
|
952 |
+
|
953 |
+
/*--------------------------------------------------------------
|
954 |
+
== Theme Builder Widgets
|
955 |
+
--------------------------------------------------------------*/
|
956 |
+
#elementor-panel-categories {
|
957 |
+
display: -webkit-box;
|
958 |
+
display: -ms-flexbox;
|
959 |
+
display: flex;
|
960 |
+
-webkit-box-orient: vertical;
|
961 |
+
-webkit-box-direction: normal;
|
962 |
+
-ms-flex-direction: column;
|
963 |
+
flex-direction: column;
|
964 |
+
}
|
965 |
+
|
966 |
+
#elementor-panel-categories > div {
|
967 |
+
-webkit-box-ordinal-group: 3;
|
968 |
+
-ms-flex-order: 2;
|
969 |
+
order: 2;
|
970 |
+
}
|
971 |
+
|
972 |
+
#elementor-panel-category-wpr-theme-builder-widgets,
|
973 |
+
#elementor-panel-category-wpr-woocommerce-builder-widgets {
|
974 |
+
-webkit-box-ordinal-group: 2 !important;
|
975 |
+
-ms-flex-order: 1 !important;
|
976 |
+
order: 1 !important;
|
977 |
+
}
|
978 |
+
|
979 |
+
.elementor-editor-wpr-theme-builder #elementor-panel-footer-saver-preview {
|
980 |
+
display: none !important;
|
981 |
+
}
|
982 |
+
|
983 |
+
|
984 |
+
/*--------------------------------------------------------------
|
985 |
+
== Elementor Search Notice
|
986 |
+
--------------------------------------------------------------*/
|
987 |
+
.wpr-elementor-search-notice {
|
988 |
+
background: #fff;
|
989 |
+
font-size: 13px;
|
990 |
+
padding: 20px;
|
991 |
+
line-height: 18px;
|
992 |
+
margin: 10px;
|
993 |
+
border-left: 3px solid #71d7f7;
|
994 |
+
-webkit-box-shadow: 0 1px 4px 0 rgb(0 0 0 / 7%);
|
995 |
+
box-shadow: 0 1px 4px 0 rgb(0 0 0 / 7%);
|
996 |
+
}
|
997 |
+
|
998 |
+
|
999 |
+
/*--------------------------------------------------------------
|
1000 |
+
== Debug
|
1001 |
+
--------------------------------------------------------------*/
|
1002 |
+
pre.xdebug-var-dump {
|
1003 |
+
position: absolute;
|
1004 |
+
z-index: 999999;
|
1005 |
+
background: #fff;
|
1006 |
+
border: 2px solid #000;
|
1007 |
+
padding: 20px;
|
1008 |
+
left: 300px;
|
1009 |
}
|
assets/css/frontend.css
CHANGED
@@ -1,15384 +1,15543 @@
|
|
1 |
-
/*--------------------------------------------------------------
|
2 |
-
== Reset
|
3 |
-
--------------------------------------------------------------*/
|
4 |
-
article,
|
5 |
-
aside,
|
6 |
-
footer,
|
7 |
-
header,
|
8 |
-
nav,
|
9 |
-
section,
|
10 |
-
figcaption,
|
11 |
-
figure,
|
12 |
-
main {
|
13 |
-
display: block;
|
14 |
-
}
|
15 |
-
|
16 |
-
hr {
|
17 |
-
-webkit-box-sizing: content-box;
|
18 |
-
box-sizing: content-box;
|
19 |
-
height: 0;
|
20 |
-
overflow: visible;
|
21 |
-
border: 0;
|
22 |
-
height: 1px;
|
23 |
-
margin: 20px 0;
|
24 |
-
}
|
25 |
-
|
26 |
-
pre {
|
27 |
-
font-family: monospace, monospace;
|
28 |
-
font-size: 1em;
|
29 |
-
}
|
30 |
-
|
31 |
-
a {
|
32 |
-
text-decoration: none;
|
33 |
-
background-color: transparent;
|
34 |
-
-webkit-text-decoration-skip: objects;
|
35 |
-
}
|
36 |
-
|
37 |
-
[class*="elementor-widget-wpr-"] a {
|
38 |
-
text-decoration: none;
|
39 |
-
}
|
40 |
-
|
41 |
-
abbr[title] {
|
42 |
-
text-decoration: underline;
|
43 |
-
-webkit-text-decoration: underline dotted;
|
44 |
-
text-decoration: underline dotted;
|
45 |
-
}
|
46 |
-
|
47 |
-
b,
|
48 |
-
strong {
|
49 |
-
font-weight: inherit;
|
50 |
-
}
|
51 |
-
|
52 |
-
b,
|
53 |
-
strong {
|
54 |
-
font-weight: bolder;
|
55 |
-
}
|
56 |
-
|
57 |
-
code,
|
58 |
-
kbd,
|
59 |
-
samp {
|
60 |
-
font-family: monospace, monospace;
|
61 |
-
font-size: 1em;
|
62 |
-
}
|
63 |
-
|
64 |
-
dfn {
|
65 |
-
font-style: italic;
|
66 |
-
}
|
67 |
-
|
68 |
-
mark {
|
69 |
-
background-color: #ff0;
|
70 |
-
color: #000;
|
71 |
-
}
|
72 |
-
|
73 |
-
small {
|
74 |
-
font-size: 80%;
|
75 |
-
}
|
76 |
-
|
77 |
-
sub,
|
78 |
-
sup {
|
79 |
-
font-size: 75%;
|
80 |
-
line-height: 0;
|
81 |
-
position: relative;
|
82 |
-
vertical-align: baseline;
|
83 |
-
}
|
84 |
-
|
85 |
-
sub {
|
86 |
-
bottom: -0.25em;
|
87 |
-
}
|
88 |
-
|
89 |
-
sup {
|
90 |
-
top: -0.5em;
|
91 |
-
}
|
92 |
-
|
93 |
-
audio,
|
94 |
-
video {
|
95 |
-
display: inline-block;
|
96 |
-
}
|
97 |
-
|
98 |
-
audio:not([controls]) {
|
99 |
-
display: none;
|
100 |
-
height: 0;
|
101 |
-
}
|
102 |
-
|
103 |
-
img {
|
104 |
-
display: block;
|
105 |
-
border-style: none;
|
106 |
-
}
|
107 |
-
|
108 |
-
svg:not(:root) {
|
109 |
-
overflow: hidden;
|
110 |
-
display: inline;
|
111 |
-
}
|
112 |
-
|
113 |
-
button,
|
114 |
-
input {
|
115 |
-
overflow: visible;
|
116 |
-
outline: 0;
|
117 |
-
}
|
118 |
-
|
119 |
-
button,
|
120 |
-
select {
|
121 |
-
text-transform: none;
|
122 |
-
}
|
123 |
-
|
124 |
-
button,
|
125 |
-
html [type="button"],
|
126 |
-
[type="reset"],
|
127 |
-
[type="submit"] {
|
128 |
-
-webkit-appearance: button;
|
129 |
-
}
|
130 |
-
|
131 |
-
button::-moz-focus-inner,
|
132 |
-
[type="button"]::-moz-focus-inner,
|
133 |
-
[type="reset"]::-moz-focus-inner,
|
134 |
-
[type="submit"]::-moz-focus-inner {
|
135 |
-
border-style: none;
|
136 |
-
padding: 0;
|
137 |
-
}
|
138 |
-
|
139 |
-
button:-moz-focusring,
|
140 |
-
[type="button"]:-moz-focusring,
|
141 |
-
[type="reset"]:-moz-focusring,
|
142 |
-
[type="submit"]:-moz-focusring {
|
143 |
-
outline: none;
|
144 |
-
}
|
145 |
-
|
146 |
-
[type=button]:focus,
|
147 |
-
[type=button]:hover,
|
148 |
-
[type=submit]:focus,
|
149 |
-
[type=submit]:hover,
|
150 |
-
button:focus,
|
151 |
-
button:hover {
|
152 |
-
outline: 0;
|
153 |
-
}
|
154 |
-
|
155 |
-
legend {
|
156 |
-
-webkit-box-sizing: border-box;
|
157 |
-
box-sizing: border-box;
|
158 |
-
color: inherit;
|
159 |
-
display: table;
|
160 |
-
max-width: 100%;
|
161 |
-
padding: 0;
|
162 |
-
/* 3 */
|
163 |
-
white-space: normal;
|
164 |
-
}
|
165 |
-
|
166 |
-
progress {
|
167 |
-
display: inline-block;
|
168 |
-
vertical-align: baseline;
|
169 |
-
}
|
170 |
-
|
171 |
-
textarea {
|
172 |
-
overflow: auto;
|
173 |
-
outline: 0;
|
174 |
-
}
|
175 |
-
|
176 |
-
[type="checkbox"],
|
177 |
-
[type="radio"] {
|
178 |
-
-webkit-box-sizing: border-box;
|
179 |
-
box-sizing: border-box;
|
180 |
-
padding: 0;
|
181 |
-
outline: 0;
|
182 |
-
}
|
183 |
-
|
184 |
-
[type="number"]::-webkit-inner-spin-button,
|
185 |
-
[type="number"]::-webkit-outer-spin-button {
|
186 |
-
height: auto;
|
187 |
-
outline: 0;
|
188 |
-
}
|
189 |
-
|
190 |
-
[type="search"] {
|
191 |
-
-webkit-appearance: none !important;
|
192 |
-
-moz-appearance: none !important;
|
193 |
-
appearance: none !important;
|
194 |
-
outline: 0;
|
195 |
-
}
|
196 |
-
|
197 |
-
[type="search"]:focus {
|
198 |
-
-webkit-appearance: none !important;
|
199 |
-
-moz-appearance: none !important;
|
200 |
-
appearance: none !important;
|
201 |
-
outline: 0;
|
202 |
-
}
|
203 |
-
|
204 |
-
[type="search"] {
|
205 |
-
-webkit-appearance: textfield;
|
206 |
-
outline-offset: -2px;
|
207 |
-
}
|
208 |
-
|
209 |
-
[type="search"]::-webkit-search-cancel-button,
|
210 |
-
[type="search"]::-webkit-search-decoration {
|
211 |
-
-webkit-appearance: none;
|
212 |
-
}
|
213 |
-
|
214 |
-
::-webkit-file-upload-button {
|
215 |
-
-webkit-appearance: button;
|
216 |
-
font: inherit;
|
217 |
-
}
|
218 |
-
|
219 |
-
details,
|
220 |
-
menu {
|
221 |
-
display: block;
|
222 |
-
}
|
223 |
-
|
224 |
-
summary {
|
225 |
-
display: list-item;
|
226 |
-
}
|
227 |
-
|
228 |
-
canvas {
|
229 |
-
display: inline-block;
|
230 |
-
}
|
231 |
-
|
232 |
-
template {
|
233 |
-
display: none;
|
234 |
-
}
|
235 |
-
|
236 |
-
[hidden] {
|
237 |
-
display: none;
|
238 |
-
}
|
239 |
-
|
240 |
-
/* TODO: Remove this when php part is done */
|
241 |
-
.ast-separate-container .ast-article-post,
|
242 |
-
.ast-separate-container .ast-article-single {
|
243 |
-
padding: 0;
|
244 |
-
border: none;
|
245 |
-
background-color: transparent;
|
246 |
-
}
|
247 |
-
|
248 |
-
.ast-separate-container .comment-respond {
|
249 |
-
padding: 0;
|
250 |
-
background-color: transparent;
|
251 |
-
}
|
252 |
-
|
253 |
-
|
254 |
-
/*--------------------------------------------------------------
|
255 |
-
== General
|
256 |
-
--------------------------------------------------------------*/
|
257 |
-
/*.wpr-float-align-left .wpr-nav-menu li {
|
258 |
-
float: left;
|
259 |
-
}
|
260 |
-
|
261 |
-
.wpr-float-align-right .wpr-nav-menu li {
|
262 |
-
float: right;
|
263 |
-
}
|
264 |
-
|
265 |
-
.wpr-float-align-center .wpr-nav-menu {
|
266 |
-
width: auto;
|
267 |
-
margin: 0 auto;
|
268 |
-
}*/
|
269 |
-
|
270 |
-
|
271 |
-
/* Hidden Element */
|
272 |
-
.wpr-hidden-element {
|
273 |
-
display: none !important;
|
274 |
-
}
|
275 |
-
|
276 |
-
|
277 |
-
/* Vertical Centering */
|
278 |
-
.wpr-cv-container {
|
279 |
-
display: block;
|
280 |
-
width: 100%;
|
281 |
-
height: 100%;
|
282 |
-
position: absolute;
|
283 |
-
left: 0;
|
284 |
-
top: 0;
|
285 |
-
z-index: 90;
|
286 |
-
}
|
287 |
-
|
288 |
-
.wpr-cv-outer {
|
289 |
-
display: table;
|
290 |
-
width: 100%;
|
291 |
-
height: 100%;
|
292 |
-
}
|
293 |
-
|
294 |
-
.wpr-cv-inner {
|
295 |
-
display: table-cell;
|
296 |
-
vertical-align: middle;
|
297 |
-
}
|
298 |
-
|
299 |
-
.wpr-no-transition-delay {
|
300 |
-
-webkit-transition-delay: 0s !important;
|
301 |
-
-o-transition-delay: 0s !important;
|
302 |
-
transition-delay: 0s !important;
|
303 |
-
}
|
304 |
-
|
305 |
-
|
306 |
-
/* Drop Caps */
|
307 |
-
.wpr-enable-dropcap p:first-child:first-letter {
|
308 |
-
float: left;
|
309 |
-
padding-right: 10px;
|
310 |
-
font-size: 50px;
|
311 |
-
line-height: 1;
|
312 |
-
}
|
313 |
-
|
314 |
-
|
315 |
-
/* Tooltips */
|
316 |
-
.wpr-tooltip {
|
317 |
-
visibility: hidden;
|
318 |
-
opacity: 0;
|
319 |
-
position: absolute;
|
320 |
-
top: 0;
|
321 |
-
left: 0;
|
322 |
-
-webkit-transform: translateY(-100%);
|
323 |
-
-ms-transform: translateY(-100%);
|
324 |
-
transform: translateY(-100%);
|
325 |
-
padding: 6px 10px;
|
326 |
-
border-radius: 4px;
|
327 |
-
font-size: 15px;
|
328 |
-
-webkit-transition: all 230ms ease-in-out 0s;
|
329 |
-
-o-transition: all 230ms ease-in-out 0s;
|
330 |
-
transition: all 230ms ease-in-out 0s;
|
331 |
-
}
|
332 |
-
|
333 |
-
.wpr-tooltip:before {
|
334 |
-
content: "";
|
335 |
-
position: absolute;
|
336 |
-
left: 10px;
|
337 |
-
bottom: -5px;
|
338 |
-
width: 0;
|
339 |
-
height: 0;
|
340 |
-
border-left: 6px solid transparent;
|
341 |
-
border-right: 6px solid transparent;
|
342 |
-
border-top-style: solid;
|
343 |
-
border-top-width: 6px;
|
344 |
-
}
|
345 |
-
|
346 |
-
|
347 |
-
/*--------------------------------------------------------------
|
348 |
-
== Nav Menu
|
349 |
-
--------------------------------------------------------------*/
|
350 |
-
.wpr-nav-menu,
|
351 |
-
.wpr-nav-menu ul,
|
352 |
-
.wpr-mobile-nav-menu,
|
353 |
-
.wpr-mobile-nav-menu ul {
|
354 |
-
padding: 0;
|
355 |
-
margin: 0;
|
356 |
-
list-style: none;
|
357 |
-
font-size: 0;
|
358 |
-
}
|
359 |
-
|
360 |
-
.wpr-nav-menu li {
|
361 |
-
position: relative;
|
362 |
-
}
|
363 |
-
|
364 |
-
.wpr-nav-menu-horizontal .wpr-nav-menu>li {
|
365 |
-
display: inline-block;
|
366 |
-
}
|
367 |
-
|
368 |
-
.wpr-nav-menu .wpr-menu-item {
|
369 |
-
display: block;
|
370 |
-
position: relative;
|
371 |
-
z-index: 1;
|
372 |
-
}
|
373 |
-
|
374 |
-
.wpr-nav-menu > li > a,
|
375 |
-
.wpr-mobile-nav-menu > li > a {
|
376 |
-
font-size: 16px;
|
377 |
-
line-height: 1;
|
378 |
-
}
|
379 |
-
|
380 |
-
.wpr-mobile-nav-menu li {
|
381 |
-
margin: 0;
|
382 |
-
}
|
383 |
-
|
384 |
-
.wpr-nav-menu-horizontal .wpr-nav-menu>li:first-child,
|
385 |
-
.wpr-pointer-none .wpr-nav-menu-horizontal>li:first-child .wpr-menu-item,
|
386 |
-
.wpr-pointer-line-fx .wpr-nav-menu-horizontal>li:first-child .wpr-menu-item {
|
387 |
-
padding-left: 0 !important;
|
388 |
-
margin-left: 0 !important;
|
389 |
-
}
|
390 |
-
|
391 |
-
.wpr-nav-menu-horizontal .wpr-nav-menu>li:last-child,
|
392 |
-
.wpr-pointer-none .wpr-nav-menu-horizontal>li:last-child .wpr-menu-item,
|
393 |
-
.wpr-pointer-line-fx .wpr-nav-menu-horizontal>li:last-child .wpr-menu-item {
|
394 |
-
padding-right: 0 !important;
|
395 |
-
margin-right: 0 !important;
|
396 |
-
}
|
397 |
-
|
398 |
-
div[class*="wpr-main-menu-align-"] .wpr-nav-menu-vertical .wpr-nav-menu>li>.wpr-sub-menu,
|
399 |
-
div[class*="wpr-main-menu-align-"] .wpr-nav-menu-vertical .wpr-nav-menu>li>.wpr-sub-mega-menu {
|
400 |
-
left: 100%;
|
401 |
-
}
|
402 |
-
|
403 |
-
.wpr-main-menu-align-left .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon,
|
404 |
-
.wpr-main-menu-align-center .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon {
|
405 |
-
right: 0;
|
406 |
-
}
|
407 |
-
|
408 |
-
.wpr-main-menu-align-right .wpr-nav-menu-vertical .wpr-sub-icon {
|
409 |
-
left: 0;
|
410 |
-
}
|
411 |
-
|
412 |
-
.wpr-main-menu-align-left .wpr-nav-menu-horizontal .wpr-nav-menu,
|
413 |
-
.wpr-main-menu-align-left .wpr-nav-menu-vertical .wpr-menu-item,
|
414 |
-
.wpr-main-menu-align-left .wpr-nav-menu-vertical .wpr-sub-menu li a {
|
415 |
-
text-align: left;
|
416 |
-
}
|
417 |
-
|
418 |
-
.wpr-main-menu-align-center .wpr-nav-menu-horizontal .wpr-nav-menu,
|
419 |
-
.wpr-main-menu-align-center .wpr-nav-menu-vertical .wpr-menu-item {
|
420 |
-
text-align: center;
|
421 |
-
}
|
422 |
-
|
423 |
-
.wpr-main-menu-align-right .wpr-nav-menu-horizontal .wpr-nav-menu,
|
424 |
-
.wpr-main-menu-align-right .wpr-nav-menu-vertical .wpr-menu-item,
|
425 |
-
.wpr-main-menu-align-right .wpr-nav-menu-vertical .wpr-sub-menu li a {
|
426 |
-
text-align: right;
|
427 |
-
}
|
428 |
-
|
429 |
-
@media screen and ( min-width: 2400px) {
|
430 |
-
.wpr-main-menu-align--widescreenleft .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon,
|
431 |
-
.wpr-main-menu-align--widescreencenter .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon {
|
432 |
-
right: 0;
|
433 |
-
}
|
434 |
-
.wpr-main-menu-align--widescreenleft .wpr-nav-menu-horizontal .wpr-nav-menu,
|
435 |
-
.wpr-main-menu-align--widescreenleft .wpr-nav-menu-vertical .wpr-menu-item {
|
436 |
-
text-align: left;
|
437 |
-
}
|
438 |
-
.wpr-main-menu-align--widescreencenter .wpr-nav-menu-horizontal .wpr-nav-menu,
|
439 |
-
.wpr-main-menu-align--widescreencenter .wpr-nav-menu-vertical .wpr-menu-item {
|
440 |
-
text-align: center;
|
441 |
-
}
|
442 |
-
.wpr-main-menu-align--widescreenright .wpr-nav-menu-horizontal .wpr-nav-menu,
|
443 |
-
.wpr-main-menu-align--widescreenright .wpr-nav-menu-vertical .wpr-menu-item {
|
444 |
-
text-align: right;
|
445 |
-
}
|
446 |
-
}
|
447 |
-
|
448 |
-
@media screen and ( max-width: 1221px) {
|
449 |
-
.wpr-main-menu-align--laptopleft .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon,
|
450 |
-
.wpr-main-menu-align--laptopcenter .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon {
|
451 |
-
right: 0;
|
452 |
-
}
|
453 |
-
.wpr-main-menu-align--laptopleft .wpr-nav-menu-horizontal .wpr-nav-menu,
|
454 |
-
.wpr-main-menu-align--laptopleft .wpr-nav-menu-vertical .wpr-menu-item {
|
455 |
-
text-align: left;
|
456 |
-
}
|
457 |
-
.wpr-main-menu-align--laptopcenter .wpr-nav-menu-horizontal .wpr-nav-menu,
|
458 |
-
.wpr-main-menu-align--laptopcenter .wpr-nav-menu-vertical .wpr-menu-item {
|
459 |
-
text-align: center;
|
460 |
-
}
|
461 |
-
.wpr-main-menu-align--laptopright .wpr-nav-menu-horizontal .wpr-nav-menu,
|
462 |
-
.wpr-main-menu-align--laptopright .wpr-nav-menu-vertical .wpr-menu-item {
|
463 |
-
text-align: right;
|
464 |
-
}
|
465 |
-
}
|
466 |
-
|
467 |
-
@media screen and ( max-width: 1200px) {
|
468 |
-
.wpr-main-menu-align--tablet_extraleft .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon,
|
469 |
-
.wpr-main-menu-align--tablet_extracenter .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon {
|
470 |
-
right: 0;
|
471 |
-
}
|
472 |
-
.wpr-main-menu-align--tablet_extraleft .wpr-nav-menu-horizontal .wpr-nav-menu,
|
473 |
-
.wpr-main-menu-align--tablet_extraleft .wpr-nav-menu-vertical .wpr-menu-item {
|
474 |
-
text-align: left;
|
475 |
-
}
|
476 |
-
.wpr-main-menu-align--tablet_extracenter .wpr-nav-menu-horizontal .wpr-nav-menu,
|
477 |
-
.wpr-main-menu-align--tablet_extracenter .wpr-nav-menu-vertical .wpr-menu-item {
|
478 |
-
text-align: center;
|
479 |
-
}
|
480 |
-
.wpr-main-menu-align--tablet_extraright .wpr-nav-menu-horizontal .wpr-nav-menu,
|
481 |
-
.wpr-main-menu-align--tablet_extraright .wpr-nav-menu-vertical .wpr-menu-item {
|
482 |
-
text-align: right;
|
483 |
-
}
|
484 |
-
}
|
485 |
-
|
486 |
-
@media screen and ( max-width: 1024px) {
|
487 |
-
.wpr-main-menu-align--tabletleft .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon,
|
488 |
-
.wpr-main-menu-align--tabletcenter .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon {
|
489 |
-
right: 0;
|
490 |
-
}
|
491 |
-
.wpr-main-menu-align--tabletleft .wpr-nav-menu-horizontal .wpr-nav-menu,
|
492 |
-
.wpr-main-menu-align--tabletleft .wpr-nav-menu-vertical .wpr-menu-item {
|
493 |
-
text-align: left;
|
494 |
-
}
|
495 |
-
.wpr-main-menu-align--tabletcenter .wpr-nav-menu-horizontal .wpr-nav-menu,
|
496 |
-
.wpr-main-menu-align--tabletcenter .wpr-nav-menu-vertical .wpr-menu-item {
|
497 |
-
text-align: center;
|
498 |
-
}
|
499 |
-
.wpr-main-menu-align--tabletright .wpr-nav-menu-horizontal .wpr-nav-menu,
|
500 |
-
.wpr-main-menu-align--tabletright .wpr-nav-menu-vertical .wpr-menu-item {
|
501 |
-
text-align: right;
|
502 |
-
}
|
503 |
-
}
|
504 |
-
|
505 |
-
@media screen and ( max-width: 880px) {
|
506 |
-
.wpr-main-menu-align--mobile_extraleft .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon,
|
507 |
-
.wpr-main-menu-align--mobile_extracenter .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon {
|
508 |
-
right: 0;
|
509 |
-
}
|
510 |
-
.wpr-main-menu-align--mobile_extraleft .wpr-nav-menu-horizontal .wpr-nav-menu,
|
511 |
-
.wpr-main-menu-align--mobile_extraleft .wpr-nav-menu-vertical .wpr-menu-item {
|
512 |
-
text-align: left;
|
513 |
-
}
|
514 |
-
.wpr-main-menu-align--mobile_extracenter .wpr-nav-menu-horizontal .wpr-nav-menu,
|
515 |
-
.wpr-main-menu-align--mobile_extracenter .wpr-nav-menu-vertical .wpr-menu-item {
|
516 |
-
text-align: center;
|
517 |
-
}
|
518 |
-
.wpr-main-menu-align--mobile_extraright .wpr-nav-menu-horizontal .wpr-nav-menu,
|
519 |
-
.wpr-main-menu-align--mobile_extraright .wpr-nav-menu-vertical .wpr-menu-item {
|
520 |
-
text-align: right;
|
521 |
-
}
|
522 |
-
}
|
523 |
-
|
524 |
-
@media screen and ( max-width: 767px) {
|
525 |
-
.wpr-main-menu-align--mobileleft .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon,
|
526 |
-
.wpr-main-menu-align--mobilecenter .wpr-nav-menu-vertical .wpr-menu-item .wpr-sub-icon {
|
527 |
-
right: 0;
|
528 |
-
}
|
529 |
-
.wpr-main-menu-align--mobileleft .wpr-nav-menu-horizontal .wpr-nav-menu,
|
530 |
-
.wpr-main-menu-align--mobileleft .wpr-nav-menu-vertical .wpr-menu-item {
|
531 |
-
text-align: left;
|
532 |
-
}
|
533 |
-
.wpr-main-menu-align--mobilecenter .wpr-nav-menu-horizontal .wpr-nav-menu,
|
534 |
-
.wpr-main-menu-align--mobilecenter .wpr-nav-menu-vertical .wpr-menu-item {
|
535 |
-
text-align: center;
|
536 |
-
}
|
537 |
-
.wpr-main-menu-align--mobileright .wpr-nav-menu-horizontal .wpr-nav-menu,
|
538 |
-
.wpr-main-menu-align--mobileright .wpr-nav-menu-vertical .wpr-menu-item {
|
539 |
-
text-align: right;
|
540 |
-
}
|
541 |
-
}
|
542 |
-
|
543 |
-
/* --- Sub Menu --- */
|
544 |
-
.wpr-nav-menu .wpr-sub-menu {
|
545 |
-
display: none;
|
546 |
-
position: absolute;
|
547 |
-
z-index: 9999;
|
548 |
-
width: 180px;
|
549 |
-
text-align: left;
|
550 |
-
list-style: none;
|
551 |
-
margin: 0;
|
552 |
-
}
|
553 |
-
|
554 |
-
.wpr-nav-menu-vertical .wpr-nav-menu>li>.wpr-sub-menu,
|
555 |
-
.wpr-nav-menu-vertical .wpr-nav-menu>li>.wpr-sub-mega-menu {
|
556 |
-
top: 0;
|
557 |
-
}
|
558 |
-
|
559 |
-
.wpr-sub-menu-position-inline .wpr-nav-menu-vertical .wpr-sub-menu {
|
560 |
-
position: static;
|
561 |
-
width: 100% !important;
|
562 |
-
text-align: center !important;
|
563 |
-
margin-left: 0 !important;
|
564 |
-
}
|
565 |
-
|
566 |
-
.wpr-sub-menu-position-inline .wpr-sub-menu a {
|
567 |
-
position: relative;
|
568 |
-
}
|
569 |
-
|
570 |
-
.wpr-nav-menu .wpr-sub-menu .wpr-sub-menu {
|
571 |
-
top: 0;
|
572 |
-
left: 100%;
|
573 |
-
}
|
574 |
-
|
575 |
-
.wpr-sub-menu .wpr-sub-menu-item {
|
576 |
-
display: block;
|
577 |
-
font-size: 14px;
|
578 |
-
}
|
579 |
-
|
580 |
-
.wpr-nav-menu-horizontal .wpr-menu-item .wpr-sub-icon {
|
581 |
-
margin-left: 7px;
|
582 |
-
text-indent: 0;
|
583 |
-
}
|
584 |
-
|
585 |
-
.wpr-nav-menu:not(.wpr-mega-menu) .wpr-sub-icon {
|
586 |
-
position: absolute;
|
587 |
-
top: 48%;
|
588 |
-
transform: translateY(-50%);
|
589 |
-
-ms-transform: translateY(-50%);
|
590 |
-
-webkit-transform: translateY(-50%);
|
591 |
-
}
|
592 |
-
|
593 |
-
.wpr-nav-menu:not(.wpr-mega-menu) .wpr-sub-icon-rotate {
|
594 |
-
-webkit-transform: rotate(-90deg) translateX(80%);
|
595 |
-
-ms-transform: rotate(-90deg) translateX(80%);
|
596 |
-
transform: rotate(-90deg) translateX(80%);
|
597 |
-
}
|
598 |
-
|
599 |
-
.wpr-sub-divider-yes .wpr-sub-menu li:not(:last-child) {
|
600 |
-
border-bottom-style: solid;
|
601 |
-
}
|
602 |
-
|
603 |
-
|
604 |
-
/* Mobile Menu */
|
605 |
-
.wpr-mobile-nav-menu:not(.wpr-mobile-mega-menu),
|
606 |
-
.wpr-mobile-nav-menu-container {
|
607 |
-
display: none;
|
608 |
-
}
|
609 |
-
|
610 |
-
.wpr-mobile-nav-menu:not(.wpr-mobile-mega-menu) {
|
611 |
-
position: absolute;
|
612 |
-
z-index: 9999;
|
613 |
-
}
|
614 |
-
|
615 |
-
.wpr-mobile-menu-drdown-align-left .wpr-mobile-nav-menu:not(.wpr-mobile-mega-menu),
|
616 |
-
.wpr-mobile-menu-drdown-align-left .wpr-mobile-mega-menu-wrap {
|
617 |
-
left: 0;
|
618 |
-
}
|
619 |
-
|
620 |
-
.wpr-mobile-menu-drdown-align-center .wpr-mobile-nav-menu:not(.wpr-mobile-mega-menu),
|
621 |
-
.wpr-mobile-menu-drdown-align-center .wpr-mobile-mega-menu-wrap {
|
622 |
-
left: 50%;
|
623 |
-
-webkit-transform: translateX(-50%);
|
624 |
-
-ms-transform: translateX(-50%);
|
625 |
-
transform: translateX(-50%);
|
626 |
-
}
|
627 |
-
|
628 |
-
.wpr-mobile-menu-drdown-align-right .wpr-mobile-nav-menu:not(.wpr-mobile-mega-menu),
|
629 |
-
.wpr-mobile-menu-drdown-align-right .wpr-mobile-mega-menu-wrap {
|
630 |
-
right: 0;
|
631 |
-
}
|
632 |
-
|
633 |
-
.wpr-mobile-menu-item,
|
634 |
-
.wpr-mobile-sub-menu-item {
|
635 |
-
position: relative;
|
636 |
-
}
|
637 |
-
|
638 |
-
.wpr-mobile-menu-item,
|
639 |
-
.wpr-mobile-sub-menu-item {
|
640 |
-
display: block;
|
641 |
-
}
|
642 |
-
|
643 |
-
.wpr-mobile-sub-menu,
|
644 |
-
.wpr-mobile-sub-mega-menu {
|
645 |
-
display: none;
|
646 |
-
}
|
647 |
-
|
648 |
-
.wpr-mobile-nav-menu .menu-item-has-children>a:after {
|
649 |
-
position: absolute;
|
650 |
-
right: 0;
|
651 |
-
top: 50%;
|
652 |
-
transform: translateY(-50%);
|
653 |
-
-ms-transform: translateY(-50%);
|
654 |
-
-webkit-transform: translateY(-50%);
|
655 |
-
}
|
656 |
-
|
657 |
-
.wpr-mobile-menu-item-align-left .wpr-mobile-sub-menu a:before {
|
658 |
-
content: ' ';
|
659 |
-
display: inline-block;
|
660 |
-
width: 10px;
|
661 |
-
}
|
662 |
-
|
663 |
-
.wpr-mobile-menu-item-align-left .wpr-mobile-sub-menu .wpr-mobile-sub-menu a:before {
|
664 |
-
width: 20px;
|
665 |
-
}
|
666 |
-
|
667 |
-
.wpr-mobile-menu-item-align-center .wpr-mobile-nav-menu {
|
668 |
-
text-align: center;
|
669 |
-
}
|
670 |
-
|
671 |
-
.wpr-mobile-menu-item-align-right .wpr-mobile-nav-menu {
|
672 |
-
text-align: right;
|
673 |
-
}
|
674 |
-
|
675 |
-
.wpr-mobile-menu-item-align-right .wpr-mobile-nav-menu .menu-item-has-children>a:after {
|
676 |
-
right: auto !important;
|
677 |
-
left: 0;
|
678 |
-
}
|
679 |
-
|
680 |
-
div[class*="wpr-sub-icon-"] .wpr-mobile-nav-menu .menu-item-has-children>a:after {
|
681 |
-
font-family: "Font Awesome 5 Free";
|
682 |
-
font-size: 12px;
|
683 |
-
font-weight: 900;
|
684 |
-
font-style: normal;
|
685 |
-
text-decoration: none;
|
686 |
-
line-height: 1;
|
687 |
-
letter-spacing: 0;
|
688 |
-
text-rendering: auto;
|
689 |
-
-webkit-font-smoothing: antialiased;
|
690 |
-
}
|
691 |
-
|
692 |
-
.wpr-sub-icon-caret-down .wpr-sub-icon:before,
|
693 |
-
.wpr-sub-icon-caret-down .wpr-mobile-nav-menu .menu-item-has-children>a:after {
|
694 |
-
content: "\f0d7";
|
695 |
-
}
|
696 |
-
|
697 |
-
.wpr-sub-icon-angle-down .wpr-sub-icon:before,
|
698 |
-
.wpr-sub-icon-angle-down .wpr-mobile-nav-menu .menu-item-has-children>a:after {
|
699 |
-
content: "\f107";
|
700 |
-
}
|
701 |
-
|
702 |
-
.wpr-sub-icon-chevron-down .wpr-sub-icon:before,
|
703 |
-
.wpr-sub-icon-chevron-down .wpr-mobile-nav-menu .menu-item-has-children>a:after {
|
704 |
-
content: "\f078";
|
705 |
-
}
|
706 |
-
|
707 |
-
.wpr-sub-icon-plus .wpr-sub-icon:before,
|
708 |
-
.wpr-sub-icon-plus .wpr-mobile-nav-menu .menu-item-has-children>a:after {
|
709 |
-
content: "\f067";
|
710 |
-
}
|
711 |
-
|
712 |
-
.wpr-mobile-divider-yes .wpr-mobile-menu-item {
|
713 |
-
border-bottom-style: solid;
|
714 |
-
}
|
715 |
-
|
716 |
-
|
717 |
-
/* Mobile Menu Toggle Button */
|
718 |
-
.wpr-mobile-toggle-wrap {
|
719 |
-
font-size: 0;
|
720 |
-
line-height: 0;
|
721 |
-
}
|
722 |
-
|
723 |
-
.wpr-mobile-toggle {
|
724 |
-
display: inline-block;
|
725 |
-
padding: 7px;
|
726 |
-
cursor: pointer;
|
727 |
-
border-style: solid;
|
728 |
-
text-align: center;
|
729 |
-
}
|
730 |
-
|
731 |
-
.wpr-mobile-toggle-line {
|
732 |
-
display: block;
|
733 |
-
width: 100%;
|
734 |
-
}
|
735 |
-
|
736 |
-
.wpr-mobile-toggle-line:last-child {
|
737 |
-
margin-bottom: 0 !important;
|
738 |
-
}
|
739 |
-
|
740 |
-
.wpr-mobile-toggle-text {
|
741 |
-
font-size: 16px;
|
742 |
-
line-height: 1 !important;
|
743 |
-
}
|
744 |
-
|
745 |
-
.wpr-mobile-toggle-text:last-child {
|
746 |
-
display: none;
|
747 |
-
}
|
748 |
-
|
749 |
-
.wpr-mobile-toggle-v2 .wpr-mobile-toggle-line:nth-child(2) {
|
750 |
-
width: 78%;
|
751 |
-
margin-left: 24%;
|
752 |
-
}
|
753 |
-
|
754 |
-
.wpr-mobile-toggle-v2 .wpr-mobile-toggle-line:nth-child(3) {
|
755 |
-
width: 45%;
|
756 |
-
margin-left: 57%;
|
757 |
-
}
|
758 |
-
|
759 |
-
.wpr-mobile-toggle-v3 .wpr-mobile-toggle-line:nth-child(2) {
|
760 |
-
width: 75%;
|
761 |
-
margin-left: 15%;
|
762 |
-
}
|
763 |
-
|
764 |
-
.wpr-mobile-toggle-v4 .wpr-mobile-toggle-line:nth-child(1),
|
765 |
-
.wpr-mobile-toggle-v4 .wpr-mobile-toggle-line:nth-child(3) {
|
766 |
-
width: 75%;
|
767 |
-
margin-left: 25%;
|
768 |
-
}
|
769 |
-
|
770 |
-
.wpr-mobile-toggle-v4 .wpr-mobile-toggle-line:nth-child(2) {
|
771 |
-
width: 75%;
|
772 |
-
margin-right: 25%;
|
773 |
-
}
|
774 |
-
|
775 |
-
.wpr-mobile-toggle-v5 .wpr-mobile-toggle-line:nth-child(1) {
|
776 |
-
display: none;
|
777 |
-
}
|
778 |
-
|
779 |
-
.wpr-nav-menu-bp-always .wpr-nav-menu-container {
|
780 |
-
display: none;
|
781 |
-
}
|
782 |
-
|
783 |
-
.wpr-nav-menu-bp-always .wpr-mobile-nav-menu-container {
|
784 |
-
display: block;
|
785 |
-
}
|
786 |
-
|
787 |
-
@media screen and ( max-width: 1025px) {
|
788 |
-
.wpr-nav-menu-bp-tablet .wpr-nav-menu-container {
|
789 |
-
display: none;
|
790 |
-
}
|
791 |
-
.wpr-nav-menu-bp-tablet .wpr-mobile-nav-menu-container {
|
792 |
-
display: block;
|
793 |
-
}
|
794 |
-
}
|
795 |
-
|
796 |
-
@media screen and ( max-width: 767px) {
|
797 |
-
.wpr-nav-menu-bp-pro-nn .wpr-nav-menu-container,
|
798 |
-
.wpr-nav-menu-bp-pro-al .wpr-nav-menu-container,
|
799 |
-
.wpr-nav-menu-bp-mobile .wpr-nav-menu-container {
|
800 |
-
display: none;
|
801 |
-
}
|
802 |
-
.wpr-nav-menu-bp-pro-nn .wpr-mobile-nav-menu-container,
|
803 |
-
.wpr-nav-menu-bp-pro-al .wpr-mobile-nav-menu-container,
|
804 |
-
.wpr-nav-menu-bp-mobile .wpr-mobile-nav-menu-container {
|
805 |
-
display: block;
|
806 |
-
}
|
807 |
-
}
|
808 |
-
|
809 |
-
|
810 |
-
/* Highlight Active */
|
811 |
-
.wpr-pointer-line-fx .wpr-active-menu-item:before,
|
812 |
-
.wpr-pointer-line-fx .wpr-active-menu-item:after,
|
813 |
-
.wpr-pointer-border-fx .wpr-active-menu-item:before,
|
814 |
-
.wpr-pointer-background-fx .wpr-active-menu-item:before {
|
815 |
-
opacity: 1 !important;
|
816 |
-
}
|
817 |
-
|
818 |
-
.wpr-pointer-fx-none {
|
819 |
-
-webkit-transition-duration: 0s !important;
|
820 |
-
-o-transition-duration: 0s !important;
|
821 |
-
transition-duration: 0s !important;
|
822 |
-
}
|
823 |
-
|
824 |
-
.wpr-pointer-overline.wpr-pointer-fx-slide .wpr-active-menu-item:before,
|
825 |
-
.wpr-pointer-underline.wpr-pointer-fx-slide .wpr-active-menu-item:after,
|
826 |
-
.wpr-pointer-double-line.wpr-pointer-fx-slide .wpr-active-menu-item:before,
|
827 |
-
.wpr-pointer-double-line.wpr-pointer-fx-slide .wpr-active-menu-item:after,
|
828 |
-
.wpr-pointer-overline.wpr-pointer-fx-grow .wpr-active-menu-item:before,
|
829 |
-
.wpr-pointer-underline.wpr-pointer-fx-grow .wpr-active-menu-item:after,
|
830 |
-
.wpr-pointer-double-line.wpr-pointer-fx-grow .wpr-active-menu-item:before,
|
831 |
-
.wpr-pointer-double-line.wpr-pointer-fx-grow .wpr-active-menu-item:after {
|
832 |
-
width: 100%;
|
833 |
-
}
|
834 |
-
|
835 |
-
.wpr-pointer-line-fx.wpr-pointer-fx-drop .wpr-active-menu-item:before {
|
836 |
-
top: 0;
|
837 |
-
}
|
838 |
-
|
839 |
-
.wpr-pointer-line-fx.wpr-pointer-fx-drop .wpr-active-menu-item:after {
|
840 |
-
bottom: 0 !important;
|
841 |
-
}
|
842 |
-
|
843 |
-
.wpr-pointer-border-fx.wpr-pointer-fx-grow .wpr-active-menu-item:before,
|
844 |
-
.wpr-pointer-border-fx.wpr-pointer-fx-shrink .wpr-active-menu-item:before,
|
845 |
-
.wpr-pointer-background-fx.wpr-pointer-fx-grow .wpr-active-menu-item:before,
|
846 |
-
.wpr-pointer-background-fx.wpr-pointer-fx-shrink .wpr-active-menu-item:before,
|
847 |
-
.wpr-pointer-background-fx.wpr-pointer-fx-sweep .wpr-active-menu-item:before {
|
848 |
-
-webkit-transform: scale(1);
|
849 |
-
-ms-transform: scale(1);
|
850 |
-
transform: scale(1);
|
851 |
-
}
|
852 |
-
|
853 |
-
.wpr-pointer-background-fx.wpr-pointer-fx-skew .wpr-active-menu-item:before {
|
854 |
-
-webkit-transform: perspective(600px) rotateX(0deg);
|
855 |
-
transform: perspective(600px) rotateX(0deg);
|
856 |
-
}
|
857 |
-
|
858 |
-
|
859 |
-
/* WP Default Fix */
|
860 |
-
.wpr-mobile-nav-menu .sub-menu-toggle {
|
861 |
-
display: none !important;
|
862 |
-
}
|
863 |
-
|
864 |
-
|
865 |
-
/* Defaults */
|
866 |
-
.elementor-widget-wpr-nav-menu .wpr-nav-menu .wpr-menu-item,
|
867 |
-
.elementor-widget-wpr-nav-menu .wpr-mobile-nav-menu a,
|
868 |
-
.elementor-widget-wpr-nav-menu .wpr-mobile-toggle-text {
|
869 |
-
line-height: 26px;
|
870 |
-
}
|
871 |
-
|
872 |
-
.elementor-widget-wpr-nav-menu .wpr-sub-menu .wpr-sub-menu-item {
|
873 |
-
font-size: 14px;
|
874 |
-
}
|
875 |
-
|
876 |
-
|
877 |
-
|
878 |
-
/*--------------------------------------------------------------
|
879 |
-
== Mega Menu
|
880 |
-
--------------------------------------------------------------*/
|
881 |
-
.wpr-mega-menu {
|
882 |
-
position: relative;
|
883 |
-
}
|
884 |
-
|
885 |
-
.wpr-mega-menu a.wpr-menu-item,
|
886 |
-
.wpr-mega-menu a.wpr-sub-menu-item {
|
887 |
-
display: -webkit-box;
|
888 |
-
display: -ms-flexbox;
|
889 |
-
display: flex;
|
890 |
-
-webkit-box-align: center;
|
891 |
-
-ms-flex-align: center;
|
892 |
-
align-items: center;
|
893 |
-
}
|
894 |
-
|
895 |
-
.wpr-mega-menu .wpr-pointer-item:before,
|
896 |
-
.wpr-mega-menu .wpr-pointer-item:after {
|
897 |
-
position: absolute;
|
898 |
-
}
|
899 |
-
|
900 |
-
.wpr-mega-menu .wpr-sub-icon {
|
901 |
-
margin-left: auto;
|
902 |
-
}
|
903 |
-
|
904 |
-
.wpr-nav-menu-horizontal .wpr-mega-menu .wpr-sub-icon {
|
905 |
-
margin-top: -1px;
|
906 |
-
}
|
907 |
-
|
908 |
-
.wpr-nav-menu-vertical .wpr-mega-menu .wpr-sub-icon,
|
909 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu > li > a > .wpr-mobile-sub-icon {
|
910 |
-
-webkit-transform: rotate(-90deg);
|
911 |
-
-ms-transform: rotate(-90deg);
|
912 |
-
transform: rotate(-90deg);
|
913 |
-
}
|
914 |
-
|
915 |
-
.wpr-mega-menu .wpr-sub-icon-rotate {
|
916 |
-
-webkit-transform: rotate(-90deg);
|
917 |
-
-ms-transform: rotate(-90deg);
|
918 |
-
transform: rotate(-90deg);
|
919 |
-
}
|
920 |
-
|
921 |
-
.wpr-sub-mega-menu {
|
922 |
-
display: none;
|
923 |
-
position: absolute;
|
924 |
-
z-index: 99999;
|
925 |
-
overflow: hidden;
|
926 |
-
width: 100%;
|
927 |
-
text-align: left;
|
928 |
-
}
|
929 |
-
|
930 |
-
.wpr-sub-mega-menu,
|
931 |
-
.wpr-sub-mega-menu ul {
|
932 |
-
font-size: 1rem;
|
933 |
-
}
|
934 |
-
|
935 |
-
.wpr-nav-menu-vertical .wpr-sub-mega-menu {
|
936 |
-
width: 840px;
|
937 |
-
}
|
938 |
-
|
939 |
-
li.wpr-mega-menu-pos-default {
|
940 |
-
position: static;
|
941 |
-
}
|
942 |
-
|
943 |
-
.wpr-mega-menu-pos-default .wpr-sub-mega-menu {
|
944 |
-
left: 0;
|
945 |
-
}
|
946 |
-
|
947 |
-
.wpr-mega-menu-width-full .wpr-sub-mega-menu {
|
948 |
-
width: 100vw;
|
949 |
-
}
|
950 |
-
|
951 |
-
.wpr-main-menu-align-center .wpr-nav-menu-horizontal .wpr-mega-menu-width-custom .wpr-sub-mega-menu {
|
952 |
-
left: 50%;
|
953 |
-
}
|
954 |
-
|
955 |
-
.wpr-mega-menu-icon {
|
956 |
-
position: relative;
|
957 |
-
top: -1px;
|
958 |
-
margin-right: 5px;
|
959 |
-
}
|
960 |
-
|
961 |
-
.wpr-mega-menu-badge {
|
962 |
-
font-size: 11px;
|
963 |
-
padding: 2px 5px;
|
964 |
-
line-height: 1;
|
965 |
-
}
|
966 |
-
|
967 |
-
.wpr-nav-menu-horizontal .wpr-mega-menu-badge {
|
968 |
-
position: absolute;
|
969 |
-
top: -4px;
|
970 |
-
right: 0;
|
971 |
-
}
|
972 |
-
|
973 |
-
.wpr-nav-menu-horizontal .wpr-mega-menu-badge:after {
|
974 |
-
content: ' ';
|
975 |
-
position: absolute;
|
976 |
-
top: 100%;
|
977 |
-
left: 50%;
|
978 |
-
-webkit-transform: translateX(-50%);
|
979 |
-
-ms-transform: translateX(-50%);
|
980 |
-
transform: translateX(-50%);
|
981 |
-
border-left: 3px solid transparent;
|
982 |
-
border-right: 3px solid transparent;
|
983 |
-
border-top-width: 3px;
|
984 |
-
border-top-style: solid;
|
985 |
-
border-top-color: inherit;
|
986 |
-
}
|
987 |
-
|
988 |
-
.wpr-nav-menu-vertical .wpr-mega-menu-badge,
|
989 |
-
.wpr-mobile-nav-menu .wpr-mega-menu-badge {
|
990 |
-
margin-left: 5px;
|
991 |
-
}
|
992 |
-
|
993 |
-
.wpr-nav-menu-vertical .wpr-mega-menu-badge {
|
994 |
-
margin-left: 5px;
|
995 |
-
vertical-align: middle;
|
996 |
-
position: relative;
|
997 |
-
top: -1px;
|
998 |
-
}
|
999 |
-
|
1000 |
-
.wpr-nav-menu-horizontal .wpr-mega-menu-badge-animation {
|
1001 |
-
-webkit-animation: badgeBounce 2s ease-in-out infinite;
|
1002 |
-
animation: badgeBounce 2s ease-in-out infinite;
|
1003 |
-
}
|
1004 |
-
|
1005 |
-
.wpr-nav-menu-vertical .wpr-mega-menu-badge-animation {
|
1006 |
-
-webkit-animation: badgeFade 2s ease-in-out infinite;
|
1007 |
-
animation: badgeFade 2s ease-in-out infinite;
|
1008 |
-
}
|
1009 |
-
|
1010 |
-
div[class*="wpr-sub-menu-fx"] .wpr-mega-menu .wpr-sub-menu,
|
1011 |
-
div[class*="wpr-sub-menu-fx"] .wpr-mega-menu .wpr-sub-mega-menu {
|
1012 |
-
display: block;
|
1013 |
-
visibility: hidden;
|
1014 |
-
opacity: 0;
|
1015 |
-
z-index: -1;
|
1016 |
-
-webkit-transition: all 0.2s ease-in;
|
1017 |
-
-o-transition: all 0.2s ease-in;
|
1018 |
-
transition: all 0.2s ease-in;
|
1019 |
-
}
|
1020 |
-
|
1021 |
-
div[class*="wpr-sub-menu-fx"] .wpr-mega-menu .wpr-sub-menu.wpr-animate-sub,
|
1022 |
-
div[class*="wpr-sub-menu-fx"] .wpr-mega-menu .wpr-sub-mega-menu.wpr-animate-sub {
|
1023 |
-
visibility: visible;
|
1024 |
-
opacity: 1;
|
1025 |
-
z-index: 9999;
|
1026 |
-
}
|
1027 |
-
|
1028 |
-
.wpr-sub-menu-fx-fade .wpr-sub-mega-menu {
|
1029 |
-
-webkit-transition: all 0.3s ease-in;
|
1030 |
-
-o-transition: all 0.3s ease-in;
|
1031 |
-
transition: all 0.3s ease-in;
|
1032 |
-
}
|
1033 |
-
|
1034 |
-
.wpr-sub-menu-fx-move-up .wpr-sub-menu,
|
1035 |
-
.wpr-sub-menu-fx-move-up .wpr-sub-mega-menu {
|
1036 |
-
margin-top: 10px;
|
1037 |
-
}
|
1038 |
-
|
1039 |
-
.wpr-sub-menu-fx-move-down .wpr-sub-menu,
|
1040 |
-
.wpr-sub-menu-fx-move-down .wpr-sub-mega-menu {
|
1041 |
-
margin-top: -10px;
|
1042 |
-
}
|
1043 |
-
|
1044 |
-
.wpr-sub-menu-fx-move-left .wpr-sub-menu,
|
1045 |
-
.wpr-sub-menu-fx-move-left .wpr-sub-mega-menu {
|
1046 |
-
margin-left: 10px;
|
1047 |
-
}
|
1048 |
-
|
1049 |
-
.wpr-sub-menu-fx-move-right .wpr-sub-menu,
|
1050 |
-
.wpr-sub-menu-fx-move-right .wpr-sub-mega-menu {
|
1051 |
-
margin-left: -10px;
|
1052 |
-
}
|
1053 |
-
|
1054 |
-
.wpr-sub-menu-fx-move-up .wpr-sub-menu.wpr-animate-sub,
|
1055 |
-
.wpr-sub-menu-fx-move-up .wpr-sub-mega-menu.wpr-animate-sub,
|
1056 |
-
.wpr-sub-menu-fx-move-down .wpr-sub-menu.wpr-animate-sub,
|
1057 |
-
.wpr-sub-menu-fx-move-down .wpr-sub-mega-menu.wpr-animate-sub {
|
1058 |
-
margin-top: 0;
|
1059 |
-
}
|
1060 |
-
|
1061 |
-
.wpr-sub-menu-fx-move-left .wpr-sub-menu.wpr-animate-sub,
|
1062 |
-
.wpr-sub-menu-fx-move-left .wpr-sub-mega-menu.wpr-animate-sub,
|
1063 |
-
.wpr-sub-menu-fx-move-right .wpr-sub-menu.wpr-animate-sub,
|
1064 |
-
.wpr-sub-menu-fx-move-right .wpr-sub-mega-menu.wpr-animate-sub {
|
1065 |
-
margin-left: 0;
|
1066 |
-
}
|
1067 |
-
|
1068 |
-
@-webkit-keyframes badgeBounce {
|
1069 |
-
0% {
|
1070 |
-
-webkit-transform:translateY(0);
|
1071 |
-
transform:translateY(0);
|
1072 |
-
}
|
1073 |
-
50% {
|
1074 |
-
-webkit-transform:translateY(-25%);
|
1075 |
-
transform:translateY(-25%);
|
1076 |
-
}
|
1077 |
-
0% {
|
1078 |
-
-webkit-transform:translateY(0);
|
1079 |
-
transform:translateY(0);
|
1080 |
-
}
|
1081 |
-
}
|
1082 |
-
|
1083 |
-
@keyframes badgeBounce {
|
1084 |
-
0% {
|
1085 |
-
-webkit-transform:translateY(0);
|
1086 |
-
transform:translateY(0);
|
1087 |
-
}
|
1088 |
-
50% {
|
1089 |
-
-webkit-transform:translateY(-25%);
|
1090 |
-
transform:translateY(-25%);
|
1091 |
-
}
|
1092 |
-
0% {
|
1093 |
-
-webkit-transform:translateY(0);
|
1094 |
-
transform:translateY(0);
|
1095 |
-
}
|
1096 |
-
}
|
1097 |
-
|
1098 |
-
@-webkit-keyframes badgeFade {
|
1099 |
-
0% {
|
1100 |
-
opacity: 1
|
1101 |
-
}
|
1102 |
-
50% {
|
1103 |
-
opacity: 0.5
|
1104 |
-
}
|
1105 |
-
0% {
|
1106 |
-
opacity: 1
|
1107 |
-
}
|
1108 |
-
}
|
1109 |
-
|
1110 |
-
@keyframes badgeFade {
|
1111 |
-
0% {
|
1112 |
-
opacity: 1
|
1113 |
-
}
|
1114 |
-
50% {
|
1115 |
-
opacity: 0.5
|
1116 |
-
}
|
1117 |
-
0% {
|
1118 |
-
opacity: 1
|
1119 |
-
}
|
1120 |
-
}
|
1121 |
-
|
1122 |
-
/* Mobile Mega Menu */
|
1123 |
-
.wpr-mobile-menu-display-dropdown .wpr-mobile-mega-menu-wrap {
|
1124 |
-
display: none;
|
1125 |
-
position: absolute;
|
1126 |
-
z-index: 9999;
|
1127 |
-
}
|
1128 |
-
|
1129 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu-wrap {
|
1130 |
-
display: block;
|
1131 |
-
position: fixed;
|
1132 |
-
top: 0;
|
1133 |
-
z-index: 9999;
|
1134 |
-
height: 100%;
|
1135 |
-
overflow: hidden;
|
1136 |
-
-webkit-transition-property: -webkit-transform;
|
1137 |
-
transition-property: -webkit-transform;
|
1138 |
-
-o-transition-property: transform;
|
1139 |
-
transition-property: transform;
|
1140 |
-
transition-property: transform, -webkit-transform;
|
1141 |
-
}
|
1142 |
-
|
1143 |
-
.admin-bar .wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu-wrap {
|
1144 |
-
top: 32px;
|
1145 |
-
}
|
1146 |
-
|
1147 |
-
.wpr-mobile-menu-offcanvas-slide-left .wpr-mobile-mega-menu-wrap,
|
1148 |
-
.wpr-mobile-menu-offcanvas-slide-center .wpr-mobile-mega-menu-wrap {
|
1149 |
-
left: 0;
|
1150 |
-
-webkit-transform: translateX(-100%);
|
1151 |
-
-ms-transform: translateX(-100%);
|
1152 |
-
transform: translateX(-100%);
|
1153 |
-
}
|
1154 |
-
|
1155 |
-
.wpr-mobile-menu-offcanvas-slide-right .wpr-mobile-mega-menu-wrap {
|
1156 |
-
right: 0;
|
1157 |
-
-webkit-transform: translateX(100%);
|
1158 |
-
-ms-transform: translateX(100%);
|
1159 |
-
transform: translateX(100%);
|
1160 |
-
}
|
1161 |
-
|
1162 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu-open {
|
1163 |
-
-webkit-transform: translateX(0);
|
1164 |
-
-ms-transform: translateX(0);
|
1165 |
-
transform: translateX(0);
|
1166 |
-
}
|
1167 |
-
|
1168 |
-
.wpr-mobile-mega-menu-overlay {
|
1169 |
-
opacity: 0;
|
1170 |
-
visibility: hidden;
|
1171 |
-
position: fixed;
|
1172 |
-
top: 0;
|
1173 |
-
left: 0;
|
1174 |
-
z-index: 9998;
|
1175 |
-
width: 100%;
|
1176 |
-
height: 100%;
|
1177 |
-
-webkit-transition: opacity 0.2s ease-in;
|
1178 |
-
-o-transition: opacity 0.2s ease-in;
|
1179 |
-
transition: opacity 0.2s ease-in;
|
1180 |
-
}
|
1181 |
-
|
1182 |
-
.wpr-mobile-mega-menu-open + .wpr-mobile-mega-menu-overlay {
|
1183 |
-
opacity: 1;
|
1184 |
-
visibility: visible;
|
1185 |
-
}
|
1186 |
-
|
1187 |
-
.mobile-mega-menu-header {
|
1188 |
-
display: -webkit-box;
|
1189 |
-
display: -ms-flexbox;
|
1190 |
-
display: flex;
|
1191 |
-
}
|
1192 |
-
|
1193 |
-
.mobile-mega-menu-close {
|
1194 |
-
margin-left: auto;
|
1195 |
-
cursor: pointer;
|
1196 |
-
}
|
1197 |
-
|
1198 |
-
.wpr-mobile-mega-menu .wpr-mobile-menu-item,
|
1199 |
-
.wpr-mobile-mega-menu .wpr-mobile-sub-menu-item {
|
1200 |
-
display: -webkit-box;
|
1201 |
-
display: -ms-flexbox;
|
1202 |
-
display: flex;
|
1203 |
-
-webkit-box-align: center;
|
1204 |
-
-ms-flex-align: center;
|
1205 |
-
align-items: center;
|
1206 |
-
}
|
1207 |
-
|
1208 |
-
.wpr-mobile-mega-menu .wpr-mobile-sub-icon {
|
1209 |
-
margin-left: auto;
|
1210 |
-
font-size: 13px;
|
1211 |
-
}
|
1212 |
-
|
1213 |
-
.wpr-mobile-mega-menu > li > a > .wpr-mobile-sub-icon {
|
1214 |
-
display: -webkit-box;
|
1215 |
-
display: -ms-flexbox;
|
1216 |
-
display: flex;
|
1217 |
-
-webkit-box-align: end;
|
1218 |
-
-ms-flex-align: end;
|
1219 |
-
align-items: flex-end;
|
1220 |
-
position: absolute;
|
1221 |
-
right: 0;
|
1222 |
-
}
|
1223 |
-
|
1224 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu li {
|
1225 |
-
overflow: hidden;
|
1226 |
-
}
|
1227 |
-
|
1228 |
-
.wpr-mobile-mega-menu a:after {
|
1229 |
-
display: none;
|
1230 |
-
}
|
1231 |
-
|
1232 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu {
|
1233 |
-
position: relative;
|
1234 |
-
}
|
1235 |
-
|
1236 |
-
.wpr-mobile-mega-menu > li > a,
|
1237 |
-
.wpr-mobile-mega-menu .wpr-mobile-sub-menu > li > a {
|
1238 |
-
position: relative;
|
1239 |
-
left: 0;
|
1240 |
-
-webkit-transition-property: left;
|
1241 |
-
-o-transition-property: left;
|
1242 |
-
transition-property: left;
|
1243 |
-
}
|
1244 |
-
|
1245 |
-
.wpr-mobile-mega-menu.wpr-mobile-sub-offcanvas-open > li > a {
|
1246 |
-
left: -100%;
|
1247 |
-
}
|
1248 |
-
|
1249 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-sub-mega-menu,
|
1250 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu > li > .wpr-mobile-sub-menu {
|
1251 |
-
display: block;
|
1252 |
-
position: absolute;
|
1253 |
-
width: 100%;
|
1254 |
-
top: 0;
|
1255 |
-
left: 100%;
|
1256 |
-
z-index: 1;
|
1257 |
-
-webkit-transition-property: left;
|
1258 |
-
-o-transition-property: left;
|
1259 |
-
transition-property: left;
|
1260 |
-
}
|
1261 |
-
|
1262 |
-
.wpr-mobile-sub-offcanvas-open .wpr-mobile-sub-open > .wpr-mobile-sub-mega-menu,
|
1263 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu > .wpr-mobile-sub-open > .wpr-mobile-sub-menu {
|
1264 |
-
left: 0;
|
1265 |
-
}
|
1266 |
-
|
1267 |
-
.wpr-mobile-mega-menu.wpr-mobile-sub-offcanvas-open > li > a {
|
1268 |
-
margin-right: 20px;
|
1269 |
-
}
|
1270 |
-
|
1271 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-sub-offcanvas-open .wpr-mobile-sub-open .wpr-mobile-sub-mega-menu,
|
1272 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu > .wpr-mobile-sub-open > .wpr-mobile-sub-menu {
|
1273 |
-
margin-left: 0 !important;
|
1274 |
-
}
|
1275 |
-
|
1276 |
-
.wpr-mobile-menu-display-offcanvas .wpr-mobile-mega-menu .wpr-mobile-sub-menu .wpr-mobile-sub-menu {
|
1277 |
-
padding-left: 10px;
|
1278 |
-
}
|
1279 |
-
|
1280 |
-
.wpr-mobile-sub-offcanvas-open .wpr-mobile-sub-open .wpr-mobile-sub-menu {
|
1281 |
-
display: block;
|
1282 |
-
}
|
1283 |
-
|
1284 |
-
.wpr-menu-offcanvas-back {
|
1285 |
-
display: none;
|
1286 |
-
}
|
1287 |
-
|
1288 |
-
.wpr-mobile-menu-display-offcanvas .wpr-menu-offcanvas-back {
|
1289 |
-
display: block;
|
1290 |
-
cursor: pointer;
|
1291 |
-
}
|
1292 |
-
|
1293 |
-
.wpr-mobile-menu-display-dropdown .wpr-mobile-mega-menu > li > .wpr-mobile-sub-menu > li:first-child {
|
1294 |
-
display: none;
|
1295 |
-
}
|
1296 |
-
|
1297 |
-
|
1298 |
-
/*--------------------------------------------------------------
|
1299 |
-
== Onepage Nav
|
1300 |
-
--------------------------------------------------------------*/
|
1301 |
-
.wpr-onepage-nav {
|
1302 |
-
position: fixed;
|
1303 |
-
z-index: 99999;
|
1304 |
-
display: -webkit-box;
|
1305 |
-
display: -ms-flexbox;
|
1306 |
-
display: flex;
|
1307 |
-
-webkit-box-orient: vertical;
|
1308 |
-
-webkit-box-direction: normal;
|
1309 |
-
-ms-flex-direction: column;
|
1310 |
-
flex-direction: column;
|
1311 |
-
-webkit-box-align: center;
|
1312 |
-
-ms-flex-align: center;
|
1313 |
-
align-items: center;
|
1314 |
-
-webkit-box-pack: center;
|
1315 |
-
-ms-flex-pack: center;
|
1316 |
-
justify-content: center;
|
1317 |
-
}
|
1318 |
-
|
1319 |
-
.wpr-onepage-nav-item {
|
1320 |
-
position: relative;
|
1321 |
-
}
|
1322 |
-
|
1323 |
-
.wpr-onepage-nav-item:last-child {
|
1324 |
-
margin-bottom: 0 !important;
|
1325 |
-
}
|
1326 |
-
|
1327 |
-
.wpr-onepage-nav-vr-top .wpr-onepage-nav {
|
1328 |
-
top: 0;
|
1329 |
-
}
|
1330 |
-
|
1331 |
-
.wpr-onepage-nav-vr-middle .wpr-onepage-nav {
|
1332 |
-
top: 50%;
|
1333 |
-
-ms-transform: translateY(-50%);
|
1334 |
-
transform: translateY(-50%);
|
1335 |
-
-webkit-transform: translateY(-50%);
|
1336 |
-
}
|
1337 |
-
|
1338 |
-
.wpr-onepage-nav-vr-bottom .wpr-onepage-nav {
|
1339 |
-
bottom: 0;
|
1340 |
-
}
|
1341 |
-
|
1342 |
-
.wpr-onepage-nav-hr-left .wpr-onepage-nav {
|
1343 |
-
left: 0;
|
1344 |
-
}
|
1345 |
-
|
1346 |
-
.wpr-onepage-nav-hr-right .wpr-onepage-nav {
|
1347 |
-
right: 0;
|
1348 |
-
}
|
1349 |
-
|
1350 |
-
.wpr-onepage-nav-item .wpr-tooltip {
|
1351 |
-
text-align: center;
|
1352 |
-
}
|
1353 |
-
|
1354 |
-
.wpr-onepage-nav-item:hover .wpr-tooltip {
|
1355 |
-
opacity: 1;
|
1356 |
-
visibility: visible;
|
1357 |
-
}
|
1358 |
-
|
1359 |
-
.wpr-onepage-nav-hr-left .wpr-onepage-nav-item:hover .wpr-tooltip {
|
1360 |
-
-ms-transform: translate(10%, -50%);
|
1361 |
-
transform: translate(10%, -50%);
|
1362 |
-
-webkit-transform: translate(10%, -50%);
|
1363 |
-
}
|
1364 |
-
|
1365 |
-
.wpr-onepage-nav-hr-left .wpr-onepage-nav-item .wpr-tooltip {
|
1366 |
-
top: 50%;
|
1367 |
-
left: 100%;
|
1368 |
-
-ms-transform: translate(20%, -50%);
|
1369 |
-
transform: translate(20%, -50%);
|
1370 |
-
-webkit-transform: translate(20%, -50%);
|
1371 |
-
}
|
1372 |
-
|
1373 |
-
.wpr-onepage-nav-hr-left .wpr-onepage-nav-item .wpr-tooltip:before {
|
1374 |
-
left: auto;
|
1375 |
-
left: -8px;
|
1376 |
-
top: 50%;
|
1377 |
-
-webkit-transform: translateY(-50%) rotate(90deg);
|
1378 |
-
-ms-transform: translateY(-50%) rotate(90deg);
|
1379 |
-
transform: translateY(-50%) rotate(90deg);
|
1380 |
-
}
|
1381 |
-
|
1382 |
-
.wpr-onepage-nav-hr-right .wpr-onepage-nav-item:hover .wpr-tooltip {
|
1383 |
-
-ms-transform: translate(-110%, -50%);
|
1384 |
-
transform: translate(-110%, -50%);
|
1385 |
-
-webkit-transform: translate(-110%, -50%);
|
1386 |
-
}
|
1387 |
-
|
1388 |
-
.wpr-onepage-nav-hr-right .wpr-onepage-nav-item .wpr-tooltip {
|
1389 |
-
top: 50%;
|
1390 |
-
left: 0;
|
1391 |
-
-ms-transform: translate(-120%, -50%);
|
1392 |
-
transform: translate(-120%, -50%);
|
1393 |
-
-webkit-transform: translate(-120%, -50%);
|
1394 |
-
}
|
1395 |
-
|
1396 |
-
.wpr-onepage-nav-hr-right .wpr-onepage-nav-item .wpr-tooltip:before {
|
1397 |
-
left: auto;
|
1398 |
-
right: -8px;
|
1399 |
-
top: 50%;
|
1400 |
-
-webkit-transform: translateY(-50%) rotate(-90deg);
|
1401 |
-
-ms-transform: translateY(-50%) rotate(-90deg);
|
1402 |
-
transform: translateY(-50%) rotate(-90deg);
|
1403 |
-
}
|
1404 |
-
|
1405 |
-
|
1406 |
-
/* Defaults */
|
1407 |
-
.elementor-widget-wpr-onepage-nav .wpr-onepage-nav {
|
1408 |
-
background-color: #605BE5;
|
1409 |
-
-webkit-box-shadow: 0px 0px 15px 0px #D7D7D7;
|
1410 |
-
box-shadow: 0px 0px 15px 0px #D7D7D7;
|
1411 |
-
}
|
1412 |
-
|
1413 |
-
.elementor-widget-wpr-onepage-nav .wpr-onepage-nav-item .wpr-tooltip {
|
1414 |
-
font-size: 14px;
|
1415 |
-
}
|
1416 |
-
|
1417 |
-
|
1418 |
-
/*--------------------------------------------------------------
|
1419 |
-
== Single Post Elements
|
1420 |
-
--------------------------------------------------------------*/
|
1421 |
-
.wpr-post-title,
|
1422 |
-
.wpr-archive-title,
|
1423 |
-
.wpr-author-box-name,
|
1424 |
-
.wpr-author-box-title {
|
1425 |
-
margin: 0;
|
1426 |
-
}
|
1427 |
-
|
1428 |
-
.wpr-archive-title:after {
|
1429 |
-
content: ' ';
|
1430 |
-
display: block;
|
1431 |
-
}
|
1432 |
-
|
1433 |
-
/* Featured Media */
|
1434 |
-
.wpr-featured-media-image {
|
1435 |
-
position: relative;
|
1436 |
-
display: inline-block;
|
1437 |
-
vertical-align: middle;
|
1438 |
-
}
|
1439 |
-
|
1440 |
-
.wpr-featured-media-caption {
|
1441 |
-
position: absolute;
|
1442 |
-
display: -webkit-box;
|
1443 |
-
display: -ms-flexbox;
|
1444 |
-
display: flex;
|
1445 |
-
width: 100%;
|
1446 |
-
height: 100%;
|
1447 |
-
}
|
1448 |
-
|
1449 |
-
.wpr-featured-media-caption span {
|
1450 |
-
display: inline-block;
|
1451 |
-
}
|
1452 |
-
|
1453 |
-
/* [data-caption="standard"],
|
1454 |
-
[data-caption="gallery"]*/
|
1455 |
-
.wpr-fm-image-caption-hover .wpr-featured-media-caption,
|
1456 |
-
.wpr-fm-image-caption-hover .wpr-featured-media-caption {
|
1457 |
-
opacity: 0;
|
1458 |
-
-webkit-transition-property: opacity;
|
1459 |
-
-o-transition-property: opacity;
|
1460 |
-
transition-property: opacity;
|
1461 |
-
}
|
1462 |
-
|
1463 |
-
/* [data-caption="standard"],
|
1464 |
-
[data-caption="gallery"] */
|
1465 |
-
.wpr-fm-image-caption-hover:hover .wpr-featured-media-caption,
|
1466 |
-
.wpr-fm-image-caption-hover:hover .wpr-featured-media-caption {
|
1467 |
-
opacity: 1;
|
1468 |
-
}
|
1469 |
-
|
1470 |
-
.wpr-gallery-slider {
|
1471 |
-
opacity: 0;
|
1472 |
-
}
|
1473 |
-
|
1474 |
-
.wpr-gallery-lightbox-yes .wpr-featured-media-image {
|
1475 |
-
cursor: pointer;
|
1476 |
-
}
|
1477 |
-
|
1478 |
-
.wpr-gallery-slide img {
|
1479 |
-
margin: 0 auto;
|
1480 |
-
}
|
1481 |
-
|
1482 |
-
|
1483 |
-
/* Gallery Slider Navigation */
|
1484 |
-
.wpr-gallery-slider-arrows-wrap {
|
1485 |
-
position: absolute;
|
1486 |
-
top: 50%;
|
1487 |
-
-webkit-transform: translateY(-50%);
|
1488 |
-
-ms-transform: translateY(-50%);
|
1489 |
-
transform: translateY(-50%);
|
1490 |
-
left: 0;
|
1491 |
-
z-index: 1;
|
1492 |
-
width: 100%;
|
1493 |
-
display: -webkit-box;
|
1494 |
-
display: -ms-flexbox;
|
1495 |
-
display: flex;
|
1496 |
-
-webkit-box-pack: justify;
|
1497 |
-
-ms-flex-pack: justify;
|
1498 |
-
justify-content: space-between;
|
1499 |
-
-webkit-box-align: center;
|
1500 |
-
-ms-flex-align: center;
|
1501 |
-
align-items: center;
|
1502 |
-
}
|
1503 |
-
|
1504 |
-
.wpr-thumbnail-slider-arrows-wrap {
|
1505 |
-
position: absolute;
|
1506 |
-
top: 90%;
|
1507 |
-
left: 0;
|
1508 |
-
z-index: 1;
|
1509 |
-
width: 100%;
|
1510 |
-
display: -webkit-box;
|
1511 |
-
display: -ms-flexbox;
|
1512 |
-
display: flex;
|
1513 |
-
-webkit-box-pack: justify;
|
1514 |
-
-ms-flex-pack: justify;
|
1515 |
-
justify-content: space-between;
|
1516 |
-
-webkit-box-align: center;
|
1517 |
-
-ms-flex-align: center;
|
1518 |
-
align-items: center;
|
1519 |
-
}
|
1520 |
-
|
1521 |
-
.wpr-gallery-slider-arrow,
|
1522 |
-
.wpr-thumbnail-slider-arrow {
|
1523 |
-
position: absolute;
|
1524 |
-
top: 50%;
|
1525 |
-
display: -webkit-box;
|
1526 |
-
display: -ms-flexbox;
|
1527 |
-
display: flex;
|
1528 |
-
-webkit-box-pack: center;
|
1529 |
-
-ms-flex-pack: center;
|
1530 |
-
justify-content: center;
|
1531 |
-
-webkit-box-align: center;
|
1532 |
-
-ms-flex-align: center;
|
1533 |
-
align-items: center;
|
1534 |
-
z-index: 120;
|
1535 |
-
-webkit-box-sizing: content-box;
|
1536 |
-
box-sizing: content-box;
|
1537 |
-
-webkit-transition: all .5s;
|
1538 |
-
-o-transition: all .5s;
|
1539 |
-
transition: all .5s;
|
1540 |
-
text-align: center;
|
1541 |
-
cursor: pointer;
|
1542 |
-
}
|
1543 |
-
|
1544 |
-
.wpr-gallery-slider-arrow i,
|
1545 |
-
.wpr-thumbnail-slider-arrow i {
|
1546 |
-
display: block;
|
1547 |
-
width: 100%;
|
1548 |
-
/* height: 100%; */
|
1549 |
-
line-height: inherit;
|
1550 |
-
}
|
1551 |
-
|
1552 |
-
.wpr-gallery-slider-arrow {
|
1553 |
-
-webkit-transform: translateY(-50%);
|
1554 |
-
-ms-transform: translateY(-50%);
|
1555 |
-
transform: translateY(-50%);
|
1556 |
-
}
|
1557 |
-
|
1558 |
-
.wpr-product-media-slider-nav-fade .wpr-gallery-slider-arrow {
|
1559 |
-
opacity: 0;
|
1560 |
-
visibility: hidden;
|
1561 |
-
}
|
1562 |
-
|
1563 |
-
.wpr-product-media-slider-nav-fade .wpr-gallery-slider:hover .wpr-gallery-slider-arrow {
|
1564 |
-
opacity: 1;
|
1565 |
-
visibility: visible;
|
1566 |
-
}
|
1567 |
-
|
1568 |
-
.wpr-gallery-slider-nav-fade .wpr-gallery-slider-arrow {
|
1569 |
-
opacity: 0;
|
1570 |
-
visibility: hidden;
|
1571 |
-
}
|
1572 |
-
|
1573 |
-
.wpr-gallery-slider-nav-fade .flex-viewport:hover .wpr-gallery-slider-arrow {
|
1574 |
-
opacity: 1;
|
1575 |
-
visibility: visible;
|
1576 |
-
}
|
1577 |
-
|
1578 |
-
/* styles for product gallery from woo-builder */
|
1579 |
-
.wpr-thumbnail-slider-arrow {
|
1580 |
-
-webkit-transform: translateY(-50%);
|
1581 |
-
-ms-transform: translateY(-50%);
|
1582 |
-
transform: translateY(-50%);
|
1583 |
-
}
|
1584 |
-
|
1585 |
-
.wpr-thumbnail-slider-nav-fade .wpr-thumbnail-slider-arrow {
|
1586 |
-
opacity: 0;
|
1587 |
-
visibility: hidden;
|
1588 |
-
}
|
1589 |
-
|
1590 |
-
.wpr-thumbnail-slider-nav-fade .wpr-product-thumb-nav:hover .wpr-thumbnail-slider-arrow {
|
1591 |
-
opacity: 1;
|
1592 |
-
visibility: visible;
|
1593 |
-
}
|
1594 |
-
|
1595 |
-
.wpr-product-media-lightbox {
|
1596 |
-
position: absolute;
|
1597 |
-
top: 0;
|
1598 |
-
right: 0;
|
1599 |
-
z-index: 9;
|
1600 |
-
display: -webkit-box;
|
1601 |
-
display: -ms-flexbox;
|
1602 |
-
display: flex;
|
1603 |
-
-webkit-box-align: center;
|
1604 |
-
-ms-flex-align: center;
|
1605 |
-
align-items: center;
|
1606 |
-
-webkit-box-pack: center;
|
1607 |
-
-ms-flex-pack: center;
|
1608 |
-
justify-content: center;
|
1609 |
-
}
|
1610 |
-
|
1611 |
-
/* Gallery Slider Pagination */
|
1612 |
-
.wpr-gallery-slider-dots {
|
1613 |
-
position: absolute;
|
1614 |
-
display: inline-table;
|
1615 |
-
-webkit-transform: translate(-50%, -50%);
|
1616 |
-
-ms-transform: translate(-50%, -50%);
|
1617 |
-
transform: translate(-50%, -50%);
|
1618 |
-
z-index: 110;
|
1619 |
-
}
|
1620 |
-
|
1621 |
-
.wpr-gallery-slider-dots ul {
|
1622 |
-
list-style: none;
|
1623 |
-
margin: 0;
|
1624 |
-
padding: 0;
|
1625 |
-
}
|
1626 |
-
|
1627 |
-
.wpr-gallery-slider-dots li {
|
1628 |
-
float: left;
|
1629 |
-
}
|
1630 |
-
|
1631 |
-
.wpr-gallery-slider-dot {
|
1632 |
-
display: block;
|
1633 |
-
cursor: pointer;
|
1634 |
-
}
|
1635 |
-
|
1636 |
-
.wpr-gallery-slider-dots li:last-child .wpr-gallery-slider-dot {
|
1637 |
-
margin: 0 !important;
|
1638 |
-
}
|
1639 |
-
|
1640 |
-
|
1641 |
-
/* Author Box */
|
1642 |
-
.wpr-author-box-image {
|
1643 |
-
display: inline-block;
|
1644 |
-
overflow: hidden;
|
1645 |
-
}
|
1646 |
-
|
1647 |
-
.wpr-author-box-arrange-left .wpr-author-box {
|
1648 |
-
display: -webkit-box;
|
1649 |
-
display: -ms-flexbox;
|
1650 |
-
display: flex;
|
1651 |
-
}
|
1652 |
-
|
1653 |
-
.wpr-author-box-arrange-right .wpr-author-box {
|
1654 |
-
display: -webkit-box;
|
1655 |
-
display: -ms-flexbox;
|
1656 |
-
display: flex;
|
1657 |
-
-webkit-box-orient: horizontal;
|
1658 |
-
-webkit-box-direction: reverse;
|
1659 |
-
-ms-flex-direction: row-reverse;
|
1660 |
-
flex-direction: row-reverse;
|
1661 |
-
}
|
1662 |
-
|
1663 |
-
.wpr-author-box-arrange-left .wpr-author-box-image,
|
1664 |
-
.wpr-author-box-arrange-right .wpr-author-box-image {
|
1665 |
-
-ms-flex-negative: 0;
|
1666 |
-
flex-shrink: 0;
|
1667 |
-
}
|
1668 |
-
|
1669 |
-
.wpr-author-box-arrange-left .wpr-author-box-text,
|
1670 |
-
.wpr-author-box-arrange-right .wpr-author-box-text {
|
1671 |
-
-webkit-box-flex: 1;
|
1672 |
-
-ms-flex-positive: 1;
|
1673 |
-
flex-grow: 1;
|
1674 |
-
}
|
1675 |
-
|
1676 |
-
.wpr-author-box-btn {
|
1677 |
-
display: inline-block;
|
1678 |
-
}
|
1679 |
-
|
1680 |
-
|
1681 |
-
/* Post Navigation */
|
1682 |
-
.wpr-post-navigation-wrap {
|
1683 |
-
display: -webkit-box;
|
1684 |
-
display: -ms-flexbox;
|
1685 |
-
display: flex;
|
1686 |
-
}
|
1687 |
-
|
1688 |
-
.wpr-posts-navigation-svg-wrapper {
|
1689 |
-
display: -webkit-box;
|
1690 |
-
display: -ms-flexbox;
|
1691 |
-
display: flex;
|
1692 |
-
-webkit-box-align: center;
|
1693 |
-
-ms-flex-align: center;
|
1694 |
-
align-items: center;
|
1695 |
-
-webkit-box-pack: center;
|
1696 |
-
-ms-flex-pack: center;
|
1697 |
-
justify-content: center;
|
1698 |
-
}
|
1699 |
-
|
1700 |
-
.wpr-post-navigation-wrap>div:last-child {
|
1701 |
-
margin-right: 0 !important;
|
1702 |
-
}
|
1703 |
-
|
1704 |
-
.wpr-post-nav-fixed-default-wrap {
|
1705 |
-
position: fixed;
|
1706 |
-
bottom: 0;
|
1707 |
-
z-index: 999;
|
1708 |
-
}
|
1709 |
-
|
1710 |
-
.wpr-post-nav-fixed.wpr-post-navigation {
|
1711 |
-
position: fixed;
|
1712 |
-
-webkit-transform: translateY(-50%);
|
1713 |
-
-ms-transform: translateY(-50%);
|
1714 |
-
transform: translateY(-50%);
|
1715 |
-
z-index: 999;
|
1716 |
-
}
|
1717 |
-
|
1718 |
-
.wpr-post-nav-fixed.wpr-post-navigation a {
|
1719 |
-
display: block;
|
1720 |
-
}
|
1721 |
-
|
1722 |
-
.wpr-post-nav-fixed.wpr-post-navigation img {
|
1723 |
-
position: absolute;
|
1724 |
-
top: 0;
|
1725 |
-
max-width: none;
|
1726 |
-
}
|
1727 |
-
|
1728 |
-
.wpr-post-nav-fixed.wpr-post-nav-prev {
|
1729 |
-
left: 0;
|
1730 |
-
}
|
1731 |
-
|
1732 |
-
.wpr-post-nav-fixed.wpr-post-nav-next {
|
1733 |
-
right: 0;
|
1734 |
-
}
|
1735 |
-
|
1736 |
-
.wpr-post-nav-fixed.wpr-post-nav-hover img {
|
1737 |
-
opacity: 0;
|
1738 |
-
}
|
1739 |
-
|
1740 |
-
.wpr-post-nav-fixed.wpr-post-nav-hover.wpr-post-nav-prev img {
|
1741 |
-
-webkit-transform: perspective(600px) rotateY(90deg);
|
1742 |
-
transform: perspective(600px) rotateY(90deg);
|
1743 |
-
-webkit-transform-origin: center left 0;
|
1744 |
-
-ms-transform-origin: center left 0;
|
1745 |
-
transform-origin: center left 0;
|
1746 |
-
}
|
1747 |
-
|
1748 |
-
.wpr-post-nav-fixed.wpr-post-nav-hover.wpr-post-nav-next img {
|
1749 |
-
-webkit-transform: perspective(600px) rotateY(-90deg);
|
1750 |
-
transform: perspective(600px) rotateY(-90deg);
|
1751 |
-
-webkit-transform-origin: center right 0;
|
1752 |
-
-ms-transform-origin: center right 0;
|
1753 |
-
transform-origin: center right 0;
|
1754 |
-
}
|
1755 |
-
|
1756 |
-
.wpr-post-nav-fixed.wpr-post-nav-hover:hover img {
|
1757 |
-
opacity: 1;
|
1758 |
-
position: absolute;
|
1759 |
-
-webkit-transform: none;
|
1760 |
-
-ms-transform: none;
|
1761 |
-
transform: none;
|
1762 |
-
}
|
1763 |
-
|
1764 |
-
.wpr-post-nav-static.wpr-post-navigation {
|
1765 |
-
width: 50%;
|
1766 |
-
}
|
1767 |
-
|
1768 |
-
.wpr-post-navigation {
|
1769 |
-
-webkit-box-flex: 1;
|
1770 |
-
-ms-flex-positive: 1;
|
1771 |
-
flex-grow: 1;
|
1772 |
-
background-size: cover;
|
1773 |
-
background-position: center center;
|
1774 |
-
background-repeat: no-repeat;
|
1775 |
-
}
|
1776 |
-
|
1777 |
-
.wpr-post-navigation {
|
1778 |
-
position: relative;
|
1779 |
-
}
|
1780 |
-
|
1781 |
-
.wpr-post-navigation a {
|
1782 |
-
position: relative;
|
1783 |
-
z-index: 2;
|
1784 |
-
}
|
1785 |
-
|
1786 |
-
.wpr-post-nav-overlay {
|
1787 |
-
position: absolute;
|
1788 |
-
top: 0;
|
1789 |
-
left: 0;
|
1790 |
-
width: 100%;
|
1791 |
-
height: 100%;
|
1792 |
-
-webkit-transition: all 0.3s ease-in 0s;
|
1793 |
-
-o-transition: all 0.3s ease-in 0s;
|
1794 |
-
transition: all 0.3s ease-in 0s;
|
1795 |
-
}
|
1796 |
-
|
1797 |
-
.wpr-post-nav-back {
|
1798 |
-
-ms-flex-item-align: center;
|
1799 |
-
-ms-grid-row-align: center;
|
1800 |
-
align-self: center;
|
1801 |
-
font-size: 30px;
|
1802 |
-
}
|
1803 |
-
|
1804 |
-
.wpr-post-navigation a {
|
1805 |
-
display: -webkit-box;
|
1806 |
-
display: -ms-flexbox;
|
1807 |
-
display: flex;
|
1808 |
-
-webkit-box-align: center;
|
1809 |
-
-ms-flex-align: center;
|
1810 |
-
align-items: center;
|
1811 |
-
}
|
1812 |
-
|
1813 |
-
.wpr-post-nav-next a {
|
1814 |
-
-webkit-box-pack: end;
|
1815 |
-
-ms-flex-pack: end;
|
1816 |
-
justify-content: flex-end;
|
1817 |
-
}
|
1818 |
-
|
1819 |
-
.wpr-post-nav-labels {
|
1820 |
-
min-width: 0;
|
1821 |
-
}
|
1822 |
-
|
1823 |
-
.wpr-post-nav-labels h5 {
|
1824 |
-
display: -webkit-box;
|
1825 |
-
display: -ms-flexbox;
|
1826 |
-
display: flex;
|
1827 |
-
overflow: hidden;
|
1828 |
-
white-space: nowrap;
|
1829 |
-
-ms-text-overflow: ellipsis;
|
1830 |
-
-o-text-overflow: ellipsis;
|
1831 |
-
text-overflow: ellipsis;
|
1832 |
-
}
|
1833 |
-
|
1834 |
-
.wpr-post-nav-labels span {
|
1835 |
-
display: -webkit-box;
|
1836 |
-
display: -ms-flexbox;
|
1837 |
-
display: flex;
|
1838 |
-
}
|
1839 |
-
|
1840 |
-
.wpr-post-nav-next .wpr-post-nav-labels > span,
|
1841 |
-
.wpr-post-nav-next .wpr-post-nav-labels h5 {
|
1842 |
-
-webkit-box-pack: end;
|
1843 |
-
-ms-flex-pack: end;
|
1844 |
-
justify-content: flex-end;
|
1845 |
-
}
|
1846 |
-
|
1847 |
-
.wpr-post-navigation i {
|
1848 |
-
text-align: center;
|
1849 |
-
}
|
1850 |
-
|
1851 |
-
.wpr-post-nav-dividers {
|
1852 |
-
padding: 10px 0;
|
1853 |
-
border-top: 1px solid #000;
|
1854 |
-
border-bottom: 1px solid #000;
|
1855 |
-
}
|
1856 |
-
|
1857 |
-
.wpr-post-nav-divider {
|
1858 |
-
-ms-flex-item-align: stretch;
|
1859 |
-
-ms-grid-row-align: stretch;
|
1860 |
-
align-self: stretch;
|
1861 |
-
-ms-flex-negative: 0;
|
1862 |
-
flex-shrink: 0;
|
1863 |
-
}
|
1864 |
-
|
1865 |
-
.wpr-post-nav-dividers.wpr-post-navigation-wrap {
|
1866 |
-
padding-left: 0 !important;
|
1867 |
-
padding-right: 0 !important;
|
1868 |
-
}
|
1869 |
-
|
1870 |
-
.wpr-post-nav-back a {
|
1871 |
-
display: -webkit-box;
|
1872 |
-
display: -ms-flexbox;
|
1873 |
-
display: flex;
|
1874 |
-
-webkit-box-orient: horizontal;
|
1875 |
-
-webkit-box-direction: normal;
|
1876 |
-
-ms-flex-flow: row wrap;
|
1877 |
-
flex-flow: row wrap;
|
1878 |
-
-webkit-box-pack: center;
|
1879 |
-
-ms-flex-pack: center;
|
1880 |
-
justify-content: center;
|
1881 |
-
font-size: 0;
|
1882 |
-
}
|
1883 |
-
|
1884 |
-
.wpr-post-nav-back span {
|
1885 |
-
display: inline-block;
|
1886 |
-
border-style: solid;
|
1887 |
-
}
|
1888 |
-
|
1889 |
-
.wpr-post-nav-back span:nth-child(2n) {
|
1890 |
-
margin-right: 0 !important;
|
1891 |
-
}
|
1892 |
-
|
1893 |
-
|
1894 |
-
/* Post Info */
|
1895 |
-
.wpr-post-info {
|
1896 |
-
padding: 0;
|
1897 |
-
margin: 0;
|
1898 |
-
list-style: none;
|
1899 |
-
}
|
1900 |
-
|
1901 |
-
.wpr-post-info li {
|
1902 |
-
position: relative;
|
1903 |
-
}
|
1904 |
-
|
1905 |
-
.wpr-post-info-horizontal li {
|
1906 |
-
display: inline-block;
|
1907 |
-
}
|
1908 |
-
|
1909 |
-
.wpr-post-info-horizontal li:last-child {
|
1910 |
-
padding-right: 0 !important;
|
1911 |
-
}
|
1912 |
-
|
1913 |
-
.wpr-post-info-vertical li:last-child {
|
1914 |
-
padding-bottom: 0 !important;
|
1915 |
-
}
|
1916 |
-
|
1917 |
-
.wpr-post-info li .wpr-post-info-text {
|
1918 |
-
display: inline-block;
|
1919 |
-
text-align: left !important;
|
1920 |
-
}
|
1921 |
-
|
1922 |
-
.wpr-post-info li:after {
|
1923 |
-
content: ' ';
|
1924 |
-
display: inline-block;
|
1925 |
-
position: absolute;
|
1926 |
-
}
|
1927 |
-
|
1928 |
-
.wpr-post-info li:last-child:after {
|
1929 |
-
display: none;
|
1930 |
-
}
|
1931 |
-
|
1932 |
-
.wpr-post-info-horizontal li:after {
|
1933 |
-
top: 50%;
|
1934 |
-
-webkit-transform: translateY(-50%);
|
1935 |
-
-ms-transform: translateY(-50%);
|
1936 |
-
transform: translateY(-50%);
|
1937 |
-
}
|
1938 |
-
|
1939 |
-
.wpr-post-info-vertical li:after {
|
1940 |
-
bottom: 0;
|
1941 |
-
}
|
1942 |
-
|
1943 |
-
.wpr-post-info-align-left .wpr-post-info-vertical li:after {
|
1944 |
-
left: 0;
|
1945 |
-
}
|
1946 |
-
|
1947 |
-
.wpr-post-info-align-center .wpr-post-info-vertical li:after {
|
1948 |
-
left: 50%;
|
1949 |
-
-webkit-transform: translateX(-50%);
|
1950 |
-
-ms-transform: translateX(-50%);
|
1951 |
-
transform: translateX(-50%);
|
1952 |
-
}
|
1953 |
-
|
1954 |
-
.wpr-post-info-align-right .wpr-post-info-vertical li:after {
|
1955 |
-
right: 0;
|
1956 |
-
}
|
1957 |
-
|
1958 |
-
.wpr-post-info-text span {
|
1959 |
-
display: inline-block;
|
1960 |
-
}
|
1961 |
-
|
1962 |
-
.wpr-post-info-author img {
|
1963 |
-
display: inline-block;
|
1964 |
-
margin-right: 10px;
|
1965 |
-
vertical-align: middle;
|
1966 |
-
}
|
1967 |
-
|
1968 |
-
.wpr-post-info-custom-field a,
|
1969 |
-
.wpr-post-info-custom-field span {
|
1970 |
-
display: inline-block;
|
1971 |
-
}
|
1972 |
-
|
1973 |
-
|
1974 |
-
/* Post Comments */
|
1975 |
-
.wpr-comments-list,
|
1976 |
-
.wpr-comments-list ul.children {
|
1977 |
-
list-style: none;
|
1978 |
-
padding: 0;
|
1979 |
-
margin: 0;
|
1980 |
-
}
|
1981 |
-
|
1982 |
-
.wpr-comment-avatar {
|
1983 |
-
float: left;
|
1984 |
-
overflow: hidden;
|
1985 |
-
}
|
1986 |
-
|
1987 |
-
.wpr-comment-avatar img {
|
1988 |
-
margin: 0 !important;
|
1989 |
-
position: static !important;
|
1990 |
-
}
|
1991 |
-
|
1992 |
-
.wpr-comment-metadata>* {
|
1993 |
-
display: inline-block;
|
1994 |
-
}
|
1995 |
-
|
1996 |
-
.wpr-comment-metadata p {
|
1997 |
-
display: block;
|
1998 |
-
}
|
1999 |
-
|
2000 |
-
.wpr-comments-wrap .comment-reply-link {
|
2001 |
-
float: none !important;
|
2002 |
-
}
|
2003 |
-
|
2004 |
-
.wpr-comment-reply-separate.wpr-comment-reply-align-right .wpr-comment-reply {
|
2005 |
-
text-align: right;
|
2006 |
-
}
|
2007 |
-
|
2008 |
-
.wpr-comment-reply-inline.wpr-comment-reply-align-right .wpr-comment-reply {
|
2009 |
-
float: right;
|
2010 |
-
}
|
2011 |
-
|
2012 |
-
.wpr-comment-reply-inline.wpr-comment-reply-align-left .wpr-comment-reply:before {
|
2013 |
-
content: '\00a0|\00a0';
|
2014 |
-
}
|
2015 |
-
|
2016 |
-
.wpr-comment-reply a,
|
2017 |
-
.wpr-comments-navigation a,
|
2018 |
-
.wpr-comments-navigation span {
|
2019 |
-
display: inline-block;
|
2020 |
-
}
|
2021 |
-
|
2022 |
-
.wpr-comments-navigation-center,
|
2023 |
-
.wpr-comments-navigation-justify {
|
2024 |
-
text-align: center;
|
2025 |
-
}
|
2026 |
-
|
2027 |
-
.wpr-comments-navigation-left {
|
2028 |
-
text-align: left;
|
2029 |
-
}
|
2030 |
-
|
2031 |
-
.wpr-comments-navigation-right {
|
2032 |
-
text-align: right;
|
2033 |
-
}
|
2034 |
-
|
2035 |
-
.wpr-comments-navigation-justify a.prev {
|
2036 |
-
float: left;
|
2037 |
-
}
|
2038 |
-
|
2039 |
-
.wpr-comments-navigation-justify a.next {
|
2040 |
-
float: right;
|
2041 |
-
}
|
2042 |
-
|
2043 |
-
.wpr-comment-form .comment-notes {
|
2044 |
-
display: none;
|
2045 |
-
}
|
2046 |
-
|
2047 |
-
.wpr-comment-form-text,
|
2048 |
-
.wpr-comment-form-text textarea,
|
2049 |
-
.wpr-comment-form-author input,
|
2050 |
-
.wpr-comment-form-email input,
|
2051 |
-
.wpr-comment-form-url input {
|
2052 |
-
display: block;
|
2053 |
-
width: 100%;
|
2054 |
-
}
|
2055 |
-
|
2056 |
-
.wpr-comment-form {
|
2057 |
-
display: -webkit-box;
|
2058 |
-
display: -ms-flexbox;
|
2059 |
-
display: flex;
|
2060 |
-
-webkit-box-orient: vertical;
|
2061 |
-
-webkit-box-direction: normal;
|
2062 |
-
-ms-flex-direction: column;
|
2063 |
-
flex-direction: column;
|
2064 |
-
}
|
2065 |
-
|
2066 |
-
.wpr-comment-form label {
|
2067 |
-
margin-bottom: 10px;
|
2068 |
-
}
|
2069 |
-
|
2070 |
-
.wpr-comment-form-fields {
|
2071 |
-
display: -webkit-box;
|
2072 |
-
display: -ms-flexbox;
|
2073 |
-
display: flex;
|
2074 |
-
}
|
2075 |
-
|
2076 |
-
.wpr-cf-no-url .wpr-comment-form-email {
|
2077 |
-
margin-right: 0 !important;
|
2078 |
-
}
|
2079 |
-
|
2080 |
-
.wpr-cf-style-1 .wpr-comment-form-fields,
|
2081 |
-
.wpr-cf-style-4 .wpr-comment-form-fields {
|
2082 |
-
display: block;
|
2083 |
-
}
|
2084 |
-
|
2085 |
-
.wpr-comment-form .wpr-comment-form-fields>div {
|
2086 |
-
width: 100%;
|
2087 |
-
}
|
2088 |
-
|
2089 |
-
.wpr-cf-style-2 .wpr-comment-form-fields,
|
2090 |
-
.wpr-cf-style-5 .wpr-comment-form-fields,
|
2091 |
-
.wpr-comment-form[class*="wpr-cf-pro"] .wpr-comment-form-fields {
|
2092 |
-
display: block;
|
2093 |
-
width: 60%;
|
2094 |
-
}
|
2095 |
-
|
2096 |
-
.wpr-cf-style-2 .wpr-comment-form-fields > div,
|
2097 |
-
.wpr-cf-style-5 .wpr-comment-form-fields > div,
|
2098 |
-
.wpr-comment-form[class*="wpr-cf-pro"] > div {
|
2099 |
-
margin-right: 0 !important;
|
2100 |
-
}
|
2101 |
-
|
2102 |
-
.wpr-cf-style-4.wpr-comment-form .wpr-comment-form-fields,
|
2103 |
-
.wpr-cf-style-5.wpr-comment-form .wpr-comment-form-fields,
|
2104 |
-
.wpr-cf-style-6.wpr-comment-form .wpr-comment-form-fields,
|
2105 |
-
.wpr-comment-form[class*="wpr-cf-pro"] .wpr-comment-form-fields {
|
2106 |
-
-webkit-box-ordinal-group: 0;
|
2107 |
-
-ms-flex-order: -1;
|
2108 |
-
order: -1;
|
2109 |
-
}
|
2110 |
-
|
2111 |
-
.wpr-submit-comment {
|
2112 |
-
cursor: pointer;
|
2113 |
-
}
|
2114 |
-
|
2115 |
-
.wpr-comments-list .comment-respond {
|
2116 |
-
margin-bottom: 30px;
|
2117 |
-
}
|
2118 |
-
|
2119 |
-
/*--------------------------------------------------------------
|
2120 |
-
== Grid
|
2121 |
-
--------------------------------------------------------------*/
|
2122 |
-
|
2123 |
-
.wpr-hide-items-before-append {
|
2124 |
-
opacity: 0;
|
2125 |
-
}
|
2126 |
-
|
2127 |
-
.wpr-grid {
|
2128 |
-
opacity: 0;
|
2129 |
-
}
|
2130 |
-
|
2131 |
-
.wpr-grid-item {
|
2132 |
-
padding: 0 !important;
|
2133 |
-
float: left;
|
2134 |
-
position: relative;
|
2135 |
-
text-align: center;
|
2136 |
-
}
|
2137 |
-
|
2138 |
-
.wpr-grid-item,
|
2139 |
-
.wpr-grid-item * {
|
2140 |
-
outline: none !important;
|
2141 |
-
}
|
2142 |
-
|
2143 |
-
.wpr-grid-last-row {
|
2144 |
-
margin-bottom: 0 !important;
|
2145 |
-
}
|
2146 |
-
|
2147 |
-
.wpr-grid-item-above-content {
|
2148 |
-
border-bottom: 0 !important;
|
2149 |
-
border-bottom-left-radius: 0 !important;
|
2150 |
-
border-bottom-right-radius: 0 !important;
|
2151 |
-
}
|
2152 |
-
|
2153 |
-
.wpr-grid:not([data-settings*="list"]) .wpr-grid-item-below-content {
|
2154 |
-
border-top: 0 !important;
|
2155 |
-
border-top-left-radius: 0 !important;
|
2156 |
-
border-top-right-radius: 0 !important;
|
2157 |
-
}
|
2158 |
-
|
2159 |
-
.wpr-grid-item-inner,
|
2160 |
-
.wpr-grid-media-wrap {
|
2161 |
-
position: relative;
|
2162 |
-
}
|
2163 |
-
|
2164 |
-
.wpr-grid-image-wrap {
|
2165 |
-
overflow: hidden;
|
2166 |
-
}
|
2167 |
-
|
2168 |
-
.wpr-grid-image-wrap img {
|
2169 |
-
display: block;
|
2170 |
-
width: 100%;
|
2171 |
-
}
|
2172 |
-
|
2173 |
-
.wpr-grid-media-hover {
|
2174 |
-
position: absolute;
|
2175 |
-
top: 0;
|
2176 |
-
left: 0;
|
2177 |
-
width: 100%;
|
2178 |
-
height: 100%;
|
2179 |
-
overflow: hidden;
|
2180 |
-
}
|
2181 |
-
|
2182 |
-
.wpr-grid-media-hover-top {
|
2183 |
-
position: absolute;
|
2184 |
-
top: 0;
|
2185 |
-
left: 0;
|
2186 |
-
width: 100%;
|
2187 |
-
z-index: 2;
|
2188 |
-
}
|
2189 |
-
|
2190 |
-
.wpr-grid-media-hover-bottom {
|
2191 |
-
position: absolute;
|
2192 |
-
bottom: 0;
|
2193 |
-
left: 0;
|
2194 |
-
width: 100%;
|
2195 |
-
z-index: 2;
|
2196 |
-
}
|
2197 |
-
|
2198 |
-
.wpr-grid-media-hover-middle {
|
2199 |
-
position: relative;
|
2200 |
-
z-index: 2;
|
2201 |
-
}
|
2202 |
-
|
2203 |
-
.wpr-grid .wpr-cv-container,
|
2204 |
-
.wpr-magazine-grid .wpr-cv-container {
|
2205 |
-
z-index: 1;
|
2206 |
-
}
|
2207 |
-
|
2208 |
-
.wpr-grid-item-display-block {
|
2209 |
-
clear: both;
|
2210 |
-
}
|
2211 |
-
|
2212 |
-
.wpr-grid-item-display-inline.wpr-grid-item-align-left,
|
2213 |
-
.wpr-grid-item-display-custom.wpr-grid-item-align-left {
|
2214 |
-
float: left;
|
2215 |
-
}
|
2216 |
-
|
2217 |
-
.wpr-grid-item-display-inline.wpr-grid-item-align-right,
|
2218 |
-
.wpr-grid-item-display-custom.wpr-grid-item-align-right {
|
2219 |
-
float: right;
|
2220 |
-
}
|
2221 |
-
|
2222 |
-
.wpr-grid-item-display-inline.wpr-grid-item-align-center,
|
2223 |
-
.wpr-grid-item-display-custom.wpr-grid-item-align-center {
|
2224 |
-
float: none;
|
2225 |
-
display: inline-block;
|
2226 |
-
vertical-align: middle;
|
2227 |
-
}
|
2228 |
-
|
2229 |
-
|
2230 |
-
/*.wpr-grid-item-display-custom .inner-block { //tmp - maybe remove? need to check
|
2231 |
-
text-align: center;
|
2232 |
-
}*/
|
2233 |
-
|
2234 |
-
.wpr-grid-item-title .inner-block a,
|
2235 |
-
.wpr-grid-item-date .inner-block>span,
|
2236 |
-
.wpr-grid-item-time .inner-block>span,
|
2237 |
-
.wpr-grid-item-author .inner-block a,
|
2238 |
-
.wpr-grid-item-comments .inner-block a,
|
2239 |
-
.wpr-grid-item-read-more .inner-block a,
|
2240 |
-
.wpr-grid-item-likes .inner-block a,
|
2241 |
-
.wpr-grid-item-sharing .inner-block>span,
|
2242 |
-
.wpr-grid-item-lightbox .inner-block>span,
|
2243 |
-
.wpr-grid-product-categories .inner-block a,
|
2244 |
-
.wpr-grid-product-tags .inner-block a,
|
2245 |
-
.wpr-grid-tax-style-1 .inner-block a,
|
2246 |
-
.wpr-grid-tax-style-2 .inner-block a,
|
2247 |
-
.wpr-grid-cf-style-1 .inner-block>a,
|
2248 |
-
.wpr-grid-cf-style-1 .inner-block>span,
|
2249 |
-
.wpr-grid-cf-style-2 .inner-block>a,
|
2250 |
-
.wpr-grid-cf-style-2 .inner-block>span,
|
2251 |
-
.wpr-grid-sep-style-1 .inner-block>span,
|
2252 |
-
.wpr-grid-sep-style-2 .inner-block>span,
|
2253 |
-
.wpr-grid-item-status .inner-block>span,
|
2254 |
-
.wpr-grid-item-price .inner-block>span,
|
2255 |
-
.wpr-grid-item-add-to-cart .inner-block>a,
|
2256 |
-
.wpr-grid-item-read-more .inner-block a {
|
2257 |
-
display: inline-block;
|
2258 |
-
}
|
2259 |
-
|
2260 |
-
.wpr-grid-item-display-custom.wpr-grid-item-title .inner-block a,
|
2261 |
-
.wpr-grid-item-display-custom.wpr-grid-item-date .inner-block>span,
|
2262 |
-
.wpr-grid-item-display-custom.wpr-grid-item-time .inner-block>span,
|
2263 |
-
.wpr-grid-item-display-custom.wpr-grid-item-comments .inner-block a,
|
2264 |
-
.wpr-grid-item-display-custom.wpr-grid-item-read-more .inner-block a,
|
2265 |
-
.wpr-grid-item-display-custom.wpr-grid-item-likes .inner-block a,
|
2266 |
-
.wpr-grid-item-display-custom.wpr-grid-item-sharing .inner-block>span,
|
2267 |
-
.wpr-grid-item-display-custom.wpr-grid-item-lightbox .inner-block>span,
|
2268 |
-
.wpr-grid-item-display-custom.wpr-grid-cf-style-1 .inner-block>a,
|
2269 |
-
.wpr-grid-item-display-custom.wpr-grid-cf-style-1 .inner-block>span,
|
2270 |
-
.wpr-grid-item-display-custom.wpr-grid-cf-style-2 .inner-block>a,
|
2271 |
-
.wpr-grid-item-display-custom.wpr-grid-cf-style-2 .inner-block>span,
|
2272 |
-
.wpr-grid-item-display-custom.wpr-grid-sep-style-1 .inner-block>span,
|
2273 |
-
.wpr-grid-item-display-custom.wpr-grid-sep-style-2 .inner-block>span,
|
2274 |
-
.wpr-grid-item-display-custom.wpr-grid-item-product-status .inner-block>span,
|
2275 |
-
.wpr-grid-item-display-custom.wpr-grid-item-product-price .inner-block>span,
|
2276 |
-
.wpr-grid-item-display-custom.wpr-grid-item-add-to-cart .inner-block>a,
|
2277 |
-
.wpr-grid-item-display-custom.wpr-grid-item-read-more .inner-block a {
|
2278 |
-
width: 100%;
|
2279 |
-
}
|
2280 |
-
|
2281 |
-
.wpr-grid-item-content .inner-block,
|
2282 |
-
.wpr-grid-item-excerpt .inner-block {
|
2283 |
-
display: inline-block;
|
2284 |
-
}
|
2285 |
-
|
2286 |
-
.wpr-grid-item-excerpt .inner-block p {
|
2287 |
-
margin: 0 !important;
|
2288 |
-
}
|
2289 |
-
|
2290 |
-
|
2291 |
-
/* Image Overlay */
|
2292 |
-
.wpr-grid-media-hover-bg {
|
2293 |
-
position: absolute;
|
2294 |
-
}
|
2295 |
-
|
2296 |
-
.wpr-grid-media-hover-bg img {
|
2297 |
-
position: absolute;
|
2298 |
-
top: 50%;
|
2299 |
-
left: 50%;
|
2300 |
-
-webkit-transform: translate( -50%, -50%) scale(1) !important;
|
2301 |
-
-ms-transform: translate( -50%, -50%) scale(1) !important;
|
2302 |
-
transform: translate( -50%, -50%) scale(1) !important;
|
2303 |
-
-webkit-filter: grayscale(0) !important;
|
2304 |
-
filter: grayscale(0) !important;
|
2305 |
-
-webkit-filter: blur(0px) !important;
|
2306 |
-
-filter: blur(0px) !important;
|
2307 |
-
}
|
2308 |
-
|
2309 |
-
|
2310 |
-
/* Author */
|
2311 |
-
|
2312 |
-
.wpr-grid-item-author img,
|
2313 |
-
.wpr-grid-item-author span {
|
2314 |
-
display: inline-block;
|
2315 |
-
vertical-align: middle;
|
2316 |
-
}
|
2317 |
-
|
2318 |
-
.wpr-grid-item-author img {
|
2319 |
-
-webkit-transform: none !important;
|
2320 |
-
-ms-transform: none !important;
|
2321 |
-
transform: none !important;
|
2322 |
-
-webkit-filter: none !important;
|
2323 |
-
filter: none !important;
|
2324 |
-
}
|
2325 |
-
|
2326 |
-
|
2327 |
-
/* Likes */
|
2328 |
-
|
2329 |
-
.wpr-grid-item-likes .inner-block a {
|
2330 |
-
text-align: center;
|
2331 |
-
}
|
2332 |
-
|
2333 |
-
.wpr-likes-no-default.wpr-likes-zero i {
|
2334 |
-
padding: 0 !important;
|
2335 |
-
}
|
2336 |
-
|
2337 |
-
|
2338 |
-
/* Sharing */
|
2339 |
-
|
2340 |
-
.wpr-grid-item-sharing .inner-block a {
|
2341 |
-
text-align: center;
|
2342 |
-
}
|
2343 |
-
|
2344 |
-
.wpr-grid-item-sharing .wpr-post-sharing {
|
2345 |
-
position: relative;
|
2346 |
-
}
|
2347 |
-
|
2348 |
-
.wpr-grid-item-sharing .wpr-sharing-icon {
|
2349 |
-
display: inline-block;
|
2350 |
-
position: relative;
|
2351 |
-
}
|
2352 |
-
|
2353 |
-
.wpr-grid-item-sharing .wpr-sharing-icon .wpr-tooltip {
|
2354 |
-
left: 50%;
|
2355 |
-
-ms-transform: translate(-50%, -100%);
|
2356 |
-
transform: translate(-50%, -100%);
|
2357 |
-
-webkit-transform: translate(-50%, -100%);
|
2358 |
-
}
|
2359 |
-
|
2360 |
-
.wpr-grid-item-sharing .wpr-sharing-icon:hover .wpr-tooltip {
|
2361 |
-
visibility: visible;
|
2362 |
-
opacity: 1;
|
2363 |
-
-ms-transform: translate(-50%, -120%);
|
2364 |
-
transform: translate(-50%, -120%);
|
2365 |
-
-webkit-transform: translate(-50%, -120%);
|
2366 |
-
}
|
2367 |
-
|
2368 |
-
.wpr-grid-item-sharing .wpr-tooltip:before {
|
2369 |
-
left: 50%;
|
2370 |
-
-ms-transform: translateX(-50%);
|
2371 |
-
transform: translateX(-50%);
|
2372 |
-
-webkit-transform: translateX(-50%);
|
2373 |
-
}
|
2374 |
-
|
2375 |
-
.wpr-grid-item-sharing .wpr-sharing-trigger {
|
2376 |
-
cursor: pointer;
|
2377 |
-
}
|
2378 |
-
|
2379 |
-
.wpr-grid-item-sharing .wpr-tooltip {
|
2380 |
-
display: block;
|
2381 |
-
padding: 10px;
|
2382 |
-
}
|
2383 |
-
|
2384 |
-
.wpr-grid-item-sharing .wpr-sharing-hidden {
|
2385 |
-
visibility: hidden;
|
2386 |
-
position: absolute;
|
2387 |
-
z-index: 3;
|
2388 |
-
text-align: center;
|
2389 |
-
}
|
2390 |
-
|
2391 |
-
.wpr-grid-item-sharing .wpr-sharing-hidden a {
|
2392 |
-
opacity: 0;
|
2393 |
-
}
|
2394 |
-
|
2395 |
-
.wpr-sharing-hidden a {
|
2396 |
-
position: relative;
|
2397 |
-
top: -5px;
|
2398 |
-
-webkit-transition-duration: 0.3s !important;
|
2399 |
-
-o-transition-duration: 0.3s !important;
|
2400 |
-
transition-duration: 0.3s !important;
|
2401 |
-
-webkit-transition-timing-function: cubic-bezier(.445, .050, .55, .95);
|
2402 |
-
-o-transition-timing-function: cubic-bezier(.445, .050, .55, .95);
|
2403 |
-
transition-timing-function: cubic-bezier(.445, .050, .55, .95);
|
2404 |
-
-webkit-transition-delay: 0s;
|
2405 |
-
-o-transition-delay: 0s;
|
2406 |
-
transition-delay: 0s;
|
2407 |
-
}
|
2408 |
-
|
2409 |
-
.wpr-sharing-hidden a+a {
|
2410 |
-
-webkit-transition-delay: 0.1s;
|
2411 |
-
-o-transition-delay: 0.1s;
|
2412 |
-
transition-delay: 0.1s;
|
2413 |
-
}
|
2414 |
-
|
2415 |
-
.wpr-sharing-hidden a+a+a {
|
2416 |
-
-webkit-transition-delay: 0.2s;
|
2417 |
-
-o-transition-delay: 0.2s;
|
2418 |
-
transition-delay: 0.2s;
|
2419 |
-
}
|
2420 |
-
|
2421 |
-
.wpr-sharing-hidden a+a+a+a {
|
2422 |
-
-webkit-transition-delay: 0.3s;
|
2423 |
-
-o-transition-delay: 0.3s;
|
2424 |
-
transition-delay: 0.3s;
|
2425 |
-
}
|
2426 |
-
|
2427 |
-
.wpr-sharing-hidden a+a+a+a+a {
|
2428 |
-
-webkit-transition-delay: 0.4s;
|
2429 |
-
-o-transition-delay: 0.4s;
|
2430 |
-
transition-delay: 0.4s;
|
2431 |
-
}
|
2432 |
-
|
2433 |
-
.wpr-grid-item-sharing a:last-of-type {
|
2434 |
-
margin-right: 0 !important;
|
2435 |
-
}
|
2436 |
-
|
2437 |
-
.wpr-grid-item-sharing .inner-block a {
|
2438 |
-
-webkit-transition-property: color, background-color, border;
|
2439 |
-
-o-transition-property: color, background-color, border;
|
2440 |
-
transition-property: color, background-color, border;
|
2441 |
-
-webkit-transition-timing-function: linear;
|
2442 |
-
-o-transition-timing-function: linear;
|
2443 |
-
transition-timing-function: linear;
|
2444 |
-
}
|
2445 |
-
|
2446 |
-
|
2447 |
-
/* Read More */
|
2448 |
-
|
2449 |
-
.wpr-grid-item-read-more .inner-block>a,
|
2450 |
-
.wpr-grid-item-add-to-cart .inner-block>a {
|
2451 |
-
position: relative;
|
2452 |
-
overflow: hidden;
|
2453 |
-
vertical-align: middle;
|
2454 |
-
}
|
2455 |
-
|
2456 |
-
.wpr-grid-item-read-more .inner-block>a i,
|
2457 |
-
.wpr-grid-item-read-more .inner-block>a span,
|
2458 |
-
.wpr-grid-item-add-to-cart .inner-block>a i,
|
2459 |
-
.wpr-grid-item-add-to-cart .inner-block>a span {
|
2460 |
-
position: relative;
|
2461 |
-
z-index: 2;
|
2462 |
-
opacity: 1;
|
2463 |
-
}
|
2464 |
-
|
2465 |
-
.wpr-grid-item-read-more .inner-block>a:before,
|
2466 |
-
.wpr-grid-item-read-more .inner-block>a:after,
|
2467 |
-
.wpr-grid-item-add-to-cart .inner-block>a:before,
|
2468 |
-
.wpr-grid-item-add-to-cart .inner-block>a:after {
|
2469 |
-
z-index: 1;
|
2470 |
-
}
|
2471 |
-
|
2472 |
-
|
2473 |
-
/* Lightbox */
|
2474 |
-
|
2475 |
-
.wpr-grid-item-lightbox .inner-block>span,
|
2476 |
-
.wpr-grid-lightbox-overlay {
|
2477 |
-
cursor: pointer;
|
2478 |
-
}
|
2479 |
-
|
2480 |
-
.wpr-grid-lightbox-overlay {
|
2481 |
-
position: absolute;
|
2482 |
-
top: 0;
|
2483 |
-
left: 0;
|
2484 |
-
z-index: 10;
|
2485 |
-
width: 100%;
|
2486 |
-
height: 100%;
|
2487 |
-
}
|
2488 |
-
|
2489 |
-
.admin-bar .lg-toolbar {
|
2490 |
-
top: 32px;
|
2491 |
-
}
|
2492 |
-
|
2493 |
-
|
2494 |
-
/* Separator */
|
2495 |
-
|
2496 |
-
.wpr-grid-item-separator .inner-block {
|
2497 |
-
font-size: 0;
|
2498 |
-
line-height: 0;
|
2499 |
-
}
|
2500 |
-
|
2501 |
-
.wpr-grid-item-separator.wpr-grid-item-display-inline span {
|
2502 |
-
width: 100% !important;
|
2503 |
-
}
|
2504 |
-
|
2505 |
-
|
2506 |
-
/* Product Rating */
|
2507 |
-
|
2508 |
-
.wpr-woo-rating i {
|
2509 |
-
display: inline;
|
2510 |
-
position: relative;
|
2511 |
-
font-family: "eicons";
|
2512 |
-
font-style: normal;
|
2513 |
-
line-height: 1;
|
2514 |
-
overflow: hidden;
|
2515 |
-
}
|
2516 |
-
|
2517 |
-
.wpr-woo-rating i:before {
|
2518 |
-
content: '\e934';
|
2519 |
-
font-weight: 900;
|
2520 |
-
display: block;
|
2521 |
-
position: absolute;
|
2522 |
-
top: 0;
|
2523 |
-
left: 0;
|
2524 |
-
font-size: inherit;
|
2525 |
-
font-family: inherit;
|
2526 |
-
overflow: hidden;
|
2527 |
-
}
|
2528 |
-
|
2529 |
-
.wpr-woo-rating-style-2 .wpr-woo-rating i:before {
|
2530 |
-
content: '\002605';
|
2531 |
-
}
|
2532 |
-
|
2533 |
-
.wpr-woo-rating i:last-of-type {
|
2534 |
-
margin-right: 0 !important;
|
2535 |
-
}
|
2536 |
-
|
2537 |
-
.wpr-rating-icon-empty:before {
|
2538 |
-
display: none !important;
|
2539 |
-
}
|
2540 |
-
|
2541 |
-
.wpr-rating-icon-0:before {
|
2542 |
-
width: 0;
|
2543 |
-
}
|
2544 |
-
|
2545 |
-
.wpr-rating-icon-1:before {
|
2546 |
-
width: 10%;
|
2547 |
-
}
|
2548 |
-
|
2549 |
-
.wpr-rating-icon-2:before {
|
2550 |
-
width: 20%;
|
2551 |
-
}
|
2552 |
-
|
2553 |
-
.wpr-rating-icon-3:before {
|
2554 |
-
width: 30%;
|
2555 |
-
}
|
2556 |
-
|
2557 |
-
.wpr-rating-icon-4:before {
|
2558 |
-
width: 40%;
|
2559 |
-
}
|
2560 |
-
|
2561 |
-
.wpr-rating-icon-5:before {
|
2562 |
-
width: 50%;
|
2563 |
-
}
|
2564 |
-
|
2565 |
-
.wpr-rating-icon-6:before {
|
2566 |
-
width: 60%;
|
2567 |
-
}
|
2568 |
-
|
2569 |
-
.wpr-rating-icon-7:before {
|
2570 |
-
width: 70%;
|
2571 |
-
}
|
2572 |
-
|
2573 |
-
.wpr-rating-icon-8:before {
|
2574 |
-
width: 80%;
|
2575 |
-
}
|
2576 |
-
|
2577 |
-
.wpr-rating-icon-9:before {
|
2578 |
-
width: 90%;
|
2579 |
-
}
|
2580 |
-
|
2581 |
-
.wpr-rating-icon-full:before {
|
2582 |
-
width: 100%;
|
2583 |
-
}
|
2584 |
-
|
2585 |
-
|
2586 |
-
/* Filters */
|
2587 |
-
|
2588 |
-
.wpr-grid-filters li {
|
2589 |
-
display: inline-block;
|
2590 |
-
}
|
2591 |
-
|
2592 |
-
.wpr-grid-filters li:last-of-type {
|
2593 |
-
margin-right: 0 !important;
|
2594 |
-
}
|
2595 |
-
|
2596 |
-
.wpr-grid-filters li span {
|
2597 |
-
display: inline-block;
|
2598 |
-
cursor: pointer;
|
2599 |
-
text-decoration: inherit;
|
2600 |
-
}
|
2601 |
-
|
2602 |
-
.wpr-grid-filters li a {
|
2603 |
-
display: inline-block;
|
2604 |
-
}
|
2605 |
-
|
2606 |
-
.wpr-grid-filters li sup {
|
2607 |
-
position: relative;
|
2608 |
-
padding-left: 5px;
|
2609 |
-
line-height: 1;
|
2610 |
-
}
|
2611 |
-
|
2612 |
-
.wpr-grid-filters li sup[data-brackets="yes"]:before {
|
2613 |
-
content: '\0028';
|
2614 |
-
}
|
2615 |
-
|
2616 |
-
.wpr-grid-filters li sup[data-brackets="yes"]:after {
|
2617 |
-
content: '\0029';
|
2618 |
-
}
|
2619 |
-
|
2620 |
-
.wpr-grid-filters .wpr-active-filter.wpr-pointer-item:before,
|
2621 |
-
.wpr-grid-filters .wpr-active-filter.wpr-pointer-item:after {
|
2622 |
-
opacity: 1 !important;
|
2623 |
-
width: 100% !important;
|
2624 |
-
}
|
2625 |
-
|
2626 |
-
.wpr-grid-filters-sep {
|
2627 |
-
font-style: normal;
|
2628 |
-
}
|
2629 |
-
|
2630 |
-
.wpr-grid-filters-sep-right li:last-of-type .wpr-grid-filters-sep,
|
2631 |
-
.wpr-grid-filters-sep-left li:first-child .wpr-grid-filters-sep {
|
2632 |
-
display: none;
|
2633 |
-
}
|
2634 |
-
|
2635 |
-
.wpr-sub-filters {
|
2636 |
-
display: none;
|
2637 |
-
padding: 0;
|
2638 |
-
}
|
2639 |
-
|
2640 |
-
|
2641 |
-
/* Sorting */
|
2642 |
-
|
2643 |
-
.wpr-grid-sorting {
|
2644 |
-
display: -webkit-box;
|
2645 |
-
display: -ms-flexbox;
|
2646 |
-
display: flex;
|
2647 |
-
-webkit-box-align: center;
|
2648 |
-
-ms-flex-align: center;
|
2649 |
-
align-items: center;
|
2650 |
-
-ms-flex-wrap: wrap;
|
2651 |
-
flex-wrap: wrap;
|
2652 |
-
}
|
2653 |
-
|
2654 |
-
.wpr-grid-sorting>div,
|
2655 |
-
.wpr-grid-sorting .woocommerce-ordering {
|
2656 |
-
-webkit-box-flex: 1;
|
2657 |
-
-ms-flex-positive: 1;
|
2658 |
-
flex-grow: 1;
|
2659 |
-
}
|
2660 |
-
|
2661 |
-
.wpr-grid-sorting .woocommerce-ordering {
|
2662 |
-
text-align: right;
|
2663 |
-
}
|
2664 |
-
|
2665 |
-
.wpr-grid-sorting .woocommerce-ordering select {
|
2666 |
-
width: auto;
|
2667 |
-
outline: none !important;
|
2668 |
-
}
|
2669 |
-
|
2670 |
-
.wpr-grid-sorting .wpr-shop-page-title,
|
2671 |
-
.wpr-grid-sorting .woocommerce-result-count,
|
2672 |
-
.wpr-grid-sorting .woocommerce-ordering {
|
2673 |
-
margin: 0 !important;
|
2674 |
-
}
|
2675 |
-
|
2676 |
-
/* Not Clickable */
|
2677 |
-
.wpr-atc-not-clickable {
|
2678 |
-
opacity: 0.5;
|
2679 |
-
pointer-events: none;
|
2680 |
-
}
|
2681 |
-
|
2682 |
-
/* Added To Cart Popup */
|
2683 |
-
@-webkit-keyframes added-tc-popup-animation {
|
2684 |
-
from {opacity: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%)}
|
2685 |
-
to {opacity: 1; -webkit-transform: translateY(0); transform: translateY(0)}
|
2686 |
-
}
|
2687 |
-
@keyframes added-tc-popup-animation {
|
2688 |
-
from {opacity: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%)}
|
2689 |
-
to {opacity: 1; -webkit-transform: translateY(0); transform: translateY(0)}
|
2690 |
-
}
|
2691 |
-
|
2692 |
-
@-webkit-keyframes added-tc-popup-animation-hide {
|
2693 |
-
from {opacity: 1; -webkit-transform: translateY(0); transform: translateY(0)}
|
2694 |
-
to {opacity: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%)}
|
2695 |
-
}
|
2696 |
-
|
2697 |
-
@keyframes added-tc-popup-animation-hide {
|
2698 |
-
from {opacity: 1; -webkit-transform: translateY(0); transform: translateY(0)}
|
2699 |
-
to {opacity: 0; -webkit-transform: translateY(-50%); transform: translateY(-50%)}
|
2700 |
-
}
|
2701 |
-
|
2702 |
-
@-webkit-keyframes added-tc-popup-animation-bottom {
|
2703 |
-
from {opacity: 0; -webkit-transform: translateY(50%); transform: translateY(50%)}
|
2704 |
-
to {opacity: 1; -webkit-transform: translateY(0); transform: translateY(0)}
|
2705 |
-
}
|
2706 |
-
|
2707 |
-
@keyframes added-tc-popup-animation-bottom {
|
2708 |
-
from {opacity: 0; -webkit-transform: translateY(50%); transform: translateY(50%)}
|
2709 |
-
to {opacity: 1; -webkit-transform: translateY(0); transform: translateY(0)}
|
2710 |
-
}
|
2711 |
-
|
2712 |
-
@-webkit-keyframes added-tc-popup-animation-hide-bottom {
|
2713 |
-
from {opacity: 1; -webkit-transform: translateY(0); transform: translateY(0)}
|
2714 |
-
to {opacity: 0; -webkit-transform: translateY(50%); transform: translateY(50%)}
|
2715 |
-
}
|
2716 |
-
|
2717 |
-
@keyframes added-tc-popup-animation-hide-bottom {
|
2718 |
-
from {opacity: 1; -webkit-transform: translateY(0); transform: translateY(0)}
|
2719 |
-
to {opacity: 0; -webkit-transform: translateY(50%); transform: translateY(50%)}
|
2720 |
-
}
|
2721 |
-
|
2722 |
-
@keyframes added-tc-popup-animation-hide-bottom {
|
2723 |
-
from {opacity: 1; -webkit-transform: translateY(0); transform: translateY(0)}
|
2724 |
-
to {opacity: 0; -webkit-transform: translateY(50%); transform: translateY(50%)}
|
2725 |
-
}
|
2726 |
-
|
2727 |
-
@-webkit-keyframes added-tc-popup-animation-slide-in-left {
|
2728 |
-
from {opacity: 0; -webkit-transform: translateX(100%); transform: translateX(100%)}
|
2729 |
-
to {opacity: 1; -webkit-transform: translateX(0); transform: translateX(0)}
|
2730 |
-
}
|
2731 |
-
|
2732 |
-
@keyframes added-tc-popup-animation-slide-in-left {
|
2733 |
-
from {opacity: 0; -webkit-transform: translateX(100%); transform: translateX(100%)}
|
2734 |
-
to {opacity: 1; -webkit-transform: translateX(0); transform: translateX(0)}
|
2735 |
-
}
|
2736 |
-
|
2737 |
-
@-webkit-keyframes added-tc-popup-animation-slide-out-left {
|
2738 |
-
from {opacity: 1; -webkit-transform: translateX(0); transform: translateX(0)}
|
2739 |
-
to {opacity: 0; -webkit-transform: translateX(100%); transform: translateX(100%)}
|
2740 |
-
}
|
2741 |
-
|
2742 |
-
@keyframes added-tc-popup-animation-slide-out-left {
|
2743 |
-
from {opacity: 1; -webkit-transform: translateX(0); transform: translateX(0)}
|
2744 |
-
to {opacity: 0; -webkit-transform: translateX(100%); transform: translateX(100%)}
|
2745 |
-
}
|
2746 |
-
|
2747 |
-
@-webkit-keyframes added-tc-popup-animation-scale-up {
|
2748 |
-
from {opacity: 0; -webkit-transform: scale(0); transform: scale(0)}
|
2749 |
-
to {opacity: 1; -webkit-transform: scale(1); transform: scale(1)}
|
2750 |
-
}
|
2751 |
-
|
2752 |
-
@keyframes added-tc-popup-animation-scale-up {
|
2753 |
-
from {opacity: 0; -webkit-transform: scale(0); transform: scale(0)}
|
2754 |
-
to {opacity: 1; -webkit-transform: scale(1); transform: scale(1)}
|
2755 |
-
}
|
2756 |
-
|
2757 |
-
@-webkit-keyframes added-tc-popup-animation-scale-down {
|
2758 |
-
from {opacity: 1; -webkit-transform: scale(1); transform: scale(1)}
|
2759 |
-
to {opacity: 0; -webkit-transform: scale(0); transform: scale(0)}
|
2760 |
-
}
|
2761 |
-
|
2762 |
-
@keyframes added-tc-popup-animation-scale-down {
|
2763 |
-
from {opacity: 1; -webkit-transform: scale(1); transform: scale(1)}
|
2764 |
-
to {opacity: 0; -webkit-transform: scale(0); transform: scale(0)}
|
2765 |
-
}
|
2766 |
-
|
2767 |
-
@-webkit-keyframes added-tc-popup-animation-fade {
|
2768 |
-
from {opacity: 0;}
|
2769 |
-
to {opacity: 1;}
|
2770 |
-
}
|
2771 |
-
|
2772 |
-
@keyframes added-tc-popup-animation-fade {
|
2773 |
-
from {opacity: 0;}
|
2774 |
-
to {opacity: 1;}
|
2775 |
-
}
|
2776 |
-
|
2777 |
-
@-webkit-keyframes added-tc-popup-animation-fade-out {
|
2778 |
-
from {opacity: 1;}
|
2779 |
-
to {opacity: 0;}
|
2780 |
-
}
|
2781 |
-
|
2782 |
-
@keyframes added-tc-popup-animation-fade-out {
|
2783 |
-
from {opacity: 1;}
|
2784 |
-
to {opacity: 0;}
|
2785 |
-
}
|
2786 |
-
|
2787 |
-
@-webkit-keyframes added-tc-popup-animation-skew {
|
2788 |
-
from {opacity: 0; -webkit-transform: perspective(600px) rotateX(-90deg); transform: perspective(600px) rotateX(-90deg)}
|
2789 |
-
to {opacity: 1; -webkit-transform: perspective(600px) rotateX(0deg); transform: perspective(600px) rotateX(0deg)}
|
2790 |
-
}
|
2791 |
-
|
2792 |
-
@keyframes added-tc-popup-animation-skew {
|
2793 |
-
from {opacity: 0; -webkit-transform: perspective(600px) rotateX(-90deg); transform: perspective(600px) rotateX(-90deg)}
|
2794 |
-
to {opacity: 1; -webkit-transform: perspective(600px) rotateX(0deg); transform: perspective(600px) rotateX(0deg)}
|
2795 |
-
}
|
2796 |
-
|
2797 |
-
@-webkit-keyframes added-tc-popup-animation-skew-off {
|
2798 |
-
from {opacity: 1; -webkit-transform: perspective(600px) rotateX(0deg); transform: perspective(600px) rotateX(0deg)}
|
2799 |
-
to {opacity: 0; -webkit-transform: perspective(600px) rotateX(-90deg); transform: perspective(600px) rotateX(-90deg)}
|
2800 |
-
}
|
2801 |
-
|
2802 |
-
@keyframes added-tc-popup-animation-skew-off {
|
2803 |
-
from {opacity: 1; -webkit-transform: perspective(600px) rotateX(0deg); transform: perspective(600px) rotateX(0deg)}
|
2804 |
-
to {opacity: 0; -webkit-transform: perspective(600px) rotateX(-90deg); transform: perspective(600px) rotateX(-90deg)}
|
2805 |
-
}
|
2806 |
-
|
2807 |
-
@-webkit-keyframes added-tc-popup-animation-skew-bottom {
|
2808 |
-
from {opacity: 0; -webkit-transform: perspective(600px) rotateX(90deg); transform: perspective(600px) rotateX(90deg)}
|
2809 |
-
to {opacity: 1; -webkit-transform: perspective(600px) rotateX(0deg); transform: perspective(600px) rotateX(0deg)}
|
2810 |
-
}
|
2811 |
-
|
2812 |
-
@keyframes added-tc-popup-animation-skew-bottom {
|
2813 |
-
from {opacity: 0; -webkit-transform: perspective(600px) rotateX(90deg); transform: perspective(600px) rotateX(90deg)}
|
2814 |
-
to {opacity: 1; -webkit-transform: perspective(600px) rotateX(0deg); transform: perspective(600px) rotateX(0deg)}
|
2815 |
-
}
|
2816 |
-
|
2817 |
-
@-webkit-keyframes added-tc-popup-animation-skew-off-bottom {
|
2818 |
-
from {opacity: 1; -webkit-transform: perspective(600px) rotateX(0deg); transform: perspective(600px) rotateX(0deg)}
|
2819 |
-
to {opacity: 0; -webkit-transform: perspective(600px) rotateX(90deg); transform: perspective(600px) rotateX(90deg)}
|
2820 |
-
}
|
2821 |
-
|
2822 |
-
@keyframes added-tc-popup-animation-skew-off-bottom {
|
2823 |
-
from {opacity: 1; -webkit-transform: perspective(600px) rotateX(0deg); transform: perspective(600px) rotateX(0deg)}
|
2824 |
-
to {opacity: 0; -webkit-transform: perspective(600px) rotateX(90deg); transform: perspective(600px) rotateX(90deg)}
|
2825 |
-
}
|
2826 |
-
|
2827 |
-
.wpr-added-to-cart-popup {
|
2828 |
-
position: fixed;
|
2829 |
-
display: -webkit-box;
|
2830 |
-
display: -ms-flexbox;
|
2831 |
-
display: flex;
|
2832 |
-
opacity: 0;
|
2833 |
-
z-index: 99999;
|
2834 |
-
}
|
2835 |
-
|
2836 |
-
.wpr-added-to-cart-popup.wpr-added-to-cart-slide-in-left {
|
2837 |
-
-webkit-animation-name: added-tc-popup-animation-slide-in-left !important;
|
2838 |
-
animation-name: added-tc-popup-animation-slide-in-left !important;
|
2839 |
-
-webkit-animation-duration: 1s;
|
2840 |
-
animation-duration: 1s;
|
2841 |
-
-webkit-animation-fill-mode: forwards;
|
2842 |
-
animation-fill-mode: forwards;
|
2843 |
-
}
|
2844 |
-
|
2845 |
-
.wpr-added-to-cart-popup.wpr-added-to-cart-slide-out-left {
|
2846 |
-
-webkit-animation-name: added-tc-popup-animation-slide-out-left !important;
|
2847 |
-
animation-name: added-tc-popup-animation-slide-out-left !important;
|
2848 |
-
-webkit-animation-duration: 1s;
|
2849 |
-
animation-duration: 1s;
|
2850 |
-
-webkit-animation-fill-mode: forwards;
|
2851 |
-
animation-fill-mode: forwards;
|
2852 |
-
}
|
2853 |
-
|
2854 |
-
.wpr-added-to-cart-popup.wpr-added-to-cart-scale-up {
|
2855 |
-
-webkit-animation-name: added-tc-popup-animation-scale-up !important;
|
2856 |
-
animation-name: added-tc-popup-animation-scale-up !important;
|
2857 |
-
-webkit-animation-duration: 1s;
|
2858 |
-
animation-duration: 1s;
|
2859 |
-
-webkit-animation-fill-mode: forwards;
|
2860 |
-
animation-fill-mode: forwards;
|
2861 |
-
}
|
2862 |
-
|
2863 |
-
.wpr-added-to-cart-popup.wpr-added-to-cart-scale-down {
|
2864 |
-
-webkit-animation-name: added-tc-popup-animation-scale-down !important;
|
2865 |
-
animation-name: added-tc-popup-animation-scale-down !important;
|
2866 |
-
-webkit-animation-duration: 1s;
|
2867 |
-
animation-duration: 1s;
|
2868 |
-
-webkit-animation-fill-mode: forwards;
|
2869 |
-
animation-fill-mode: forwards;
|
2870 |
-
}
|
2871 |
-
|
2872 |
-
.wpr-added-to-cart-popup.wpr-added-to-cart-fade {
|
2873 |
-
-webkit-animation-name: added-tc-popup-animation-fade !important;
|
2874 |
-
animation-name: added-tc-popup-animation-fade !important;
|
2875 |
-
-webkit-animation-duration: 1s;
|
2876 |
-
animation-duration: 1s;
|
2877 |
-
-webkit-animation-fill-mode: forwards;
|
2878 |
-
animation-fill-mode: forwards;
|
2879 |
-
}
|
2880 |
-
|
2881 |
-
.wpr-added-to-cart-popup.wpr-added-to-cart-fade-out {
|
2882 |
-
-webkit-animation-name: added-tc-popup-animation-fade-out !important;
|
2883 |
-
animation-name: added-tc-popup-animation-fade-out !important;
|
2884 |
-
-webkit-animation-duration: 1s;
|
2885 |
-
animation-duration: 1s;
|
2886 |
-
-webkit-animation-fill-mode: forwards;
|
2887 |
-
animation-fill-mode: forwards;
|
2888 |
-
}
|
2889 |
-
|
2890 |
-
.wpr-atc-popup-top .wpr-added-to-cart-popup.wpr-added-to-cart-skew {
|
2891 |
-
-webkit-transform-origin: center top 0;
|
2892 |
-
-ms-transform-origin: center top 0;
|
2893 |
-
transform-origin: center top 0;
|
2894 |
-
-webkit-animation-name: added-tc-popup-animation-skew !important;
|
2895 |
-
animation-name: added-tc-popup-animation-skew !important;
|
2896 |
-
-webkit-animation-duration: 1s;
|
2897 |
-
animation-duration: 1s;
|
2898 |
-
-webkit-animation-fill-mode: forwards;
|
2899 |
-
animation-fill-mode: forwards;
|
2900 |
-
}
|
2901 |
-
|
2902 |
-
.wpr-atc-popup-top .wpr-added-to-cart-popup.wpr-added-to-cart-skew-off {
|
2903 |
-
-webkit-transform-origin: center top 0;
|
2904 |
-
-ms-transform-origin: center top 0;
|
2905 |
-
transform-origin: center top 0;
|
2906 |
-
-webkit-animation-name: added-tc-popup-animation-skew-off !important;
|
2907 |
-
animation-name: added-tc-popup-animation-skew-off !important;
|
2908 |
-
-webkit-animation-duration: 1s;
|
2909 |
-
animation-duration: 1s;
|
2910 |
-
-webkit-animation-fill-mode: forwards;
|
2911 |
-
animation-fill-mode: forwards;
|
2912 |
-
}
|
2913 |
-
|
2914 |
-
.wpr-atc-popup-bottom .wpr-added-to-cart-popup.wpr-added-to-cart-skew {
|
2915 |
-
-webkit-transform-origin: center bottom 0;
|
2916 |
-
-ms-transform-origin: center bottom 0;
|
2917 |
-
transform-origin: center bottom 0;
|
2918 |
-
-webkit-animation-name: added-tc-popup-animation-skew-bottom !important;
|
2919 |
-
animation-name: added-tc-popup-animation-skew-bottom !important;
|
2920 |
-
-webkit-animation-duration: 1s;
|
2921 |
-
animation-duration: 1s;
|
2922 |
-
-webkit-animation-fill-mode: forwards;
|
2923 |
-
animation-fill-mode: forwards;
|
2924 |
-
}
|
2925 |
-
|
2926 |
-
.wpr-atc-popup-bottom .wpr-added-to-cart-popup.wpr-added-to-cart-skew-off {
|
2927 |
-
-webkit-transform-origin: center bottom 0;
|
2928 |
-
-ms-transform-origin: center bottom 0;
|
2929 |
-
transform-origin: center bottom 0;
|
2930 |
-
-webkit-animation-name: added-tc-popup-animation-skew-off-bottom !important;
|
2931 |
-
animation-name: added-tc-popup-animation-skew-off-bottom !important;
|
2932 |
-
-webkit-animation-duration: 1s;
|
2933 |
-
animation-duration: 1s;
|
2934 |
-
-webkit-animation-fill-mode: forwards;
|
2935 |
-
animation-fill-mode: forwards;
|
2936 |
-
}
|
2937 |
-
|
2938 |
-
.wpr-atc-popup-top .wpr-added-to-cart-popup {
|
2939 |
-
-webkit-animation-name: added-tc-popup-animation;
|
2940 |
-
animation-name: added-tc-popup-animation;
|
2941 |
-
-webkit-animation-duration: 1s;
|
2942 |
-
animation-duration: 1s;
|
2943 |
-
-webkit-animation-fill-mode: forwards;
|
2944 |
-
animation-fill-mode: forwards;
|
2945 |
-
}
|
2946 |
-
|
2947 |
-
.wpr-atc-popup-top .wpr-added-to-cart-popup-hide {
|
2948 |
-
-webkit-animation-name: added-tc-popup-animation-hide;
|
2949 |
-
animation-name: added-tc-popup-animation-hide;
|
2950 |
-
-webkit-animation-duration: 1s;
|
2951 |
-
animation-duration: 1s;
|
2952 |
-
-webkit-animation-fill-mode: forwards;
|
2953 |
-
animation-fill-mode: forwards;
|
2954 |
-
}
|
2955 |
-
|
2956 |
-
.wpr-atc-popup-bottom .wpr-added-to-cart-popup {
|
2957 |
-
-webkit-animation-name: added-tc-popup-animation-bottom;
|
2958 |
-
animation-name: added-tc-popup-animation-bottom;
|
2959 |
-
-webkit-animation-duration: 1s;
|
2960 |
-
animation-duration: 1s;
|
2961 |
-
-webkit-animation-fill-mode: forwards;
|
2962 |
-
animation-fill-mode: forwards;
|
2963 |
-
}
|
2964 |
-
|
2965 |
-
.wpr-atc-popup-bottom .wpr-added-to-cart-popup-hide {
|
2966 |
-
-webkit-animation-name: added-tc-popup-animation-hide-bottom;
|
2967 |
-
animation-name: added-tc-popup-animation-hide-bottom;
|
2968 |
-
-webkit-animation-duration: 1s;
|
2969 |
-
animation-duration: 1s;
|
2970 |
-
-webkit-animation-fill-mode: forwards;
|
2971 |
-
animation-fill-mode: forwards;
|
2972 |
-
}
|
2973 |
-
|
2974 |
-
.wpr-atc-popup-top .wpr-added-to-cart-popup {
|
2975 |
-
top: 0;
|
2976 |
-
right: 0;
|
2977 |
-
}
|
2978 |
-
|
2979 |
-
.wpr-atc-popup-bottom .wpr-added-to-cart-popup {
|
2980 |
-
bottom: 0;
|
2981 |
-
right: 0;
|
2982 |
-
}
|
2983 |
-
|
2984 |
-
.wpr-added-tc-title {
|
2985 |
-
-webkit-box-flex: 1;
|
2986 |
-
-ms-flex: 1;
|
2987 |
-
flex: 1;
|
2988 |
-
}
|
2989 |
-
|
2990 |
-
.wpr-added-tc-title a {
|
2991 |
-
display: inline;
|
2992 |
-
}
|
2993 |
-
|
2994 |
-
.wpr-added-tc-title p {
|
2995 |
-
margin: 0;
|
2996 |
-
}
|
2997 |
-
|
2998 |
-
.wpr-added-tc-popup-img img {
|
2999 |
-
width: 100%;
|
3000 |
-
height: auto;
|
3001 |
-
}
|
3002 |
-
|
3003 |
-
.wpr-grid .added_to_cart {
|
3004 |
-
opacity: 0;
|
3005 |
-
}
|
3006 |
-
|
3007 |
-
/* Pagination */
|
3008 |
-
|
3009 |
-
.wpr-grid-pagination {
|
3010 |
-
margin-top: 30px;
|
3011 |
-
}
|
3012 |
-
|
3013 |
-
.wpr-grid-pagination>a,
|
3014 |
-
.wpr-grid-pagination>span {
|
3015 |
-
display: inline-block;
|
3016 |
-
}
|
3017 |
-
|
3018 |
-
.wpr-grid-pagination i,
|
3019 |
-
.wpr-grid-pagination svg {
|
3020 |
-
vertical-align: middle;
|
3021 |
-
}
|
3022 |
-
|
3023 |
-
.wpr-grid-pagination .wpr-disabled-arrow {
|
3024 |
-
cursor: not-allowed;
|
3025 |
-
opacity: 0.4;
|
3026 |
-
}
|
3027 |
-
|
3028 |
-
.wpr-pagination-loading,
|
3029 |
-
.wpr-pagination-finish {
|
3030 |
-
display: none;
|
3031 |
-
}
|
3032 |
-
|
3033 |
-
.wpr-grid-pagination-center .wpr-grid-pagination,
|
3034 |
-
.wpr-grid-pagination-justify .wpr-grid-pagination {
|
3035 |
-
text-align: center;
|
3036 |
-
}
|
3037 |
-
|
3038 |
-
.wpr-grid-pagination-center .wpr-grid-pagination {
|
3039 |
-
display: -webkit-box;
|
3040 |
-
display: -ms-flexbox;
|
3041 |
-
display: flex;
|
3042 |
-
-webkit-box-pack: center;
|
3043 |
-
-ms-flex-pack: center;
|
3044 |
-
justify-content: center;
|
3045 |
-
}
|
3046 |
-
|
3047 |
-
.wpr-grid-pagination-left .wpr-grid-pagination {
|
3048 |
-
text-align: left;
|
3049 |
-
display: -webkit-box;
|
3050 |
-
display: -ms-flexbox;
|
3051 |
-
display: flex;
|
3052 |
-
-webkit-box-pack: start;
|
3053 |
-
-ms-flex-pack: start;
|
3054 |
-
justify-content: flex-start;
|
3055 |
-
}
|
3056 |
-
|
3057 |
-
.wpr-grid-pagination-right .wpr-grid-pagination {
|
3058 |
-
text-align: right;
|
3059 |
-
display: -webkit-box;
|
3060 |
-
display: -ms-flexbox;
|
3061 |
-
display: flex;
|
3062 |
-
-webkit-box-pack: end;
|
3063 |
-
-ms-flex-pack: end;
|
3064 |
-
justify-content: flex-end;
|
3065 |
-
}
|
3066 |
-
|
3067 |
-
.wpr-grid-pagination-infinite-scroll {
|
3068 |
-
text-align: center;
|
3069 |
-
}
|
3070 |
-
|
3071 |
-
.wpr-grid-pagination-justify .wpr-grid-pagi-left-arrows,
|
3072 |
-
.wpr-grid-pagination-justify .wpr-grid-pagination-default .wpr-prev-post-link {
|
3073 |
-
float: left;
|
3074 |
-
}
|
3075 |
-
|
3076 |
-
.wpr-grid-pagination-justify .wpr-grid-pagi-right-arrows,
|
3077 |
-
.wpr-grid-pagination-justify .wpr-grid-pagination-default .wpr-next-post-link {
|
3078 |
-
float: right;
|
3079 |
-
}
|
3080 |
-
|
3081 |
-
.wpr-grid-pagi-left-arrows,
|
3082 |
-
.wpr-grid-pagi-right-arrows,
|
3083 |
-
.wpr-grid-pagination .wpr-load-more-btn {
|
3084 |
-
display: inline-block;
|
3085 |
-
}
|
3086 |
-
|
3087 |
-
.wpr-load-more-btn,
|
3088 |
-
.wpr-grid-pagi-right-arrows a:last-child,
|
3089 |
-
.wpr-grid-pagi-right-arrows span:last-child {
|
3090 |
-
margin-right: 0 !important;
|
3091 |
-
}
|
3092 |
-
|
3093 |
-
.wpr-grid-pagination .wpr-first-page,
|
3094 |
-
.wpr-grid-pagination .wpr-last-page,
|
3095 |
-
.wpr-grid-pagination .wpr-prev-page,
|
3096 |
-
.wpr-grid-pagination .wpr-prev-post-link,
|
3097 |
-
.wpr-grid-pagination .wpr-next-page,
|
3098 |
-
.wpr-grid-pagination .wpr-next-post-link {
|
3099 |
-
display: -webkit-inline-box;
|
3100 |
-
display: -ms-inline-flexbox;
|
3101 |
-
display: inline-flex;
|
3102 |
-
-webkit-box-pack: center;
|
3103 |
-
-ms-flex-pack: center;
|
3104 |
-
justify-content: center;
|
3105 |
-
-webkit-box-align: center;
|
3106 |
-
-ms-flex-align: center;
|
3107 |
-
align-items: center;
|
3108 |
-
height: 100%;
|
3109 |
-
}
|
3110 |
-
|
3111 |
-
@media screen and ( max-width: 767px) {
|
3112 |
-
.wpr-grid-pagination a,
|
3113 |
-
.wpr-grid-pagination span {
|
3114 |
-
margin-bottom: 10px;
|
3115 |
-
}
|
3116 |
-
.wpr-grid-pagination span>span,
|
3117 |
-
.wpr-grid-pagination a>span {
|
3118 |
-
display: none;
|
3119 |
-
}
|
3120 |
-
.wpr-grid-pagination.wpr-grid-pagination-numbered span i,
|
3121 |
-
.wpr-grid-pagination.wpr-grid-pagination-numbered a i {
|
3122 |
-
padding: 0 !important;
|
3123 |
-
}
|
3124 |
-
}
|
3125 |
-
|
3126 |
-
.elementor-editor-active .wpr-grid-pagination-infinite-scroll {
|
3127 |
-
display: none;
|
3128 |
-
}
|
3129 |
-
|
3130 |
-
|
3131 |
-
/* Grid Slider Navigation */
|
3132 |
-
.wpr-grid-slider-nav-position-default .wpr-grid-slider-arrow-container {
|
3133 |
-
position: absolute;
|
3134 |
-
display: -webkit-box;
|
3135 |
-
display: -ms-flexbox;
|
3136 |
-
display: flex;
|
3137 |
-
}
|
3138 |
-
|
3139 |
-
.wpr-grid-slider-nav-position-default .wpr-grid-slider-arrow {
|
3140 |
-
position: static;
|
3141 |
-
}
|
3142 |
-
|
3143 |
-
.wpr-grid-slider-nav-position-default .wpr-grid-slider-prev-arrow {
|
3144 |
-
-ms-transform: none;
|
3145 |
-
transform: none;
|
3146 |
-
-webkit-transform: none;
|
3147 |
-
}
|
3148 |
-
|
3149 |
-
.wpr-grid-slider-nav-position-default .wpr-grid-slider-next-arrow {
|
3150 |
-
-ms-transform: translateY(0) rotate(180deg);
|
3151 |
-
transform: translateY(0) rotate(180deg);
|
3152 |
-
-webkit-transform: translateY(0) rotate(180deg);
|
3153 |
-
}
|
3154 |
-
|
3155 |
-
.wpr-grid-slider-nav-align-top-center .wpr-grid-slider-arrow-container,
|
3156 |
-
.wpr-grid-slider-nav-align-bottom-center .wpr-grid-slider-arrow-container {
|
3157 |
-
left: 50%;
|
3158 |
-
-webkit-transform: translateX(-50%);
|
3159 |
-
-ms-transform: translateX(-50%);
|
3160 |
-
transform: translateX(-50%);
|
3161 |
-
}
|
3162 |
-
|
3163 |
-
.wpr-grid-slider-arrow {
|
3164 |
-
position: absolute;
|
3165 |
-
z-index: 120;
|
3166 |
-
top: 50%;
|
3167 |
-
-webkit-box-sizing: content-box;
|
3168 |
-
box-sizing: content-box;
|
3169 |
-
-webkit-box-align: center;
|
3170 |
-
-ms-flex-align: center;
|
3171 |
-
align-items: center;
|
3172 |
-
-webkit-box-pack: center;
|
3173 |
-
-ms-flex-pack: center;
|
3174 |
-
justify-content: center;
|
3175 |
-
-webkit-transition: all .5s;
|
3176 |
-
-o-transition: all .5s;
|
3177 |
-
transition: all .5s;
|
3178 |
-
text-align: center;
|
3179 |
-
cursor: pointer;
|
3180 |
-
}
|
3181 |
-
|
3182 |
-
.wpr-grid-slider-arrow i {
|
3183 |
-
display: block;
|
3184 |
-
width: 100%;
|
3185 |
-
height: 100%;
|
3186 |
-
}
|
3187 |
-
|
3188 |
-
.wpr-grid-slider-prev-arrow {
|
3189 |
-
left: 1%;
|
3190 |
-
-webkit-transform: translateY(-50%);
|
3191 |
-
-ms-transform: translateY(-50%);
|
3192 |
-
transform: translateY(-50%);
|
3193 |
-
}
|
3194 |
-
|
3195 |
-
.wpr-grid-slider-next-arrow {
|
3196 |
-
right: 1%;
|
3197 |
-
-webkit-transform: translateY(-50%) rotate(180deg);
|
3198 |
-
-ms-transform: translateY(-50%) rotate(180deg);
|
3199 |
-
transform: translateY(-50%) rotate(180deg);
|
3200 |
-
}
|
3201 |
-
|
3202 |
-
.wpr-grid-slider-nav-fade .wpr-grid-slider-arrow-container {
|
3203 |
-
opacity: 0;
|
3204 |
-
visibility: hidden;
|
3205 |
-
}
|
3206 |
-
|
3207 |
-
.wpr-grid-slider-nav-fade:hover .wpr-grid-slider-arrow-container {
|
3208 |
-
opacity: 1;
|
3209 |
-
visibility: visible;
|
3210 |
-
}
|
3211 |
-
|
3212 |
-
|
3213 |
-
/* Grid Slider Pagination */
|
3214 |
-
.wpr-grid-slider-dots {
|
3215 |
-
display: inline-table;
|
3216 |
-
position: absolute;
|
3217 |
-
z-index: 110;
|
3218 |
-
left: 50%;
|
3219 |
-
-webkit-transform: translate(-50%, -50%);
|
3220 |
-
-ms-transform: translate(-50%, -50%);
|
3221 |
-
transform: translate(-50%, -50%);
|
3222 |
-
}
|
3223 |
-
|
3224 |
-
.wpr-grid-slider-dots ul {
|
3225 |
-
list-style: none;
|
3226 |
-
margin: 0;
|
3227 |
-
padding: 0;
|
3228 |
-
}
|
3229 |
-
|
3230 |
-
.wpr-grid-slider-dots-horizontal .wpr-grid-slider-dots li,
|
3231 |
-
.wpr-grid-slider-dots-pro-vr .slick-dots li {
|
3232 |
-
float: left;
|
3233 |
-
}
|
3234 |
-
|
3235 |
-
.wpr-grid.slick-dotted.slick-slider {
|
3236 |
-
margin-bottom: 0 !important;
|
3237 |
-
}
|
3238 |
-
|
3239 |
-
.wpr-grid-slider-dots-vertical .slick-dots li {
|
3240 |
-
display: block;
|
3241 |
-
width: auto !important;
|
3242 |
-
height: auto !important;
|
3243 |
-
margin: 0 !important;
|
3244 |
-
}
|
3245 |
-
|
3246 |
-
.wpr-grid-slider-dots-horizontal .slick-dots li,
|
3247 |
-
.wpr-grid-slider-dots-pro-vr .slick-dots li {
|
3248 |
-
width: auto !important;
|
3249 |
-
padding-top: 10px;
|
3250 |
-
margin: 0 !important;
|
3251 |
-
}
|
3252 |
-
|
3253 |
-
.wpr-grid-slider-dots-horizontal .slick-dots li:last-child span {
|
3254 |
-
margin-right: 0 !important;
|
3255 |
-
}
|
3256 |
-
|
3257 |
-
.wpr-grid-slider-dot {
|
3258 |
-
display: block;
|
3259 |
-
cursor: pointer;
|
3260 |
-
}
|
3261 |
-
|
3262 |
-
.wpr-grid-slider-dots li:last-child .wpr-grid-slider-dot {
|
3263 |
-
margin: 0 !important;
|
3264 |
-
}
|
3265 |
-
|
3266 |
-
|
3267 |
-
/* Password Protected Form */
|
3268 |
-
.wpr-grid-item-protected {
|
3269 |
-
position: absolute;
|
3270 |
-
top: 0;
|
3271 |
-
left: 0;
|
3272 |
-
z-index: 11 !important;
|
3273 |
-
width: 100%;
|
3274 |
-
height: 100%;
|
3275 |
-
}
|
3276 |
-
|
3277 |
-
.wpr-grid-item-protected i {
|
3278 |
-
font-size: 22px;
|
3279 |
-
}
|
3280 |
-
|
3281 |
-
.wpr-grid-item-protected input {
|
3282 |
-
width: 50%;
|
3283 |
-
border: none;
|
3284 |
-
margin-top: 10px;
|
3285 |
-
padding: 7px 13px;
|
3286 |
-
font-size: 13px;
|
3287 |
-
}
|
3288 |
-
|
3289 |
-
/* Locate It Later */
|
3290 |
-
.wpr-grid-sorting-inner-wrap {
|
3291 |
-
display: -webkit-box;
|
3292 |
-
display: -ms-flexbox;
|
3293 |
-
display: flex;
|
3294 |
-
-webkit-box-align: center;
|
3295 |
-
-ms-flex-align: center;
|
3296 |
-
align-items: center;
|
3297 |
-
-webkit-box-pack: justify;
|
3298 |
-
-ms-flex-pack: justify;
|
3299 |
-
justify-content: space-between;
|
3300 |
-
}
|
3301 |
-
|
3302 |
-
.wpr-products-result-count .woocommerce-result-count {
|
3303 |
-
margin: 0;
|
3304 |
-
}
|
3305 |
-
|
3306 |
-
.wpr-sort-select-position-above .wpr-grid-sort-heading {
|
3307 |
-
display: -webkit-box;
|
3308 |
-
display: -ms-flexbox;
|
3309 |
-
display: flex;
|
3310 |
-
-webkit-box-pack: justify;
|
3311 |
-
-ms-flex-pack: justify;
|
3312 |
-
justify-content: space-between;
|
3313 |
-
}
|
3314 |
-
|
3315 |
-
.wpr-grid-sort-heading {
|
3316 |
-
/* flex: 1; */
|
3317 |
-
width: 100%;
|
3318 |
-
/* flex-basis: 100%; */
|
3319 |
-
}
|
3320 |
-
|
3321 |
-
.wpr-grid-sort-heading * {
|
3322 |
-
margin: 0;
|
3323 |
-
}
|
3324 |
-
|
3325 |
-
.wpr-grid-sorting-inner-wrap form .orderby::-ms-expend {
|
3326 |
-
display: none;
|
3327 |
-
}
|
3328 |
-
|
3329 |
-
.wpr-grid-orderby span {
|
3330 |
-
position: relative;
|
3331 |
-
display: block;
|
3332 |
-
}
|
3333 |
-
|
3334 |
-
.wpr-grid-sorting-wrap form .orderby {
|
3335 |
-
/* for Firefox */
|
3336 |
-
-moz-appearance: none;
|
3337 |
-
/* for Chrome */
|
3338 |
-
-webkit-appearance: none;
|
3339 |
-
}
|
3340 |
-
|
3341 |
-
.wpr-grid-sorting-wrap .wpr-orderby-icon {
|
3342 |
-
position: absolute;
|
3343 |
-
top: 50%;
|
3344 |
-
-webkit-transform: translateY(-50%);
|
3345 |
-
-ms-transform: translateY(-50%);
|
3346 |
-
transform: translateY(-50%);
|
3347 |
-
font-family: "Font Awesome 5 Free";
|
3348 |
-
font-weight: 600 !important;
|
3349 |
-
}
|
3350 |
-
|
3351 |
-
/* Defaults */
|
3352 |
-
.elementor-widget-wpr-grid .wpr-grid-media-hover-bg,
|
3353 |
-
.elementor-widget-wpr-media-grid .wpr-grid-media-hover-bg,
|
3354 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-media-hover-bg {
|
3355 |
-
background-color: rgba(0, 0, 0, 0.25);
|
3356 |
-
}
|
3357 |
-
|
3358 |
-
.elementor-widget-wpr-magazine-grid .wpr-grid-media-hover-bg {
|
3359 |
-
background-image: -o-linear-gradient(top, rgba(255, 255, 255, 0) 46%, rgba(96, 91, 229, 0.87) 100%);
|
3360 |
-
background-image: -webkit-gradient(linear, left top, left bottom, color-stop(46%, rgba(255, 255, 255, 0)), to(rgba(96, 91, 229, 0.87)));
|
3361 |
-
background-image: linear-gradient(180deg, rgba(255, 255, 255, 0) 46%, rgba(96, 91, 229, 0.87) 100%);
|
3362 |
-
}
|
3363 |
-
|
3364 |
-
.elementor-widget-wpr-grid .wpr-grid-item-title,
|
3365 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-item-title,
|
3366 |
-
.elementor-widget-wpr-woo-category-grid-pro .wpr-grid-item-title {
|
3367 |
-
font-size: 21px;
|
3368 |
-
font-weight: 700;
|
3369 |
-
line-height: 23px;
|
3370 |
-
margin: 0;
|
3371 |
-
}
|
3372 |
-
|
3373 |
-
.elementor-widget-wpr-magazine-grid .wpr-grid-item-title {
|
3374 |
-
font-size: 22px;
|
3375 |
-
margin: 0;
|
3376 |
-
}
|
3377 |
-
|
3378 |
-
.elementor-widget-wpr-media-grid .wpr-grid-item-title {
|
3379 |
-
font-size: 15px;
|
3380 |
-
font-weight: 500;
|
3381 |
-
margin: 0;
|
3382 |
-
}
|
3383 |
-
|
3384 |
-
.elementor-widget-wpr-grid .wpr-grid-item-content,
|
3385 |
-
.elementor-widget-wpr-grid .wpr-grid-item-excerpt,
|
3386 |
-
.elementor-widget-wpr-grid .wpr-grid-item-author,
|
3387 |
-
.elementor-widget-wpr-grid .wpr-grid-item-time,
|
3388 |
-
.elementor-widget-wpr-grid .wpr-grid-item-read-more a,
|
3389 |
-
.elementor-widget-wpr-grid .wpr-grid-item-likes,
|
3390 |
-
.elementor-widget-wpr-grid .wpr-grid-item-sharing,
|
3391 |
-
.elementor-widget-wpr-grid .wpr-grid-tax-style-1,
|
3392 |
-
.elementor-widget-wpr-grid .wpr-grid-cf-style-1,
|
3393 |
-
.elementor-widget-wpr-grid .wpr-grid-filters li,
|
3394 |
-
.elementor-widget-wpr-grid .wpr-grid-pagination,
|
3395 |
-
.elementor-widget-wpr-grid .wpr-grid-item-protected p,
|
3396 |
-
.elementor-widget-wpr-media-grid .wpr-grid-item-sharing,
|
3397 |
-
.elementor-widget-wpr-media-grid .wpr-grid-filters li,
|
3398 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-item-content,
|
3399 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-product-categories,
|
3400 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-product-tags,
|
3401 |
-
.elementor-widget-wpr-woo-grid .wpr-woo-rating span,
|
3402 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-item-status .inner-block>span,
|
3403 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-item-add-to-cart a,
|
3404 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-item-likes,
|
3405 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-item-sharing,
|
3406 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-item-lightbox,
|
3407 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-pagination,
|
3408 |
-
.elementor-widget-wpr-woo-grid .wpr-grid-item-price .inner-block>span,
|
3409 |
-
.elementor-widget-wpr-magazine-grid .wpr-grid-item-content,
|
3410 |
-
.elementor-widget-wpr-magazine-grid .wpr-grid-item-excerpt {
|
3411 |
-
font-size: 14px;
|
3412 |
-
}
|
3413 |
-
|
3414 |
-
.elementor-widget-wpr-magazine-grid .wpr-grid-tax-style-1 {
|
3415 |
-
font-size: 12px;
|
3416 |
-
list-style-position: 0.5px;
|
3417 |
-
}
|
3418 |
-
|
3419 |
-
.elementor-widget-wpr-magazine-grid .wpr-grid-item-date,
|
3420 |
-
.elementor-widget-wpr-magazine-grid .wpr-grid-item-time,
|
3421 |
-
.elementor-widget-wpr-magazine-grid .wpr-grid-item-author {
|
3422 |
-
font-size: 12px;
|
3423 |
-
list-style-position: 0.3px;
|
3424 |
-
}
|
3425 |
-
|
3426 |
-
.elementor-widget-wpr-grid .wpr-grid-item-date,
|
3427 |
-
.elementor-widget-wpr-grid .wpr-grid-item-comments,
|
3428 |
-
.elementor-widget-wpr-grid .wpr-grid-tax-style-2,
|
3429 |
-
.elementor-widget-wpr-media-grid .wpr-grid-item-caption,
|
3430 |
-
.elementor-widget-wpr-media-grid .wpr-grid-item-date,
|
3431 |
-
.elementor-widget-wpr-media-grid .wpr-grid-item-time,
|
3432 |
-
.elementor-widget-wpr-media-grid .wpr-grid-item-author,
|
3433 |
-
.elementor-widget-wpr-media-grid .wpr-grid-item-likes,
|
3434 |
-
.elementor-widget-wpr-media-grid .wpr-grid-tax-style-1,
|
3435 |
-
.elementor-widget-wpr-media-grid .wpr-grid-tax-style-2,
|
3436 |
-
.elementor-widget-wpr-media-magazine-grid .wpr-grid-tax-style-2 {
|
3437 |
-
font-size: 14px;
|
3438 |
-
}
|
3439 |
-
|
3440 |
-
.elementor-widget-wpr-grid .wpr-grid-item-lightbox,
|
3441 |
-
.elementor-widget-wpr-media-grid .wpr-grid-item-lightbox {
|
3442 |
-
font-size: 18px;
|
3443 |
-
}
|
3444 |
-
|
3445 |
-
.elementor-widget-wpr-grid .wpr-grid-cf-style-2,
|
3446 |
-
.elementor-widget-wpr-media-grid .wpr-grid-pagination {
|
3447 |
-
font-size: 15px;
|
3448 |
-
}
|
3449 |
-
|
3450 |
-
.elementor-widget-wpr-grid .wpr-grid-tax-style-2 .inner-block a {
|
3451 |
-
background-color: #605BE5;
|
3452 |
-
}
|
3453 |
-
|
3454 |
-
.elementor-widget-wpr-grid .wpr-grid-tax-style-2 .inner-block a:hover {
|
3455 |
-
background-color: #4A45D2;
|
3456 |
-
}
|
3457 |
-
|
3458 |
-
@media screen and (max-width: 580px) {
|
3459 |
-
.wpr-grid-sorting-inner-wrap {
|
3460 |
-
-webkit-box-orient: vertical;
|
3461 |
-
-webkit-box-direction: normal;
|
3462 |
-
-ms-flex-direction: column;
|
3463 |
-
flex-direction: column;
|
3464 |
-
-webkit-box-align: start;
|
3465 |
-
-ms-flex-align: start;
|
3466 |
-
align-items: flex-start;
|
3467 |
-
}
|
3468 |
-
|
3469 |
-
.wpr-products-result-count {
|
3470 |
-
margin-bottom: 5px;
|
3471 |
-
}
|
3472 |
-
|
3473 |
-
.wpr-grid-orderby,
|
3474 |
-
.wpr-grid-orderby select.orderby,
|
3475 |
-
.wpr-products-result-count {
|
3476 |
-
width: 100% !important;
|
3477 |
-
}
|
3478 |
-
}
|
3479 |
-
|
3480 |
-
|
3481 |
-
/*--------------------------------------------------------------
|
3482 |
-
== Magazine Grid
|
3483 |
-
--------------------------------------------------------------*/
|
3484 |
-
|
3485 |
-
.wpr-magazine-grid {
|
3486 |
-
display: -ms-grid;
|
3487 |
-
display: grid;
|
3488 |
-
-webkit-box-pack: stretch;
|
3489 |
-
-ms-flex-pack: stretch;
|
3490 |
-
justify-content: stretch;
|
3491 |
-
-ms-grid-rows: 1fr 1fr;
|
3492 |
-
grid-template-rows: 1fr 1fr;
|
3493 |
-
}
|
3494 |
-
|
3495 |
-
.wpr-mgzn-grid-item {
|
3496 |
-
padding: 0 !important;
|
3497 |
-
text-align: center;
|
3498 |
-
}
|
3499 |
-
|
3500 |
-
.wpr-mgzn-grid-1vh-3h {
|
3501 |
-
-ms-grid-rows: auto;
|
3502 |
-
grid-template-rows: auto;
|
3503 |
-
}
|
3504 |
-
|
3505 |
-
.wpr-mgzn-grid-1-1-1 {
|
3506 |
-
-ms-grid-rows: 1fr;
|
3507 |
-
grid-template-rows: 1fr;
|
3508 |
-
}
|
3509 |
-
|
3510 |
-
.wpr-mgzn-grid-2-3,
|
3511 |
-
.wpr-mgzn-grid-1-1-3 {
|
3512 |
-
-ms-grid-columns: (1fr)[6];
|
3513 |
-
grid-template-columns: repeat(6, 1fr);
|
3514 |
-
}
|
3515 |
-
|
3516 |
-
.wpr-mgzn-grid-2-h {
|
3517 |
-
-ms-grid-columns: (1fr)[2];
|
3518 |
-
grid-template-columns: repeat(2, 1fr);
|
3519 |
-
}
|
3520 |
-
|
3521 |
-
.wpr-mgzn-grid-3-h {
|
3522 |
-
-ms-grid-columns: (1fr)[3];
|
3523 |
-
grid-template-columns: repeat(3, 1fr);
|
3524 |
-
}
|
3525 |
-
|
3526 |
-
.wpr-mgzn-grid-4-h {
|
3527 |
-
-ms-grid-columns: (1fr)[4];
|
3528 |
-
grid-template-columns: repeat(4, 1fr);
|
3529 |
-
}
|
3530 |
-
|
3531 |
-
.wpr-mgzn-grid-1vh-3h .wpr-mgzn-grid-item:nth-child(1) {
|
3532 |
-
-ms-grid-column: 1;
|
3533 |
-
grid-column-start: 1;
|
3534 |
-
-ms-grid-row: 1;
|
3535 |
-
grid-row-start: 1;
|
3536 |
-
-ms-grid-row-span: 3;
|
3537 |
-
grid-row-end: 4;
|
3538 |
-
}
|
3539 |
-
|
3540 |
-
.wpr-mgzn-grid-1vh-3h .wpr-mgzn-grid-item:nth-child(2) {
|
3541 |
-
-ms-grid-column: 2;
|
3542 |
-
grid-column-start: 2;
|
3543 |
-
}
|
3544 |
-
|
3545 |
-
.wpr-mgzn-grid-1vh-3h .wpr-mgzn-grid-item:nth-child(3) {
|
3546 |
-
-ms-grid-column: 2;
|
3547 |
-
grid-column-start: 2;
|
3548 |
-
}
|
3549 |
-
|
3550 |
-
.wpr-mgzn-grid-1vh-3h .wpr-mgzn-grid-item:nth-child(4) {
|
3551 |
-
-ms-grid-column: 2;
|
3552 |
-
grid-column-start: 2;
|
3553 |
-
}
|
3554 |
-
|
3555 |
-
.wpr-mgzn-grid-1-2 .wpr-mgzn-grid-item:nth-child(1),
|
3556 |
-
.wpr-mgzn-grid-1-3 .wpr-mgzn-grid-item:nth-child(1),
|
3557 |
-
.wpr-mgzn-grid-1-4 .wpr-mgzn-grid-item:nth-child(1),
|
3558 |
-
.wpr-mgzn-grid-1-1-2 .wpr-mgzn-grid-item:nth-child(1) {
|
3559 |
-
-ms-grid-column: 1;
|
3560 |
-
grid-column-start: 1;
|
3561 |
-
-ms-grid-row: 1;
|
3562 |
-
grid-row-start: 1;
|
3563 |
-
-ms-grid-row-span: 2;
|
3564 |
-
grid-row-end: 3;
|
3565 |
-
}
|
3566 |
-
|
3567 |
-
.wpr-mgzn-grid-1-1-2 .wpr-mgzn-grid-item:nth-child(2) {
|
3568 |
-
-ms-grid-row: 1;
|
3569 |
-
grid-row-start: 1;
|
3570 |
-
-ms-grid-row-span: 2;
|
3571 |
-
grid-row-end: 3;
|
3572 |
-
}
|
3573 |
-
|
3574 |
-
.wpr-mgzn-grid-2-1-2 .wpr-mgzn-grid-item:nth-child(2) {
|
3575 |
-
-ms-grid-column: 2;
|
3576 |
-
grid-column-start: 2;
|
3577 |
-
-ms-grid-row: 1;
|
3578 |
-
grid-row-start: 1;
|
3579 |
-
-ms-grid-row-span: 2;
|
3580 |
-
grid-row-end: 3;
|
3581 |
-
}
|
3582 |
-
|
3583 |
-
.wpr-mgzn-grid-1-3 .wpr-mgzn-grid-item:nth-child(2) {
|
3584 |
-
-ms-grid-column: 2;
|
3585 |
-
grid-column-start: 2;
|
3586 |
-
-ms-grid-column-span: 2;
|
3587 |
-
grid-column-end: 4;
|
3588 |
-
}
|
3589 |
-
|
3590 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(1),
|
3591 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(2),
|
3592 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(1),
|
3593 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(2) {
|
3594 |
-
-ms-grid-row: 1;
|
3595 |
-
grid-row-start: 1;
|
3596 |
-
-ms-grid-row-span: 1;
|
3597 |
-
grid-row-end: 2;
|
3598 |
-
}
|
3599 |
-
|
3600 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(1) {
|
3601 |
-
-ms-grid-column: 1;
|
3602 |
-
grid-column-start: 1;
|
3603 |
-
-ms-grid-column-span: 3;
|
3604 |
-
grid-column-end: 4;
|
3605 |
-
}
|
3606 |
-
|
3607 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(2) {
|
3608 |
-
-ms-grid-column: 4;
|
3609 |
-
grid-column-start: 4;
|
3610 |
-
-ms-grid-column-span: 3;
|
3611 |
-
grid-column-end: 7;
|
3612 |
-
}
|
3613 |
-
|
3614 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(1) {
|
3615 |
-
-ms-grid-column: 1;
|
3616 |
-
grid-column-start: 1;
|
3617 |
-
-ms-grid-column-span: 4;
|
3618 |
-
grid-column-end: 5;
|
3619 |
-
}
|
3620 |
-
|
3621 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(2) {
|
3622 |
-
-ms-grid-column: 5;
|
3623 |
-
grid-column-start: 5;
|
3624 |
-
-ms-grid-column-span: 2;
|
3625 |
-
grid-column-end: 7;
|
3626 |
-
}
|
3627 |
-
|
3628 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(3),
|
3629 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(4),
|
3630 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(5),
|
3631 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(3),
|
3632 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(4),
|
3633 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(5) {
|
3634 |
-
-ms-grid-row: 2;
|
3635 |
-
grid-row-start: 2;
|
3636 |
-
-ms-grid-row-span: 1;
|
3637 |
-
grid-row-end: 3;
|
3638 |
-
}
|
3639 |
-
|
3640 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(3),
|
3641 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(3) {
|
3642 |
-
-ms-grid-column: 1;
|
3643 |
-
grid-column-start: 1;
|
3644 |
-
-ms-grid-column-span: 2;
|
3645 |
-
grid-column-end: 3;
|
3646 |
-
}
|
3647 |
-
|
3648 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(4),
|
3649 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(4) {
|
3650 |
-
-ms-grid-column: 3;
|
3651 |
-
grid-column-start: 3;
|
3652 |
-
-ms-grid-column-span: 2;
|
3653 |
-
grid-column-end: 5;
|
3654 |
-
}
|
3655 |
-
|
3656 |
-
.wpr-mgzn-grid-2-3 .wpr-mgzn-grid-item:nth-child(5),
|
3657 |
-
.wpr-mgzn-grid-1-1-3 .wpr-mgzn-grid-item:nth-child(5) {
|
3658 |
-
-ms-grid-column: 5;
|
3659 |
-
grid-column-start: 5;
|
3660 |
-
-ms-grid-column-span: 2;
|
3661 |
-
grid-column-end: 7;
|
3662 |
-
}
|
3663 |
-
|
3664 |
-
.wpr-magazine-grid .wpr-grid-item-inner,
|
3665 |
-
.wpr-magazine-grid .wpr-grid-media-wrap,
|
3666 |
-
.wpr-magazine-grid .wpr-grid-image-wrap {
|
3667 |
-
height: 100%;
|
3668 |
-
}
|
3669 |
-
|
3670 |
-
.wpr-magazine-grid .wpr-grid-image-wrap {
|
3671 |
-
background-size: cover;
|
3672 |
-
background-position: center center;
|
3673 |
-
}
|
3674 |
-
|
3675 |
-
.wpr-magazine-grid .wpr-grid-media-hover {
|
3676 |
-
z-index: 1;
|
3677 |
-
}
|
3678 |
-
|
3679 |
-
|
3680 |
-
/* Responsive */
|
3681 |
-
|
3682 |
-
@media screen and ( max-width: 1024px) {
|
3683 |
-
/* Layout 1 */
|
3684 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-2 {
|
3685 |
-
-ms-grid-columns: 1fr 1fr !important;
|
3686 |
-
grid-template-columns: 1fr 1fr !important;
|
3687 |
-
-ms-grid-rows: 1fr 1fr 1fr;
|
3688 |
-
grid-template-rows: 1fr 1fr 1fr;
|
3689 |
-
}
|
3690 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-2>*:nth-child(1) {
|
3691 |
-
-ms-grid-row: 1;
|
3692 |
-
-ms-grid-column: 1;
|
3693 |
-
}
|
3694 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-2>*:nth-child(2) {
|
3695 |
-
-ms-grid-row: 1;
|
3696 |
-
-ms-grid-column: 2;
|
3697 |
-
}
|
3698 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-2>*:nth-child(3) {
|
3699 |
-
-ms-grid-row: 2;
|
3700 |
-
-ms-grid-column: 1;
|
3701 |
-
}
|
3702 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-2>*:nth-child(4) {
|
3703 |
-
-ms-grid-row: 2;
|
3704 |
-
-ms-grid-column: 2;
|
3705 |
-
}
|
3706 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-2>*:nth-child(5) {
|
3707 |
-
-ms-grid-row: 3;
|
3708 |
-
-ms-grid-column: 1;
|
3709 |
-
}
|
3710 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-2>*:nth-child(6) {
|
3711 |
-
-ms-grid-row: 3;
|
3712 |
-
-ms-grid-column: 2;
|
3713 |
-
}
|
3714 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-2 article:nth-child(1) {
|
3715 |
-
-ms-grid-column-span: 3 !important;
|
3716 |
-
grid-column-end: 3 !important;
|
3717 |
-
}
|
3718 |
-
/* Layout 2 */
|
3719 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-3 {
|
3720 |
-
-ms-grid-columns: 1fr 1fr !important;
|
3721 |
-
grid-template-columns: 1fr 1fr !important;
|
3722 |
-
-ms-grid-rows: 1fr 1fr 1fr !important;
|
3723 |
-
grid-template-rows: 1fr 1fr 1fr !important;
|
3724 |
-
}
|
3725 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-3>*:nth-child(1) {
|
3726 |
-
-ms-grid-row: 1;
|
3727 |
-
-ms-grid-column: 1;
|
3728 |
-
}
|
3729 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-3>*:nth-child(2) {
|
3730 |
-
-ms-grid-row: 1;
|
3731 |
-
-ms-grid-column: 2;
|
3732 |
-
}
|
3733 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-3>*:nth-child(3) {
|
3734 |
-
-ms-grid-row: 2;
|
3735 |
-
-ms-grid-column: 1;
|
3736 |
-
}
|
3737 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-3>*:nth-child(4) {
|
3738 |
-
-ms-grid-row: 2;
|
3739 |
-
-ms-grid-column: 2;
|
3740 |
-
}
|
3741 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-3>*:nth-child(5) {
|
3742 |
-
-ms-grid-row: 3;
|
3743 |
-
-ms-grid-column: 1;
|
3744 |
-
}
|
3745 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-3>*:nth-child(6) {
|
3746 |
-
-ms-grid-row: 3;
|
3747 |
-
-ms-grid-column: 2;
|
3748 |
-
}
|
3749 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-3 article:nth-child(1) {
|
3750 |
-
-ms-grid-column-span: 3 !important;
|
3751 |
-
grid-column-end: 3 !important;
|
3752 |
-
-ms-grid-row-span: 2 !important;
|
3753 |
-
grid-row-end: 2 !important;
|
3754 |
-
}
|
3755 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-3 article:nth-child(2) {
|
3756 |
-
-ms-grid-column: 1 !important;
|
3757 |
-
grid-column-start: 1 !important;
|
3758 |
-
-ms-grid-column-span: 2 !important;
|
3759 |
-
grid-column-end: 3 !important;
|
3760 |
-
}
|
3761 |
-
/* Layout 3 */
|
3762 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-4 {
|
3763 |
-
-ms-grid-columns: 1fr 1fr !important;
|
3764 |
-
grid-template-columns: 1fr 1fr !important;
|
3765 |
-
-ms-grid-rows: (1fr)[3];
|
3766 |
-
grid-template-rows: repeat(3, 1fr);
|
3767 |
-
}
|
3768 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-4>*:nth-child(1) {
|
3769 |
-
-ms-grid-row: 1;
|
3770 |
-
-ms-grid-column: 1;
|
3771 |
-
}
|
3772 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-4>*:nth-child(2) {
|
3773 |
-
-ms-grid-row: 1;
|
3774 |
-
-ms-grid-column: 2;
|
3775 |
-
}
|
3776 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-4>*:nth-child(3) {
|
3777 |
-
-ms-grid-row: 2;
|
3778 |
-
-ms-grid-column: 1;
|
3779 |
-
}
|
3780 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-4>*:nth-child(4) {
|
3781 |
-
-ms-grid-row: 2;
|
3782 |
-
-ms-grid-column: 2;
|
3783 |
-
}
|
3784 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-4>*:nth-child(5) {
|
3785 |
-
-ms-grid-row: 3;
|
3786 |
-
-ms-grid-column: 1;
|
3787 |
-
}
|
3788 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-4>*:nth-child(6) {
|
3789 |
-
-ms-grid-row: 3;
|
3790 |
-
-ms-grid-column: 2;
|
3791 |
-
}
|
3792 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-4 article:nth-child(1) {
|
3793 |
-
-ms-grid-column: 1;
|
3794 |
-
grid-column-start: 1;
|
3795 |
-
-ms-grid-column-span: 2;
|
3796 |
-
grid-column-end: 3;
|
3797 |
-
-ms-grid-row-span: 1 !important;
|
3798 |
-
grid-row-end: 1 !important;
|
3799 |
-
}
|
3800 |
-
/* Layout 4 */
|
3801 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-2 {
|
3802 |
-
-ms-grid-columns: 1fr 1fr !important;
|
3803 |
-
grid-template-columns: 1fr 1fr !important;
|
3804 |
-
-ms-grid-rows: 1fr 1fr 1fr !important;
|
3805 |
-
grid-template-rows: 1fr 1fr 1fr !important;
|
3806 |
-
}
|
3807 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-2>*:nth-child(1) {
|
3808 |
-
-ms-grid-row: 1;
|
3809 |
-
-ms-grid-column: 1;
|
3810 |
-
}
|
3811 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-2>*:nth-child(2) {
|
3812 |
-
-ms-grid-row: 1;
|
3813 |
-
-ms-grid-column: 2;
|
3814 |
-
}
|
3815 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-2>*:nth-child(3) {
|
3816 |
-
-ms-grid-row: 2;
|
3817 |
-
-ms-grid-column: 1;
|
3818 |
-
}
|
3819 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-2>*:nth-child(4) {
|
3820 |
-
-ms-grid-row: 2;
|
3821 |
-
-ms-grid-column: 2;
|
3822 |
-
}
|
3823 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-2>*:nth-child(5) {
|
3824 |
-
-ms-grid-row: 3;
|
3825 |
-
-ms-grid-column: 1;
|
3826 |
-
}
|
3827 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-2>*:nth-child(6) {
|
3828 |
-
-ms-grid-row: 3;
|
3829 |
-
-ms-grid-column: 2;
|
3830 |
-
}
|
3831 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-2 article:nth-child(1) {
|
3832 |
-
-ms-grid-column-span: 3;
|
3833 |
-
grid-column-end: 3;
|
3834 |
-
-ms-grid-row: 1;
|
3835 |
-
grid-row-start: 1;
|
3836 |
-
-ms-grid-row-span: 1;
|
3837 |
-
grid-row-end: 2;
|
3838 |
-
}
|
3839 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-2 article:nth-child(2) {
|
3840 |
-
-ms-grid-column: 1;
|
3841 |
-
grid-column-start: 1;
|
3842 |
-
-ms-grid-column-span: 2;
|
3843 |
-
grid-column-end: 3;
|
3844 |
-
-ms-grid-row: 2;
|
3845 |
-
grid-row-start: 2;
|
3846 |
-
-ms-grid-row-span: 1;
|
3847 |
-
grid-row-end: 3;
|
3848 |
-
}
|
3849 |
-
/* Layout 5 */
|
3850 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-1-2 {
|
3851 |
-
-ms-grid-columns: 1fr 1fr !important;
|
3852 |
-
grid-template-columns: 1fr 1fr !important;
|
3853 |
-
-ms-grid-rows: 1fr 1fr 1fr !important;
|
3854 |
-
grid-template-rows: 1fr 1fr 1fr !important;
|
3855 |
-
}
|
3856 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-1-2>*:nth-child(1) {
|
3857 |
-
-ms-grid-row: 1;
|
3858 |
-
-ms-grid-column: 1;
|
3859 |
-
}
|
3860 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-1-2>*:nth-child(2) {
|
3861 |
-
-ms-grid-row: 1;
|
3862 |
-
-ms-grid-column: 2;
|
3863 |
-
}
|
3864 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-1-2>*:nth-child(3) {
|
3865 |
-
-ms-grid-row: 2;
|
3866 |
-
-ms-grid-column: 1;
|
3867 |
-
}
|
3868 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-1-2>*:nth-child(4) {
|
3869 |
-
-ms-grid-row: 2;
|
3870 |
-
-ms-grid-column: 2;
|
3871 |
-
}
|
3872 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-1-2>*:nth-child(5) {
|
3873 |
-
-ms-grid-row: 3;
|
3874 |
-
-ms-grid-column: 1;
|
3875 |
-
}
|
3876 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-1-2>*:nth-child(6) {
|
3877 |
-
-ms-grid-row: 3;
|
3878 |
-
-ms-grid-column: 2;
|
3879 |
-
}
|
3880 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-1-2 article:nth-child(2) {
|
3881 |
-
-ms-grid-column: 1;
|
3882 |
-
grid-column-start: 1;
|
3883 |
-
-ms-grid-column-span: 2;
|
3884 |
-
grid-column-end: 3;
|
3885 |
-
-ms-grid-row: 2;
|
3886 |
-
grid-row-start: 2;
|
3887 |
-
}
|
3888 |
-
/* Layout 6 */
|
3889 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1vh-3h {
|
3890 |
-
-ms-grid-columns: 1fr 1fr !important;
|
3891 |
-
grid-template-columns: 1fr 1fr !important;
|
3892 |
-
}
|
3893 |
-
/* Layout 7 */
|
3894 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-1 {
|
3895 |
-
-ms-grid-columns: 1fr 1fr !important;
|
3896 |
-
grid-template-columns: 1fr 1fr !important;
|
3897 |
-
-ms-grid-rows: 1fr 1fr !important;
|
3898 |
-
grid-template-rows: 1fr 1fr !important;
|
3899 |
-
}
|
3900 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-1>*:nth-child(1) {
|
3901 |
-
-ms-grid-row: 1;
|
3902 |
-
-ms-grid-column: 1;
|
3903 |
-
}
|
3904 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-1>*:nth-child(2) {
|
3905 |
-
-ms-grid-row: 1;
|
3906 |
-
-ms-grid-column: 2;
|
3907 |
-
}
|
3908 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-1>*:nth-child(3) {
|
3909 |
-
-ms-grid-row: 2;
|
3910 |
-
-ms-grid-column: 1;
|
3911 |
-
}
|
3912 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-1>*:nth-child(4) {
|
3913 |
-
-ms-grid-row: 2;
|
3914 |
-
-ms-grid-column: 2;
|
3915 |
-
}
|
3916 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-1 article:nth-child(2) {
|
3917 |
-
-ms-grid-column: 1;
|
3918 |
-
grid-column-start: 1;
|
3919 |
-
-ms-grid-column-span: 2;
|
3920 |
-
grid-column-end: 3;
|
3921 |
-
-ms-grid-row: 1;
|
3922 |
-
grid-row-start: 1
|
3923 |
-
}
|
3924 |
-
/* Layout 8 */
|
3925 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3 {
|
3926 |
-
-ms-grid-columns: 1fr 1fr !important;
|
3927 |
-
grid-template-columns: 1fr 1fr !important;
|
3928 |
-
-ms-grid-rows: (1fr)[3];
|
3929 |
-
grid-template-rows: repeat(3, 1fr);
|
3930 |
-
}
|
3931 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3>*:nth-child(1) {
|
3932 |
-
-ms-grid-row: 1;
|
3933 |
-
-ms-grid-column: 1;
|
3934 |
-
}
|
3935 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3>*:nth-child(2) {
|
3936 |
-
-ms-grid-row: 1;
|
3937 |
-
-ms-grid-column: 2;
|
3938 |
-
}
|
3939 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3>*:nth-child(3) {
|
3940 |
-
-ms-grid-row: 2;
|
3941 |
-
-ms-grid-column: 1;
|
3942 |
-
}
|
3943 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3>*:nth-child(4) {
|
3944 |
-
-ms-grid-row: 2;
|
3945 |
-
-ms-grid-column: 2;
|
3946 |
-
}
|
3947 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3>*:nth-child(5) {
|
3948 |
-
-ms-grid-row: 3;
|
3949 |
-
-ms-grid-column: 1;
|
3950 |
-
}
|
3951 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3>*:nth-child(6) {
|
3952 |
-
-ms-grid-row: 3;
|
3953 |
-
-ms-grid-column: 2;
|
3954 |
-
}
|
3955 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3 article:nth-child(1) {
|
3956 |
-
-ms-grid-column: 1;
|
3957 |
-
grid-column-start: 1;
|
3958 |
-
-ms-grid-column-span: 2;
|
3959 |
-
grid-column-end: 3;
|
3960 |
-
-ms-grid-row-span: 2;
|
3961 |
-
grid-row-end: 2;
|
3962 |
-
}
|
3963 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3 article:nth-child(2) {
|
3964 |
-
-ms-grid-row: 2;
|
3965 |
-
grid-row-start: 2;
|
3966 |
-
-ms-grid-column: 1;
|
3967 |
-
grid-column-start: 1;
|
3968 |
-
-ms-grid-column-span: 1;
|
3969 |
-
grid-column-end: 2;
|
3970 |
-
}
|
3971 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3 article:nth-child(3) {
|
3972 |
-
-ms-grid-row: 2;
|
3973 |
-
grid-row-start: 2;
|
3974 |
-
-ms-grid-column: 2;
|
3975 |
-
grid-column-start: 2;
|
3976 |
-
-ms-grid-column-span: 1;
|
3977 |
-
grid-column-end: 3;
|
3978 |
-
}
|
3979 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3 article:nth-child(4) {
|
3980 |
-
-ms-grid-row: 3;
|
3981 |
-
grid-row-start: 3;
|
3982 |
-
-ms-grid-column: 1;
|
3983 |
-
grid-column-start: 1;
|
3984 |
-
-ms-grid-column-span: 1;
|
3985 |
-
grid-column-end: 2;
|
3986 |
-
}
|
3987 |
-
.wpr-magazine-grid.wpr-mgzn-grid-1-1-3 article:nth-child(5) {
|
3988 |
-
-ms-grid-row: 3;
|
3989 |
-
grid-row-start: 3;
|
3990 |
-
-ms-grid-column: 2;
|
3991 |
-
grid-column-start: 2;
|
3992 |
-
-ms-grid-column-span: 1;
|
3993 |
-
grid-column-end: 3;
|
3994 |
-
}
|
3995 |
-
/* Layout 9 */
|
3996 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3 {
|
3997 |
-
-ms-grid-columns: 1fr 1fr !important;
|
3998 |
-
grid-template-columns: 1fr 1fr !important;
|
3999 |
-
-ms-grid-rows: (1fr)[6] !important;
|
4000 |
-
grid-template-rows: repeat(6, 1fr) !important;
|
4001 |
-
}
|
4002 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(1) {
|
4003 |
-
-ms-grid-row: 1;
|
4004 |
-
-ms-grid-column: 1;
|
4005 |
-
}
|
4006 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(2) {
|
4007 |
-
-ms-grid-row: 1;
|
4008 |
-
-ms-grid-column: 2;
|
4009 |
-
}
|
4010 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(3) {
|
4011 |
-
-ms-grid-row: 2;
|
4012 |
-
-ms-grid-column: 1;
|
4013 |
-
}
|
4014 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(4) {
|
4015 |
-
-ms-grid-row: 2;
|
4016 |
-
-ms-grid-column: 2;
|
4017 |
-
}
|
4018 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(5) {
|
4019 |
-
-ms-grid-row: 3;
|
4020 |
-
-ms-grid-column: 1;
|
4021 |
-
}
|
4022 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(6) {
|
4023 |
-
-ms-grid-row: 3;
|
4024 |
-
-ms-grid-column: 2;
|
4025 |
-
}
|
4026 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(7) {
|
4027 |
-
-ms-grid-row: 4;
|
4028 |
-
-ms-grid-column: 1;
|
4029 |
-
}
|
4030 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(8) {
|
4031 |
-
-ms-grid-row: 4;
|
4032 |
-
-ms-grid-column: 2;
|
4033 |
-
}
|
4034 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(9) {
|
4035 |
-
-ms-grid-row: 5;
|
4036 |
-
-ms-grid-column: 1;
|
4037 |
-
}
|
4038 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(10) {
|
4039 |
-
-ms-grid-row: 5;
|
4040 |
-
-ms-grid-column: 2;
|
4041 |
-
}
|
4042 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(11) {
|
4043 |
-
-ms-grid-row: 6;
|
4044 |
-
-ms-grid-column: 1;
|
4045 |
-
}
|
4046 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3>*:nth-child(12) {
|
4047 |
-
-ms-grid-row: 6;
|
4048 |
-
-ms-grid-column: 2;
|
4049 |
-
}
|
4050 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3 article:nth-child(1) {
|
4051 |
-
-ms-grid-column: 1;
|
4052 |
-
grid-column-start: 1;
|
4053 |
-
-ms-grid-column-span: 1;
|
4054 |
-
grid-column-end: 2;
|
4055 |
-
-ms-grid-row: 1;
|
4056 |
-
grid-row-start: 1;
|
4057 |
-
-ms-grid-row-span: 3;
|
4058 |
-
grid-row-end: 4;
|
4059 |
-
}
|
4060 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3 article:nth-child(2) {
|
4061 |
-
-ms-grid-column: 1;
|
4062 |
-
grid-column-start: 1;
|
4063 |
-
-ms-grid-column-span: 1;
|
4064 |
-
grid-column-end: 2;
|
4065 |
-
-ms-grid-row: 4;
|
4066 |
-
grid-row-start: 4;
|
4067 |
-
-ms-grid-row-span: 3;
|
4068 |
-
grid-row-end: 7;
|
4069 |
-
}
|
4070 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3 article:nth-child(3) {
|
4071 |
-
-ms-grid-column: 2;
|
4072 |
-
grid-column-start: 2;
|
4073 |
-
-ms-grid-column-span: 1;
|
4074 |
-
grid-column-end: 3;
|
4075 |
-
-ms-grid-row: 1;
|
4076 |
-
grid-row-start: 1;
|
4077 |
-
-ms-grid-row-span: 2;
|
4078 |
-
grid-row-end: 3;
|
4079 |
-
}
|
4080 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3 article:nth-child(4) {
|
4081 |
-
-ms-grid-column: 2;
|
4082 |
-
grid-column-start: 2;
|
4083 |
-
-ms-grid-column-span: 1;
|
4084 |
-
grid-column-end: 3;
|
4085 |
-
-ms-grid-row: 3;
|
4086 |
-
grid-row-start: 3;
|
4087 |
-
-ms-grid-row-span: 2;
|
4088 |
-
grid-row-end: 5;
|
4089 |
-
}
|
4090 |
-
.wpr-magazine-grid.wpr-mgzn-grid-2-3 article:nth-child(5) {
|
4091 |
-
-ms-grid-column: 2;
|
4092 |
-
grid-column-start: 2;
|
4093 |
-
-ms-grid-column-span: 1;
|
4094 |
-
grid-column-end: 3;
|
4095 |
-
-ms-grid-row: 5;
|
4096 |
-
grid-row-start: 5;
|
4097 |
-
-ms-grid-row-span: 2;
|
4098 |
-
grid-row-end: 7;
|
4099 |
-
}
|
4100 |
-
/* Layout 12 */
|
4101 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-1 {
|
4102 |
-
-ms-grid-columns: 1fr 1fr !important;
|
4103 |
-
grid-template-columns: 1fr 1fr !important;
|
4104 |
-
-ms-grid-rows: (1fr)[2] !important;
|
4105 |
-
grid-template-rows: repeat(2, 1fr) !important;
|
4106 |
-
}
|
4107 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-1>*:nth-child(1) {
|
4108 |
-
-ms-grid-row: 1;
|
4109 |
-
-ms-grid-column: 1;
|
4110 |
-
}
|
4111 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-1>*:nth-child(2) {
|
4112 |
-
-ms-grid-row: 1;
|
4113 |
-
-ms-grid-column: 2;
|
4114 |
-
}
|
4115 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-1>*:nth-child(3) {
|
4116 |
-
-ms-grid-row: 2;
|
4117 |
-
-ms-grid-column: 1;
|
4118 |
-
}
|
4119 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-1>*:nth-child(4) {
|
4120 |
-
-ms-grid-row: 2;
|
4121 |
-
-ms-grid-column: 2;
|
4122 |
-
}
|
4123 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-2 {
|
4124 |
-
-ms-grid-columns: 1fr 1fr !important;
|
4125 |
-
grid-template-columns: 1fr 1fr !important;
|
4126 |
-
-ms-grid-rows: (1fr)[4] !important;
|
4127 |
-
grid-template-rows: repeat(4, 1fr) !important;
|
4128 |
-
}
|
4129 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-2>*:nth-child(1) {
|
4130 |
-
-ms-grid-row: 1;
|
4131 |
-
-ms-grid-column: 1;
|
4132 |
-
}
|
4133 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-2>*:nth-child(2) {
|
4134 |
-
-ms-grid-row: 1;
|
4135 |
-
-ms-grid-column: 2;
|
4136 |
-
}
|
4137 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-2>*:nth-child(3) {
|
4138 |
-
-ms-grid-row: 2;
|
4139 |
-
-ms-grid-column: 1;
|
4140 |
-
}
|
4141 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-2>*:nth-child(4) {
|
4142 |
-
-ms-grid-row: 2;
|
4143 |
-
-ms-grid-column: 2;
|
4144 |
-
}
|
4145 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-2>*:nth-child(5) {
|
4146 |
-
-ms-grid-row: 3;
|
4147 |
-
-ms-grid-column: 1;
|
4148 |
-
}
|
4149 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-2>*:nth-child(6) {
|
4150 |
-
-ms-grid-row: 3;
|
4151 |
-
-ms-grid-column: 2;
|
4152 |
-
}
|
4153 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-2>*:nth-child(7) {
|
4154 |
-
-ms-grid-row: 4;
|
4155 |
-
-ms-grid-column: 1;
|
4156 |
-
}
|
4157 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-2>*:nth-child(8) {
|
4158 |
-
-ms-grid-row: 4;
|
4159 |
-
-ms-grid-column: 2;
|
4160 |
-
}
|
4161 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3 {
|
4162 |
-
-ms-grid-columns: 1fr 1fr !important;
|
4163 |
-
grid-template-columns: 1fr 1fr !important;
|
4164 |
-
-ms-grid-rows: (1fr)[6] !important;
|
4165 |
-
grid-template-rows: repeat(6, 1fr) !important;
|
4166 |
-
}
|
4167 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(1) {
|
4168 |
-
-ms-grid-row: 1;
|
4169 |
-
-ms-grid-column: 1;
|
4170 |
-
}
|
4171 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(2) {
|
4172 |
-
-ms-grid-row: 1;
|
4173 |
-
-ms-grid-column: 2;
|
4174 |
-
}
|
4175 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(3) {
|
4176 |
-
-ms-grid-row: 2;
|
4177 |
-
-ms-grid-column: 1;
|
4178 |
-
}
|
4179 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(4) {
|
4180 |
-
-ms-grid-row: 2;
|
4181 |
-
-ms-grid-column: 2;
|
4182 |
-
}
|
4183 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(5) {
|
4184 |
-
-ms-grid-row: 3;
|
4185 |
-
-ms-grid-column: 1;
|
4186 |
-
}
|
4187 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(6) {
|
4188 |
-
-ms-grid-row: 3;
|
4189 |
-
-ms-grid-column: 2;
|
4190 |
-
}
|
4191 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(7) {
|
4192 |
-
-ms-grid-row: 4;
|
4193 |
-
-ms-grid-column: 1;
|
4194 |
-
}
|
4195 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(8) {
|
4196 |
-
-ms-grid-row: 4;
|
4197 |
-
-ms-grid-column: 2;
|
4198 |
-
}
|
4199 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(9) {
|
4200 |
-
-ms-grid-row: 5;
|
4201 |
-
-ms-grid-column: 1;
|
4202 |
-
}
|
4203 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(10) {
|
4204 |
-
-ms-grid-row: 5;
|
4205 |
-
-ms-grid-column: 2;
|
4206 |
-
}
|
4207 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(11) {
|
4208 |
-
-ms-grid-row: 6;
|
4209 |
-
-ms-grid-column: 1;
|
4210 |
-
}
|
4211 |
-
.wpr-magazine-grid.wpr-mgzn-grid-4-h.wpr-mgzn-grid-rows-3>*:nth-child(12) {
|
4212 |
-
-ms-grid-row: 6;
|
4213 |
-
-ms-grid-column: 2;
|
4214 |
-
}
|
4215 |
-
}
|
4216 |
-
|
4217 |
-
@media screen and ( max-width: 767px) {
|
4218 |
-
/* Layout 11 */
|
4219 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-1 {
|
4220 |
-
-ms-grid-columns: 1fr !important;
|
4221 |
-
grid-template-columns: 1fr !important;
|
4222 |
-
-ms-grid-rows: (1fr)[3] !important;
|
4223 |
-
grid-template-rows: repeat(3, 1fr) !important;
|
4224 |
-
}
|
4225 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-1>*:nth-child(1) {
|
4226 |
-
-ms-grid-row: 1;
|
4227 |
-
-ms-grid-column: 1;
|
4228 |
-
}
|
4229 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-1>*:nth-child(2) {
|
4230 |
-
-ms-grid-row: 2;
|
4231 |
-
-ms-grid-column: 1;
|
4232 |
-
}
|
4233 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-1>*:nth-child(3) {
|
4234 |
-
-ms-grid-row: 3;
|
4235 |
-
-ms-grid-column: 1;
|
4236 |
-
}
|
4237 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-2 {
|
4238 |
-
-ms-grid-columns: 1fr !important;
|
4239 |
-
grid-template-columns: 1fr !important;
|
4240 |
-
-ms-grid-rows: (1fr)[6] !important;
|
4241 |
-
grid-template-rows: repeat(6, 1fr) !important;
|
4242 |
-
}
|
4243 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-2>*:nth-child(1) {
|
4244 |
-
-ms-grid-row: 1;
|
4245 |
-
-ms-grid-column: 1;
|
4246 |
-
}
|
4247 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-2>*:nth-child(2) {
|
4248 |
-
-ms-grid-row: 2;
|
4249 |
-
-ms-grid-column: 1;
|
4250 |
-
}
|
4251 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-2>*:nth-child(3) {
|
4252 |
-
-ms-grid-row: 3;
|
4253 |
-
-ms-grid-column: 1;
|
4254 |
-
}
|
4255 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-2>*:nth-child(4) {
|
4256 |
-
-ms-grid-row: 4;
|
4257 |
-
-ms-grid-column: 1;
|
4258 |
-
}
|
4259 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-2>*:nth-child(5) {
|
4260 |
-
-ms-grid-row: 5;
|
4261 |
-
-ms-grid-column: 1;
|
4262 |
-
}
|
4263 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-2>*:nth-child(6) {
|
4264 |
-
-ms-grid-row: 6;
|
4265 |
-
-ms-grid-column: 1;
|
4266 |
-
}
|
4267 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3 {
|
4268 |
-
-ms-grid-columns: 1fr !important;
|
4269 |
-
grid-template-columns: 1fr !important;
|
4270 |
-
-ms-grid-rows: (1fr)[9] !important;
|
4271 |
-
grid-template-rows: repeat(9, 1fr) !important;
|
4272 |
-
}
|
4273 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3>*:nth-child(1) {
|
4274 |
-
-ms-grid-row: 1;
|
4275 |
-
-ms-grid-column: 1;
|
4276 |
-
}
|
4277 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3>*:nth-child(2) {
|
4278 |
-
-ms-grid-row: 2;
|
4279 |
-
-ms-grid-column: 1;
|
4280 |
-
}
|
4281 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3>*:nth-child(3) {
|
4282 |
-
-ms-grid-row: 3;
|
4283 |
-
-ms-grid-column: 1;
|
4284 |
-
}
|
4285 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3>*:nth-child(4) {
|
4286 |
-
-ms-grid-row: 4;
|
4287 |
-
-ms-grid-column: 1;
|
4288 |
-
}
|
4289 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3>*:nth-child(5) {
|
4290 |
-
-ms-grid-row: 5;
|
4291 |
-
-ms-grid-column: 1;
|
4292 |
-
}
|
4293 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3>*:nth-child(6) {
|
4294 |
-
-ms-grid-row: 6;
|
4295 |
-
-ms-grid-column: 1;
|
4296 |
-
}
|
4297 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3>*:nth-child(7) {
|
4298 |
-
-ms-grid-row: 7;
|
4299 |
-
-ms-grid-column: 1;
|
4300 |
-
}
|
4301 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3>*:nth-child(8) {
|
4302 |
-
-ms-grid-row: 8;
|
4303 |
-
-ms-grid-column: 1;
|
4304 |
-
}
|
4305 |
-
.wpr-magazine-grid.wpr-mgzn-grid-3-h.wpr-mgzn-grid-rows-3>*:nth-child(9) {
|
4306 |
-
-ms-grid-row: 9;
|
4307 |
-
-ms-grid-column: 1;
|
4308 |
-
}
|
4309 |
-
}
|
4310 |
-
|
4311 |
-
|
4312 |
-
/*--------------------------------------------------------------
|
4313 |
-
== Sharing Buttons
|
4314 |
-
--------------------------------------------------------------*/
|
4315 |
-
|
4316 |
-
.wpr-sharing-buttons .wpr-sharing-icon {
|
4317 |
-
overflow: hidden;
|
4318 |
-
position: relative;
|
4319 |
-
display: -webkit-box;
|
4320 |
-
display: -ms-flexbox;
|
4321 |
-
display: flex;
|
4322 |
-
color: #ffffff !important;
|
4323 |
-
}
|
4324 |
-
|
4325 |
-
.wpr-sharing-buttons .wpr-sharing-icon i {
|
4326 |
-
display: block;
|
4327 |
-
text-align: center;
|
4328 |
-
}
|
4329 |
-
|
4330 |
-
.wpr-sharing-label {
|
4331 |
-
-webkit-box-flex: 1;
|
4332 |
-
-ms-flex-positive: 1;
|
4333 |
-
flex-grow: 1;
|
4334 |
-
}
|
4335 |
-
|
4336 |
-
.elementor-widget-wpr-sharing-buttons.elementor-grid-0 .wpr-sharing-buttons,
|
4337 |
-
.elementor-widget-wpr-sharing-buttons[class*="elementor-grid-pro-"] .wpr-sharing-buttons {
|
4338 |
-
display: -webkit-box;
|
4339 |
-
display: -ms-flexbox;
|
4340 |
-
display: flex;
|
4341 |
-
}
|
4342 |
-
|
4343 |
-
.elementor-widget-wpr-sharing-buttons:not(.elementor-grid-0):not(.elementor-grid-pro-3):not(.elementor-grid-pro-4):not(.elementor-grid-pro-5):not(.elementor-grid-pro-6) .wpr-sharing-label-off .wpr-sharing-icon i {
|
4344 |
-
width: 100% !important;
|
4345 |
-
}
|
4346 |
-
|
4347 |
-
.wpr-sharing-buttons.wpr-sharing-col-1 .wpr-sharing-icon {
|
4348 |
-
width: 100%;
|
4349 |
-
margin-right: 0 !important;
|
4350 |
-
}
|
4351 |
-
|
4352 |
-
.wpr-sharing-buttons .wpr-sharing-icon:last-child,
|
4353 |
-
.wpr-sharing-col-1 .wpr-sharing-buttons .wpr-sharing-icon,
|
4354 |
-
.wpr-sharing-col-2 .wpr-sharing-buttons .wpr-sharing-icon:nth-child(2n),
|
4355 |
-
.wpr-sharing-col-3 .wpr-sharing-buttons .wpr-sharing-icon:nth-child(3n),
|
4356 |
-
.wpr-sharing-col-4 .wpr-sharing-buttons .wpr-sharing-icon:nth-child(4n),
|
4357 |
-
.wpr-sharing-col-5 .wpr-sharing-buttons .wpr-sharing-icon:nth-child(5n),
|
4358 |
-
.wpr-sharing-col-6 .wpr-sharing-buttons .wpr-sharing-icon:nth-child(6n) {
|
4359 |
-
margin-right: 0 !important;
|
4360 |
-
}
|
4361 |
-
|
4362 |
-
.wpr-sharing-buttons .wpr-sharing-icon {
|
4363 |
-
transition-propery: opacity, border-color;
|
4364 |
-
-webkit-transition-timing-function: linear;
|
4365 |
-
-o-transition-timing-function: linear;
|
4366 |
-
transition-timing-function: linear;
|
4367 |
-
}
|
4368 |
-
|
4369 |
-
.wpr-sharing-buttons .wpr-sharing-icon i,
|
4370 |
-
.wpr-sharing-buttons .wpr-sharing-icon span {
|
4371 |
-
transition-propery: color, background-color;
|
4372 |
-
-webkit-transition-timing-function: linear;
|
4373 |
-
-o-transition-timing-function: linear;
|
4374 |
-
transition-timing-function: linear;
|
4375 |
-
}
|
4376 |
-
|
4377 |
-
.wpr-sharing-official .wpr-sharing-icon:hover {
|
4378 |
-
opacity: 0.85;
|
4379 |
-
}
|
4380 |
-
|
4381 |
-
.wpr-sharing-official .wpr-sharing-facebook-f i,
|
4382 |
-
.wpr-sharing-official .wpr-sharing-facebook-f span {
|
4383 |
-
background-color: #3b5998;
|
4384 |
-
}
|
4385 |
-
|
4386 |
-
.wpr-sharing-official .wpr-sharing-twitter i,
|
4387 |
-
.wpr-sharing-official .wpr-sharing-twitter span {
|
4388 |
-
background-color: #1da1f2;
|
4389 |
-
}
|
4390 |
-
|
4391 |
-
.wpr-sharing-official .wpr-sharing-linkedin-in i,
|
4392 |
-
.wpr-sharing-official .wpr-sharing-linkedin-in span {
|
4393 |
-
background-color: #0077b5;
|
4394 |
-
}
|
4395 |
-
|
4396 |
-
.wpr-sharing-official .wpr-sharing-pinterest-p i,
|
4397 |
-
.wpr-sharing-official .wpr-sharing-pinterest-p span {
|
4398 |
-
background-color: #bd081c;
|
4399 |
-
}
|
4400 |
-
|
4401 |
-
.wpr-sharing-official .wpr-sharing-reddit i,
|
4402 |
-
.wpr-sharing-official .wpr-sharing-reddit span {
|
4403 |
-
background-color: #ff4500;
|
4404 |
-
}
|
4405 |
-
|
4406 |
-
.wpr-sharing-official .wpr-sharing-tumblr i,
|
4407 |
-
.wpr-sharing-official .wpr-sharing-tumblr span {
|
4408 |
-
background-color: #35465c;
|
4409 |
-
}
|
4410 |
-
|
4411 |
-
.wpr-sharing-official .wpr-sharing-digg i,
|
4412 |
-
.wpr-sharing-official .wpr-sharing-digg span {
|
4413 |
-
background-color: #005be2;
|
4414 |
-
}
|
4415 |
-
|
4416 |
-
.wpr-sharing-official .wpr-sharing-xing i,
|
4417 |
-
.wpr-sharing-official .wpr-sharing-xing span {
|
4418 |
-
background-color: #026466;
|
4419 |
-
}
|
4420 |
-
|
4421 |
-
.wpr-sharing-official .wpr-sharing-stumbleupon i,
|
4422 |
-
.wpr-sharing-official .wpr-sharing-stumbleupon span {
|
4423 |
-
background-color: #eb4924;
|
4424 |
-
}
|
4425 |
-
|
4426 |
-
.wpr-sharing-official .wpr-sharing-vk i,
|
4427 |
-
.wpr-sharing-official .wpr-sharing-vk span {
|
4428 |
-
background-color: #45668e;
|
4429 |
-
}
|
4430 |
-
|
4431 |
-
.wpr-sharing-official .wpr-sharing-odnoklassniki i,
|
4432 |
-
.wpr-sharing-official .wpr-sharing-odnoklassniki span {
|
4433 |
-
background-color: #f4731c;
|
4434 |
-
}
|
4435 |
-
|
4436 |
-
.wpr-sharing-official .wpr-sharing-get-pocket i,
|
4437 |
-
.wpr-sharing-official .wpr-sharing-get-pocket span {
|
4438 |
-
background-color: #ef3f56;
|
4439 |
-
}
|
4440 |
-
|
4441 |
-
.wpr-sharing-official .wpr-sharing-skype i,
|
4442 |
-
.wpr-sharing-official .wpr-sharing-skype span {
|
4443 |
-
background-color: #00aff0;
|
4444 |
-
}
|
4445 |
-
|
4446 |
-
.wpr-sharing-official .wpr-sharing-whatsapp i,
|
4447 |
-
.wpr-sharing-official .wpr-sharing-whatsapp span {
|
4448 |
-
background-color: #25d366;
|
4449 |
-
}
|
4450 |
-
|
4451 |
-
.wpr-sharing-official .wpr-sharing-telegram i,
|
4452 |
-
.wpr-sharing-official .wpr-sharing-telegram span {
|
4453 |
-
background-color: #2ca5e0;
|
4454 |
-
}
|
4455 |
-
|
4456 |
-
.wpr-sharing-official .wpr-sharing-delicious i,
|
4457 |
-
.wpr-sharing-official .wpr-sharing-delicious span {
|
4458 |
-
background-color: #3399ff;
|
4459 |
-
}
|
4460 |
-
|
4461 |
-
.wpr-sharing-official .wpr-sharing-envelope i,
|
4462 |
-
.wpr-sharing-official .wpr-sharing-envelope span {
|
4463 |
-
background-color: #c13B2c;
|
4464 |
-
}
|
4465 |
-
|
4466 |
-
.wpr-sharing-official .wpr-sharing-print i,
|
4467 |
-
.wpr-sharing-official .wpr-sharing-print span {
|
4468 |
-
background-color: #96c859;
|
4469 |
-
}
|
4470 |
-
|
4471 |
-
.wpr-sharing-official .wpr-sharing-facebook-f {
|
4472 |
-
border-color: #3b5998;
|
4473 |
-
}
|
4474 |
-
|
4475 |
-
.wpr-sharing-official .wpr-sharing-twitter {
|
4476 |
-
border-color: #1da1f2;
|
4477 |
-
}
|
4478 |
-
|
4479 |
-
.wpr-sharing-official .wpr-sharing-linkedin-in {
|
4480 |
-
border-color: #0077b5;
|
4481 |
-
}
|
4482 |
-
|
4483 |
-
.wpr-sharing-official .wpr-sharing-pinterest-p {
|
4484 |
-
border-color: #bd081c;
|
4485 |
-
}
|
4486 |
-
|
4487 |
-
.wpr-sharing-official .wpr-sharing-reddit {
|
4488 |
-
border-color: #ff4500;
|
4489 |
-
}
|
4490 |
-
|
4491 |
-
.wpr-sharing-official .wpr-sharing-tumblr {
|
4492 |
-
border-color: #35465c;
|
4493 |
-
}
|
4494 |
-
|
4495 |
-
.wpr-sharing-official .wpr-sharing-digg {
|
4496 |
-
border-color: #005be2;
|
4497 |
-
}
|
4498 |
-
|
4499 |
-
.wpr-sharing-official .wpr-sharing-xing {
|
4500 |
-
border-color: #026466;
|
4501 |
-
}
|
4502 |
-
|
4503 |
-
.wpr-sharing-official .wpr-sharing-stumbleupon {
|
4504 |
-
border-color: #eb4924;
|
4505 |
-
}
|
4506 |
-
|
4507 |
-
.wpr-sharing-official .wpr-sharing-vk {
|
4508 |
-
border-color: #45668e;
|
4509 |
-
}
|
4510 |
-
|
4511 |
-
.wpr-sharing-official .wpr-sharing-odnoklassniki {
|
4512 |
-
border-color: #f4731c;
|
4513 |
-
}
|
4514 |
-
|
4515 |
-
.wpr-sharing-official .wpr-sharing-get-pocket {
|
4516 |
-
border-color: #ef3f56;
|
4517 |
-
}
|
4518 |
-
|
4519 |
-
.wpr-sharing-official .wpr-sharing-skype {
|
4520 |
-
border-color: #00aff0;
|
4521 |
-
}
|
4522 |
-
|
4523 |
-
.wpr-sharing-official .wpr-sharing-whatsapp {
|
4524 |
-
border-color: #25d366;
|
4525 |
-
}
|
4526 |
-
|
4527 |
-
.wpr-sharing-official .wpr-sharing-telegram {
|
4528 |
-
border-color: #2ca5e0;
|
4529 |
-
}
|
4530 |
-
|
4531 |
-
.wpr-sharing-official .wpr-sharing-delicious {
|
4532 |
-
border-color: #3399ff;
|
4533 |
-
}
|
4534 |
-
|
4535 |
-
.wpr-sharing-official .wpr-sharing-envelope {
|
4536 |
-
border-color: #c13B2c;
|
4537 |
-
}
|
4538 |
-
|
4539 |
-
.wpr-sharing-official .wpr-sharing-print {
|
4540 |
-
border-color: #96c859;
|
4541 |
-
}
|
4542 |
-
|
4543 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-facebook-f i,
|
4544 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-facebook-f span {
|
4545 |
-
color: #3b5998;
|
4546 |
-
background-color: transparent;
|
4547 |
-
}
|
4548 |
-
|
4549 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-twitter i,
|
4550 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-twitter span {
|
4551 |
-
color: #1da1f2;
|
4552 |
-
background-color: transparent;
|
4553 |
-
}
|
4554 |
-
|
4555 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-linkedin-in i,
|
4556 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-linkedin-in span {
|
4557 |
-
color: #0077b5;
|
4558 |
-
background-color: transparent;
|
4559 |
-
}
|
4560 |
-
|
4561 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-pinterest-p i,
|
4562 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-pinterest-p span {
|
4563 |
-
color: #bd081c;
|
4564 |
-
background-color: transparent;
|
4565 |
-
}
|
4566 |
-
|
4567 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-reddit i,
|
4568 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-reddit span {
|
4569 |
-
color: #ff4500;
|
4570 |
-
background-color: transparent;
|
4571 |
-
}
|
4572 |
-
|
4573 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-tumblr i,
|
4574 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-tumblr span {
|
4575 |
-
color: #35465c;
|
4576 |
-
background-color: transparent;
|
4577 |
-
}
|
4578 |
-
|
4579 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-digg i,
|
4580 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-digg span {
|
4581 |
-
color: #005be2;
|
4582 |
-
background-color: transparent;
|
4583 |
-
}
|
4584 |
-
|
4585 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-xing i,
|
4586 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-xing span {
|
4587 |
-
color: #026466;
|
4588 |
-
background-color: transparent;
|
4589 |
-
}
|
4590 |
-
|
4591 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-stumbleupon i,
|
4592 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-stumbleupon span {
|
4593 |
-
color: #eb4924;
|
4594 |
-
background-color: transparent;
|
4595 |
-
}
|
4596 |
-
|
4597 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-vk i,
|
4598 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-vk span {
|
4599 |
-
color: #45668e;
|
4600 |
-
background-color: transparent;
|
4601 |
-
}
|
4602 |
-
|
4603 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-odnoklassniki i,
|
4604 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-odnoklassniki span {
|
4605 |
-
color: #f4731c;
|
4606 |
-
background-color: transparent;
|
4607 |
-
}
|
4608 |
-
|
4609 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-get-pocket i,
|
4610 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-get-pocket span {
|
4611 |
-
color: #ef3f56;
|
4612 |
-
background-color: transparent;
|
4613 |
-
}
|
4614 |
-
|
4615 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-skype i,
|
4616 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-skype span {
|
4617 |
-
color: #00aff0;
|
4618 |
-
background-color: transparent;
|
4619 |
-
}
|
4620 |
-
|
4621 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-whatsapp i,
|
4622 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-whatsapp span {
|
4623 |
-
color: #25d366;
|
4624 |
-
background-color: transparent;
|
4625 |
-
}
|
4626 |
-
|
4627 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-telegram i,
|
4628 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-telegram span {
|
4629 |
-
color: #2ca5e0;
|
4630 |
-
background-color: transparent;
|
4631 |
-
}
|
4632 |
-
|
4633 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-delicious i,
|
4634 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-delicious span {
|
4635 |
-
color: #3399ff;
|
4636 |
-
background-color: transparent;
|
4637 |
-
}
|
4638 |
-
|
4639 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-envelope i,
|
4640 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-envelope span {
|
4641 |
-
color: #c13B2c;
|
4642 |
-
background-color: transparent;
|
4643 |
-
}
|
4644 |
-
|
4645 |
-
.wpr-sharing-official.wpr-sharing-icon-tr .wpr-sharing-print i,
|
4646 |
-
.wpr-sharing-official.wpr-sharing-label-tr .wpr-sharing-print span {
|
4647 |
-
color: #96c859;
|
4648 |
-
background-color: transparent;
|
4649 |
-
}
|
4650 |
-
|
4651 |
-
|
4652 |
-
/*--------------------------------------------------------------
|
4653 |
-
== CountDown
|
4654 |
-
--------------------------------------------------------------*/
|
4655 |
-
|
4656 |
-
.wpr-countdown-wrap {
|
4657 |
-
display: -webkit-box;
|
4658 |
-
display: -ms-flexbox;
|
4659 |
-
display: flex;
|
4660 |
-
-webkit-box-orient: horizontal;
|
4661 |
-
-webkit-box-direction: normal;
|
4662 |
-
-ms-flex-direction: row;
|
4663 |
-
flex-direction: row;
|
4664 |
-
margin: 0 auto;
|
4665 |
-
}
|
4666 |
-
|
4667 |
-
.wpr-countdown-item {
|
4668 |
-
-webkit-box-flex: 1;
|
4669 |
-
-ms-flex-positive: 1;
|
4670 |
-
flex-grow: 1;
|
4671 |
-
-ms-flex-preferred-size: 0;
|
4672 |
-
flex-basis: 0;
|
4673 |
-
overflow: hidden;
|
4674 |
-
color: #fff;
|
4675 |
-
text-align: center;
|
4676 |
-
}
|
4677 |
-
|
4678 |
-
.wpr-countdown-item:first-child {
|
4679 |
-
margin-left: 0 !important;
|
4680 |
-
}
|
4681 |
-
|
4682 |
-
.wpr-countdown-item:last-of-type {
|
4683 |
-
margin-right: 0 !important;
|
4684 |
-
}
|
4685 |
-
|
4686 |
-
.wpr-countdown-number {
|
4687 |
-
display: block;
|
4688 |
-
}
|
4689 |
-
|
4690 |
-
.wpr-countdown-separator {
|
4691 |
-
-ms-flex-item-align: center;
|
4692 |
-
-ms-grid-row-align: center;
|
4693 |
-
align-self: center;
|
4694 |
-
}
|
4695 |
-
|
4696 |
-
.wpr-countdown-separator span {
|
4697 |
-
display: block;
|
4698 |
-
}
|
4699 |
-
|
4700 |
-
.wpr-countdown-separator:last-of-type {
|
4701 |
-
display: none !important;
|
4702 |
-
}
|
4703 |
-
|
4704 |
-
.wpr-countdown-wrap+div:not(.wpr-countdown-message) {
|
4705 |
-
display: none;
|
4706 |
-
}
|
4707 |
-
|
4708 |
-
.wpr-countdown-message+div {
|
4709 |
-
display: none;
|
4710 |
-
}
|
4711 |
-
|
4712 |
-
|
4713 |
-
/* Defaults */
|
4714 |
-
|
4715 |
-
.elementor-widget-wpr-countdown .wpr-countdown-item {
|
4716 |
-
background-color: #605BE5;
|
4717 |
-
}
|
4718 |
-
|
4719 |
-
.elementor-widget-wpr-countdown .wpr-countdown-number {
|
4720 |
-
font-size: 70px;
|
4721 |
-
}
|
4722 |
-
|
4723 |
-
.elementor-widget-wpr-countdown .wpr-countdown-label {
|
4724 |
-
font-size: 19px;
|
4725 |
-
line-height: 45px;
|
4726 |
-
}
|
4727 |
-
|
4728 |
-
|
4729 |
-
/*--------------------------------------------------------------
|
4730 |
-
== Google Maps
|
4731 |
-
--------------------------------------------------------------*/
|
4732 |
-
|
4733 |
-
.wpr-google-map .gm-style-iw-c {
|
4734 |
-
padding: 0 !important;
|
4735 |
-
}
|
4736 |
-
|
4737 |
-
.wpr-google-map .gm-style-iw-c>button {
|
4738 |
-
top: 0 !important;
|
4739 |
-
right: 0 !important;
|
4740 |
-
}
|
4741 |
-
|
4742 |
-
.wpr-google-map .gm-style-iw-c .wpr-gm-iwindow h3 {
|
4743 |
-
margin-bottom: 7px;
|
4744 |
-
}
|
4745 |
-
|
4746 |
-
.wpr-google-map .gm-style-iw-d {
|
4747 |
-
overflow: hidden !important;
|
4748 |
-
}
|
4749 |
-
|
4750 |
-
.wpr-google-map .gm-style img {
|
4751 |
-
max-width: none !important;
|
4752 |
-
}
|
4753 |
-
|
4754 |
-
|
4755 |
-
/*--------------------------------------------------------------
|
4756 |
-
== Forms
|
4757 |
-
--------------------------------------------------------------*/
|
4758 |
-
|
4759 |
-
.wpr-forms-container .wpcf7-form .wpcf7-form-control-wrap {
|
4760 |
-
display: block !important;
|
4761 |
-
}
|
4762 |
-
|
4763 |
-
.wpcf7 label,
|
4764 |
-
.wpcf7-quiz-label {
|
4765 |
-
width: 100%;
|
4766 |
-
}
|
4767 |
-
|
4768 |
-
.wpr-forms-container .wpcf7 p {
|
4769 |
-
margin-bottom: 0;
|
4770 |
-
}
|
4771 |
-
|
4772 |
-
.wpr-forms-container .wpcf7-form .ajax-loader {
|
4773 |
-
display: block;
|
4774 |
-
visibility: hidden;
|
4775 |
-
height: 0;
|
4776 |
-
overflow: hidden;
|
4777 |
-
clear: both;
|
4778 |
-
}
|
4779 |
-
|
4780 |
-
.wpr-forms-container .wpcf7-select,
|
4781 |
-
.wpr-forms-container .wpcf7-number,
|
4782 |
-
.wpr-forms-container .wpcf7-date,
|
4783 |
-
.wpr-forms-container select.wpforms-field-medium,
|
4784 |
-
.wpr-forms-container .nf-field-container select,
|
4785 |
-
.wpr-forms-container .caldera-grid select.form-control {
|
4786 |
-
padding: 7px 10px !important;
|
4787 |
-
}
|
4788 |
-
|
4789 |
-
.wpr-forms-container .wpcf7-date {
|
4790 |
-
width: auto !important;
|
4791 |
-
}
|
4792 |
-
|
4793 |
-
.wpr-forms-container .wpcf7-number {
|
4794 |
-
width: 100px !important;
|
4795 |
-
}
|
4796 |
-
|
4797 |
-
.wpr-forms-container .wpcf7-form .wpcf7-submit {
|
4798 |
-
display: block;
|
4799 |
-
}
|
4800 |
-
|
4801 |
-
.wpr-forms-container .wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item,
|
4802 |
-
.wpr-forms-container .wpcf7-form-control.wpcf7-radio .wpcf7-list-item,
|
4803 |
-
.wpr-forms-container .wpcf7-form-control.wpcf7-acceptance .wpcf7-list-item {
|
4804 |
-
margin-left: 0;
|
4805 |
-
margin-right: 10px;
|
4806 |
-
}
|
4807 |
-
|
4808 |
-
.wpr-forms-container .wpcf7-response-output {
|
4809 |
-
clear: both;
|
4810 |
-
margin: 0;
|
4811 |
-
}
|
4812 |
-
|
4813 |
-
.wpr-forms-container .wpforms-field:not(.wpforms-field-address) .wpforms-field-medium {
|
4814 |
-
display: inline-block !important;
|
4815 |
-
max-width: 100% !important;
|
4816 |
-
}
|
4817 |
-
|
4818 |
-
.wpr-forms-container .wpforms-field-phone,
|
4819 |
-
.wpr-forms-container .wpforms-field-address,
|
4820 |
-
.wpr-forms-container .wpforms-page-indicator {
|
4821 |
-
display: inline-block;
|
4822 |
-
}
|
4823 |
-
|
4824 |
-
.wpr-forms-container .wpforms-field-address .wpforms-field-medium {
|
4825 |
-
max-width: 100% !important;
|
4826 |
-
}
|
4827 |
-
|
4828 |
-
.wpr-forms-container .intl-tel-input.allow-dropdown input.wpforms-field-medium,
|
4829 |
-
.wpr-forms-container .wpforms-field-address div.wpforms-field-medium {
|
4830 |
-
width: 100% !important;
|
4831 |
-
max-width: 100% !important;
|
4832 |
-
}
|
4833 |
-
|
4834 |
-
.wpr-forms-container .intl-tel-input.allow-dropdown {
|
4835 |
-
display: inline-block !important;
|
4836 |
-
max-width: 100% !important;
|
4837 |
-
}
|
4838 |
-
|
4839 |
-
.wpr-forms-align-left .wpr-forms-container div.wpforms-container-full .wpforms-form .wpforms-list-inline ul li:last-child {
|
4840 |
-
margin-right: 0 !important;
|
4841 |
-
}
|
4842 |
-
|
4843 |
-
.wpr-forms-container .wpcf7-mail-sent-ok,
|
4844 |
-
.wpr-forms-container .wpforms-confirmation-container-full,
|
4845 |
-
.wpr-forms-container .nf-response-msg,
|
4846 |
-
.wpr-forms-container .caldera-grid .alert-success {
|
4847 |
-
padding: 10px 15px;
|
4848 |
-
border: 2px solid;
|
4849 |
-
}
|
4850 |
-
|
4851 |
-
.wpr-forms-container label.wpforms-error a {
|
4852 |
-
text-decoration: underline;
|
4853 |
-
}
|
4854 |
-
|
4855 |
-
.wpr-forms-container .wpforms-smart-phone-field {
|
4856 |
-
text-indent: 0 !important;
|
4857 |
-
}
|
4858 |
-
|
4859 |
-
.wpr-forms-container select.ninja-forms-field {
|
4860 |
-
line-height: 1 !important;
|
4861 |
-
}
|
4862 |
-
|
4863 |
-
.wpr-forms-container .nf-form-wrap .checkbox-wrap label {
|
4864 |
-
display: inline-block !important;
|
4865 |
-
}
|
4866 |
-
|
4867 |
-
.wpr-forms-container .nf-form-wrap .starrating .stars {
|
4868 |
-
display: inline-block;
|
4869 |
-
}
|
4870 |
-
|
4871 |
-
.wpr-forms-submit-center .wpcf7-submit,
|
4872 |
-
.wpr-forms-submit-center .wpforms-submit,
|
4873 |
-
.wpr-forms-submit-center .wpforms-page-next,
|
4874 |
-
.wpr-forms-submit-center .wpforms-page-previous,
|
4875 |
-
.wpr-forms-submit-center .submit-wrap .ninja-forms-field,
|
4876 |
-
.wpr-forms-submit-center .caldera-grid .btn-default:not(a) {
|
4877 |
-
display: block !important;
|
4878 |
-
margin-left: auto !important;
|
4879 |
-
margin-right: auto !important;
|
4880 |
-
}
|
4881 |
-
|
4882 |
-
.wpr-forms-submit-left .wpcf7-submit,
|
4883 |
-
.wpr-forms-submit-left .wpforms-submit,
|
4884 |
-
.wpr-forms-submit-left .wpforms-page-next,
|
4885 |
-
.wpr-forms-submit-left .wpforms-page-previous,
|
4886 |
-
.wpr-forms-submit-left .submit-wrap .ninja-forms-field,
|
4887 |
-
.wpr-forms-submit-left .caldera-grid .btn-default:not(a) {
|
4888 |
-
float: left !important;
|
4889 |
-
}
|
4890 |
-
|
4891 |
-
.wpr-forms-submit-right .wpcf7-submit,
|
4892 |
-
.wpr-forms-submit-right .wpforms-submit,
|
4893 |
-
.wpr-forms-submit-right .wpforms-page-next,
|
4894 |
-
.wpr-forms-submit-right .wpforms-page-previous,
|
4895 |
-
.wpr-forms-submit-right .submit-wrap .ninja-forms-field,
|
4896 |
-
.wpr-forms-submit-left .caldera-grid .btn-default:not(a) {
|
4897 |
-
float: right !important;
|
4898 |
-
}
|
4899 |
-
|
4900 |
-
.wpr-forms-submit-justify .wpcf7-submit,
|
4901 |
-
.wpr-forms-submit-justify .wpforms-submit,
|
4902 |
-
.wpr-forms-submit-justify .wpforms-page-next,
|
4903 |
-
.wpr-forms-submit-justify .wpforms-page-previous,
|
4904 |
-
.wpr-forms-submit-justify .submit-wrap .ninja-forms-field,
|
4905 |
-
.wpr-forms-submit-justify .caldera-grid .btn-default:not(a) {
|
4906 |
-
display: block !important;
|
4907 |
-
width: 100% !important;
|
4908 |
-
text-align: center !important;
|
4909 |
-
}
|
4910 |
-
|
4911 |
-
.wpr-custom-chk-radio .wpcf7-checkbox input,
|
4912 |
-
.wpr-custom-chk-radio .wpcf7-radio input,
|
4913 |
-
.wpr-custom-chk-radio .wpcf7-acceptance input,
|
4914 |
-
.wpr-custom-chk-radio .wpforms-field-radio input,
|
4915 |
-
.wpr-custom-chk-radio .wpforms-field-checkbox input,
|
4916 |
-
.wpr-custom-chk-radio .wpforms-field-gdpr-checkbox input {
|
4917 |
-
display: none !important;
|
4918 |
-
}
|
4919 |
-
|
4920 |
-
.wpr-custom-chk-radio .wpcf7-checkbox .wpcf7-list-item-label,
|
4921 |
-
.wpr-custom-chk-radio .wpcf7-radio .wpcf7-list-item-label,
|
4922 |
-
.wpr-custom-chk-radio .wpcf7-acceptance .wpcf7-list-item-label,
|
4923 |
-
.wpr-custom-chk-radio .wpforms-field-checkbox input+label,
|
4924 |
-
.wpr-custom-chk-radio .wpforms-field-gdpr-checkbox input+label,
|
4925 |
-
.wpr-custom-chk-radio .wpforms-field-radio input+label,
|
4926 |
-
.wpr-custom-chk-radio .wpforms-field-radio input+span {
|
4927 |
-
cursor: pointer;
|
4928 |
-
-webkit-user-select: none;
|
4929 |
-
-moz-user-select: none;
|
4930 |
-
-ms-user-select: none;
|
4931 |
-
-o-user-select: none;
|
4932 |
-
user-select: none;
|
4933 |
-
}
|
4934 |
-
|
4935 |
-
.wpr-custom-chk-radio .wpcf7-checkbox .wpcf7-list-item-label:before,
|
4936 |
-
.wpr-custom-chk-radio .wpcf7-radio .wpcf7-list-item-label:before,
|
4937 |
-
.wpr-custom-chk-radio .wpcf7-acceptance .wpcf7-list-item-label:before,
|
4938 |
-
.wpr-custom-chk-radio .wpforms-field-checkbox input+label:before,
|
4939 |
-
.wpr-custom-chk-radio .wpforms-field-gdpr-checkbox input+label:before,
|
4940 |
-
.wpr-custom-chk-radio .wpforms-field-radio input+label:before,
|
4941 |
-
.wpr-custom-chk-radio .wpforms-field-radio input:not(.wpforms-screen-reader-element)+span:before {
|
4942 |
-
content: "\2714";
|
4943 |
-
display: inline-block;
|
4944 |
-
position: relative;
|
4945 |
-
top: -1px;
|
4946 |
-
text-align: center;
|
4947 |
-
border: 1px solid;
|
4948 |
-
margin-right: 5px;
|
4949 |
-
color: transparent;
|
4950 |
-
}
|
4951 |
-
|
4952 |
-
.wpr-forms-align-right .wpforms-field-checkbox ul li input:first-child,
|
4953 |
-
.wpr-forms-align-right .wpforms-field-radio ul li input:first-child,
|
4954 |
-
.wpr-forms-align-right .wpforms-image-choices label input:first-of-type,
|
4955 |
-
.wpr-forms-align-right .wpforms-field-gdpr-checkbox input:first-child {
|
4956 |
-
float: right;
|
4957 |
-
margin-right: 0 !important;
|
4958 |
-
margin-left: 10px !important;
|
4959 |
-
}
|
4960 |
-
|
4961 |
-
.wpr-forms-align-right .wpr-forms-container,
|
4962 |
-
.wpr-forms-align-right .wpr-forms-container .wpcf7-form-control {
|
4963 |
-
direction: rtl;
|
4964 |
-
}
|
4965 |
-
|
4966 |
-
.wpr-forms-align-right .nf-form-wrap .field-wrap {
|
4967 |
-
-webkit-box-pack: end;
|
4968 |
-
-ms-flex-pack: end;
|
4969 |
-
justify-content: flex-end;
|
4970 |
-
}
|
4971 |
-
|
4972 |
-
.wpr-forms-align-right .label-right .nf-field-description {
|
4973 |
-
margin-right: 0 !important;
|
4974 |
-
}
|
4975 |
-
|
4976 |
-
.wpr-forms-align-right .nf-error.field-wrap .nf-field-element:after {
|
4977 |
-
right: auto !important;
|
4978 |
-
left: 1px !important;
|
4979 |
-
}
|
4980 |
-
|
4981 |
-
.wpr-forms-align-right .wpr-custom-chk-radio .wpcf7-checkbox .wpcf7-list-item-label:before,
|
4982 |
-
.wpr-forms-align-right .wpr-custom-chk-radio .wpcf7-radio .wpcf7-list-item-label:before,
|
4983 |
-
.wpr-forms-align-right .wpr-custom-chk-radio .wpcf7-acceptance .wpcf7-list-item-label:before,
|
4984 |
-
.wpr-forms-align-right .wpr-custom-chk-radio .wpforms-field-checkbox input+label:before,
|
4985 |
-
.wpr-forms-align-right .wpr-custom-chk-radio .wpforms-field-gdpr-checkbox input+label:before,
|
4986 |
-
.wpr-forms-align-right .wpr-custom-chk-radio .wpforms-field-radio input+label:before,
|
4987 |
-
.wpr-forms-align-right .wpr-custom-chk-radio .wpforms-field-radio input:not(.wpforms-screen-reader-element)+span:before {
|
4988 |
-
margin-right: 0;
|
4989 |
-
margin-left: 5px;
|
4990 |
-
}
|
4991 |
-
|
4992 |
-
.wpr-forms-align-right .wpcf7-list-item.last,
|
4993 |
-
.wpr-forms-align-right .wpcf7-acceptance .wpcf7-list-item,
|
4994 |
-
.wpr-forms-align-right div.wpforms-container-full .wpforms-form .wpforms-list-inline ul li:first-child {
|
4995 |
-
margin-right: 0 !important;
|
4996 |
-
}
|
4997 |
-
|
4998 |
-
.wpr-forms-align-right .wpr-forms-container .intl-tel-input .flag-container {
|
4999 |
-
left: auto !important;
|
5000 |
-
right: 0 !important;
|
5001 |
-
}
|
5002 |
-
|
5003 |
-
.wpr-forms-align-right .caldera-grid .col-sm-4,
|
5004 |
-
.wpr-forms-align-right .caldera-grid .col-sm-6 {
|
5005 |
-
float: right;
|
5006 |
-
}
|
5007 |
-
|
5008 |
-
.wpr-forms-align-right .wpr-forms-container .caldera-grid .checkbox label,
|
5009 |
-
.wpr-forms-align-right .wpr-forms-container .caldera-grid .checkbox-inline label,
|
5010 |
-
.wpr-forms-align-right .wpr-forms-container .caldera-grid .radio label {
|
5011 |
-
padding-left: 0 !important;
|
5012 |
-
padding-right: 20px;
|
5013 |
-
}
|
5014 |
-
|
5015 |
-
.wpr-forms-align-right .wpr-forms-container .caldera-grid .checkbox input,
|
5016 |
-
.wpr-forms-align-right .wpr-forms-container .caldera-grid .radio input {
|
5017 |
-
margin-right: -20px !important;
|
5018 |
-
margin-left: 0 !important;
|
5019 |
-
}
|
5020 |
-
|
5021 |
-
.wpr-forms-align-right .wpr-forms-container .caldera-grid .cf-credit-card {
|
5022 |
-
background-position: 99% center !important;
|
5023 |
-
}
|
5024 |
-
|
5025 |
-
.wpr-forms-align-right .wpr-forms-container .caldera-grid .live-gravatar {
|
5026 |
-
text-align: right !important;
|
5027 |
-
}
|
5028 |
-
|
5029 |
-
.wpr-forms-align-left .wpr-forms-container .caldera-grid .live-gravatar {
|
5030 |
-
text-align: left !important;
|
5031 |
-
}
|
5032 |
-
|
5033 |
-
.wpr-forms-container .nf-form-content {
|
5034 |
-
padding: 0;
|
5035 |
-
max-width: none;
|
5036 |
-
}
|
5037 |
-
|
5038 |
-
.wpr-forms-container .nf-form-content .label-above .field-wrap {
|
5039 |
-
-webkit-box-orient: vertical;
|
5040 |
-
-webkit-box-direction: normal;
|
5041 |
-
-ms-flex-direction: column;
|
5042 |
-
flex-direction: column;
|
5043 |
-
}
|
5044 |
-
|
5045 |
-
.wpr-forms-container .nf-form-content .label-above .nf-field-label {
|
5046 |
-
margin-top: 0;
|
5047 |
-
}
|
5048 |
-
|
5049 |
-
.wpr-forms-container .field-wrap:not(.textarea-wrap):not(.submit-wrap) .ninja-forms-field {
|
5050 |
-
border-radius: 0;
|
5051 |
-
}
|
5052 |
-
|
5053 |
-
.wpr-forms-container .field-wrap.textarea-wrap .ninja-forms-field {
|
5054 |
-
display: block;
|
5055 |
-
}
|
5056 |
-
|
5057 |
-
.wpr-forms-container .field-wrap.submit-wrap .ninja-forms-field {
|
5058 |
-
cursor: pointer;
|
5059 |
-
}
|
5060 |
-
|
5061 |
-
.wpr-forms-container .listselect-wrap>div select.ninja-forms-field {
|
5062 |
-
-webkit-appearance: menulist;
|
5063 |
-
-moz-appearance: menulist;
|
5064 |
-
appearance: menulist;
|
5065 |
-
}
|
5066 |
-
|
5067 |
-
.wpr-forms-container .nf-form-content .list-select-wrap .nf-field-element>div,
|
5068 |
-
.wpr-forms-container .nf-form-content input:not([type=button]),
|
5069 |
-
.wpr-forms-container .nf-form-content textarea {
|
5070 |
-
background: transparent;
|
5071 |
-
border: none;
|
5072 |
-
}
|
5073 |
-
|
5074 |
-
.wpr-forms-container .checkbox-container.label-right .field-wrap {
|
5075 |
-
display: block;
|
5076 |
-
}
|
5077 |
-
|
5078 |
-
.wpr-forms-container .listradio-wrap ul li,
|
5079 |
-
.wpr-forms-container .listcheckbox-wrap ul li {
|
5080 |
-
display: inline-block;
|
5081 |
-
margin-right: 10px !important;
|
5082 |
-
margin-bottom: 7px !important;
|
5083 |
-
}
|
5084 |
-
|
5085 |
-
.wpr-forms-container .listcheckbox-container .nf-field-element label:after {
|
5086 |
-
top: 1px;
|
5087 |
-
}
|
5088 |
-
|
5089 |
-
.wpr-forms-container .listradio-wrap .nf-field-element label {
|
5090 |
-
margin-left: 25px !important;
|
5091 |
-
}
|
5092 |
-
|
5093 |
-
.wpr-forms-container .listradio-wrap .nf-field-element label:after {
|
5094 |
-
top: 0;
|
5095 |
-
left: -25px;
|
5096 |
-
}
|
5097 |
-
|
5098 |
-
.wpr-forms-container .listradio-wrap .nf-field-element label.nf-checked-label:before {
|
5099 |
-
top: 4px;
|
5100 |
-
left: -21px;
|
5101 |
-
}
|
5102 |
-
|
5103 |
-
.wpr-forms-container .listradio-wrap label,
|
5104 |
-
.wpr-forms-container .checkbox-wrap label,
|
5105 |
-
.wpr-forms-container .listcheckbox-wrap label {
|
5106 |
-
cursor: pointer;
|
5107 |
-
-webkit-user-select: none;
|
5108 |
-
-moz-user-select: none;
|
5109 |
-
-ms-user-select: none;
|
5110 |
-
-o-user-select: none;
|
5111 |
-
user-select: none;
|
5112 |
-
}
|
5113 |
-
|
5114 |
-
.wpr-forms-container .nf-error.field-wrap .nf-field-element:after {
|
5115 |
-
top: 0 !important;
|
5116 |
-
bottom: 0 !important;
|
5117 |
-
height: auto !important;
|
5118 |
-
}
|
5119 |
-
|
5120 |
-
.wpr-forms-container .wpforms-form .wpforms-field,
|
5121 |
-
.wpr-forms-container .wpforms-submit-container {
|
5122 |
-
padding: 0 !important;
|
5123 |
-
}
|
5124 |
-
|
5125 |
-
.wpr-forms-container .wpforms-container,
|
5126 |
-
.wpr-forms-container div.wpforms-container-full .wpforms-form .wpforms-field-row,
|
5127 |
-
.wpr-forms-container .wpforms-field-address .wpforms-field-row:nth-last-child(2) {
|
5128 |
-
margin-bottom: 0 !important;
|
5129 |
-
}
|
5130 |
-
|
5131 |
-
.wpr-forms-container .wpforms-submit-container:after {
|
5132 |
-
content: " ";
|
5133 |
-
clear: both;
|
5134 |
-
display: table;
|
5135 |
-
}
|
5136 |
-
|
5137 |
-
.wpr-forms-container .caldera-grid .help-block {
|
5138 |
-
margin-bottom: 0;
|
5139 |
-
}
|
5140 |
-
|
5141 |
-
.wpr-forms-container .caldera-grid .caldera-forms-gdpr-field-label a {
|
5142 |
-
text-decoration: underline;
|
5143 |
-
}
|
5144 |
-
|
5145 |
-
.wpr-forms-container .caldera-grid .intl-tel-input input {
|
5146 |
-
text-indent: 40px;
|
5147 |
-
}
|
5148 |
-
|
5149 |
-
.wpr-forms-container .caldera-grid input.cf-credit-card {
|
5150 |
-
text-indent: 33px;
|
5151 |
-
}
|
5152 |
-
|
5153 |
-
.wpr-forms-container .caldera-grid .cf-credit-card {
|
5154 |
-
background-position: 5px center !important;
|
5155 |
-
}
|
5156 |
-
|
5157 |
-
.wpr-forms-container .cf2-dropzone .form-control {
|
5158 |
-
height: auto;
|
5159 |
-
}
|
5160 |
-
|
5161 |
-
.wpr-forms-container .caldera-grid .form-group input,
|
5162 |
-
.wpr-forms-container .caldera-grid .form-group textarea {
|
5163 |
-
-webkit-box-shadow: none;
|
5164 |
-
box-shadow: none;
|
5165 |
-
}
|
5166 |
-
|
5167 |
-
.wpr-forms-container .caldera-grid .has-error .form-control {
|
5168 |
-
-webkit-box-shadow: none;
|
5169 |
-
box-shadow: none;
|
5170 |
-
}
|
5171 |
-
|
5172 |
-
.wpr-forms-container .caldera-grid .alert-success {
|
5173 |
-
text-shadow: none;
|
5174 |
-
}
|
5175 |
-
|
5176 |
-
|
5177 |
-
/* Defaults */
|
5178 |
-
|
5179 |
-
.elementor-widget-wpr-forms .wpforms-head-container .wpforms-title,
|
5180 |
-
.elementor-widget-wpr-forms .nf-form-title h3 {
|
5181 |
-
font-size: 28px;
|
5182 |
-
font-weight: 800;
|
5183 |
-
}
|
5184 |
-
|
5185 |
-
.elementor-widget-wpr-forms .wpforms-head-container .wpforms-description,
|
5186 |
-
.elementor-widget-wpr-forms .nf-form-fields-required {
|
5187 |
-
font-size: 14px;
|
5188 |
-
}
|
5189 |
-
|
5190 |
-
.elementor-widget-wpr-forms .wpcf7-form,
|
5191 |
-
.elementor-widget-wpr-forms .nf-field-container label,
|
5192 |
-
.elementor-widget-wpr-forms .wpforms-field-label,
|
5193 |
-
.elementor-widget-wpr-forms .wpforms-image-choices-label,
|
5194 |
-
.elementor-widget-wpr-forms .wpforms-field-label-inline,
|
5195 |
-
.elementor-widget-wpr-forms .wpforms-captcha-question,
|
5196 |
-
.elementor-widget-wpr-forms .wpforms-captcha-equation,
|
5197 |
-
.elementor-widget-wpr-forms .wpforms-payment-total,
|
5198 |
-
.elementor-widget-wpr-forms .caldera-grid .control-label,
|
5199 |
-
.elementor-widget-wpr-forms .caldera-forms-summary-field ul li,
|
5200 |
-
.elementor-widget-wpr-forms .caldera-grid .total-line,
|
5201 |
-
.elementor-widget-wpr-forms .caldera-grid .checkbox label,
|
5202 |
-
.elementor-widget-wpr-forms .caldera-grid .radio label,
|
5203 |
-
.elementor-widget-wpr-forms .caldera-grid .caldera-forms-gdpr-field-label,
|
5204 |
-
.elementor-widget-wpr-forms .wpr-forms-container .wpforms-confirmation-container-full,
|
5205 |
-
.elementor-widget-wpr-forms .wpr-forms-container .nf-response-msg {
|
5206 |
-
font-size: 14px;
|
5207 |
-
}
|
5208 |
-
|
5209 |
-
.elementor-widget-wpr-forms .wpcf7-text,
|
5210 |
-
.elementor-widget-wpr-forms .wpcf7-textarea,
|
5211 |
-
.elementor-widget-wpr-forms .wpcf7-date,
|
5212 |
-
.elementor-widget-wpr-forms .wpcf7-number,
|
5213 |
-
.elementor-widget-wpr-forms .wpcf7-select,
|
5214 |
-
.elementor-widget-wpr-forms .wpcf7-quiz,
|
5215 |
-
.elementor-widget-wpr-forms .ninja-forms-field,
|
5216 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=date],
|
5217 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=datetime],
|
5218 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=datetime-local],
|
5219 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=email],
|
5220 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=month],
|
5221 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=number],
|
5222 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=password],
|
5223 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=range],
|
5224 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=search],
|
5225 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=tel],
|
5226 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=text],
|
5227 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=time],
|
5228 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=url],
|
5229 |
-
.elementor-widget-wpr-forms .wpforms-form input[type=week],
|
5230 |
-
.elementor-widget-wpr-forms .wpforms-form select,
|
5231 |
-
.elementor-widget-wpr-forms .wpforms-form textarea,
|
5232 |
-
.elementor-widget-wpr-forms .caldera-grid .form-control[type=text],
|
5233 |
-
.elementor-widget-wpr-forms .caldera-grid .form-control[type=email],
|
5234 |
-
.elementor-widget-wpr-forms .caldera-grid .form-control[type=tel],
|
5235 |
-
.elementor-widget-wpr-forms .caldera-grid .form-control[type=phone],
|
5236 |
-
.elementor-widget-wpr-forms .caldera-grid .form-control[type=number],
|
5237 |
-
.elementor-widget-wpr-forms .caldera-grid .form-control[type=url],
|
5238 |
-
.elementor-widget-wpr-forms .caldera-grid .form-control[type=color_picker],
|
5239 |
-
.elementor-widget-wpr-forms .caldera-grid .form-control[type=credit_card_cvc],
|
5240 |
-
.elementor-widget-wpr-forms .caldera-grid select.form-control,
|
5241 |
-
.elementor-widget-wpr-forms .caldera-grid textarea.form-control {
|
5242 |
-
font-size: 13px;
|
5243 |
-
letter-spacing: 0.2px;
|
5244 |
-
}
|
5245 |
-
|
5246 |
-
.elementor-widget-wpr-forms .wpcf7-submit,
|
5247 |
-
.elementor-widget-wpr-forms .submit-wrap .ninja-forms-field,
|
5248 |
-
.elementor-widget-wpr-forms .submit-wrap .ninja-forms-field,
|
5249 |
-
.elementor-widget-wpr-forms .wpforms-submit,
|
5250 |
-
.elementor-widget-wpr-forms .wpforms-page-next,
|
5251 |
-
.elementor-widget-wpr-forms .wpforms-page-previous,
|
5252 |
-
.elementor-widget-wpr-forms .caldera-grid .btn-default,
|
5253 |
-
.elementor-widget-wpr-forms .caldera-grid .cf2-dropzone button {
|
5254 |
-
background-color: #605BE5;
|
5255 |
-
}
|
5256 |
-
|
5257 |
-
.elementor-widget-wpr-forms .wpcf7-submit:hover,
|
5258 |
-
.elementor-widget-wpr-forms .submit-wrap .ninja-forms-field:hover,
|
5259 |
-
.elementor-widget-wpr-forms .wpforms-submit:hover,
|
5260 |
-
.elementor-widget-wpr-forms .wpforms-page-next:hover,
|
5261 |
-
.elementor-widget-wpr-forms .wpforms-page-previous:hover,
|
5262 |
-
.elementor-widget-wpr-forms .caldera-grid .btn-default:hover,
|
5263 |
-
.elementor-widget-wpr-forms .caldera-grid .btn-success,
|
5264 |
-
.elementor-widget-wpr-forms .caldera-grid .cf2-dropzone button:hover {
|
5265 |
-
background-color: #4A45D2;
|
5266 |
-
}
|
5267 |
-
|
5268 |
-
.elementor-widget-wpr-forms .wpr-forms-container .wpcf7-not-valid-tip,
|
5269 |
-
.elementor-widget-wpr-forms .wpr-forms-container .wpcf7-response-output,
|
5270 |
-
.elementor-widget-wpr-forms .wpr-forms-container label.wpforms-error,
|
5271 |
-
.elementor-widget-wpr-forms .wpr-forms-container .caldera_ajax_error_block,
|
5272 |
-
.elementor-widget-wpr-forms .wpr-forms-container .nf-error-msg {
|
5273 |
-
font-size: 14px;
|
5274 |
-
}
|
5275 |
-
|
5276 |
-
.elementor-widget-wpr-forms .wpcf7-form,
|
5277 |
-
.elementor-widget-wpr-forms .nf-field-container label,
|
5278 |
-
.elementor-widget-wpr-forms .wpforms-field-label,
|
5279 |
-
.elementor-widget-wpr-forms .wpforms-image-choices-label,
|
5280 |
-
.elementor-widget-wpr-forms .wpforms-field-label-inline,
|
5281 |
-
.elementor-widget-wpr-forms .wpforms-captcha-question,
|
5282 |
-
.elementor-widget-wpr-forms .wpforms-captcha-equation,
|
5283 |
-
.elementor-widget-wpr-forms .wpforms-payment-total,
|
5284 |
-
.elementor-widget-wpr-forms .caldera-grid .control-label,
|
5285 |
-
.elementor-widget-wpr-forms .caldera-forms-summary-field ul li,
|
5286 |
-
.elementor-widget-wpr-forms .caldera-grid .total-line,
|
5287 |
-
.elementor-widget-wpr-forms .caldera-grid .checkbox label,
|
5288 |
-
.elementor-widget-wpr-forms .caldera-grid .radio label,
|
5289 |
-
.elementor-widget-wpr-forms .caldera-grid .caldera-forms-gdpr-field-label,
|
5290 |
-
.elementor-widget-wpr-forms .wpr-forms-container .wpforms-confirmation-container-full,
|
5291 |
-
.elementor-widget-wpr-forms .wpr-forms-container .nf-response-msg {
|
5292 |
-
font-weight: normal;
|
5293 |
-
}
|
5294 |
-
|
5295 |
-
.elementor-widget-wpr-forms.nf-field-description,
|
5296 |
-
.elementor-widget-wpr-forms.wpforms-field-sublabel,
|
5297 |
-
.elementor-widget-wpr-forms.wpforms-field-description,
|
5298 |
-
.elementor-widget-wpr-forms.caldera-grid .help-block {
|
5299 |
-
font-size: 14px;
|
5300 |
-
}
|
5301 |
-
|
5302 |
-
|
5303 |
-
/*--------------------------------------------------------------
|
5304 |
-
== Before After
|
5305 |
-
--------------------------------------------------------------*/
|
5306 |
-
|
5307 |
-
.wpr-ba-image-container {
|
5308 |
-
position: relative;
|
5309 |
-
overflow: hidden;
|
5310 |
-
}
|
5311 |
-
|
5312 |
-
.wpr-ba-image-container * {
|
5313 |
-
-webkit-user-select: none;
|
5314 |
-
-moz-user-select: none;
|
5315 |
-
-ms-user-select: none;
|
5316 |
-
user-select: none;
|
5317 |
-
}
|
5318 |
-
|
5319 |
-
.wpr-ba-image-1 img,
|
5320 |
-
.wpr-ba-image-2 img {
|
5321 |
-
max-width: 100%;
|
5322 |
-
width: 100%;
|
5323 |
-
}
|
5324 |
-
|
5325 |
-
.wpr-ba-image-2 {
|
5326 |
-
position: absolute;
|
5327 |
-
top: 0;
|
5328 |
-
left: 0;
|
5329 |
-
width: 100%;
|
5330 |
-
height: 100%;
|
5331 |
-
overflow: hidden;
|
5332 |
-
}
|
5333 |
-
|
5334 |
-
.wpr-ba-image-2 img {
|
5335 |
-
position: absolute;
|
5336 |
-
top: 0;
|
5337 |
-
}
|
5338 |
-
|
5339 |
-
.wpr-ba-divider {
|
5340 |
-
display: -webkit-box;
|
5341 |
-
display: -ms-flexbox;
|
5342 |
-
display: flex;
|
5343 |
-
-webkit-box-align: center;
|
5344 |
-
-ms-flex-align: center;
|
5345 |
-
align-items: center;
|
5346 |
-
-webkit-box-pack: center;
|
5347 |
-
-ms-flex-pack: center;
|
5348 |
-
justify-content: center;
|
5349 |
-
position: absolute;
|
5350 |
-
top: 0;
|
5351 |
-
left: 50%;
|
5352 |
-
z-index: 3;
|
5353 |
-
height: 100%;
|
5354 |
-
cursor: pointer;
|
5355 |
-
-ms-touch-action: none;
|
5356 |
-
touch-action: none;
|
5357 |
-
}
|
5358 |
-
|
5359 |
-
.wpr-ba-divider-icons {
|
5360 |
-
display: -webkit-box;
|
5361 |
-
display: -ms-flexbox;
|
5362 |
-
display: flex;
|
5363 |
-
}
|
5364 |
-
|
5365 |
-
.wpr-ba-vertical .wpr-ba-divider-icons {
|
5366 |
-
-webkit-box-orient: vertical;
|
5367 |
-
-webkit-box-direction: normal;
|
5368 |
-
-ms-flex-direction: column;
|
5369 |
-
flex-direction: column;
|
5370 |
-
}
|
5371 |
-
|
5372 |
-
.wpr-ba-horizontal .wpr-ba-divider-icons i:first-child {
|
5373 |
-
text-align: right;
|
5374 |
-
padding-right: 10%;
|
5375 |
-
}
|
5376 |
-
|
5377 |
-
.wpr-ba-horizontal .wpr-ba-divider-icons i:last-child {
|
5378 |
-
text-align: left;
|
5379 |
-
padding-left: 10%;
|
5380 |
-
}
|
5381 |
-
|
5382 |
-
.wpr-ba-divider-icons .fa {
|
5383 |
-
text-align: center;
|
5384 |
-
}
|
5385 |
-
|
5386 |
-
.wpr-ba-vertical .wpr-ba-divider {
|
5387 |
-
top: 50%;
|
5388 |
-
left: auto;
|
5389 |
-
width: 100%;
|
5390 |
-
height: auto;
|
5391 |
-
}
|
5392 |
-
|
5393 |
-
.wpr-ba-vertical .wpr-ba-image-2 img {
|
5394 |
-
top: auto;
|
5395 |
-
}
|
5396 |
-
|
5397 |
-
.wpr-ba-horizontal .wpr-ba-divider-icons:before,
|
5398 |
-
.wpr-ba-horizontal .wpr-ba-divider-icons:after {
|
5399 |
-
content: '';
|
5400 |
-
display: block;
|
5401 |
-
position: absolute;
|
5402 |
-
height: 100%;
|
5403 |
-
}
|
5404 |
-
|
5405 |
-
.wpr-ba-vertical .wpr-ba-divider-icons:before,
|
5406 |
-
.wpr-ba-vertical .wpr-ba-divider-icons:after {
|
5407 |
-
content: '';
|
5408 |
-
display: block;
|
5409 |
-
position: absolute;
|
5410 |
-
width: 100%;
|
5411 |
-
}
|
5412 |
-
|
5413 |
-
.wpr-ba-label {
|
5414 |
-
position: absolute;
|
5415 |
-
display: -webkit-box;
|
5416 |
-
display: -ms-flexbox;
|
5417 |
-
display: flex;
|
5418 |
-
padding: 15px;
|
5419 |
-
}
|
5420 |
-
|
5421 |
-
.wpr-ba-labels-none .wpr-ba-label {
|
5422 |
-
display: none;
|
5423 |
-
}
|
5424 |
-
|
5425 |
-
.wpr-ba-labels-hover .wpr-ba-label {
|
5426 |
-
opacity: 0;
|
5427 |
-
-webkit-transition: 0.1s ease-in;
|
5428 |
-
-o-transition: 0.1s ease-in;
|
5429 |
-
transition: 0.1s ease-in;
|
5430 |
-
}
|
5431 |
-
|
5432 |
-
.wpr-ba-labels-hover:hover .wpr-ba-label {
|
5433 |
-
opacity: 1;
|
5434 |
-
}
|
5435 |
-
|
5436 |
-
.wpr-ba-horizontal .wpr-ba-label {
|
5437 |
-
top: 0;
|
5438 |
-
height: 100%;
|
5439 |
-
-webkit-box-orient: vertical;
|
5440 |
-
-webkit-box-direction: normal;
|
5441 |
-
-ms-flex-direction: column;
|
5442 |
-
flex-direction: column;
|
5443 |
-
}
|
5444 |
-
|
5445 |
-
.wpr-ba-horizontal .wpr-ba-label-1 {
|
5446 |
-
left: 0;
|
5447 |
-
}
|
5448 |
-
|
5449 |
-
.wpr-ba-horizontal .wpr-ba-label-2 {
|
5450 |
-
right: 0;
|
5451 |
-
}
|
5452 |
-
|
5453 |
-
.wpr-ba-vertical .wpr-ba-label {
|
5454 |
-
left: 0;
|
5455 |
-
width: 100%;
|
5456 |
-
}
|
5457 |
-
|
5458 |
-
.wpr-ba-vertical .wpr-ba-label-1 {
|
5459 |
-
top: 0;
|
5460 |
-
}
|
5461 |
-
|
5462 |
-
.wpr-ba-vertical .wpr-ba-label-2 {
|
5463 |
-
bottom: 0;
|
5464 |
-
}
|
5465 |
-
|
5466 |
-
|
5467 |
-
/* Defaults */
|
5468 |
-
|
5469 |
-
.elementor-widget-wpr-before-after .wpr-ba-label>div {
|
5470 |
-
background-color: #605BE5;
|
5471 |
-
font-size: 14px;
|
5472 |
-
}
|
5473 |
-
|
5474 |
-
|
5475 |
-
/*--------------------------------------------------------------
|
5476 |
-
== Popups
|
5477 |
-
--------------------------------------------------------------*/
|
5478 |
-
|
5479 |
-
body:not(.elementor-editor-active) .wpr-template-popup {
|
5480 |
-
display: none;
|
5481 |
-
}
|
5482 |
-
|
5483 |
-
.wpr-template-popup {
|
5484 |
-
position: fixed;
|
5485 |
-
top: 0;
|
5486 |
-
left: 0;
|
5487 |
-
width: 100%;
|
5488 |
-
height: 100%;
|
5489 |
-
z-index: 99999999;
|
5490 |
-
}
|
5491 |
-
|
5492 |
-
.wpr-template-popup-inner {
|
5493 |
-
display: -webkit-box;
|
5494 |
-
display: -ms-flexbox;
|
5495 |
-
display: flex;
|
5496 |
-
position: fixed;
|
5497 |
-
top: 0;
|
5498 |
-
left: 0;
|
5499 |
-
width: 100%;
|
5500 |
-
height: 100%;
|
5501 |
-
}
|
5502 |
-
|
5503 |
-
.wpr-popup-container {
|
5504 |
-
position: relative;
|
5505 |
-
}
|
5506 |
-
|
5507 |
-
.wpr-popup-container-inner {
|
5508 |
-
display: -webkit-box;
|
5509 |
-
display: -ms-flexbox;
|
5510 |
-
display: flex;
|
5511 |
-
overflow: hidden;
|
5512 |
-
position: relative;
|
5513 |
-
background: #ffffff;
|
5514 |
-
}
|
5515 |
-
|
5516 |
-
.wpr-popup-container-inner>div {
|
5517 |
-
width: 100%;
|
5518 |
-
-ms-flex-negative: 0;
|
5519 |
-
flex-shrink: 0;
|
5520 |
-
}
|
5521 |
-
|
5522 |
-
.wpr-popup-container>div {
|
5523 |
-
width: 100%;
|
5524 |
-
}
|
5525 |
-
|
5526 |
-
.wpr-popup-image-overlay {
|
5527 |
-
position: absolute;
|
5528 |
-
top: 0;
|
5529 |
-
left: 0;
|
5530 |
-
width: 100%;
|
5531 |
-
height: 100%;
|
5532 |
-
background: #ffffff;
|
5533 |
-
}
|
5534 |
-
|
5535 |
-
.wpr-popup-overlay {
|
5536 |
-
position: absolute;
|
5537 |
-
top: 0;
|
5538 |
-
left: 0;
|
5539 |
-
z-index: -1;
|
5540 |
-
width: 100%;
|
5541 |
-
height: 100%;
|
5542 |
-
background: rgba( 0, 0, 0, 0.7);
|
5543 |
-
}
|
5544 |
-
|
5545 |
-
.wpr-popup-close-btn {
|
5546 |
-
display: -webkit-box;
|
5547 |
-
display: -ms-flexbox;
|
5548 |
-
display: flex;
|
5549 |
-
position: absolute;
|
5550 |
-
top: 0;
|
5551 |
-
right: 0;
|
5552 |
-
z-index: 99;
|
5553 |
-
text-align: center;
|
5554 |
-
cursor: pointer;
|
5555 |
-
}
|
5556 |
-
|
5557 |
-
.wpr-popup-notification.wpr-template-popup,
|
5558 |
-
.wpr-popup-notification .wpr-template-popup-inner {
|
5559 |
-
height: auto !important;
|
5560 |
-
}
|
5561 |
-
|
5562 |
-
.wpr-popup-notification .wpr-popup-overlay {
|
5563 |
-
display: none !important;
|
5564 |
-
}
|
5565 |
-
|
5566 |
-
.wpr-popup-container-inner.ps-container.ps-active-y>.ps-scrollbar-y-rail,
|
5567 |
-
.wpr-popup-container-inner.ps.ps--active-y>.ps__rail-y {
|
5568 |
-
display: block;
|
5569 |
-
background-color: transparent;
|
5570 |
-
}
|
5571 |
-
|
5572 |
-
.wpr-popup-container-inner.ps-container>.ps-scrollbar-y-rail,
|
5573 |
-
.wpr-popup-container-inner.ps>.ps__rail-y {
|
5574 |
-
display: none;
|
5575 |
-
position: absolute;
|
5576 |
-
right: 3px;
|
5577 |
-
width: 3px;
|
5578 |
-
}
|
5579 |
-
|
5580 |
-
.wpr-popup-container-inner.ps-container>.ps-scrollbar-y-rail>.ps-scrollbar-y,
|
5581 |
-
.wpr-popup-container-inner.ps>.ps__rail-y>.ps__thumb-y {
|
5582 |
-
position: absolute;
|
5583 |
-
cursor: pointer;
|
5584 |
-
right: 0;
|
5585 |
-
width: 3px;
|
5586 |
-
}
|
5587 |
-
|
5588 |
-
.wpr-popup-container .ps-scrollbar-x-rail {
|
5589 |
-
display: none !important;
|
5590 |
-
}
|
5591 |
-
|
5592 |
-
.wpr-popup-notification .wpr-popup-container .slideInDown {
|
5593 |
-
-webkit-animation-timing-function: linear;
|
5594 |
-
animation-timing-function: linear;
|
5595 |
-
}
|
5596 |
-
|
5597 |
-
.wpr-popup-notification .wpr-popup-container {
|
5598 |
-
width: 100% !important;
|
5599 |
-
-webkit-box-align: start !important;
|
5600 |
-
-ms-flex-align: start !important;
|
5601 |
-
align-items: flex-start !important;
|
5602 |
-
}
|
5603 |
-
|
5604 |
-
.wpr-popup-trigger-button {
|
5605 |
-
display: inline-block;
|
5606 |
-
font-size: 14px;
|
5607 |
-
font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
|
5608 |
-
cursor: pointer;
|
5609 |
-
}
|
5610 |
-
|
5611 |
-
|
5612 |
-
/* Only For Editing */
|
5613 |
-
|
5614 |
-
.wpr-popup-container .elementor-editor-section-settings {
|
5615 |
-
-webkit-transform: translateX(-50%);
|
5616 |
-
-ms-transform: translateX(-50%);
|
5617 |
-
transform: translateX(-50%);
|
5618 |
-
border-radius: 0 0 5px 5px;
|
5619 |
-
}
|
5620 |
-
|
5621 |
-
.wpr-popup-container .elementor-editor-section-settings .elementor-editor-element-setting:first-child {
|
5622 |
-
border-radius: 0 0 0 5px;
|
5623 |
-
}
|
5624 |
-
|
5625 |
-
.wpr-popup-container .elementor-editor-section-settings .elementor-editor-element-setting:first-child:before {
|
5626 |
-
top: 0;
|
5627 |
-
border-width: 0 12px 22px 0;
|
5628 |
-
}
|
5629 |
-
|
5630 |
-
.wpr-popup-container .elementor-editor-section-settings .elementor-editor-element-setting:last-child {
|
5631 |
-
border-radius: 0 0 5px 0;
|
5632 |
-
}
|
5633 |
-
|
5634 |
-
.wpr-popup-container .elementor-editor-section-settings .elementor-editor-element-setting:last-child:after {
|
5635 |
-
top: 0;
|
5636 |
-
border-width: 0 0 22px 12px;
|
5637 |
-
}
|
5638 |
-
|
5639 |
-
.elementor-editor-active [data-elementor-type="wpr-popups"] .elementor-section-wrap:not(:empty)+#elementor-add-new-section,
|
5640 |
-
.elementor-editor-active [data-elementor-type="wpr-popups"]:not(.elementor-edit-mode) {
|
5641 |
-
display: none;
|
5642 |
-
}
|
5643 |
-
|
5644 |
-
.elementor .elementor-widget-wpr-popup-trigger .wpr-popup-trigger-button {
|
5645 |
-
display: inline-block;
|
5646 |
-
font-size: 14px;
|
5647 |
-
font-weight: 500;
|
5648 |
-
cursor: pointer;
|
5649 |
-
}
|
5650 |
-
|
5651 |
-
.elementor-editor-active [data-elementor-type="wpr-popup"] .elementor-section-wrap:not(:empty)+#elementor-add-new-section,
|
5652 |
-
.elementor-editor-active [data-elementor-type="wpr-popup"]:not(.elementor-edit-mode) {
|
5653 |
-
display: none;
|
5654 |
-
}
|
5655 |
-
|
5656 |
-
|
5657 |
-
/* Template Edit button */
|
5658 |
-
|
5659 |
-
.wpr-template-edit-btn {
|
5660 |
-
position: absolute;
|
5661 |
-
top: 0;
|
5662 |
-
right: 40px;
|
5663 |
-
display: none;
|
5664 |
-
line-height: 1;
|
5665 |
-
padding: 8px 13px;
|
5666 |
-
cursor: pointer;
|
5667 |
-
background: #333;
|
5668 |
-
color: #fff;
|
5669 |
-
border: 1px solid #000;
|
5670 |
-
}
|
5671 |
-
|
5672 |
-
.elementor-editor-active .wpr-template-edit-btn {
|
5673 |
-
display: inline-block;
|
5674 |
-
opacity: 0;
|
5675 |
-
visibility: hidden;
|
5676 |
-
}
|
5677 |
-
|
5678 |
-
.elementor-editor-active .elementor-element-edit-mode:hover .wpr-template-edit-btn {
|
5679 |
-
opacity: 1;
|
5680 |
-
visibility: visible;
|
5681 |
-
}
|
5682 |
-
|
5683 |
-
|
5684 |
-
/*--------------------------------------------------------------
|
5685 |
-
== Mailchimp
|
5686 |
-
--------------------------------------------------------------*/
|
5687 |
-
|
5688 |
-
.wpr-mailchimp-fields {
|
5689 |
-
display: -webkit-box;
|
5690 |
-
display: -ms-flexbox;
|
5691 |
-
display: flex;
|
5692 |
-
}
|
5693 |
-
|
5694 |
-
.wpr-mailchimp-email label,
|
5695 |
-
.wpr-mailchimp-email input,
|
5696 |
-
.wpr-mailchimp-first-name label,
|
5697 |
-
.wpr-mailchimp-first-name input,
|
5698 |
-
.wpr-mailchimp-last-name label,
|
5699 |
-
.wpr-mailchimp-last-name input {
|
5700 |
-
display: block;
|
5701 |
-
width: 100%;
|
5702 |
-
}
|
5703 |
-
|
5704 |
-
.wpr-mailchimp-layout-hr .wpr-mailchimp-fields {
|
5705 |
-
-webkit-box-orient: horizontal;
|
5706 |
-
-webkit-box-direction: normal;
|
5707 |
-
-ms-flex-direction: row;
|
5708 |
-
flex-direction: row;
|
5709 |
-
-webkit-box-align: end;
|
5710 |
-
-ms-flex-align: end;
|
5711 |
-
align-items: flex-end;
|
5712 |
-
}
|
5713 |
-
|
5714 |
-
.wpr-mailchimp-layout-vr .wpr-mailchimp-fields {
|
5715 |
-
-webkit-box-orient: vertical;
|
5716 |
-
-webkit-box-direction: normal;
|
5717 |
-
-ms-flex-direction: column;
|
5718 |
-
flex-direction: column;
|
5719 |
-
}
|
5720 |
-
|
5721 |
-
.wpr-mailchimp-layout-hr .wpr-mailchimp-email,
|
5722 |
-
.wpr-mailchimp-layout-hr .wpr-mailchimp-first-name,
|
5723 |
-
.wpr-mailchimp-layout-hr .wpr-mailchimp-last-name {
|
5724 |
-
-webkit-box-flex: 1;
|
5725 |
-
-ms-flex-positive: 1;
|
5726 |
-
flex-grow: 1;
|
5727 |
-
}
|
5728 |
-
|
5729 |
-
.wpr-mailchimp-subscribe-btn {
|
5730 |
-
width: 100%;
|
5731 |
-
padding: 0 !important;
|
5732 |
-
outline: none !important;
|
5733 |
-
cursor: pointer;
|
5734 |
-
}
|
5735 |
-
|
5736 |
-
.wpr-mailchimp-message,
|
5737 |
-
.wpr-mailchimp-success-message,
|
5738 |
-
.wpr-mailchimp-error-message {
|
5739 |
-
display: none;
|
5740 |
-
}
|
5741 |
-
|
5742 |
-
|
5743 |
-
/* Defaults */
|
5744 |
-
.elementor-widget-wpr-mailchimp .wpr-mailchimp-header h3 {
|
5745 |
-
font-size: 28px;
|
5746 |
-
font-weight: 800;
|
5747 |
-
margin-top: 0;
|
5748 |
-
}
|
5749 |
-
|
5750 |
-
.elementor-widget-wpr-mailchimp .wpr-mailchimp-header p {
|
5751 |
-
font-size: 14px;
|
5752 |
-
}
|
5753 |
-
|
5754 |
-
.elementor-widget-wpr-mailchimp .wpr-mailchimp-fields label {
|
5755 |
-
font-size: 13px;
|
5756 |
-
}
|
5757 |
-
|
5758 |
-
.elementor-widget-wpr-mailchimp .wpr-mailchimp-subscribe-btn {
|
5759 |
-
background-color: #605BE5;
|
5760 |
-
}
|
5761 |
-
|
5762 |
-
.elementor-widget-wpr-mailchimp .wpr-mailchimp-subscribe-btn:hover {
|
5763 |
-
background-color: #4A45D2;
|
5764 |
-
}
|
5765 |
-
|
5766 |
-
|
5767 |
-
/*--------------------------------------------------------------
|
5768 |
-
== Advanced Slider
|
5769 |
-
--------------------------------------------------------------*/
|
5770 |
-
|
5771 |
-
.wpr-advanced-slider-wrap {
|
5772 |
-
position: relative;
|
5773 |
-
}
|
5774 |
-
|
5775 |
-
.wpr-advanced-slider {
|
5776 |
-
position: relative;
|
5777 |
-
height: 500px;
|
5778 |
-
overflow: hidden;
|
5779 |
-
}
|
5780 |
-
|
5781 |
-
.wpr-slider-item {
|
5782 |
-
position: relative;
|
5783 |
-
height: 500px;
|
5784 |
-
overflow: hidden;
|
5785 |
-
}
|
5786 |
-
|
5787 |
-
.wpr-slider-content {
|
5788 |
-
position: relative;
|
5789 |
-
max-width: 750px;
|
5790 |
-
width: 100%;
|
5791 |
-
padding: 10px 50px 50px 50px;
|
5792 |
-
z-index: 90;
|
5793 |
-
}
|
5794 |
-
|
5795 |
-
.wpr-slider-item-bg {
|
5796 |
-
position: absolute;
|
5797 |
-
top: 0;
|
5798 |
-
left: 0;
|
5799 |
-
width: 100%;
|
5800 |
-
height: 100%;
|
5801 |
-
background-repeat: no-repeat;
|
5802 |
-
background-position: center;
|
5803 |
-
}
|
5804 |
-
|
5805 |
-
.wpr-slider-title *,
|
5806 |
-
.wpr-slider-sub-title h3,
|
5807 |
-
.wpr-slider-description p {
|
5808 |
-
display: inline-block;
|
5809 |
-
}
|
5810 |
-
|
5811 |
-
.wpr-slider-title * {
|
5812 |
-
color: #ffffff;
|
5813 |
-
font-size: 40px;
|
5814 |
-
font-weight: 600;
|
5815 |
-
line-height: 1.5em;
|
5816 |
-
padding: 5px 10px 5px 10px;
|
5817 |
-
margin: 0 0 2px 0;
|
5818 |
-
}
|
5819 |
-
|
5820 |
-
.wpr-slider-sub-title h3 {
|
5821 |
-
font-size: 16px;
|
5822 |
-
padding: 5px 10px 5px 10px;
|
5823 |
-
margin: 0 0 10px 0;
|
5824 |
-
}
|
5825 |
-
|
5826 |
-
.wpr-slider-description p {
|
5827 |
-
padding: 5px 10px 5px 10px;
|
5828 |
-
margin: 0 0 30px 0;
|
5829 |
-
}
|
5830 |
-
|
5831 |
-
.wpr-slider-primary-btn,
|
5832 |
-
.wpr-slider-secondary-btn {
|
5833 |
-
padding: 12px 25px 12px 25px;
|
5834 |
-
margin: 0 10px 0 10px;
|
5835 |
-
border-style: solid;
|
5836 |
-
border-width: 1px;
|
5837 |
-
border-color: #ffffff;
|
5838 |
-
border-radius: 2px;
|
5839 |
-
}
|
5840 |
-
|
5841 |
-
.wpr-slider-btns svg,
|
5842 |
-
.wpr-slider-scroll-btn svg {
|
5843 |
-
vertical-align: bottom;
|
5844 |
-
}
|
5845 |
-
|
5846 |
-
|
5847 |
-
/* Ken burn Effect */
|
5848 |
-
|
5849 |
-
@keyframes ken-burns-in {
|
5850 |
-
0% {
|
5851 |
-
-webkit-transform: scale(1);
|
5852 |
-
transform: scale(1)
|
5853 |
-
}
|
5854 |
-
100% {
|
5855 |
-
-webkit-transform: scale(1.3);
|
5856 |
-
transform: scale(1.3);
|
5857 |
-
}
|
5858 |
-
}
|
5859 |
-
|
5860 |
-
@-webkit-keyframes ken-burns-in {
|
5861 |
-
0% {
|
5862 |
-
-webkit-transform: scale(1);
|
5863 |
-
transform: scale(1)
|
5864 |
-
}
|
5865 |
-
100% {
|
5866 |
-
-webkit-transform: scale(1.3);
|
5867 |
-
transform: scale(1.3);
|
5868 |
-
}
|
5869 |
-
}
|
5870 |
-
|
5871 |
-
@keyframes ken-burns-out {
|
5872 |
-
0% {
|
5873 |
-
-webkit-transform: scale(1.3);
|
5874 |
-
transform: scale(1.3);
|
5875 |
-
}
|
5876 |
-
100% {
|
5877 |
-
-webkit-transform: scale(1);
|
5878 |
-
transform: scale(1);
|
5879 |
-
}
|
5880 |
-
}
|
5881 |
-
|
5882 |
-
@-webkit-keyframes ken-burns-out {
|
5883 |
-
0% {
|
5884 |
-
-webkit-transform: scale(1.3);
|
5885 |
-
transform: scale(1.3);
|
5886 |
-
}
|
5887 |
-
100% {
|
5888 |
-
-webkit-transform: scale(1);
|
5889 |
-
transform: scale(1);
|
5890 |
-
}
|
5891 |
-
}
|
5892 |
-
|
5893 |
-
.wpr-advanced-slider .slick-slide.slick-active .wpr-slider-item-bg {
|
5894 |
-
-webkit-animation-timing-function: linear;
|
5895 |
-
animation-timing-function: linear;
|
5896 |
-
-webkit-animation-duration: 10s;
|
5897 |
-
animation-duration: 10s;
|
5898 |
-
}
|
5899 |
-
|
5900 |
-
.wpr-advanced-slider .slick-slide.slick-active .wpr-slider-item-bg.wpr-ken-burns-in {
|
5901 |
-
-webkit-animation-name: ken-burns-in;
|
5902 |
-
animation-name: ken-burns-in;
|
5903 |
-
-webkit-transform: scale(1.3);
|
5904 |
-
-ms-transform: scale(1.3);
|
5905 |
-
transform: scale(1.3);
|
5906 |
-
}
|
5907 |
-
|
5908 |
-
.wpr-advanced-slider .slick-slide.slick-active .wpr-slider-item-bg.wpr-ken-burns-out {
|
5909 |
-
-webkit-animation-name: ken-burns-out;
|
5910 |
-
animation-name: ken-burns-out;
|
5911 |
-
-webkit-transform: scale(1);
|
5912 |
-
-ms-transform: scale(1);
|
5913 |
-
transform: scale(1)
|
5914 |
-
}
|
5915 |
-
|
5916 |
-
.wpr-ken-burns-in {
|
5917 |
-
-webkit-transform: scale(1);
|
5918 |
-
-ms-transform: scale(1);
|
5919 |
-
transform: scale(1);
|
5920 |
-
}
|
5921 |
-
|
5922 |
-
.wpr-ken-burns-out {
|
5923 |
-
-webkit-transform: scale(1.3);
|
5924 |
-
-ms-transform: scale(1.3);
|
5925 |
-
transform: scale(1.3);
|
5926 |
-
}
|
5927 |
-
|
5928 |
-
|
5929 |
-
/* Slider Item URL */
|
5930 |
-
|
5931 |
-
.wpr-slider-item-url {
|
5932 |
-
display: block;
|
5933 |
-
width: 100%;
|
5934 |
-
height: 100%;
|
5935 |
-
position: absolute;
|
5936 |
-
left: 0;
|
5937 |
-
top: 0;
|
5938 |
-
z-index: 90;
|
5939 |
-
}
|
5940 |
-
|
5941 |
-
|
5942 |
-
/* Slider Navigation */
|
5943 |
-
|
5944 |
-
.wpr-slider-nav-position-default .wpr-slider-arrow-container {
|
5945 |
-
position: absolute;
|
5946 |
-
display: -webkit-box;
|
5947 |
-
display: -ms-flexbox;
|
5948 |
-
display: flex;
|
5949 |
-
}
|
5950 |
-
|
5951 |
-
.wpr-slider-nav-position-default .wpr-slider-arrow {
|
5952 |
-
position: static;
|
5953 |
-
}
|
5954 |
-
|
5955 |
-
.wpr-slider-nav-position-default .wpr-slider-prev-arrow {
|
5956 |
-
-ms-transform: none;
|
5957 |
-
transform: none;
|
5958 |
-
-webkit-transform: none;
|
5959 |
-
}
|
5960 |
-
|
5961 |
-
.wpr-slider-nav-position-default .wpr-slider-next-arrow {
|
5962 |
-
-ms-transform: translateY(0) rotate(180deg);
|
5963 |
-
transform: translateY(0) rotate(180deg);
|
5964 |
-
-webkit-transform: translateY(0) rotate(180deg);
|
5965 |
-
}
|
5966 |
-
|
5967 |
-
.wpr-slider-nav-align-top-center .wpr-slider-arrow-container,
|
5968 |
-
.wpr-slider-nav-align-bottom-center .wpr-slider-arrow-container {
|
5969 |
-
left: 50%;
|
5970 |
-
-webkit-transform: translateX(-50%);
|
5971 |
-
-ms-transform: translateX(-50%);
|
5972 |
-
transform: translateX(-50%);
|
5973 |
-
}
|
5974 |
-
|
5975 |
-
.wpr-slider-arrow {
|
5976 |
-
position: absolute;
|
5977 |
-
z-index: 120;
|
5978 |
-
top: 50%;
|
5979 |
-
-webkit-box-sizing: content-box;
|
5980 |
-
box-sizing: content-box;
|
5981 |
-
text-align: center;
|
5982 |
-
-webkit-transition: all .5s;
|
5983 |
-
-o-transition: all .5s;
|
5984 |
-
transition: all .5s;
|
5985 |
-
cursor: pointer;
|
5986 |
-
-webkit-box-align: center;
|
5987 |
-
-ms-flex-align: center;
|
5988 |
-
align-items: center;
|
5989 |
-
-webkit-box-pack: center;
|
5990 |
-
-ms-flex-pack: center;
|
5991 |
-
justify-content: center;
|
5992 |
-
}
|
5993 |
-
|
5994 |
-
.wpr-slider-arrow i {
|
5995 |
-
display: block;
|
5996 |
-
line-height: inherit;
|
5997 |
-
}
|
5998 |
-
|
5999 |
-
.wpr-slider-prev-arrow {
|
6000 |
-
left: 1%;
|
6001 |
-
-webkit-transform: translateY(-50%);
|
6002 |
-
-ms-transform: translateY(-50%);
|
6003 |
-
transform: translateY(-50%);
|
6004 |
-
}
|
6005 |
-
|
6006 |
-
.wpr-slider-next-arrow {
|
6007 |
-
right: 1%;
|
6008 |
-
-webkit-transform: translateY(-50%) rotate(180deg);
|
6009 |
-
-ms-transform: translateY(-50%) rotate(180deg);
|
6010 |
-
transform: translateY(-50%) rotate(180deg);
|
6011 |
-
}
|
6012 |
-
|
6013 |
-
.wpr-slider-nav-fade .wpr-slider-arrow {
|
6014 |
-
opacity: 0;
|
6015 |
-
visibility: hidden;
|
6016 |
-
}
|
6017 |
-
|
6018 |
-
.wpr-slider-nav-fade .wpr-advanced-slider-wrap:hover .wpr-slider-arrow {
|
6019 |
-
opacity: 1;
|
6020 |
-
visibility: visible;
|
6021 |
-
}
|
6022 |
-
|
6023 |
-
|
6024 |
-
/* Slider Pagination */
|
6025 |
-
|
6026 |
-
.wpr-slider-dots {
|
6027 |
-
display: inline-table;
|
6028 |
-
position: absolute;
|
6029 |
-
z-index: 110;
|
6030 |
-
left: 50%;
|
6031 |
-
-webkit-transform: translate(-50%, -50%);
|
6032 |
-
-ms-transform: translate(-50%, -50%);
|
6033 |
-
transform: translate(-50%, -50%);
|
6034 |
-
}
|
6035 |
-
|
6036 |
-
.wpr-slider-dots .slick-dots {
|
6037 |
-
position: static !important;
|
6038 |
-
}
|
6039 |
-
|
6040 |
-
.wpr-slider-dots ul {
|
6041 |
-
list-style: none;
|
6042 |
-
margin: 0;
|
6043 |
-
padding: 0;
|
6044 |
-
}
|
6045 |
-
|
6046 |
-
.wpr-advanced-slider.slick-dotted.slick-slider {
|
6047 |
-
margin-bottom: 0 !important;
|
6048 |
-
}
|
6049 |
-
|
6050 |
-
.wpr-slider-dots-vertical .slick-dots li {
|
6051 |
-
display: block;
|
6052 |
-
width: auto !important;
|
6053 |
-
height: auto !important;
|
6054 |
-
margin: 0 !important;
|
6055 |
-
}
|
6056 |
-
|
6057 |
-
.wpr-slider-dots-horizontal .slick-dots li {
|
6058 |
-
width: auto !important;
|
6059 |
-
padding-top: 10px;
|
6060 |
-
margin: 0 !important;
|
6061 |
-
}
|
6062 |
-
|
6063 |
-
.wpr-slider-dots-pro-vr .slick-dots li:last-child span,
|
6064 |
-
.wpr-slider-dots-horizontal .slick-dots li:last-child span {
|
6065 |
-
margin-right: 0 !important;
|
6066 |
-
}
|
6067 |
-
|
6068 |
-
.wpr-slider-dots-pro-vr .wpr-slider-dots li,
|
6069 |
-
.wpr-slider-dots-horizontal .wpr-slider-dots li {
|
6070 |
-
float: left;
|
6071 |
-
}
|
6072 |
-
|
6073 |
-
.wpr-slider-dot {
|
6074 |
-
display: block;
|
6075 |
-
cursor: pointer;
|
6076 |
-
}
|
6077 |
-
|
6078 |
-
.wpr-slider-dots li:last-child .wpr-slider-dot {
|
6079 |
-
margin: 0 !important;
|
6080 |
-
}
|
6081 |
-
|
6082 |
-
|
6083 |
-
/* Slider Scroll Button */
|
6084 |
-
|
6085 |
-
.wpr-slider-scroll-btn {
|
6086 |
-
position: absolute;
|
6087 |
-
bottom: 45px;
|
6088 |
-
left: 50%;
|
6089 |
-
-webkit-transform: translateX(-50%);
|
6090 |
-
-ms-transform: translateX(-50%);
|
6091 |
-
transform: translateX(-50%);
|
6092 |
-
display: inline-block;
|
6093 |
-
-webkit-transition-duration: 200ms;
|
6094 |
-
-o-transition-duration: 200ms;
|
6095 |
-
transition-duration: 200ms;
|
6096 |
-
line-height: 1;
|
6097 |
-
overflow: hidden;
|
6098 |
-
}
|
6099 |
-
|
6100 |
-
@-webkit-keyframes wpr-scroll-animation {
|
6101 |
-
0% {
|
6102 |
-
opacity: 0;
|
6103 |
-
-webkit-transform: translate3d(0, -60%, 0);
|
6104 |
-
transform: translate3d(0, -60%, 0);
|
6105 |
-
}
|
6106 |
-
50% {
|
6107 |
-
opacity: 1;
|
6108 |
-
-webkit-transform: translate3d(0, 20%, 0);
|
6109 |
-
transform: translate3d(0, 20%, 0);
|
6110 |
-
}
|
6111 |
-
100% {
|
6112 |
-
opacity: 0;
|
6113 |
-
-webkit-transform: translate3d(0, 20%, 0);
|
6114 |
-
transform: translate3d(0, 20%, 0);
|
6115 |
-
}
|
6116 |
-
}
|
6117 |
-
|
6118 |
-
@keyframes wpr-scroll-animation {
|
6119 |
-
0% {
|
6120 |
-
opacity: 0;
|
6121 |
-
-webkit-transform: translate3d(0, -60%, 0);
|
6122 |
-
transform: translate3d(0, -60%, 0);
|
6123 |
-
}
|
6124 |
-
50% {
|
6125 |
-
opacity: 1;
|
6126 |
-
-webkit-transform: translate3d(0, 20%, 0);
|
6127 |
-
transform: translate3d(0, 20%, 0);
|
6128 |
-
}
|
6129 |
-
100% {
|
6130 |
-
opacity: 0;
|
6131 |
-
-webkit-transform: translate3d(0, 20%, 0);
|
6132 |
-
transform: translate3d(0, 20%, 0);
|
6133 |
-
}
|
6134 |
-
}
|
6135 |
-
|
6136 |
-
.wpr-scroll-animation {
|
6137 |
-
-webkit-animation-name: wpr-scroll-animation;
|
6138 |
-
animation-name: wpr-scroll-animation;
|
6139 |
-
-webkit-animation-duration: 1300ms;
|
6140 |
-
animation-duration: 1300ms;
|
6141 |
-
-webkit-animation-iteration-count: infinite;
|
6142 |
-
animation-iteration-count: infinite;
|
6143 |
-
}
|
6144 |
-
|
6145 |
-
|
6146 |
-
/* Slider Video */
|
6147 |
-
|
6148 |
-
.wpr-slider-video {
|
6149 |
-
position: absolute;
|
6150 |
-
width: 100%;
|
6151 |
-
height: 100%;
|
6152 |
-
top: 0;
|
6153 |
-
left: 0;
|
6154 |
-
z-index: 90;
|
6155 |
-
}
|
6156 |
-
|
6157 |
-
.wpr-slider-video-btn {
|
6158 |
-
margin: 0 auto;
|
6159 |
-
}
|
6160 |
-
|
6161 |
-
.wpr-slider-video-btn i {
|
6162 |
-
display: block;
|
6163 |
-
}
|
6164 |
-
|
6165 |
-
.wpr-slider-video-icon-size-none .wpr-slider-video-btn {
|
6166 |
-
display: none;
|
6167 |
-
}
|
6168 |
-
|
6169 |
-
.wpr-slider-video-icon-size-small .wpr-slider-video-btn {
|
6170 |
-
height: 50px;
|
6171 |
-
width: 50px;
|
6172 |
-
font-size: 16px;
|
6173 |
-
padding: 16px 0 0 4px;
|
6174 |
-
border-width: 1px;
|
6175 |
-
}
|
6176 |
-
|
6177 |
-
.wpr-slider-video-icon-size-medium .wpr-slider-video-btn {
|
6178 |
-
height: 80px;
|
6179 |
-
width: 80px;
|
6180 |
-
font-size: 26px;
|
6181 |
-
padding: 25px 0 0 5px;
|
6182 |
-
border-width: 2px;
|
6183 |
-
}
|
6184 |
-
|
6185 |
-
.wpr-slider-video-icon-size-large .wpr-slider-video-btn {
|
6186 |
-
height: 100px;
|
6187 |
-
width: 100px;
|
6188 |
-
font-size: 30px;
|
6189 |
-
padding: 33px 0 0 7px;
|
6190 |
-
border-width: 2px;
|
6191 |
-
}
|
6192 |
-
|
6193 |
-
.wpr-slider-video-btn {
|
6194 |
-
text-align: center;
|
6195 |
-
border-style: solid;
|
6196 |
-
border-radius: 50%;
|
6197 |
-
cursor: pointer;
|
6198 |
-
}
|
6199 |
-
|
6200 |
-
|
6201 |
-
/* Slider Overlay */
|
6202 |
-
|
6203 |
-
.wpr-slider-item-overlay {
|
6204 |
-
position: absolute;
|
6205 |
-
left: 0;
|
6206 |
-
top: 0;
|
6207 |
-
width: 100%;
|
6208 |
-
height: 100%;
|
6209 |
-
z-index: 80;
|
6210 |
-
}
|
6211 |
-
|
6212 |
-
|
6213 |
-
/* Slick Slider */
|
6214 |
-
|
6215 |
-
.slick-slider {
|
6216 |
-
position: relative;
|
6217 |
-
display: block;
|
6218 |
-
-webkit-box-sizing: border-box;
|
6219 |
-
box-sizing: border-box;
|
6220 |
-
-webkit-user-select: none;
|
6221 |
-
-moz-user-select: none;
|
6222 |
-
-ms-user-select: none;
|
6223 |
-
user-select: none;
|
6224 |
-
-webkit-touch-callout: none;
|
6225 |
-
-khtml-user-select: none;
|
6226 |
-
-ms-touch-action: pan-y;
|
6227 |
-
touch-action: pan-y;
|
6228 |
-
-webkit-tap-highlight-color: transparent;
|
6229 |
-
}
|
6230 |
-
|
6231 |
-
.slick-list {
|
6232 |
-
position: relative;
|
6233 |
-
display: block;
|
6234 |
-
overflow: hidden;
|
6235 |
-
margin: 0;
|
6236 |
-
padding: 0;
|
6237 |
-
}
|
6238 |
-
|
6239 |
-
.slick-list:focus {
|
6240 |
-
outline: none;
|
6241 |
-
}
|
6242 |
-
|
6243 |
-
.slick-list.dragging {
|
6244 |
-
cursor: pointer;
|
6245 |
-
cursor: hand;
|
6246 |
-
}
|
6247 |
-
|
6248 |
-
.slick-slider .slick-track,
|
6249 |
-
.slick-slider .slick-list {
|
6250 |
-
-webkit-transform: translate3d(0, 0, 0);
|
6251 |
-
-ms-transform: translate3d(0, 0, 0);
|
6252 |
-
transform: translate3d(0, 0, 0);
|
6253 |
-
}
|
6254 |
-
|
6255 |
-
.slick-track {
|
6256 |
-
position: relative;
|
6257 |
-
top: 0;
|
6258 |
-
left: 0;
|
6259 |
-
display: block;
|
6260 |
-
margin-left: auto;
|
6261 |
-
margin-right: auto;
|
6262 |
-
}
|
6263 |
-
|
6264 |
-
.slick-track:before,
|
6265 |
-
.slick-track:after {
|
6266 |
-
display: table;
|
6267 |
-
content: '';
|
6268 |
-
}
|
6269 |
-
|
6270 |
-
.slick-track:after {
|
6271 |
-
clear: both;
|
6272 |
-
}
|
6273 |
-
|
6274 |
-
.slick-loading .slick-track {
|
6275 |
-
visibility: hidden;
|
6276 |
-
}
|
6277 |
-
|
6278 |
-
.slick-slide {
|
6279 |
-
display: none;
|
6280 |
-
float: left;
|
6281 |
-
height: 100%;
|
6282 |
-
min-height: 1px;
|
6283 |
-
}
|
6284 |
-
|
6285 |
-
[dir='rtl'] .slick-slide {
|
6286 |
-
float: right;
|
6287 |
-
}
|
6288 |
-
|
6289 |
-
.slick-slide img {
|
6290 |
-
display: block;
|
6291 |
-
}
|
6292 |
-
|
6293 |
-
.slick-slide.slick-loading img {
|
6294 |
-
display: none;
|
6295 |
-
}
|
6296 |
-
|
6297 |
-
.slick-slide.dragging img {
|
6298 |
-
pointer-events: none;
|
6299 |
-
}
|
6300 |
-
|
6301 |
-
.slick-initialized .slick-slide {
|
6302 |
-
display: block;
|
6303 |
-
}
|
6304 |
-
|
6305 |
-
.slick-loading .slick-slide {
|
6306 |
-
visibility: hidden;
|
6307 |
-
}
|
6308 |
-
|
6309 |
-
.slick-vertical .slick-slide {
|
6310 |
-
display: block;
|
6311 |
-
height: auto;
|
6312 |
-
border: 1px solid transparent;
|
6313 |
-
}
|
6314 |
-
|
6315 |
-
.slick-arrow.slick-hidden {
|
6316 |
-
display: none;
|
6317 |
-
}
|
6318 |
-
|
6319 |
-
|
6320 |
-
/*--------------------------------------------------------------
|
6321 |
-
== Pricing Table
|
6322 |
-
--------------------------------------------------------------*/
|
6323 |
-
|
6324 |
-
.wpr-pricing-table {
|
6325 |
-
position: relative;
|
6326 |
-
}
|
6327 |
-
|
6328 |
-
|
6329 |
-
/* Heading */
|
6330 |
-
|
6331 |
-
.wpr-pricing-table-heading {
|
6332 |
-
text-align: center;
|
6333 |
-
}
|
6334 |
-
|
6335 |
-
.wpr-pricing-table-headding-inner {
|
6336 |
-
display: inline-block;
|
6337 |
-
}
|
6338 |
-
|
6339 |
-
.wpr-pricing-table-heading-left .wpr-pricing-table-headding-inner>div,
|
6340 |
-
.wpr-pricing-table-heading-right .wpr-pricing-table-headding-inner>div {
|
6341 |
-
display: inline-block;
|
6342 |
-
vertical-align: top;
|
6343 |
-
}
|
6344 |
-
|
6345 |
-
.wpr-pricing-table-heading-left .wpr-pricing-table-icon {
|
6346 |
-
float: left;
|
6347 |
-
}
|
6348 |
-
|
6349 |
-
.wpr-pricing-table-heading-right .wpr-pricing-table-icon {
|
6350 |
-
float: right;
|
6351 |
-
}
|
6352 |
-
|
6353 |
-
.wpr-pricing-table-heading-left .wpr-pricing-table-title-wrap,
|
6354 |
-
.wpr-pricing-table-heading-right .wpr-pricing-table-title-wrap {
|
6355 |
-
text-align: left;
|
6356 |
-
}
|
6357 |
-
|
6358 |
-
.wpr-pricing-table-heading-center .wpr-pricing-table-icon img {
|
6359 |
-
margin: 0 auto;
|
6360 |
-
}
|
6361 |
-
|
6362 |
-
.wpr-pricing-table-icon img {
|
6363 |
-
display: block;
|
6364 |
-
border-style: none;
|
6365 |
-
}
|
6366 |
-
|
6367 |
-
.elementor-widget-wpr-pricing-table .wpr-pricing-table-title-wrap .wpr-pricing-table-title {
|
6368 |
-
font-size: 26px;
|
6369 |
-
font-weight: 600;
|
6370 |
-
}
|
6371 |
-
|
6372 |
-
.elementor-widget-wpr-pricing-table .wpr-pricing-table-title-wrap .wpr-pricing-table-sub-title {
|
6373 |
-
font-size: 14px;
|
6374 |
-
}
|
6375 |
-
|
6376 |
-
.wpr-pricing-table-price {
|
6377 |
-
text-align: center;
|
6378 |
-
font-size: 65px;
|
6379 |
-
font-weight: 500;
|
6380 |
-
line-height: 0.9;
|
6381 |
-
}
|
6382 |
-
|
6383 |
-
.wpr-pricing-table-price-inner {
|
6384 |
-
-ms-box-orient: horizontal;
|
6385 |
-
display: -webkit-box;
|
6386 |
-
display: -ms-flexbox;
|
6387 |
-
display: -moz-flex;
|
6388 |
-
display: flex;
|
6389 |
-
-webkit-box-pack: center;
|
6390 |
-
-ms-flex-pack: center;
|
6391 |
-
justify-content: center;
|
6392 |
-
}
|
6393 |
-
|
6394 |
-
.wpr-pricing-table-sub-price,
|
6395 |
-
.wpr-pricing-table-currency,
|
6396 |
-
.wpr-pricing-table-old-price,
|
6397 |
-
.wpr-pricing-table-preiod {
|
6398 |
-
line-height: 1;
|
6399 |
-
}
|
6400 |
-
|
6401 |
-
.wpr-pricing-table-preiod {
|
6402 |
-
font-size: 17px;
|
6403 |
-
line-height: 1.5;
|
6404 |
-
-webkit-align-self: flex-end;
|
6405 |
-
-ms-flex-item-align: end;
|
6406 |
-
align-self: flex-end;
|
6407 |
-
}
|
6408 |
-
|
6409 |
-
.wpr-pricing-table-old-price {
|
6410 |
-
text-decoration: line-through !important;
|
6411 |
-
}
|
6412 |
-
|
6413 |
-
|
6414 |
-
/* Feature */
|
6415 |
-
|
6416 |
-
.wpr-pricing-table-feature {
|
6417 |
-
position: relative;
|
6418 |
-
font-size: 15px;
|
6419 |
-
}
|
6420 |
-
|
6421 |
-
.wpr-pricing-table-feature-inner {
|
6422 |
-
display: -webkit-box;
|
6423 |
-
display: -ms-flexbox;
|
6424 |
-
display: flex;
|
6425 |
-
-webkit-box-align: center;
|
6426 |
-
-ms-flex-align: center;
|
6427 |
-
align-items: center;
|
6428 |
-
margin: 0 auto;
|
6429 |
-
}
|
6430 |
-
|
6431 |
-
.wpr-pricing-table-feature-inner span {
|
6432 |
-
position: relative;
|
6433 |
-
}
|
6434 |
-
|
6435 |
-
.wpr-pricing-table-feature-inner span.wpr-pricing-table-ftext-line-yes {
|
6436 |
-
text-decoration: line-through;
|
6437 |
-
}
|
6438 |
-
|
6439 |
-
.wpr-pricing-table-feature:after {
|
6440 |
-
content: "";
|
6441 |
-
display: block;
|
6442 |
-
width: 100%;
|
6443 |
-
margin: 0 auto;
|
6444 |
-
}
|
6445 |
-
|
6446 |
-
.wpr-pricing-table section:last-of-type:after {
|
6447 |
-
display: none;
|
6448 |
-
}
|
6449 |
-
|
6450 |
-
.wpr-pricing-table-feature-text,
|
6451 |
-
.wpr-pricing-table-feature-icon {
|
6452 |
-
display: inline;
|
6453 |
-
}
|
6454 |
-
|
6455 |
-
.wpr-pricing-table-feature-icon {
|
6456 |
-
margin-right: 8px;
|
6457 |
-
}
|
6458 |
-
|
6459 |
-
.wpr-pricing-table-feature-tooltip {
|
6460 |
-
position: absolute;
|
6461 |
-
top: 0;
|
6462 |
-
left: 50%;
|
6463 |
-
border-radius: 4px;
|
6464 |
-
padding: 6px 10px;
|
6465 |
-
visibility: hidden;
|
6466 |
-
opacity: 0;
|
6467 |
-
font-size: 15px;
|
6468 |
-
-webkit-transform: translate(-50%, -100%);
|
6469 |
-
-ms-transform: translate(-50%, -100%);
|
6470 |
-
transform: translate(-50%, -100%);
|
6471 |
-
-webkit-transition: all 230ms ease-in-out 0s;
|
6472 |
-
-o-transition: all 230ms ease-in-out 0s;
|
6473 |
-
transition: all 230ms ease-in-out 0s;
|
6474 |
-
text-align: center;
|
6475 |
-
}
|
6476 |
-
|
6477 |
-
.wpr-pricing-table-feature-tooltip:before {
|
6478 |
-
content: "";
|
6479 |
-
position: absolute;
|
6480 |
-
left: 10px;
|
6481 |
-
bottom: -5px;
|
6482 |
-
width: 0;
|
6483 |
-
height: 0;
|
6484 |
-
border-left: 6px solid transparent;
|
6485 |
-
border-right: 6px solid transparent;
|
6486 |
-
border-top-style: solid;
|
6487 |
-
border-top-width: 6px;
|
6488 |
-
}
|
6489 |
-
|
6490 |
-
.wpr-pricing-table-feature:hover .wpr-pricing-table-feature-tooltip {
|
6491 |
-
visibility: visible;
|
6492 |
-
opacity: 1;
|
6493 |
-
top: 5px;
|
6494 |
-
-ms-transform: translate(-50%, -100%);
|
6495 |
-
transform: translate(-50%, -100%);
|
6496 |
-
-webkit-transform: translate(-50%, -100%);
|
6497 |
-
}
|
6498 |
-
|
6499 |
-
.wpr-pricing-table-feature-tooltip:before {
|
6500 |
-
left: 50%;
|
6501 |
-
-ms-transform: translateX(-50%);
|
6502 |
-
transform: translateX(-50%);
|
6503 |
-
-webkit-transform: translateX(-50%) !important;
|
6504 |
-
}
|
6505 |
-
|
6506 |
-
|
6507 |
-
/* Button */
|
6508 |
-
|
6509 |
-
.wpr-pricing-table-button {
|
6510 |
-
text-align: center;
|
6511 |
-
font-size: 17px;
|
6512 |
-
}
|
6513 |
-
|
6514 |
-
.wpr-pricing-table-btn {
|
6515 |
-
position: relative;
|
6516 |
-
overflow: hidden;
|
6517 |
-
display: inline-block;
|
6518 |
-
vertical-align: middle;
|
6519 |
-
cursor: pointer;
|
6520 |
-
}
|
6521 |
-
|
6522 |
-
.wpr-pricing-table-btn span {
|
6523 |
-
position: relative;
|
6524 |
-
z-index: 2;
|
6525 |
-
opacity: 1 !important;
|
6526 |
-
}
|
6527 |
-
|
6528 |
-
.wpr-pricing-table-btn:before,
|
6529 |
-
.wpr-pricing-table-btn:after {
|
6530 |
-
z-index: 1 !important;
|
6531 |
-
}
|
6532 |
-
|
6533 |
-
|
6534 |
-
/* Badge */
|
6535 |
-
|
6536 |
-
.wpr-pricing-table-badge {
|
6537 |
-
position: absolute;
|
6538 |
-
display: inline-block;
|
6539 |
-
text-align: center;
|
6540 |
-
z-index: 2;
|
6541 |
-
}
|
6542 |
-
|
6543 |
-
.elementor-widget-wpr-pricing-table .wpr-pricing-table-badge .wpr-pricing-table-badge-inner {
|
6544 |
-
font-size: 15px;
|
6545 |
-
font-weight: 900;
|
6546 |
-
}
|
6547 |
-
|
6548 |
-
.wpr-pricing-table-badge-left {
|
6549 |
-
left: 0;
|
6550 |
-
right: auto;
|
6551 |
-
}
|
6552 |
-
|
6553 |
-
.wpr-pricing-table-badge-right {
|
6554 |
-
left: auto;
|
6555 |
-
right: 0;
|
6556 |
-
}
|
6557 |
-
|
6558 |
-
.wpr-pricing-table-badge-corner {
|
6559 |
-
top: 0;
|
6560 |
-
width: 200px;
|
6561 |
-
height: 200px;
|
6562 |
-
overflow: hidden;
|
6563 |
-
}
|
6564 |
-
|
6565 |
-
.wpr-pricing-table-badge-corner .wpr-pricing-table-badge-inner {
|
6566 |
-
width: 200%;
|
6567 |
-
}
|
6568 |
-
|
6569 |
-
.wpr-pricing-table-badge-corner.wpr-pricing-table-badge-right {
|
6570 |
-
-ms-transform: rotate(90deg);
|
6571 |
-
transform: rotate(90deg);
|
6572 |
-
-webkit-transform: rotate(90deg);
|
6573 |
-
}
|
6574 |
-
|
6575 |
-
.wpr-pricing-table-badge-cyrcle {
|
6576 |
-
top: 0;
|
6577 |
-
}
|
6578 |
-
|
6579 |
-
.wpr-pricing-table-badge-cyrcle .wpr-pricing-table-badge-inner {
|
6580 |
-
border-radius: 100%;
|
6581 |
-
}
|
6582 |
-
|
6583 |
-
.wpr-pricing-table-badge-flag {
|
6584 |
-
border-right: 5px;
|
6585 |
-
}
|
6586 |
-
|
6587 |
-
.wpr-pricing-table-badge-flag.wpr-pricing-table-badge-left {
|
6588 |
-
margin-left: -10px;
|
6589 |
-
}
|
6590 |
-
|
6591 |
-
.wpr-pricing-table-badge-flag.wpr-pricing-table-badge-right {
|
6592 |
-
margin-right: -10px;
|
6593 |
-
}
|
6594 |
-
|
6595 |
-
.wpr-pricing-table-badge-flag:before {
|
6596 |
-
content: "";
|
6597 |
-
position: absolute;
|
6598 |
-
z-index: 1;
|
6599 |
-
bottom: -5px;
|
6600 |
-
width: 0;
|
6601 |
-
height: 0;
|
6602 |
-
margin-left: -10px;
|
6603 |
-
border-left: 10px solid transparent;
|
6604 |
-
border-right: 10px solid transparent;
|
6605 |
-
border-top-style: solid;
|
6606 |
-
border-top-width: 10px;
|
6607 |
-
}
|
6608 |
-
|
6609 |
-
.wpr-pricing-table-badge-flag .wpr-pricing-table-badge-inner {
|
6610 |
-
position: relative;
|
6611 |
-
z-index: 2;
|
6612 |
-
border-top-left-radius: 3px;
|
6613 |
-
border-top-right-radius: 3px;
|
6614 |
-
}
|
6615 |
-
|
6616 |
-
.wpr-pricing-table-badge-flag.wpr-pricing-table-badge-left:before {
|
6617 |
-
left: 5px;
|
6618 |
-
-ms-transform: rotate(90deg);
|
6619 |
-
transform: rotate(90deg);
|
6620 |
-
-webkit-transform: rotate(90deg);
|
6621 |
-
}
|
6622 |
-
|
6623 |
-
.wpr-pricing-table-badge-flag.wpr-pricing-table-badge-right:before {
|
6624 |
-
right: -5px;
|
6625 |
-
-ms-transform: rotate(-90deg);
|
6626 |
-
transform: rotate(-90deg);
|
6627 |
-
-webkit-transform: rotate(-90deg);
|
6628 |
-
}
|
6629 |
-
|
6630 |
-
.wpr-pricing-table-badge-flag.wpr-pricing-table-badge-left .wpr-pricing-table-badge-inner {
|
6631 |
-
border-bottom-right-radius: 3px;
|
6632 |
-
}
|
6633 |
-
|
6634 |
-
.wpr-pricing-table-badge-flag.wpr-pricing-table-badge-right .wpr-pricing-table-badge-inner {
|
6635 |
-
border-bottom-left-radius: 3px;
|
6636 |
-
}
|
6637 |
-
|
6638 |
-
|
6639 |
-
/* Text */
|
6640 |
-
.wpr-pricing-table-text {
|
6641 |
-
font-size: 13px;
|
6642 |
-
line-height: 1.3;
|
6643 |
-
}
|
6644 |
-
|
6645 |
-
|
6646 |
-
/* Divider */
|
6647 |
-
.wpr-pricing-table-divider {
|
6648 |
-
margin: 0 auto;
|
6649 |
-
border: 0;
|
6650 |
-
}
|
6651 |
-
|
6652 |
-
|
6653 |
-
/* Animation */
|
6654 |
-
.wpr-pricing-table-animation-slide {
|
6655 |
-
-webkit-transition-property: margin;
|
6656 |
-
-o-transition-property: margin;
|
6657 |
-
transition-property: margin;
|
6658 |
-
-webkit-transition-timing-function: ease-in-out;
|
6659 |
-
-o-transition-timing-function: ease-in-out;
|
6660 |
-
transition-timing-function: ease-in-out;
|
6661 |
-
}
|
6662 |
-
|
6663 |
-
.wpr-pricing-table-animation-bounce {
|
6664 |
-
-webkit-animation-iteration-count: 1;
|
6665 |
-
animation-iteration-count: 1;
|
6666 |
-
}
|
6667 |
-
|
6668 |
-
.wpr-pricing-table-animation-slide:hover {
|
6669 |
-
margin-top: -5px;
|
6670 |
-
}
|
6671 |
-
|
6672 |
-
.wpr-pricing-table-animation-bounce:hover {
|
6673 |
-
-webkit-animation-name: bounce;
|
6674 |
-
animation-name: bounce;
|
6675 |
-
}
|
6676 |
-
|
6677 |
-
|
6678 |
-
/* Defaults */
|
6679 |
-
|
6680 |
-
.elementor-widget-wpr-pricing-table .wpr-pricing-table-heading {
|
6681 |
-
background-color: #f9f9f9;
|
6682 |
-
}
|
6683 |
-
|
6684 |
-
.elementor-widget-wpr-pricing-table .wpr-pricing-table-price {
|
6685 |
-
background-color: #605be5;
|
6686 |
-
}
|
6687 |
-
|
6688 |
-
.elementor-widget-wpr-pricing-table .wpr-pricing-table-button {
|
6689 |
-
background-color: #f9f9f9;
|
6690 |
-
}
|
6691 |
-
|
6692 |
-
.elementor-widget-wpr-pricing-table .wpr-pricing-table-btn {
|
6693 |
-
background-color: #2B2B2B;
|
6694 |
-
}
|
6695 |
-
|
6696 |
-
.elementor-widget-wpr-pricing-table .wpr-pricing-table-btn:hover {
|
6697 |
-
background-color: #4A45D2;
|
6698 |
-
}
|
6699 |
-
|
6700 |
-
.elementor-widget-wpr-pricing-table .wpr-pricing-table-text {
|
6701 |
-
background-color: #f9f9f9;
|
6702 |
-
}
|
6703 |
-
|
6704 |
-
|
6705 |
-
/*--------------------------------------------------------------
|
6706 |
-
== Logo
|
6707 |
-
--------------------------------------------------------------*/
|
6708 |
-
|
6709 |
-
.wpr-logo {
|
6710 |
-
position: relative;
|
6711 |
-
display: inline-table;
|
6712 |
-
overflow: hidden;
|
6713 |
-
}
|
6714 |
-
|
6715 |
-
.wpr-logo-image img {
|
6716 |
-
display: block;
|
6717 |
-
}
|
6718 |
-
|
6719 |
-
.wpr-logo-description {
|
6720 |
-
margin: 0;
|
6721 |
-
}
|
6722 |
-
|
6723 |
-
.wpr-logo-image,
|
6724 |
-
.wpr-logo-text {
|
6725 |
-
position: relative;
|
6726 |
-
display: block;
|
6727 |
-
width: 100%;
|
6728 |
-
z-index: 7;
|
6729 |
-
}
|
6730 |
-
|
6731 |
-
.wpr-logo-url {
|
6732 |
-
position: absolute;
|
6733 |
-
display: block;
|
6734 |
-
width: 100%;
|
6735 |
-
height: 100%;
|
6736 |
-
top: 0;
|
6737 |
-
left: 0;
|
6738 |
-
z-index: 5;
|
6739 |
-
}
|
6740 |
-
|
6741 |
-
.wpr-logo-position-left .wpr-logo-image,
|
6742 |
-
.wpr-logo-position-left .wpr-logo-text {
|
6743 |
-
float: left;
|
6744 |
-
}
|
6745 |
-
|
6746 |
-
.wpr-logo-position-right .wpr-logo-image,
|
6747 |
-
.wpr-logo-position-right .wpr-logo-text {
|
6748 |
-
float: right;
|
6749 |
-
}
|
6750 |
-
|
6751 |
-
.wpr-logo-position-center .wpr-logo-image {
|
6752 |
-
margin: 0 auto;
|
6753 |
-
}
|
6754 |
-
|
6755 |
-
.wpr-logo-position-center .wpr-logo-text {
|
6756 |
-
text-align: center;
|
6757 |
-
}
|
6758 |
-
|
6759 |
-
.wpr-logo-position-left .wpr-logo-text,
|
6760 |
-
.wpr-logo-position-right .wpr-logo-text {
|
6761 |
-
text-align: left;
|
6762 |
-
}
|
6763 |
-
|
6764 |
-
|
6765 |
-
/* Defaults */
|
6766 |
-
|
6767 |
-
.elementor-widget-wpr-logo .wpr-logo-title {
|
6768 |
-
font-size: 16px;
|
6769 |
-
line-height: 1.5;
|
6770 |
-
}
|
6771 |
-
|
6772 |
-
.elementor-widget-wpr-logo .wpr-logo-description {
|
6773 |
-
font-size: 13px;
|
6774 |
-
}
|
6775 |
-
|
6776 |
-
|
6777 |
-
/*--------------------------------------------------------------
|
6778 |
-
== Testimonial
|
6779 |
-
--------------------------------------------------------------*/
|
6780 |
-
|
6781 |
-
.wpr-testimonial-carousel .slick-slider {
|
6782 |
-
cursor: drag;
|
6783 |
-
}
|
6784 |
-
|
6785 |
-
.wpr-testimonial-carousel .slick-track {
|
6786 |
-
display: -webkit-box !important;
|
6787 |
-
display: flex !important;
|
6788 |
-
display: -ms-flexbox !important;
|
6789 |
-
}
|
6790 |
-
|
6791 |
-
.wpr-testimonial-carousel .slick-slide {
|
6792 |
-
height: inherit !important;
|
6793 |
-
}
|
6794 |
-
|
6795 |
-
.wpr-testimonial-carousel-wrap .slick-list {
|
6796 |
-
padding-right: 1px !important;
|
6797 |
-
}
|
6798 |
-
|
6799 |
-
|
6800 |
-
/* Testimonial Navigation */
|
6801 |
-
.wpr-testimonial-nav-position-default .wpr-testimonial-arrow-container {
|
6802 |
-
position: absolute;
|
6803 |
-
display: -webkit-box;
|
6804 |
-
display: -ms-flexbox;
|
6805 |
-
display: flex;
|
6806 |
-
}
|
6807 |
-
|
6808 |
-
.wpr-testimonial-nav-position-default .wpr-testimonial-arrow {
|
6809 |
-
position: static;
|
6810 |
-
}
|
6811 |
-
|
6812 |
-
.wpr-testimonial-nav-position-default .wpr-testimonial-prev-arrow {
|
6813 |
-
-ms-transform: none;
|
6814 |
-
transform: none;
|
6815 |
-
-webkit-transform: none;
|
6816 |
-
}
|
6817 |
-
|
6818 |
-
.wpr-testimonial-nav-position-default .wpr-testimonial-next-arrow {
|
6819 |
-
-ms-transform: translateY(0) rotate(180deg);
|
6820 |
-
transform: translateY(0) rotate(180deg);
|
6821 |
-
-webkit-transform: translateY(0) rotate(180deg);
|
6822 |
-
}
|
6823 |
-
|
6824 |
-
.wpr-testimonial-nav-align-top-center .wpr-testimonial-arrow-container,
|
6825 |
-
.wpr-testimonial-nav-align-bottom-center .wpr-testimonial-arrow-container {
|
6826 |
-
left: 50%;
|
6827 |
-
-webkit-transform: translateX(-50%);
|
6828 |
-
-ms-transform: translateX(-50%);
|
6829 |
-
transform: translateX(-50%);
|
6830 |
-
}
|
6831 |
-
|
6832 |
-
.wpr-testimonial-arrow {
|
6833 |
-
position: absolute;
|
6834 |
-
z-index: 120;
|
6835 |
-
top: 52%;
|
6836 |
-
-webkit-box-sizing: content-box;
|
6837 |
-
box-sizing: content-box;
|
6838 |
-
-webkit-box-align: center;
|
6839 |
-
-ms-flex-align: center;
|
6840 |
-
align-items: center;
|
6841 |
-
-webkit-box-pack: center;
|
6842 |
-
-ms-flex-pack: center;
|
6843 |
-
justify-content: center;
|
6844 |
-
text-align: center;
|
6845 |
-
-webkit-transition: all .5s;
|
6846 |
-
-o-transition: all .5s;
|
6847 |
-
transition: all .5s;
|
6848 |
-
cursor: pointer;
|
6849 |
-
}
|
6850 |
-
|
6851 |
-
.wpr-testimonial-arrow i {
|
6852 |
-
display: block;
|
6853 |
-
line-height: inherit;
|
6854 |
-
}
|
6855 |
-
|
6856 |
-
.wpr-testimonial-prev-arrow {
|
6857 |
-
left: 2%;
|
6858 |
-
-webkit-transform: translateY(-50%);
|
6859 |
-
-ms-transform: translateY(-50%);
|
6860 |
-
transform: translateY(-50%);
|
6861 |
-
}
|
6862 |
-
|
6863 |
-
.wpr-testimonial-next-arrow {
|
6864 |
-
right: 2%;
|
6865 |
-
-webkit-transform: translateY(-50%) rotate(180deg);
|
6866 |
-
-ms-transform: translateY(-50%) rotate(180deg);
|
6867 |
-
transform: translateY(-50%) rotate(180deg);
|
6868 |
-
}
|
6869 |
-
|
6870 |
-
.wpr-testimonial-nav-fade .wpr-testimonial-arrow {
|
6871 |
-
opacity: 0;
|
6872 |
-
}
|
6873 |
-
|
6874 |
-
|
6875 |
-
/* Testimonial Pagination */
|
6876 |
-
|
6877 |
-
.wpr-testimonial-dots {
|
6878 |
-
display: inline-table;
|
6879 |
-
position: absolute;
|
6880 |
-
z-index: 110;
|
6881 |
-
left: 50%;
|
6882 |
-
-webkit-transform: translate(-50%, -50%);
|
6883 |
-
-ms-transform: translate(-50%, -50%);
|
6884 |
-
transform: translate(-50%, -50%);
|
6885 |
-
}
|
6886 |
-
|
6887 |
-
.wpr-testimonial-dots ul {
|
6888 |
-
list-style: none;
|
6889 |
-
padding: 0;
|
6890 |
-
margin: 0;
|
6891 |
-
}
|
6892 |
-
|
6893 |
-
.wpr-testimonial-dots li {
|
6894 |
-
float: left;
|
6895 |
-
width: auto !important;
|
6896 |
-
margin: 0 !important;
|
6897 |
-
}
|
6898 |
-
|
6899 |
-
.wpr-testimonial-dot {
|
6900 |
-
display: block;
|
6901 |
-
cursor: pointer;
|
6902 |
-
}
|
6903 |
-
|
6904 |
-
.wpr-testimonial-dots li:last-child .wpr-testimonial-dot {
|
6905 |
-
margin: 0 !important;
|
6906 |
-
}
|
6907 |
-
|
6908 |
-
|
6909 |
-
/* Social Media */
|
6910 |
-
|
6911 |
-
.wpr-testimonial-social-media {
|
6912 |
-
display: inline-block;
|
6913 |
-
}
|
6914 |
-
|
6915 |
-
.wpr-testimonial-social {
|
6916 |
-
display: block;
|
6917 |
-
float: left;
|
6918 |
-
width: 45px;
|
6919 |
-
height: 45px;
|
6920 |
-
line-height: 45px;
|
6921 |
-
font-size: 45px;
|
6922 |
-
-webkit-box-sizing: content-box;
|
6923 |
-
box-sizing: content-box;
|
6924 |
-
text-align: center;
|
6925 |
-
-webkit-transition: all .5s;
|
6926 |
-
-o-transition: all .5s;
|
6927 |
-
transition: all .5s;
|
6928 |
-
cursor: pointer;
|
6929 |
-
}
|
6930 |
-
|
6931 |
-
.wpr-testimonial-social i {
|
6932 |
-
display: block;
|
6933 |
-
width: 100%;
|
6934 |
-
height: 100%;
|
6935 |
-
line-height: inherit;
|
6936 |
-
}
|
6937 |
-
|
6938 |
-
.wpr-testimonial-social:last-child {
|
6939 |
-
margin-right: 0 !important;
|
6940 |
-
}
|
6941 |
-
|
6942 |
-
|
6943 |
-
/* Rating */
|
6944 |
-
|
6945 |
-
.wpr-testimonial-rating i {
|
6946 |
-
display: inline;
|
6947 |
-
position: relative;
|
6948 |
-
font-family: "eicons";
|
6949 |
-
font-style: normal;
|
6950 |
-
line-height: 1;
|
6951 |
-
overflow: hidden;
|
6952 |
-
}
|
6953 |
-
|
6954 |
-
.wpr-testimonial-rating i:before {
|
6955 |
-
content: '\e934';
|
6956 |
-
font-weight: 900;
|
6957 |
-
display: block;
|
6958 |
-
position: absolute;
|
6959 |
-
top: 0;
|
6960 |
-
left: 0;
|
6961 |
-
font-size: inherit;
|
6962 |
-
font-family: inherit;
|
6963 |
-
overflow: hidden;
|
6964 |
-
}
|
6965 |
-
|
6966 |
-
.wpr-testimonial-rating-style_2 .wpr-testimonial-rating i:before {
|
6967 |
-
content: '\002605';
|
6968 |
-
}
|
6969 |
-
|
6970 |
-
.wpr-testimonial-rating i:last-of-type {
|
6971 |
-
margin-right: 0 !important;
|
6972 |
-
}
|
6973 |
-
|
6974 |
-
.wpr-rating-icon-empty:before {
|
6975 |
-
display: none !important;
|
6976 |
-
}
|
6977 |
-
|
6978 |
-
|
6979 |
-
/* Content */
|
6980 |
-
|
6981 |
-
.elementor-widget-wpr-testimonial-carousel .wpr-testimonial-content-wrap .wpr-testimonial-title {
|
6982 |
-
font-size: 18px;
|
6983 |
-
font-weight: 700;
|
6984 |
-
}
|
6985 |
-
|
6986 |
-
.wpr-testimonial-content {
|
6987 |
-
position: relative;
|
6988 |
-
font-size: 15px;
|
6989 |
-
}
|
6990 |
-
|
6991 |
-
.wpr-testimonial-content p {
|
6992 |
-
position: relative;
|
6993 |
-
z-index: 5;
|
6994 |
-
margin: 0;
|
6995 |
-
}
|
6996 |
-
|
6997 |
-
|
6998 |
-
/* Icon */
|
6999 |
-
|
7000 |
-
.wpr-testimonial-content .wpr-testimonial-icon {
|
7001 |
-
position: absolute;
|
7002 |
-
width: 100%;
|
7003 |
-
z-index: 1;
|
7004 |
-
}
|
7005 |
-
|
7006 |
-
.wpr-testimonial-date {
|
7007 |
-
font-size: 10px;
|
7008 |
-
}
|
7009 |
-
|
7010 |
-
|
7011 |
-
/* Triangle */
|
7012 |
-
.wpr-testimonial-content-inner {
|
7013 |
-
position: relative;
|
7014 |
-
background-color: #f9f9f9;
|
7015 |
-
}
|
7016 |
-
|
7017 |
-
.wpr-testimonial-triangle-yes .wpr-testimonial-content-inner:before {
|
7018 |
-
content: "";
|
7019 |
-
position: absolute;
|
7020 |
-
width: 0;
|
7021 |
-
height: 0;
|
7022 |
-
border-left: 15px solid transparent;
|
7023 |
-
border-right: 15px solid transparent;
|
7024 |
-
border-top-style: solid;
|
7025 |
-
border-top-width: 15px;
|
7026 |
-
}
|
7027 |
-
|
7028 |
-
.wpr-testimonial-meta-position-top.wpr-testimonial-meta-align-center .wpr-testimonial-content-inner:before,
|
7029 |
-
.wpr-testimonial-meta-position-bottom.wpr-testimonial-meta-align-center .wpr-testimonial-content-inner:before {
|
7030 |
-
right: calc( 50% - 15px);
|
7031 |
-
}
|
7032 |
-
|
7033 |
-
.wpr-testimonial-meta-position-top.wpr-testimonial-meta-align-left .wpr-testimonial-content-inner:before,
|
7034 |
-
.wpr-testimonial-meta-position-bottom.wpr-testimonial-meta-align-left .wpr-testimonial-content-inner:before {
|
7035 |
-
margin-left: -15px;
|
7036 |
-
}
|
7037 |
-
|
7038 |
-
.wpr-testimonial-meta-position-top.wpr-testimonial-meta-align-right .wpr-testimonial-content-inner:before,
|
7039 |
-
.wpr-testimonial-meta-position-bottom.wpr-testimonial-meta-align-right .wpr-testimonial-content-inner:before {
|
7040 |
-
margin-right: -15px;
|
7041 |
-
}
|
7042 |
-
|
7043 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-content-inner:before,
|
7044 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-content-inner:before {
|
7045 |
-
margin-top: -7.5px;
|
7046 |
-
}
|
7047 |
-
|
7048 |
-
.wpr-testimonial-meta-position-top .wpr-testimonial-content-inner:before {
|
7049 |
-
-webkit-transform: rotate(180deg);
|
7050 |
-
-ms-transform: rotate(180deg);
|
7051 |
-
transform: rotate(180deg);
|
7052 |
-
}
|
7053 |
-
|
7054 |
-
.wpr-testimonial-meta-position-top .wpr-testimonial-content-inner {
|
7055 |
-
margin-top: 15px;
|
7056 |
-
}
|
7057 |
-
|
7058 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-content-inner:before {
|
7059 |
-
-webkit-transform: rotate(-90deg);
|
7060 |
-
-ms-transform: rotate(-90deg);
|
7061 |
-
transform: rotate(-90deg);
|
7062 |
-
}
|
7063 |
-
|
7064 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-content-inner {
|
7065 |
-
margin-right: 15px;
|
7066 |
-
}
|
7067 |
-
|
7068 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-content-inner:before {
|
7069 |
-
-webkit-transform: rotate(90deg);
|
7070 |
-
-ms-transform: rotate(90deg);
|
7071 |
-
transform: rotate(90deg);
|
7072 |
-
}
|
7073 |
-
|
7074 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-content-inner {
|
7075 |
-
margin-left: 15px;
|
7076 |
-
}
|
7077 |
-
|
7078 |
-
.wpr-testimonial-meta-position-bottom .wpr-testimonial-content-inner:before {
|
7079 |
-
bottom: -15px;
|
7080 |
-
}
|
7081 |
-
|
7082 |
-
.wpr-testimonial-meta-position-bottom .wpr-testimonial-content-inner {
|
7083 |
-
margin-bottom: 15px;
|
7084 |
-
}
|
7085 |
-
|
7086 |
-
.wpr-testimonial-meta-position-extra .wpr-testimonial-content-inner:before {
|
7087 |
-
display: none;
|
7088 |
-
}
|
7089 |
-
|
7090 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-content-inner:before {
|
7091 |
-
left: -22px;
|
7092 |
-
}
|
7093 |
-
|
7094 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-content-inner:before {
|
7095 |
-
right: -22px;
|
7096 |
-
}
|
7097 |
-
|
7098 |
-
.wpr-testimonial-meta-position-top .wpr-testimonial-content-inner:before {
|
7099 |
-
top: -15px;
|
7100 |
-
}
|
7101 |
-
|
7102 |
-
.wpr-testimonial-meta-position-bottom .wpr-testimonial-content-inner:before {
|
7103 |
-
bottom: -15px;
|
7104 |
-
}
|
7105 |
-
|
7106 |
-
|
7107 |
-
/* Meta */
|
7108 |
-
|
7109 |
-
.wpr-testimonial-image {
|
7110 |
-
overflow: hidden;
|
7111 |
-
}
|
7112 |
-
|
7113 |
-
.elementor-widget-wpr-testimonial-carousel .wpr-testimonial-meta .wpr-testimonial-name {
|
7114 |
-
font-size: 14px;
|
7115 |
-
font-weight: 700;
|
7116 |
-
}
|
7117 |
-
|
7118 |
-
.wpr-testimonial-logo-image {
|
7119 |
-
display: block;
|
7120 |
-
overflow: hidden;
|
7121 |
-
}
|
7122 |
-
|
7123 |
-
|
7124 |
-
/* Meta Position */
|
7125 |
-
|
7126 |
-
.wpr-testimonial-item {
|
7127 |
-
display: -webkit-box !important;
|
7128 |
-
display: -ms-flexbox !important;
|
7129 |
-
display: flex !important;
|
7130 |
-
-webkit-box-pack: start;
|
7131 |
-
-ms-flex-pack: start;
|
7132 |
-
justify-content: flex-start;
|
7133 |
-
}
|
7134 |
-
|
7135 |
-
.wpr-testimonial-meta-position-extra .wpr-testimonial-item {
|
7136 |
-
-webkit-box-orient: vertical;
|
7137 |
-
-webkit-box-direction: normal;
|
7138 |
-
-ms-flex-direction: column;
|
7139 |
-
flex-direction: column;
|
7140 |
-
}
|
7141 |
-
|
7142 |
-
.wpr-testimonial-meta-position-top .wpr-testimonial-item {
|
7143 |
-
-webkit-box-orient: vertical;
|
7144 |
-
-webkit-box-direction: normal;
|
7145 |
-
-ms-flex-direction: column;
|
7146 |
-
flex-direction: column;
|
7147 |
-
}
|
7148 |
-
|
7149 |
-
.wpr-testimonial-meta-position-bottom .wpr-testimonial-item {
|
7150 |
-
-webkit-box-orient: vertical;
|
7151 |
-
-webkit-box-direction: reverse;
|
7152 |
-
-ms-flex-direction: column-reverse;
|
7153 |
-
flex-direction: column-reverse;
|
7154 |
-
-webkit-box-pack: end;
|
7155 |
-
-ms-flex-pack: end;
|
7156 |
-
justify-content: flex-end;
|
7157 |
-
}
|
7158 |
-
|
7159 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-item {
|
7160 |
-
-webkit-box-orient: horizontal;
|
7161 |
-
-webkit-box-direction: reverse;
|
7162 |
-
-ms-flex-direction: row-reverse;
|
7163 |
-
flex-direction: row-reverse;
|
7164 |
-
}
|
7165 |
-
|
7166 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-item {
|
7167 |
-
-webkit-box-orient: horizontal;
|
7168 |
-
-webkit-box-direction: normal;
|
7169 |
-
-ms-flex-direction: row;
|
7170 |
-
flex-direction: row;
|
7171 |
-
}
|
7172 |
-
|
7173 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-meta,
|
7174 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-meta {
|
7175 |
-
-ms-flex-negative: 0;
|
7176 |
-
flex-shrink: 0;
|
7177 |
-
}
|
7178 |
-
|
7179 |
-
@media screen and ( max-width: 480px) {
|
7180 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-item,
|
7181 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-item {
|
7182 |
-
-webkit-box-orient: vertical;
|
7183 |
-
-webkit-box-direction: normal;
|
7184 |
-
-ms-flex-direction: column;
|
7185 |
-
flex-direction: column;
|
7186 |
-
}
|
7187 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-content-inner,
|
7188 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-content-inner {
|
7189 |
-
margin-left: 0 !important;
|
7190 |
-
}
|
7191 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-meta,
|
7192 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-meta {
|
7193 |
-
margin-left: 0 !important;
|
7194 |
-
margin-right: 0 !important;
|
7195 |
-
padding: 0 !important;
|
7196 |
-
margin-bottom: 20px;
|
7197 |
-
}
|
7198 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-content-inner:before,
|
7199 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-content-inner:before {
|
7200 |
-
display: none;
|
7201 |
-
}
|
7202 |
-
}
|
7203 |
-
|
7204 |
-
|
7205 |
-
/* Job */
|
7206 |
-
|
7207 |
-
.wpr-testimonial-job {
|
7208 |
-
font-size: 10px;
|
7209 |
-
}
|
7210 |
-
|
7211 |
-
|
7212 |
-
/* Meta Image Positon */
|
7213 |
-
|
7214 |
-
.wpr-testimonial-image-position-left .wpr-testimonial-meta-inner>div,
|
7215 |
-
.wpr-testimonial-image-position-right .wpr-testimonial-meta-inner>div {
|
7216 |
-
display: inline-block;
|
7217 |
-
vertical-align: top;
|
7218 |
-
}
|
7219 |
-
|
7220 |
-
.wpr-testimonial-image-position-left .wpr-testimonial-image,
|
7221 |
-
.wpr-testimonial-image-position-left .wpr-testimonial-logo-image img,
|
7222 |
-
.wpr-testimonial-image-position-center.wpr-testimonial-meta-align-left .wpr-testimonial-meta img {
|
7223 |
-
float: left;
|
7224 |
-
}
|
7225 |
-
|
7226 |
-
.wpr-testimonial-image-position-right .wpr-testimonial-image,
|
7227 |
-
.wpr-testimonial-image-position-right .wpr-testimonial-logo-image img,
|
7228 |
-
.wpr-testimonial-image-position-center.wpr-testimonial-meta-align-right .wpr-testimonial-meta img {
|
7229 |
-
float: right;
|
7230 |
-
}
|
7231 |
-
|
7232 |
-
.wpr-testimonial-meta-align-left .wpr-testimonial-meta,
|
7233 |
-
.wpr-testimonial-image-position-left .wpr-testimonial-meta-content-wrap {
|
7234 |
-
text-align: left;
|
7235 |
-
}
|
7236 |
-
|
7237 |
-
.wpr-testimonial-meta-align-center .wpr-testimonial-meta {
|
7238 |
-
text-align: center;
|
7239 |
-
}
|
7240 |
-
|
7241 |
-
.wpr-testimonial-meta-align-right .wpr-testimonial-meta,
|
7242 |
-
.wpr-testimonial-image-position-right .wpr-testimonial-meta-content-wrap {
|
7243 |
-
text-align: right;
|
7244 |
-
}
|
7245 |
-
|
7246 |
-
.wpr-testimonial-meta-align-center .wpr-testimonial-meta img {
|
7247 |
-
margin: 0 auto;
|
7248 |
-
}
|
7249 |
-
|
7250 |
-
.wpr-testimonial-meta-position-extra .wpr-testimonial-meta img {
|
7251 |
-
display: inline-block;
|
7252 |
-
}
|
7253 |
-
|
7254 |
-
.wpr-testimonial-meta-inner {
|
7255 |
-
display: inline-block;
|
7256 |
-
}
|
7257 |
-
|
7258 |
-
.wpr-testimonial-meta-position-top .wpr-testimonial-meta-content-wrap,
|
7259 |
-
.wpr-testimonial-meta-position-bottom .wpr-testimonial-meta-content-wrap {
|
7260 |
-
/*text-align: center !important;*/
|
7261 |
-
}
|
7262 |
-
|
7263 |
-
.wpr-testimonial-meta-position-top .wpr-testimonial-logo-image img,
|
7264 |
-
.wpr-testimonial-meta-position-bottom .wpr-testimonial-logo-image img,
|
7265 |
-
.wpr-testimonial-meta-position-top .wpr-testimonial-social-media,
|
7266 |
-
.wpr-testimonial-meta-position-bottom .wpr-testimonial-social-media {
|
7267 |
-
float: none !important;
|
7268 |
-
display: inline-block !important;
|
7269 |
-
}
|
7270 |
-
|
7271 |
-
@media screen and (min-width: 480px) {
|
7272 |
-
.wpr-testimonial-image-position-left .wpr-testimonial-image,
|
7273 |
-
.wpr-testimonial-image-position-right .wpr-testimonial-image {
|
7274 |
-
margin-bottom: 0 !important;
|
7275 |
-
}
|
7276 |
-
}
|
7277 |
-
|
7278 |
-
@media screen and (max-width: 480px) {
|
7279 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-image,
|
7280 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-image,
|
7281 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-meta-content-wrap,
|
7282 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-meta-content-wrap {
|
7283 |
-
display: block !important;
|
7284 |
-
float: none !important;
|
7285 |
-
text-align: center !important;
|
7286 |
-
}
|
7287 |
-
.wpr-testimonial-meta-position-left.wpr-testimonial-image-position-left .wpr-testimonial-image,
|
7288 |
-
.wpr-testimonial-meta-position-right.wpr-testimonial-image-position-left .wpr-testimonial-image,
|
7289 |
-
.wpr-testimonial-meta-position-left.wpr-testimonial-image-position-right .wpr-testimonial-image,
|
7290 |
-
.wpr-testimonial-meta-position-right.wpr-testimonial-image-position-right .wpr-testimonial-image {
|
7291 |
-
margin-left: 0 !important;
|
7292 |
-
margin-right: 0 !important;
|
7293 |
-
}
|
7294 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-image img,
|
7295 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-image img,
|
7296 |
-
.wpr-testimonial-meta-position-left .wpr-testimonial-logo-image img,
|
7297 |
-
.wpr-testimonial-meta-position-right .wpr-testimonial-logo-image img {
|
7298 |
-
display: inline-block !important;
|
7299 |
-
float: none !important;
|
7300 |
-
}
|
7301 |
-
}
|
7302 |
-
|
7303 |
-
/*--------------------------------------------------------------
|
7304 |
-
== Search
|
7305 |
-
--------------------------------------------------------------*/
|
7306 |
-
|
7307 |
-
.wpr-search-admin-notice {
|
7308 |
-
text-align: center;
|
7309 |
-
margin: 0;
|
7310 |
-
margin-top: 10px;
|
7311 |
-
padding: 8px;
|
7312 |
-
}
|
7313 |
-
|
7314 |
-
.wpr-ajax-search-pagination-center .wpr-ajax-search-pagination {
|
7315 |
-
text-align: center;
|
7316 |
-
}
|
7317 |
-
|
7318 |
-
.wpr-ajax-search-pagination-center .wpr-ajax-search-pagination {
|
7319 |
-
display: -webkit-box;
|
7320 |
-
display: -ms-flexbox;
|
7321 |
-
display: flex;
|
7322 |
-
-webkit-box-pack: center;
|
7323 |
-
-ms-flex-pack: center;
|
7324 |
-
justify-content: center;
|
7325 |
-
}
|
7326 |
-
|
7327 |
-
.wpr-ajax-search-pagination-left .wpr-ajax-search-pagination {
|
7328 |
-
text-align: left;
|
7329 |
-
display: -webkit-box;
|
7330 |
-
display: -ms-flexbox;
|
7331 |
-
display: flex;
|
7332 |
-
-webkit-box-pack: start;
|
7333 |
-
-ms-flex-pack: start;
|
7334 |
-
justify-content: flex-start;
|
7335 |
-
}
|
7336 |
-
|
7337 |
-
.wpr-ajax-search-pagination-right .wpr-ajax-search-pagination {
|
7338 |
-
text-align: right;
|
7339 |
-
display: -webkit-box;
|
7340 |
-
display: -ms-flexbox;
|
7341 |
-
display: flex;
|
7342 |
-
-webkit-box-pack: end;
|
7343 |
-
-ms-flex-pack: end;
|
7344 |
-
justify-content: flex-end;
|
7345 |
-
}
|
7346 |
-
|
7347 |
-
.wpr-data-fetch .wpr-ajax-search-pagination {
|
7348 |
-
text-align: center;
|
7349 |
-
|
7350 |
-
}
|
7351 |
-
|
7352 |
-
.wpr-data-fetch ul::-webkit-scrollbar {
|
7353 |
-
width: 4px;
|
7354 |
-
background-color: transparent;
|
7355 |
-
}
|
7356 |
-
|
7357 |
-
.wpr-data-fetch ul::-webkit-scrollbar-thumb {
|
7358 |
-
/* border-left: 6px solid transparent; */
|
7359 |
-
border-left: 3px solid blue;
|
7360 |
-
}
|
7361 |
-
|
7362 |
-
.wpr-no-results {
|
7363 |
-
display: -webkit-box;
|
7364 |
-
display: -ms-flexbox;
|
7365 |
-
display: flex;
|
7366 |
-
-webkit-box-pack: center;
|
7367 |
-
-ms-flex-pack: center;
|
7368 |
-
justify-content: center;
|
7369 |
-
-webkit-box-align: center;
|
7370 |
-
-ms-flex-align: center;
|
7371 |
-
align-items: center;
|
7372 |
-
margin: 0;
|
7373 |
-
}
|
7374 |
-
|
7375 |
-
.wpr-load-more-results {
|
7376 |
-
display: none;
|
7377 |
-
width: 100%;
|
7378 |
-
}
|
7379 |
-
|
7380 |
-
.wpr-no-more-results {
|
7381 |
-
display: none;
|
7382 |
-
margin: 0;
|
7383 |
-
text-align: center;
|
7384 |
-
}
|
7385 |
-
|
7386 |
-
.wpr-ajax-search-content {
|
7387 |
-
text-align: left;
|
7388 |
-
}
|
7389 |
-
|
7390 |
-
.wpr-ajax-search-content a {
|
7391 |
-
display: inline-block;
|
7392 |
-
}
|
7393 |
-
|
7394 |
-
.wpr-data-fetch {
|
7395 |
-
position: absolute;
|
7396 |
-
top: 100%;
|
7397 |
-
left: 0;
|
7398 |
-
width: 100%;
|
7399 |
-
height: auto;
|
7400 |
-
di
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|