Elementor Essential Addons - Version 2.2.2

Version Description

  • Ninja Forms element added
  • Load more functionality added to Post elements (Post Grid & Post Timeline)
  • Few presets added for Team Members, Countdown, Fancy Text
  • Few minor improvements
Download this release

Release Info

Developer re_enter_rupok
Plugin Icon 128x128 Elementor Essential Addons
Version 2.2.2
Comparing to
See all releases

Code changes from version 2.2.1 to 2.2.2

admin/assets/js/admin.js CHANGED
@@ -34,47 +34,12 @@
34
  $( 'form#eael-settings' ).on( 'submit', function(e) {
35
  e.preventDefault();
36
 
37
- var contactForm7 = $( '#contact-form-7' ).attr( 'checked' ) ? 1 : 0;
38
- var countDown = $( '#count-down' ).attr( 'checked' ) ? 1 : 0;
39
- var creativeBtn = $( '#creative-btn' ).attr( 'checked' ) ? 1 : 0;
40
- var fancyText = $( '#fancy-text' ).attr( 'checked' ) ? 1 : 0;
41
- var postGrid = $( '#post-grid' ).attr( 'checked' ) ? 1 : 0;
42
- var postTimeline = $( '#post-timeline' ).attr( 'checked' ) ? 1 : 0;
43
- var productGrid = $( '#product-grid' ).attr( 'checked' ) ? 1 : 0;
44
- var teamMembers = $( '#team-members' ).attr( 'checked' ) ? 1 : 0;
45
- var testimonials = $( '#testimonials' ).attr( 'checked' ) ? 1 : 0;
46
- var weForms = $( '#weforms' ).attr( 'checked' ) ? 1 : 0;
47
- var callToAction = $( '#call-to-action' ).attr( 'checked' ) ? 1 : 0;
48
- var flipBox = $( '#flip-box' ).attr( 'checked' ) ? 1 : 0;
49
- var infoBox = $( '#info-box' ).attr( 'checked' ) ? 1 : 0;
50
- var dualHeader = $( '#dual-header' ).attr( 'checked' ) ? 1 : 0;
51
- var priceTable = $( '#price-table' ).attr( 'checked' ) ? 1 : 0;
52
-
53
- var customCss = $( '#eael-custom-css' ).val();
54
- var customJs = $( '#eael-custom-js' ).val();
55
-
56
  $.ajax( {
57
  url: settings.ajaxurl,
58
  type: 'post',
59
- data: {
60
  action: 'save_settings_with_ajax',
61
- contactForm7: contactForm7,
62
- countDown: countDown,
63
- creativeBtn: creativeBtn,
64
- fancyText: fancyText,
65
- postGrid: postGrid,
66
- postTimeline: postTimeline,
67
- productGrid: productGrid,
68
- teamMembers: teamMembers,
69
- testimonials: testimonials,
70
- weForms: weForms,
71
- callToAction: callToAction,
72
- flipBox: flipBox,
73
- infoBox: infoBox,
74
- dualHeader: dualHeader,
75
- priceTable: priceTable,
76
- customCss: customCss,
77
- customJs: customJs,
78
  },
79
  success: function( response ) {
80
  swal(
@@ -93,7 +58,7 @@
93
  );
94
  }
95
  } );
96
-
97
  } );
98
 
99
  } )( jQuery );
34
  $( 'form#eael-settings' ).on( 'submit', function(e) {
35
  e.preventDefault();
36
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
37
  $.ajax( {
38
  url: settings.ajaxurl,
39
  type: 'post',
40
+ data: {
41
  action: 'save_settings_with_ajax',
42
+ fields: $( 'form#eael-settings' ).serialize(),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
43
  },
44
  success: function( response ) {
45
  swal(
58
  );
59
  }
60
  } );
61
+
62
  } );
63
 
64
  } )( jQuery );
admin/settings.php CHANGED
@@ -1,4 +1,4 @@
1
- <?php
2
  /**
3
  * Admin Settings Page
4
  */
@@ -6,40 +6,48 @@
6
  if( ! defined( 'ABSPATH' ) ) exit(); // Exit if accessed directly
7
 
8
  class Eael_Admin_Settings {
9
- protected $is_pro = FALSE;
10
- private $eael_default_settings = array(
11
- 'contact-form-7' => true,
12
- 'count-down' => true,
13
- 'creative-btn' => true,
14
- 'fancy-text' => true,
15
- 'post-grid' => true,
16
- 'post-timeline' => true,
17
- 'product-grid' => true,
18
- 'team-members' => true,
19
- 'testimonials' => true,
20
- 'weforms' => true,
21
- 'call-to-action' => true,
22
- 'flip-box' => true,
23
- 'info-box' => true,
24
- 'dual-header' => true,
25
- 'price-table' => true,
26
- );
27
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28
  private $eael_settings;
 
 
 
 
 
 
29
  private $eael_get_settings;
30
 
31
  /**
32
  * Initializing all default hooks and functions
33
- * @param
34
  * @return void
35
  * @since 1.1.2
36
  */
37
  public function __construct() {
38
 
39
- add_action( 'admin_menu', array( $this, 'create_eael_admin_menu' ) );
40
  add_action( 'init', array( $this, 'enqueue_eael_admin_scripts' ) );
41
  add_action( 'wp_ajax_save_settings_with_ajax', array( $this, 'eael_save_settings_with_ajax' ) );
42
- add_action( 'wp_ajax_nopriv_save_settings_with_ajax', array( $this, 'eael_save_settings_with_ajax' ) );
43
  add_action( 'wp_head', array( $this, 'eael_add_custom_code_in_wp_head' ), 9999 );
44
  add_action( 'wp_footer', array( $this, 'eael_add_custom_js_in_wp_footer' ), 9999 );
45
 
@@ -68,27 +76,27 @@ class Eael_Admin_Settings {
68
 
69
  /**
70
  * Create an admin menu.
71
- * @param
72
  * @return void
73
- * @since 1.1.2
74
  */
75
  public function create_eael_admin_menu() {
76
 
77
- add_menu_page(
78
- 'Essential Addons Elementor',
79
- 'Essential Addons Elementor',
80
- 'manage_options',
81
- 'eael-settings',
82
- array( $this, 'eael_admin_settings_page' ),
83
  plugins_url( '/', __FILE__ ).'/assets/images/ea-icon.png',
84
- 199
85
  );
86
 
87
  }
88
 
89
  /**
90
  * Create settings page.
91
- * @param
92
  * @return void
93
  * @since 1.1.2
94
  */
@@ -103,6 +111,7 @@ class Eael_Admin_Settings {
103
  * This section will handle the "eael_save_settings" array. If any new settings options is added
104
  * then it will matches with the older array and then if it founds anything new then it will update the entire array.
105
  */
 
106
  $this->eael_get_settings = get_option( 'eael_save_settings', $this->eael_default_settings );
107
  $eael_new_settings = array_diff_key( $this->eael_default_settings, $this->eael_get_settings );
108
  if( ! empty( $eael_new_settings ) ) {
@@ -139,7 +148,7 @@ class Eael_Admin_Settings {
139
  <div class="col-half">
140
  <a href="https://essential-addons.com/elementor/" target="_blank" class="button eael-btn eael-demo-btn">Explore Demos</a>
141
  <a href="https://essential-addons.com/elementor/buy.php" target="_blank" class="button eael-btn eael-license-btn">Get Pro License</a>
142
-
143
  <div class="eael-notice">
144
  <h5>Troubleshooting Info</h5>
145
  <p>After update, if you see any element is not working properly, go to <strong>Elements</strong> Tab, toggle the element and save changes.</p>
@@ -240,41 +249,51 @@ class Eael_Admin_Settings {
240
  <div class="eael-checkbox">
241
  <p class="title"><?php _e( 'Call To Action', 'essential-addons-elementor' ) ?></p>
242
  <p class="desc"><?php _e( 'Activate / Deactive Call To Action', 'essential-addons-elementor' ); ?></p>
243
- <input type="checkbox" id="call-to-action" name="call-to-action" <?php checked( 1, $this->eael_get_settings['call-to-action'], true ); ?> >
244
- <label for="call-to-action"></label>
245
- </div>
246
  </td>
247
  <td>
248
  <div class="eael-checkbox">
249
  <p class="title"><?php _e( 'Flip Box', 'essential-addons-elementor' ) ?></p>
250
  <p class="desc"><?php _e( 'Activate / Deactive Flip Box', 'essential-addons-elementor' ); ?></p>
251
- <input type="checkbox" id="flip-box" name="flip-box" <?php checked( 1, $this->eael_get_settings['flip-box'], true ); ?> >
252
- <label for="flip-box"></label>
253
- </div>
254
  </td>
255
  <td>
256
  <div class="eael-checkbox">
257
  <p class="title"><?php _e( 'Info Box', 'essential-addons-elementor' ) ?></p>
258
  <p class="desc"><?php _e( 'Activate / Deactive Info Box', 'essential-addons-elementor' ); ?></p>
259
- <input type="checkbox" id="info-box" name="info-box" <?php checked( 1, $this->eael_get_settings['info-box'], true ); ?> >
260
- <label for="info-box"></label>
261
- </div>
262
  </td>
263
  <td>
264
  <div class="eael-checkbox">
265
  <p class="title"><?php _e( 'Dual Color Header', 'essential-addons-elementor' ) ?></p>
266
  <p class="desc"><?php _e( 'Activate / Deactive Dual Color Header', 'essential-addons-elementor' ); ?></p>
267
- <input type="checkbox" id="dual-header" name="dual-header" <?php checked( 1, $this->eael_get_settings['dual-header'], true ); ?> >
268
- <label for="dual-header"></label>
269
- </div>
270
  </td>
271
  <td>
272
  <div class="eael-checkbox">
273
  <p class="title"><?php _e( 'Pricing Table', 'essential-addons-elementor' ) ?></p>
274
  <p class="desc"><?php _e( 'Activate / Deactive Pricing Table', 'essential-addons-elementor' ); ?></p>
275
- <input type="checkbox" id="price-table" name="price-table" <?php checked( 1, $this->eael_get_settings['price-table'], true ); ?> >
276
- <label for="price-table"></label>
277
- </div>
 
 
 
 
 
 
 
 
 
 
278
  </td>
279
  </tr>
280
  </table>
@@ -284,68 +303,120 @@ class Eael_Admin_Settings {
284
  <img src="<?php echo plugins_url( '/', __FILE__ ).'assets/images/lock-icon.png'; ?>">
285
  <h4 class="section-title">Premium Elements</h4>
286
  </div>
287
- <table class="form-table">
288
- <tr>
289
- <td>
290
- <div class="eael-checkbox">
291
- <p class="title"><?php _e( 'Image Comparison', 'essential-addons-elementor' ); ?></p>
292
- <p class="desc"><?php _e( 'Activate / Deactive Image Comparison', 'essential-addons-elementor' ); ?></p>
293
- <input type="checkbox" id="img-comparison" name="img-comparison" disabled >
294
- <label for="img-comparison" class="<?php if( (bool) $is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
295
- </div>
296
- </td>
297
- <td>
298
- <div class="eael-checkbox">
299
- <p class="title"><?php _e( 'Instagram Gallery', 'essential-addons-elementor' ); ?></p>
300
- <p class="desc"><?php _e( 'Activate / Deactive Instagram Gallery', 'essential-addons-elementor' ); ?></p>
301
- <input type="checkbox" id="instagram-gallery" name="instagram-gallery" disabled >
302
- <label for="instagram-gallery" class="<?php if( (bool) $is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
303
- </div>
304
- </td>
305
- <td>
306
- <div class="eael-checkbox">
307
- <p class="title"><?php _e( 'Interactive Promo', 'essential-addons-elementor' ); ?></p>
308
- <p class="desc"><?php _e( 'Activate / Deactive Interactive Promo', 'essential-addons-elementor' ); ?></p>
309
- <input type="checkbox" id="interactive-promo" name="interactive-promo" disabled >
310
- <label for="interactive-promo" class="<?php if( (bool) $is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
311
- </div>
312
- </td>
313
- <td>
314
- <div class="eael-checkbox">
315
- <p class="title"><?php _e( 'Lightbox', 'essential-addons-elementor' ); ?></p>
316
- <p class="desc"><?php _e( 'Activate / Deactive Lightbox', 'essential-addons-elementor' ); ?></p>
317
- <input type="checkbox" id="lightbox" name="lightbox" disabled >
318
- <label for="lightbox" class="<?php if( (bool) $is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
319
- </div>
320
- </td>
321
- <td>
322
- <div class="eael-checkbox">
323
- <p class="title"><?php _e( 'Post Block', 'essential-addons-elementor' ); ?></p>
324
- <p class="desc"><?php _e( 'Activate / Deactive Post Block', 'essential-addons-elementor' ); ?></p>
325
- <input type="checkbox" id="post-block" name="post-block" disabled >
326
- <label for="post-block" class="<?php if( (bool) $is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
327
- </div>
328
- </td>
329
- </tr>
330
- <tr>
331
- <td>
332
- <div class="eael-checkbox">
333
- <p class="title"><?php _e( 'Testimonial Slider', 'essential-addons-elementor' ) ?></p>
334
- <p class="desc"><?php _e( 'Activate / Deactive Testimonial Slider', 'essential-addons-elementor' ); ?></p>
335
- <input type="checkbox" id="testimonial-slider" name="testimonial-slider" disabled >
336
- <label for="testimonial-slider" class="<?php if( (bool) $is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
337
- </div>
338
- </td>
339
- <td>
340
- <div class="eael-checkbox">
341
- <p class="title"><?php _e( 'Static Product', 'essential-addons-elementor' ) ?></p>
342
- <p class="desc"><?php _e( 'Activate / Deactive Static Product', 'essential-addons-elementor' ); ?></p>
343
- <input type="checkbox" id="static-product" name="static-product" disabled >
344
- <label for="static-product" class="<?php if( (bool) $is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
345
- </div>
346
- </td>
347
- </tr>
348
- </table>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
349
  <div class="eael-save-btn-wrap">
350
  <input type="submit" value="Save settings" class="button eael-btn"/>
351
  </div>
@@ -411,50 +482,56 @@ class Eael_Admin_Settings {
411
  </form>
412
  </div>
413
  <?php
414
-
415
  }
416
 
417
  /**
418
  * Saving data with ajax request
419
- * @param
420
- * @return array in json
421
- * @since 1.1.2
422
  */
423
  public function eael_save_settings_with_ajax() {
424
 
425
- if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) {
426
- $this->eael_settings = array(
427
- 'contact-form-7' => intval( $_POST['contactForm7'] ? 1 : 0 ),
428
- 'count-down' => intval( $_POST['countDown'] ? 1 : 0 ),
429
- 'creative-btn' => intval( $_POST['creativeBtn'] ? 1 : 0 ),
430
- 'fancy-text' => intval( $_POST['fancyText'] ? 1 : 0 ),
431
- 'post-grid' => intval( $_POST['postGrid'] ? 1 : 0 ),
432
- 'post-timeline' => intval( $_POST['postTimeline'] ? 1 : 0 ),
433
- 'product-grid' => intval( $_POST['productGrid'] ? 1 : 0 ),
434
- 'team-members' => intval( $_POST['teamMembers'] ? 1 : 0 ),
435
- 'testimonials' => intval( $_POST['testimonials'] ? 1 : 0 ),
436
- 'weforms' => intval( $_POST['weForms'] ? 1 : 0 ),
437
- 'call-to-action' => intval( $_POST['callToAction'] ? 1 : 0 ),
438
- 'flip-box' => intval( $_POST['flipBox'] ? 1 : 0 ),
439
- 'info-box' => intval( $_POST['infoBox'] ? 1 : 0 ),
440
- 'dual-header' => intval( $_POST['dualHeader'] ? 1 : 0 ),
441
- 'price-table' => intval( $_POST['priceTable'] ? 1 : 0 ),
442
-
443
- 'eael-custom-css' => wp_unslash( $_POST['customCss'] ),
444
- 'eael-custom-js' => wp_unslash( $_POST['customJs'] ),
445
- );
446
- update_option( 'eael_save_settings', $this->eael_settings );
447
- return true;
448
- die();
449
  }
450
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
451
  }
452
 
453
  /**
454
  * Saving custom css in the header
455
- * @param
456
  * @return string
457
- * @since 1.1.2
458
  */
459
  public function eael_add_custom_code_in_wp_head() {
460
 
@@ -463,15 +540,15 @@ class Eael_Admin_Settings {
463
  <style>
464
  <?php echo( $this->eael_get_settings['eael-custom-css'] ); ?>
465
  </style>
466
- <?php
467
 
468
- }
469
 
470
  /**
471
  * Saving custom js in the footer
472
- * @param
473
  * @return string
474
- * @since 1.1.2
475
  */
476
  public function eael_add_custom_js_in_wp_footer() {
477
 
@@ -484,7 +561,7 @@ class Eael_Admin_Settings {
484
  </script>
485
  <?php
486
 
487
- }
488
 
489
  }
490
 
1
+ <?php
2
  /**
3
  * Admin Settings Page
4
  */
6
  if( ! defined( 'ABSPATH' ) ) exit(); // Exit if accessed directly
7
 
8
  class Eael_Admin_Settings {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
 
10
+ private $is_pro = false;
11
+
12
+ /**
13
+ * Contains Default Component keys
14
+ * @var array
15
+ * @since 2.3.0
16
+ */
17
+ public $eael_default_keys = [ 'contact-form-7', 'count-down', 'creative-btn', 'fancy-text', 'img-comparison', 'instagram-gallery', 'interactive-promo', 'lightbox', 'post-block', 'post-grid', 'post-timeline', 'product-grid', 'team-members', 'testimonial-slider', 'testimonials', 'testimonials', 'weforms', 'static-product', 'call-to-action', 'flip-box', 'info-box', 'dual-header', 'price-table', 'flip-carousel', 'interactive-cards', 'ninja-form' ];
18
+
19
+ /**
20
+ * Will Contain All Components Default Values
21
+ * @var array
22
+ * @since 2.3.0
23
+ */
24
+ private $eael_default_settings;
25
+
26
+ /**
27
+ * Will Contain User End Settings Value
28
+ * @var array
29
+ * @since 2.3.0
30
+ */
31
  private $eael_settings;
32
+
33
+ /**
34
+ * Will Contains Settings Values Fetched From DB
35
+ * @var array
36
+ * @since 2.3.0
37
+ */
38
  private $eael_get_settings;
39
 
40
  /**
41
  * Initializing all default hooks and functions
42
+ * @param
43
  * @return void
44
  * @since 1.1.2
45
  */
46
  public function __construct() {
47
 
48
+ add_action( 'admin_menu', array( $this, 'create_eael_admin_menu' ) );
49
  add_action( 'init', array( $this, 'enqueue_eael_admin_scripts' ) );
50
  add_action( 'wp_ajax_save_settings_with_ajax', array( $this, 'eael_save_settings_with_ajax' ) );
 
51
  add_action( 'wp_head', array( $this, 'eael_add_custom_code_in_wp_head' ), 9999 );
52
  add_action( 'wp_footer', array( $this, 'eael_add_custom_js_in_wp_footer' ), 9999 );
53
 
76
 
77
  /**
78
  * Create an admin menu.
79
+ * @param
80
  * @return void
81
+ * @since 1.1.2
82
  */
83
  public function create_eael_admin_menu() {
84
 
85
+ add_menu_page(
86
+ 'Essential Addons Elementor',
87
+ 'Essential Addons Elementor',
88
+ 'manage_options',
89
+ 'eael-settings',
90
+ array( $this, 'eael_admin_settings_page' ),
91
  plugins_url( '/', __FILE__ ).'/assets/images/ea-icon.png',
92
+ 199
93
  );
94
 
95
  }
96
 
97
  /**
98
  * Create settings page.
99
+ * @param
100
  * @return void
101
  * @since 1.1.2
102
  */
111
  * This section will handle the "eael_save_settings" array. If any new settings options is added
112
  * then it will matches with the older array and then if it founds anything new then it will update the entire array.
113
  */
114
+ $this->eael_default_settings = array_fill_keys( $this->eael_default_keys, true );
115
  $this->eael_get_settings = get_option( 'eael_save_settings', $this->eael_default_settings );
116
  $eael_new_settings = array_diff_key( $this->eael_default_settings, $this->eael_get_settings );
117
  if( ! empty( $eael_new_settings ) ) {
148
  <div class="col-half">
149
  <a href="https://essential-addons.com/elementor/" target="_blank" class="button eael-btn eael-demo-btn">Explore Demos</a>
150
  <a href="https://essential-addons.com/elementor/buy.php" target="_blank" class="button eael-btn eael-license-btn">Get Pro License</a>
151
+
152
  <div class="eael-notice">
153
  <h5>Troubleshooting Info</h5>
154
  <p>After update, if you see any element is not working properly, go to <strong>Elements</strong> Tab, toggle the element and save changes.</p>
249
  <div class="eael-checkbox">
250
  <p class="title"><?php _e( 'Call To Action', 'essential-addons-elementor' ) ?></p>
251
  <p class="desc"><?php _e( 'Activate / Deactive Call To Action', 'essential-addons-elementor' ); ?></p>
252
+ <input type="checkbox" id="call-to-action" name="call-to-action" <?php checked( 1, $this->eael_get_settings['call-to-action'], true ); ?> >
253
+ <label for="call-to-action"></label>
254
+ </div>
255
  </td>
256
  <td>
257
  <div class="eael-checkbox">
258
  <p class="title"><?php _e( 'Flip Box', 'essential-addons-elementor' ) ?></p>
259
  <p class="desc"><?php _e( 'Activate / Deactive Flip Box', 'essential-addons-elementor' ); ?></p>
260
+ <input type="checkbox" id="flip-box" name="flip-box" <?php checked( 1, $this->eael_get_settings['flip-box'], true ); ?> >
261
+ <label for="flip-box"></label>
262
+ </div>
263
  </td>
264
  <td>
265
  <div class="eael-checkbox">
266
  <p class="title"><?php _e( 'Info Box', 'essential-addons-elementor' ) ?></p>
267
  <p class="desc"><?php _e( 'Activate / Deactive Info Box', 'essential-addons-elementor' ); ?></p>
268
+ <input type="checkbox" id="info-box" name="info-box" <?php checked( 1, $this->eael_get_settings['info-box'], true ); ?> >
269
+ <label for="info-box"></label>
270
+ </div>
271
  </td>
272
  <td>
273
  <div class="eael-checkbox">
274
  <p class="title"><?php _e( 'Dual Color Header', 'essential-addons-elementor' ) ?></p>
275
  <p class="desc"><?php _e( 'Activate / Deactive Dual Color Header', 'essential-addons-elementor' ); ?></p>
276
+ <input type="checkbox" id="dual-header" name="dual-header" <?php checked( 1, $this->eael_get_settings['dual-header'], true ); ?> >
277
+ <label for="dual-header"></label>
278
+ </div>
279
  </td>
280
  <td>
281
  <div class="eael-checkbox">
282
  <p class="title"><?php _e( 'Pricing Table', 'essential-addons-elementor' ) ?></p>
283
  <p class="desc"><?php _e( 'Activate / Deactive Pricing Table', 'essential-addons-elementor' ); ?></p>
284
+ <input type="checkbox" id="price-table" name="price-table" <?php checked( 1, $this->eael_get_settings['price-table'], true ); ?> >
285
+ <label for="price-table"></label>
286
+ </div>
287
+ </td>
288
+ </tr>
289
+ <tr>
290
+ <td>
291
+ <div class="eael-checkbox">
292
+ <p class="title"><?php _e( 'Ninja Form', 'essential-addons-elementor' ) ?></p>
293
+ <p class="desc"><?php _e( 'Activate / Deactive Ninja Form', 'essential-addons-elementor' ); ?></p>
294
+ <input type="checkbox" id="ninja-form" name="ninja-form" <?php checked( 1, $this->eael_get_settings['ninja-form'], true ); ?> >
295
+ <label for="ninja-form"></label>
296
+ </div>
297
  </td>
298
  </tr>
299
  </table>
303
  <img src="<?php echo plugins_url( '/', __FILE__ ).'assets/images/lock-icon.png'; ?>">
304
  <h4 class="section-title">Premium Elements</h4>
305
  </div>
306
+ <table class="form-table">
307
+ <tr>
308
+ <td>
309
+ <div class="eael-checkbox">
310
+ <p class="title">
311
+ <?php _e( 'Image Comparison', 'essential-addons-elementor' ); ?>
312
+ </p>
313
+ <p class="desc">
314
+ <?php _e( 'Activate / Deactive Image Comparison', 'essential-addons-elementor' ); ?>
315
+ </p>
316
+ <input type="checkbox" id="img-comparison" name="img-comparison" disabled>
317
+ <label for="img-comparison" class="<?php if( (bool) $this->is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
318
+ </div>
319
+ </td>
320
+ <td>
321
+ <div class="eael-checkbox">
322
+ <p class="title">
323
+ <?php _e( 'Instagram Gallery', 'essential-addons-elementor' ); ?>
324
+ </p>
325
+ <p class="desc">
326
+ <?php _e( 'Activate / Deactive Instagram Gallery', 'essential-addons-elementor' ); ?>
327
+ </p>
328
+ <input type="checkbox" id="instagram-gallery" name="instagram-gallery" disabled>
329
+ <label for="instagram-gallery" class="<?php if( (bool) $this->is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
330
+ </div>
331
+ </td>
332
+ <td>
333
+ <div class="eael-checkbox">
334
+ <p class="title">
335
+ <?php _e( 'Interactive Promo', 'essential-addons-elementor' ); ?>
336
+ </p>
337
+ <p class="desc">
338
+ <?php _e( 'Activate / Deactive Interactive Promo', 'essential-addons-elementor' ); ?>
339
+ </p>
340
+ <input type="checkbox" id="interactive-promo" name="interactive-promo" disabled>
341
+ <label for="interactive-promo" class="<?php if( (bool) $this->is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
342
+ </div>
343
+ </td>
344
+ <td>
345
+ <div class="eael-checkbox">
346
+ <p class="title">
347
+ <?php _e( 'Lightbox', 'essential-addons-elementor' ); ?>
348
+ </p>
349
+ <p class="desc">
350
+ <?php _e( 'Activate / Deactive Lightbox', 'essential-addons-elementor' ); ?>
351
+ </p>
352
+ <input type="checkbox" id="lightbox" name="lightbox" disabled>
353
+ <label for="lightbox" class="<?php if( (bool) $this->is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
354
+ </div>
355
+ </td>
356
+ <td>
357
+ <div class="eael-checkbox">
358
+ <p class="title">
359
+ <?php _e( 'Post Block', 'essential-addons-elementor' ); ?>
360
+ </p>
361
+ <p class="desc">
362
+ <?php _e( 'Activate / Deactive Post Block', 'essential-addons-elementor' ); ?>
363
+ </p>
364
+ <input type="checkbox" id="post-block" name="post-block" disabled>
365
+ <label for="post-block" class="<?php if( (bool) $this->is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
366
+ </div>
367
+ </td>
368
+ </tr>
369
+ <tr>
370
+ <td>
371
+ <div class="eael-checkbox">
372
+ <p class="title">
373
+ <?php _e( 'Testimonial Slider', 'essential-addons-elementor' ) ?>
374
+ </p>
375
+ <p class="desc">
376
+ <?php _e( 'Activate / Deactive Testimonial Slider', 'essential-addons-elementor' ); ?>
377
+ </p>
378
+ <input type="checkbox" id="testimonial-slider" name="testimonial-slider" disabled>
379
+ <label for="testimonial-slider" class="<?php if( (bool) $this->is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
380
+ </div>
381
+ </td>
382
+ <td>
383
+ <div class="eael-checkbox">
384
+ <p class="title">
385
+ <?php _e( 'Static Product', 'essential-addons-elementor' ) ?>
386
+ </p>
387
+ <p class="desc">
388
+ <?php _e( 'Activate / Deactive Static Product', 'essential-addons-elementor' ); ?>
389
+ </p>
390
+ <input type="checkbox" id="static-product" name="static-product" disabled>
391
+ <label for="static-product" class="<?php if( (bool) $this->is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
392
+ </div>
393
+ </td>
394
+ <td>
395
+ <div class="eael-checkbox">
396
+ <p class="title">
397
+ <?php _e( 'Flip Carousel', 'essential-addons-elementor' ) ?>
398
+ </p>
399
+ <p class="desc">
400
+ <?php _e( 'Activate / Deactive Flip Carousel', 'essential-addons-elementor' ); ?>
401
+ </p>
402
+ <input type="checkbox" id="flip-carousel" name="flip-carousel" disabled>
403
+ <label for="flip-carousel" class="<?php if( (bool) $this->is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
404
+ </div>
405
+ </td>
406
+ <td>
407
+ <div class="eael-checkbox">
408
+ <p class="title">
409
+ <?php _e( 'Interactive Cards', 'essential-addons-elementor' ) ?>
410
+ </p>
411
+ <p class="desc">
412
+ <?php _e( 'Activate / Deactive Interactive Cards', 'essential-addons-elementor' ); ?>
413
+ </p>
414
+ <input type="checkbox" id="interactive-cards" name="interactive-cards" disabled>
415
+ <label for="interactive-cards" class="<?php if( (bool) $this->is_pro === false ) : echo 'eael-get-pro'; endif; ?>"></label>
416
+ </div>
417
+ </td>
418
+ </tr>
419
+ </table>
420
  <div class="eael-save-btn-wrap">
421
  <input type="submit" value="Save settings" class="button eael-btn"/>
422
  </div>
482
  </form>
483
  </div>
484
  <?php
485
+
486
  }
487
 
488
  /**
489
  * Saving data with ajax request
490
+ * @param
491
+ * @return array
492
+ * @since 1.1.2
493
  */
494
  public function eael_save_settings_with_ajax() {
495
 
496
+ if( isset( $_POST['fields'] ) ) {
497
+ parse_str( $_POST['fields'], $settings );
498
+ }else {
499
+ return;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
500
  }
501
 
502
+ $this->eael_settings = array(
503
+ 'contact-form-7' => intval( $settings['contact-form-7'] ? 1 : 0 ),
504
+ 'count-down' => intval( $settings['count-down'] ? 1 : 0 ),
505
+ 'creative-btn' => intval( $settings['creative-btn'] ? 1 : 0 ),
506
+ 'fancy-text' => intval( $settings['fancy-text'] ? 1 : 0 ),
507
+ 'post-grid' => intval( $settings['post-grid'] ? 1 : 0 ),
508
+ 'post-timeline' => intval( $settings['post-timeline'] ? 1 : 0 ),
509
+ 'product-grid' => intval( $settings['product-grid'] ? 1 : 0 ),
510
+ 'team-members' => intval( $settings['team-members'] ? 1 : 0 ),
511
+ 'testimonials' => intval( $settings['testimonials'] ? 1 : 0 ),
512
+ 'weforms' => intval( $settings['weforms'] ? 1 : 0 ),
513
+ 'call-to-action' => intval( $settings['call-to-action'] ? 1 : 0 ),
514
+ 'flip-box' => intval( $settings['flip-box'] ? 1 : 0 ),
515
+ 'info-box' => intval( $settings['info-box'] ? 1 : 0 ),
516
+ 'dual-header' => intval( $settings['dual-header'] ? 1 : 0 ),
517
+ 'price-table' => intval( $settings['price-table'] ? 1 : 0 ),
518
+ 'ninja-form' => intval( $settings['ninja-form'] ? 1 : 0 ),
519
+
520
+ 'eael-custom-css' => wp_unslash( $settings['eael-custom-css'] ),
521
+ 'eael-custom-js' => wp_unslash( $settings['eael-custom-js'] ),
522
+ );
523
+ update_option( 'eael_save_settings', $this->eael_settings );
524
+ return true;
525
+ die();
526
+
527
+
528
  }
529
 
530
  /**
531
  * Saving custom css in the header
532
+ * @param
533
  * @return string
534
+ * @since 1.1.2
535
  */
536
  public function eael_add_custom_code_in_wp_head() {
537
 
540
  <style>
541
  <?php echo( $this->eael_get_settings['eael-custom-css'] ); ?>
542
  </style>
543
+ <?php
544
 
545
+ }
546
 
547
  /**
548
  * Saving custom js in the footer
549
+ * @param
550
  * @return string
551
+ * @since 1.1.2
552
  */
553
  public function eael_add_custom_js_in_wp_footer() {
554
 
561
  </script>
562
  <?php
563
 
564
+ }
565
 
566
  }
567
 
assets/css/essential-addons-editor.css CHANGED
@@ -18,4 +18,10 @@
18
 
19
  .elementor-panel .elementor-control-eael_control_get_pro .elementor-control-field {
20
  display: none!important;
 
 
 
 
 
 
21
  }
18
 
19
  .elementor-panel .elementor-control-eael_control_get_pro .elementor-control-field {
20
  display: none!important;
21
+ }
22
+ .elementor-control-eael_pricing_table_style_pro_alert .elementor-control-title,
23
+ .elementor-control-eael_section_countdown_style_pro_alert .elementor-control-title,
24
+ .elementor-control-eael_fancy_text_style_pro_alert .elementor-control-title,
25
+ .elementor-control-eael_team_members_preset_pro_alert .elementor-control-title {
26
+ color: #f54;
27
  }
assets/css/essential-addons-elementor.css CHANGED
@@ -160,10 +160,10 @@
160
  .eael-product-carousel .slick-dotted.slick-slider {
161
  margin-bottom: 30px;
162
  }
163
- /*
164
- ==== FANCY TEXT STYLES ======
165
- */
166
 
 
 
 
167
  .eael-fancy-text-strings {
168
  display: inline-block;
169
  }
@@ -209,8 +209,19 @@
209
  opacity: 1;
210
  }
211
  }
212
- /* Creative Button styles */
 
 
 
 
 
 
 
 
213
 
 
 
 
214
  .eael-creative-button-align-center {
215
  text-align: center;
216
  }
@@ -443,48 +454,60 @@
443
  -webkit-transform: translate3d(0, 100%, 0);
444
  transform: translate3d(0, 100%, 0);
445
  }
446
- /* Countdown Styles */
 
 
447
 
 
448
  .eael-countdown-items {
449
- list-style: none;
450
- margin: 0;
451
- padding: 0;
452
- display: table;
453
- table-layout: fixed;
454
- width: 100%;
455
  }
456
- .eael-countdown-items>li {
457
- list-style: none;
458
- margin: 0;
459
- padding: 0;
460
- display: table-cell;
461
- position: relative;
 
462
  }
463
- .eael-countdown-item>div {
464
- text-align: center;
465
- padding: 20px;
 
466
  }
467
- .eael-countdown-label-block .eael-countdown-digits,
468
- .eael-countdown-label-block .eael-countdown-label {
469
- display: block;
470
- text-align: center;
471
  }
472
  .eael-countdown-digits {
473
- font-size: 54px;
474
- line-height: 1;
475
  }
 
476
  .eael-countdown-label {
477
- font-size: 18px;
478
- line-height: 1;
 
479
  }
 
480
  .eael-countdown-show-separator .eael-countdown-digits::after {
481
- content: ":";
482
- position: absolute;
483
- left: 98%;
484
- z-index: 9999;
485
  }
 
486
  .eael-countdown-item:last-child .eael-countdown-digits::after {
487
- display: none;
 
 
 
 
488
  }
489
  /* Post Timeline Styles */
490
 
@@ -1399,6 +1422,33 @@ body:not(.x-ethos):not(.x-integrity):not(.x-renew):not(.x-icon) .eael-product-ca
1399
  .eael-weform-container ul.wpuf-form li .wpuf-fields textarea {
1400
  max-width: 100%;
1401
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1402
  /* Post Grid Style */
1403
 
1404
  .eael-grid-post {
@@ -1579,6 +1629,78 @@ body:not(.x-ethos):not(.x-integrity):not(.x-renew):not(.x-icon) .eael-product-ca
1579
  width: 100%;
1580
  }
1581
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1582
  /* Info-box Style */
1583
 
1584
  .eael-infobox {} .eael-infobox .infobox-icon {} .eael-infobox .infobox-icon img {
@@ -2425,7 +2547,7 @@ h2.eael-elements-flip-box-heading {
2425
  background: #00c853;
2426
  border-radius: 50%;
2427
  /*border: 2px solid #00c853;*/
2428
-
2429
  margin-bottom: 30px;
2430
  text-align: center;
2431
  -webkit-transition: .5s;
@@ -2534,282 +2656,6 @@ h2.eael-elements-flip-box-heading {
2534
  .eael-pricing.style-2 .eael-pricing-item .body ul li:last-child {
2535
  border: none;
2536
  }
2537
- /* Pricing Table: Style 3 */
2538
-
2539
- .eael-pricing.style-3 {} .eael-pricing.style-3 .eael-pricing-item {
2540
- background: #262c37;
2541
- padding: 30px;
2542
- color: #fff;
2543
- }
2544
- .eael-pricing.style-3 .eael-pricing-item.featured {
2545
- position: relative;
2546
- z-index: 0;
2547
- }
2548
- .eael-pricing.style-3 .eael-pricing-item.featured:before {
2549
- content: "Featured";
2550
- position: absolute;
2551
- width: auto;
2552
- background: #E25A77;
2553
- color: #fff;
2554
- top: 35px;
2555
- right: -15px;
2556
- z-index: 10;
2557
- font-size: 10px;
2558
- font-weight: 600;
2559
- text-transform: uppercase;
2560
- padding: 0px 10px;
2561
- }
2562
- .eael-pricing.style-3 .eael-pricing-item.featured:after {
2563
- content: "";
2564
- position: absolute;
2565
- top: 20px;
2566
- right: -15px;
2567
- width: 0;
2568
- height: 0;
2569
- border-bottom: 15px solid #bf4a63;
2570
- border-right: 15px solid transparent;
2571
- z-index: 9;
2572
- opacity: 0.9;
2573
- }
2574
- .eael-pricing.style-3 .eael-pricing-item .header {
2575
- position: relative;
2576
- padding-bottom: 15px;
2577
- margin-bottom: 15px;
2578
- z-index: 0;
2579
- overflow: hidden;
2580
- }
2581
- .eael-pricing.style-3 .eael-pricing-item .header:after {
2582
- position: absolute;
2583
- content: "";
2584
- width: 100%;
2585
- height: 1px;
2586
- bottom: 0px;
2587
- left: 0px;
2588
- right: 0px;
2589
- margin: 0 auto;
2590
- z-index: 1;
2591
- -webkit-transition: 1s;
2592
- transition: 1s;
2593
- -webkit-transform: scaleX( 0.4);
2594
- transform: scaleX( 0.4);
2595
- background: #E25A77;
2596
- }
2597
- .eael-pricing.style-3 .eael-pricing-item:hover .header:after {
2598
- -webkit-transform: scaleX(1);
2599
- transform: scaleX(1);
2600
- }
2601
- .eael-pricing.style-3 .eael-pricing-item .header .title {
2602
- font-family: 'Raleway', sans-serif;
2603
- font-size: 28px;
2604
- font-weight: 400;
2605
- line-height: 40px;
2606
- margin: 0px;
2607
- }
2608
- .eael-pricing.style-3 .eael-pricing-item .header .subtitle {
2609
- font-size: 14px;
2610
- color: rgba( 255, 255, 255, .5);
2611
- }
2612
- .eael-pricing.style-3 .eael-pricing-item .eael-pricing-tag {
2613
- margin-bottom: 30px;
2614
- }
2615
- .eael-pricing.style-3 .eael-pricing-item .eael-pricing-tag .price-tag {
2616
- position: relative;
2617
- display: inline-block;
2618
- font-size: 36px;
2619
- font-weight: 700;
2620
- line-height: 0px;
2621
- padding-left: 12px;
2622
- z-index: 0;
2623
- }
2624
- .eael-pricing.style-3 .eael-pricing-item .price-tag:before {
2625
- content: "$";
2626
- position: absolute;
2627
- width: 10px;
2628
- height: 10px;
2629
- font-size: 16px;
2630
- font-weight: 700;
2631
- color: #fff;
2632
- top: -7px;
2633
- left: 0px;
2634
- z-index: 1;
2635
- }
2636
- .eael-pricing.style-3 .eael-pricing-item .eael-pricing-tag .price-period {} .eael-pricing.style-3 .eael-pricing-item .body {} .eael-pricing.style-3 .eael-pricing-item .body ul {
2637
- margin-bottom: 30px;
2638
- }
2639
- .eael-pricing.style-3 .eael-pricing-item .body ul li {
2640
- display: block;
2641
- width: 100%;
2642
- height: auto;
2643
- padding: 10px 0px;
2644
- font-size: 14px;
2645
- color: rgba( 255, 255, 255, .7);
2646
- border-bottom: 1px solid rgba( 9, 9, 9, .04);
2647
- }
2648
- .eael-pricing.style-3 .eael-pricing-item .body ul li:last-child {
2649
- border: none;
2650
- }
2651
- .eael-pricing.style-3 .eael-pricing-item .eael-pricing-tag.on-top {
2652
- margin-top: 15px;
2653
- margin-bottom: 15px;
2654
- }
2655
- /* Pricing Table : Style 4 */
2656
-
2657
- .eael-pricing.style-4 {
2658
- position: relative;
2659
- z-index: 0;
2660
- text-align: center;
2661
- overflow: hidden;
2662
- padding: 0px;
2663
- }
2664
- .eael-pricing.style-4 .eael-pricing-item {
2665
- padding: 0px 0px 30px 0px;
2666
- border-radius: 5px;
2667
- margin: 0px;
2668
- -webkit-transition: .5s;
2669
- transition: .5s;
2670
- }
2671
- .eael-pricing.style-4 .eael-pricing-item.featured:before {
2672
- content: "Featured";
2673
- position: absolute;
2674
- width: auto;
2675
- background: rgba( 0, 0, 0, 0.6);
2676
- color: #fff;
2677
- top: 15px;
2678
- right: 15px;
2679
- z-index: 10;
2680
- font-size: 13px;
2681
- font-weight: 600;
2682
- text-transform: uppercase;
2683
- padding: 0px 14px;
2684
- }
2685
- .eael-pricing.style-4 .eael-pricing-item:hover {
2686
- -webkit-box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
2687
- box-shadow: 0 14px 28px rgba(0, 0, 0, 0.25), 0 10px 10px rgba(0, 0, 0, 0.22);
2688
- }
2689
- .eael-pricing.style-4 .eael-pricing-item .header {
2690
- background: #C8E6C9;
2691
- padding: 25px 0px;
2692
- margin-bottom: 15px;
2693
- position: relative;
2694
- z-index: 0;
2695
- }
2696
- .eael-pricing.style-4 .eael-pricing-item .header .title {
2697
- font-size: 28px;
2698
- font-weight: 700;
2699
- line-height: 40px;
2700
- margin: 0px;
2701
- }
2702
- .eael-pricing.style-4 .eael-pricing-item .header .subititle {
2703
- font-size: 14px;
2704
- font-weight: 600;
2705
- color: #6d6d6d;
2706
- }
2707
- .eael-pricing.style-4 .eael-pricing-item .eael-pricing-tag {
2708
- position: relative;
2709
- z-index: 0;
2710
- padding: 15px 0px;
2711
- margin-bottom: 15px;
2712
- }
2713
- .eael-pricing.style-4 .eael-pricing-item .eael-pricing-tag:after {
2714
- content: "";
2715
- position: absolute;
2716
- width: 140px;
2717
- height: 1px;
2718
- bottom: 0px;
2719
- left: 0px;
2720
- right: 0px;
2721
- margin: 0 auto;
2722
- z-index: 1;
2723
- background: rgba( 9, 9, 9, .04);
2724
- }
2725
- .eael-pricing.style-4 .eael-pricing-item .price-tag {
2726
- position: relative;
2727
- display: inline-block;
2728
- font-size: 28px;
2729
- font-weight: 500;
2730
- line-height: 0px;
2731
- margin: 0px auto;
2732
- }
2733
- .eael-pricing.style-4 .eael-pricing-item .price-tag:before {
2734
- content: "$";
2735
- position: absolute;
2736
- width: 10px;
2737
- height: 10px;
2738
- font-size: 16px;
2739
- font-weight: 700;
2740
- color: #00C853;
2741
- top: -7px;
2742
- left: -12px;
2743
- z-index: 1;
2744
- }
2745
- .eael-pricing.style-4 .eael-pricing-item .price-period {
2746
- color: #999;
2747
- }
2748
- .eael-pricing.style-4 .eael-pricing-item .body {} .eael-pricing.style-4 .eael-pricing-item .body ul {
2749
- display: block;
2750
- width: 100%;
2751
- margin-bottom: 15px;
2752
- }
2753
- .eael-pricing.style-4 .eael-pricing-item .body ul li {
2754
- display: block;
2755
- width: 100%;
2756
- height: auto;
2757
- padding: 10px 0px;
2758
- font-size: 14px;
2759
- color: #6d6d6d;
2760
- border-bottom: 1px solid rgba( 9, 9, 9, .04);
2761
- }
2762
- .eael-pricing.style-4 .eael-pricing-item .body ul li:last-child {
2763
- border: none;
2764
- }
2765
- .eael-pricing.style-4 .eael-pricing-item .eael-pricing-image {
2766
- position: relative;
2767
- -webkit-display: flex;
2768
- display: flex;
2769
- -webkit-justify-content: center;
2770
- justify-content: center;
2771
- -webkit-align-items: center;
2772
- align-items: center;
2773
- z-index: 0;
2774
- width: 100%;
2775
- height: 120px;
2776
- background-size: cover;
2777
- background-repeat: no-repeat;
2778
- background-position: center;
2779
- padding-top: 15px;
2780
- }
2781
- .eael-pricing.style-4 .eael-pricing-item .eael-pricing-image:after {
2782
- position: absolute;
2783
- content: "";
2784
- width: 100%;
2785
- height: 100%;
2786
- top: 0px;
2787
- left: 0px;
2788
- right: 0px;
2789
- bottom: 0px;
2790
- background: rgba( 0, 0, 0, 0.5);
2791
- z-index: -1;
2792
- }
2793
- .eael-pricing.style-4 .eael-pricing-item .eael-pricing-image .eael-pricing-tag {
2794
- padding: 0px;
2795
- margin: 0px;
2796
- }
2797
- .eael-pricing.style-4 .eael-pricing-item .eael-pricing-image .eael-pricing-tag .price-tag {
2798
- font-size: 48px;
2799
- font-weight: 700;
2800
- color: #fff;
2801
- line-height: 0px;
2802
- margin-bottom: 0px;
2803
- }
2804
- .eael-pricing.style-4 .eael-pricing-item .eael-pricing-image .eael-pricing-tag .price-tag:before {
2805
- font-size: 24px;
2806
- top: -20px;
2807
- left: -18px;
2808
- }
2809
- .eael-pricing.style-4 .eael-pricing-item .eael-pricing-image .eael-pricing-tag .price-period {
2810
- font-size: 13px;
2811
- font-weight: 600;
2812
- }
2813
  /* Media Query */
2814
 
2815
  @media only screen and ( min-width: 768px) and (max-width: 992px) {
160
  .eael-product-carousel .slick-dotted.slick-slider {
161
  margin-bottom: 30px;
162
  }
 
 
 
163
 
164
+ /**
165
+ * Fancy Text Style
166
+ */
167
  .eael-fancy-text-strings {
168
  display: inline-block;
169
  }
209
  opacity: 1;
210
  }
211
  }
212
+ /* Style 2 */
213
+ .eael-fancy-text-container.style-2 {
214
+ font-size: 24px;
215
+ }
216
+ .eael-fancy-text-container.style-2 .eael-fancy-text-strings {
217
+ background: #ff5544;
218
+ color: #fff;
219
+ padding: 10px 25px;
220
+ }
221
 
222
+ /**
223
+ * Creative Button styles
224
+ */
225
  .eael-creative-button-align-center {
226
  text-align: center;
227
  }
454
  -webkit-transform: translate3d(0, 100%, 0);
455
  transform: translate3d(0, 100%, 0);
456
  }
457
+ /**
458
+ * Countdown Styles
459
+ */
460
 
461
+ /* General */
462
  .eael-countdown-items {
463
+ list-style: none;
464
+ margin: 0;
465
+ padding: 0;
466
+ display: table;
467
+ table-layout: fixed;
468
+ width: 100%;
469
  }
470
+
471
+ .eael-countdown-items > li {
472
+ list-style: none;
473
+ margin: 0;
474
+ padding: 0;
475
+ display: table-cell;
476
+ position: relative;
477
  }
478
+
479
+ .eael-countdown-item > div {
480
+ text-align: center;
481
+ padding: 20px;
482
  }
483
+ .eael-countdown-label-block .eael-countdown-digits, .eael-countdown-label-block .eael-countdown-label {
484
+ display: block;
485
+ text-align: center;
 
486
  }
487
  .eael-countdown-digits {
488
+ font-size: 54px;
489
+ line-height: 1;
490
  }
491
+
492
  .eael-countdown-label {
493
+ font-size: 18px;
494
+ line-height: 1;
495
+ color: #ffffff;
496
  }
497
+
498
  .eael-countdown-show-separator .eael-countdown-digits::after {
499
+ content: ":";
500
+ position: absolute;
501
+ left: 98%;
502
+ z-index: 9999;
503
  }
504
+
505
  .eael-countdown-item:last-child .eael-countdown-digits::after {
506
+ display: none;
507
+ }
508
+ /* Style 1 */
509
+ .eael-countdown-items.style-1 .eael-countdown-item > div {
510
+ background: #262625;
511
  }
512
  /* Post Timeline Styles */
513
 
1422
  .eael-weform-container ul.wpuf-form li .wpuf-fields textarea {
1423
  max-width: 100%;
1424
  }
1425
+ /* Ninja Form Styles */
1426
+
1427
+ .eael-ninja-container input, .eael-ninja-container textarea {
1428
+ height: auto;
1429
+ padding: 10px;
1430
+ }
1431
+
1432
+ .eael-contact-form-align-center .eael-ninja-container, .eael-contact-form-btn-align-center .eael-ninja-container .nf-field .nf-field-element input[type="button"] {
1433
+ margin-left: auto !important;
1434
+ margin-right: auto !important;
1435
+ display: block;
1436
+ float: none;
1437
+ }
1438
+
1439
+ .eael-contact-form-align-left .eael-ninja-container, .eael-contact-form-btn-align-left .eael-ninja-container .nf-field .nf-field-element input[type="button"] {
1440
+ float: left;
1441
+ width: auto;
1442
+ }
1443
+
1444
+ .eael-contact-form-align-right .eael-ninja-container, .eael-contact-form-btn-align-right .eael-ninja-container .nf-field .nf-field-element input[type="button"] {
1445
+ float: right;
1446
+ width: auto;
1447
+ }
1448
+
1449
+ .eael-ninja-container ul.wpuf-form li .wpuf-fields input[type="text"], .eael-ninja-container .nf-field .nf-field-element input[type="password"], .eael-ninja-container ul.wpuf-form li .wpuf-fields input[type="email"], .eael-ninja-container .nf-field .nf-field-element input[type="url"], .eael-ninja-container ul.wpuf-form li .wpuf-fields input[type="number"], .eael-ninja-container .nf-field .nf-field-element textarea {
1450
+ max-width: 100%;
1451
+ }
1452
  /* Post Grid Style */
1453
 
1454
  .eael-grid-post {
1629
  width: 100%;
1630
  }
1631
  }
1632
+ /* Load More Button */
1633
+ .eael-load-more-button-wrap {
1634
+ width: 100%;
1635
+ display: block;
1636
+ margin: 20px auto;
1637
+ clear: both;
1638
+ }
1639
+ .eael-load-more-button {
1640
+ position: relative;
1641
+ text-transform: uppercase;
1642
+ margin: 0 auto;
1643
+ display: block;
1644
+ border: 0;
1645
+ padding: 15px 30px;
1646
+ z-index: 2;
1647
+ cursor: pointer;
1648
+ font-weight: bold;
1649
+ font-size: 14px;
1650
+ letter-spacing: .25em;
1651
+ transition: all .5s;
1652
+ overflow: hidden;
1653
+ }
1654
+
1655
+ .eael-load-more-button:hover {
1656
+ background: #27bdbd;
1657
+ }
1658
+
1659
+ .button--hide {
1660
+ opacity: 0;
1661
+ }
1662
+
1663
+ .button--loading {
1664
+ padding-left: 50px!important;
1665
+ }
1666
+
1667
+ .eael-load-more-button .button__loader {
1668
+ float: left;
1669
+ position: absolute;
1670
+ left: -50px;
1671
+ top: 10px;
1672
+ transition: all .2s;
1673
+ }
1674
+
1675
+ .button--loading .button__loader {
1676
+ left: 15px;
1677
+ }
1678
+
1679
+ .eael-btn-loader, .eael-btn-loader:after {
1680
+ border-radius: 50%;
1681
+ width: 20px;
1682
+ height: 20px;
1683
+ }
1684
+ .eael-btn-loader {
1685
+ font-size: 10px;
1686
+ position: relative;
1687
+ text-indent: -9999em;
1688
+ border-top: 4px solid rgba(255, 255, 255, 0.2);
1689
+ border-right: 4px solid rgba(255, 255, 255, 0.2);
1690
+ border-bottom: 4px solid rgba(255, 255, 255, 0.2);
1691
+ border-left: 4px solid #ffffff;
1692
+ transform: translateZ(0);
1693
+ animation: loaderSpin 1.1s infinite linear;
1694
+ }
1695
+
1696
+ @keyframes loaderSpin {
1697
+ 0% {
1698
+ transform: rotate(0deg);
1699
+ }
1700
+ 100% {
1701
+ transform: rotate(360deg);
1702
+ }
1703
+ }
1704
  /* Info-box Style */
1705
 
1706
  .eael-infobox {} .eael-infobox .infobox-icon {} .eael-infobox .infobox-icon img {
2547
  background: #00c853;
2548
  border-radius: 50%;
2549
  /*border: 2px solid #00c853;*/
2550
+
2551
  margin-bottom: 30px;
2552
  text-align: center;
2553
  -webkit-transition: .5s;
2656
  .eael-pricing.style-2 .eael-pricing-item .body ul li:last-child {
2657
  border: none;
2658
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2659
  /* Media Query */
2660
 
2661
  @media only screen and ( min-width: 768px) and (max-width: 992px) {
assets/js/load-more.js ADDED
@@ -0,0 +1,213 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function($) {
2
+ 'use strict';
3
+
4
+ window.loadMore = function( options, settings ) {
5
+
6
+ // Default Values for Load More Js
7
+ var optionsValue = {
8
+ siteUrl: options.siteUrl,
9
+ totalPosts: options.totalPosts,
10
+ loadMoreBtn: options.loadMoreBtn,
11
+ postContainer: options.postContainer,
12
+ postStyle: options.postStyle, // block, grid, timeline
13
+ }
14
+ // Settings Values
15
+ var settingsValue = {
16
+ perPage: settings.perPage,
17
+ postOrder: settings.postOrder,
18
+ showImage: settings.showImage,
19
+ showTitle: settings.showTitle,
20
+ showExcerpt: settings.showExcerpt,
21
+ showMeta: settings.showMeta,
22
+ metaPosition: settings.metaPosition,
23
+ excerptLength: settings.excerptLength,
24
+ btnText: settings.btnText,
25
+ categories: settings.categories,
26
+ }
27
+
28
+ var offset = settingsValue.perPage;
29
+
30
+ optionsValue.loadMoreBtn.on( 'click', function( e ) {
31
+ e.preventDefault();
32
+ $(this).addClass( 'button--loading' );
33
+ $(this).find( 'span' ).html( 'Loading...' );
34
+
35
+ // Rest Api Url Settings
36
+ if( settings.categories == '' ) {
37
+ var restUrl = optionsValue.siteUrl+'wp-json/wp/v2/posts?per_page='+settingsValue.perPage+'&offset='+offset+'&order='+settingsValue.postOrder+'&_embed';
38
+ }else {
39
+ var restUrl = optionsValue.siteUrl+'wp-json/wp/v2/posts?categories='+settingsValue.categories+'&per_page='+settingsValue.perPage+'&offset='+offset+'&order='+settingsValue.postOrder+'&_embed';
40
+ }
41
+
42
+ $.ajax({
43
+ url: restUrl,
44
+ type: 'GET',
45
+ success: function( res ) {
46
+ createPostHtml( res );
47
+ if( optionsValue.postStyle === 'grid' ) {
48
+ $( '.eael-post-grid' ).masonry( 'destroy' );
49
+ $('.eael-post-grid').masonry({
50
+ itemSelector: '.eael-grid-post',
51
+ percentPosition: true,
52
+ columnWidth: '.eael-post-grid-column'
53
+ });
54
+ }
55
+ optionsValue.loadMoreBtn.removeClass( 'button--loading' );
56
+ optionsValue.loadMoreBtn.find( 'span' ).html( settingsValue.btnText );
57
+
58
+ offset = offset + settingsValue.perPage;
59
+ if( offset >= optionsValue.totalPosts ) {
60
+ optionsValue.loadMoreBtn.remove();
61
+ }
62
+ },
63
+ error: function( err ) {
64
+ console.log( 'Something went wrong!' );
65
+ }
66
+ });
67
+ } );
68
+
69
+ /**
70
+ * Create Html Post Block
71
+ */
72
+ function createPostHtml( data ) {
73
+
74
+ if( optionsValue.postStyle === 'timeline' ) {
75
+ var html = '';
76
+ for (var i = 0; i < data.length; i++) {
77
+ // Get Image
78
+ if (data[i]._links['wp:featuredmedia']) {
79
+ var feature_image = 'style="background-image: url(' + data[i]._embedded['wp:featuredmedia'][0].source_url + ');"';
80
+ } else {
81
+ var feature_image = '';
82
+ }
83
+ // Get Date
84
+ var getPostDate = new Date(data[i].date);
85
+
86
+ html += '<article class="eael-timeline-post eael-timeline-column">';
87
+ html += '<div class="eael-timeline-bullet"></div>';
88
+ html += '<div class="eael-timeline-post-inner">';
89
+ html += '<a class="eael-timeline-post-link" href="' + data[i].link + '" title="' + data[i].title.rendered + '">';
90
+ html += '<time datetime="' + get_post_date(getPostDate) + '">' + get_post_date(getPostDate) + '</time>';
91
+ html += '<div class="eael-timeline-post-image" ' + feature_image + ' ></div>';
92
+ if ( settingsValue.showExcerpt == 1 ) {
93
+ html += '<div class="eael-timeline-post-excerpt">';
94
+ html += '' + data[i].excerpt.rendered.split(/\s+/).slice(0, settingsValue.excerptLength).join(" ") + '...';
95
+ html += '</div>';
96
+ }
97
+ if ( settingsValue.showTitle == 1 ) {
98
+ html += '<div class="eael-timeline-post-title">';
99
+ html += '<h2>' + data[i].title.rendered + '</h2>';
100
+ html += '</div>';
101
+ }
102
+ html += '</a>';
103
+ html += '</div>';
104
+ html += '</div>';
105
+ html += '</article>';
106
+ }
107
+ optionsValue.postContainer.append(html);
108
+ }else if( optionsValue.postStyle === 'grid' ) {
109
+ var html = '';
110
+ for( var i = 0; i < data.length; i++ ) {
111
+ // Get Image
112
+ if( data[i]._links['wp:featuredmedia'] ) {
113
+ var feature_image = '<img src="'+data[i]._embedded['wp:featuredmedia'][0].source_url+'" />';
114
+ }else {
115
+ var feature_image = '';
116
+ }
117
+ // Get Date
118
+ var getPostDate = new Date( data[i].date );
119
+
120
+ html += '<article class="eael-grid-post eael-post-grid-column">';
121
+ html += '<div class="eael-grid-post-holder">';
122
+ html += '<div class="eael-grid-post-holder-inner">';
123
+ if( data[i]._links['wp:featuredmedia'] ) {
124
+ html += '<div class="eael-entry-media">';
125
+ html += '<div class="eael-entry-overlay">';
126
+ html += '<i class="fa fa-long-arrow-right" aria-hidden="true"></i>';
127
+ html += '<a href="'+data[i].link+'"></a>';
128
+ html += '</div>';
129
+ if( settingsValue.showImage == 1 ) {
130
+ html += '<div class="eael-entry-thumbnail">'+feature_image;
131
+ html += '</div>';
132
+ }
133
+ html += '</div>';
134
+ }
135
+ html += '<div class="eael-entry-wrapper">';
136
+
137
+ html += '<header class="eael-entry-header">';
138
+ if( settingsValue.showTitle == 1 ) {
139
+ html += '<h2 class="eael-entry-title"><a class="eael-grid-post-link" href="'+data[i].link+'" title="'+data[i].title.rendered+'">'+data[i].title.rendered+'</a></h2>';
140
+ }
141
+ if( settingsValue.showMeta == 1 && settingsValue.metaPosition == 'meta-entry-header') {
142
+ html += '<div class="eael-entry-meta">';
143
+ html += '<span class="eael-posted-by"><a href="'+data[i]._embedded.author[0].link+'">'+data[i]._embedded.author[0].name+'</a></span>';
144
+ html += '<span class="eael-posted-on"><time datetime="'+get_post_date( getPostDate )+'">'+get_post_date( getPostDate )+'</time></span>';
145
+ html += '</div>';
146
+ }
147
+ html += '</header>';
148
+
149
+ html += '<div class="eael-entry-content">';
150
+ if( settingsValue.showExcerpt == 1 ) {
151
+ html += '<div class="eael-grid-post-excerpt">';
152
+ html += '<p>'+data[i].excerpt.rendered.split( /\s+/ ).slice( 0, settingsValue.excerptLength ).join( " " )+'...</p>';
153
+ html += '</div>';
154
+ }
155
+ html += '</div>';
156
+ html += '</div>';
157
+ if( settingsValue.showMeta == 1 && settingsValue.metaPosition == 'meta-entry-footer' ) {
158
+ html += '<div class="eael-entry-footer">';
159
+ html += '<div class="eael-author-avatar">';
160
+ html += '<a href="'+data[i]._embedded.author[0].link+'">';
161
+ html += '<img src="'+data[i]._embedded.author[0].avatar_urls[96]+'" class="avatar avatar-96 photo" />';
162
+ html += '</a>';
163
+ html += '</div>';
164
+ html += '<div class="eael-entry-meta">';
165
+ html += '<div class="eael-posted-by">';
166
+ html += '<a href="'+data[i]._embedded.author[0].link+'">'+data[i]._embedded.author[0].name+'</a>';
167
+ html += '</div>';
168
+ html += '<div class="eael-posted-on">';
169
+ html += '<time datetime="'+get_post_date( getPostDate )+'">'+get_post_date( getPostDate );
170
+ html += '</time>';
171
+ html += '</div>';
172
+ html += '</div>';
173
+ html += '</div>';
174
+ }
175
+ html += '</div>';
176
+ html += '</article>';
177
+ }
178
+ optionsValue.postContainer.append( html );
179
+ }
180
+
181
+ }
182
+
183
+ }
184
+
185
+
186
+
187
+ /**
188
+ * Get Date
189
+ */
190
+ function get_post_date( date ) {
191
+ var getDate = new Date( date );
192
+ var month = new Array();
193
+ month[0] = "January";
194
+ month[1] = "February";
195
+ month[2] = "March";
196
+ month[3] = "April";
197
+ month[4] = "May";
198
+ month[5] = "June";
199
+ month[6] = "July";
200
+ month[7] = "August";
201
+ month[8] = "September";
202
+ month[9] = "October";
203
+ month[10] = "November";
204
+ month[11] = "December";
205
+ var dayNum = getDate.getDate();
206
+ var monthName = month[ getDate.getMonth() ];
207
+ var getYear = getDate.getFullYear();
208
+
209
+ var returnYear = monthName + ' ' + dayNum + ', ' + getYear;
210
+ return returnYear;
211
+ }
212
+
213
+ })(jQuery);
assets/js/masonry.min.js ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Masonry PACKAGED v4.2.0
3
+ * Cascading grid layout library
4
+ * http://masonry.desandro.com
5
+ * MIT License
6
+ * by David DeSandro
7
+ */
8
+
9
+ !function(t,e){"function"==typeof define&&define.amd?define("jquery-bridget/jquery-bridget",["jquery"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("jquery")):t.jQueryBridget=e(t,t.jQuery)}(window,function(t,e){"use strict";function i(i,r,a){function h(t,e,n){var o,r="$()."+i+'("'+e+'")';return t.each(function(t,h){var u=a.data(h,i);if(!u)return void s(i+" not initialized. Cannot call methods, i.e. "+r);var d=u[e];if(!d||"_"==e.charAt(0))return void s(r+" is not a valid method");var l=d.apply(u,n);o=void 0===o?l:o}),void 0!==o?o:t}function u(t,e){t.each(function(t,n){var o=a.data(n,i);o?(o.option(e),o._init()):(o=new r(n,e),a.data(n,i,o))})}a=a||e||t.jQuery,a&&(r.prototype.option||(r.prototype.option=function(t){a.isPlainObject(t)&&(this.options=a.extend(!0,this.options,t))}),a.fn[i]=function(t){if("string"==typeof t){var e=o.call(arguments,1);return h(this,t,e)}return u(this,t),this},n(a))}function n(t){!t||t&&t.bridget||(t.bridget=i)}var o=Array.prototype.slice,r=t.console,s="undefined"==typeof r?function(){}:function(t){r.error(t)};return n(e||t.jQuery),i}),function(t,e){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",e):"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}("undefined"!=typeof window?window:this,function(){function t(){}var e=t.prototype;return e.on=function(t,e){if(t&&e){var i=this._events=this._events||{},n=i[t]=i[t]||[];return-1==n.indexOf(e)&&n.push(e),this}},e.once=function(t,e){if(t&&e){this.on(t,e);var i=this._onceEvents=this._onceEvents||{},n=i[t]=i[t]||{};return n[e]=!0,this}},e.off=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=i.indexOf(e);return-1!=n&&i.splice(n,1),this}},e.emitEvent=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var n=0,o=i[n];e=e||[];for(var r=this._onceEvents&&this._onceEvents[t];o;){var s=r&&r[o];s&&(this.off(t,o),delete r[o]),o.apply(this,e),n+=s?0:1,o=i[n]}return this}},t}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("get-size/get-size",[],function(){return e()}):"object"==typeof module&&module.exports?module.exports=e():t.getSize=e()}(window,function(){"use strict";function t(t){var e=parseFloat(t),i=-1==t.indexOf("%")&&!isNaN(e);return i&&e}function e(){}function i(){for(var t={width:0,height:0,innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0},e=0;u>e;e++){var i=h[e];t[i]=0}return t}function n(t){var e=getComputedStyle(t);return e||a("Style returned "+e+". Are you running this code in a hidden iframe on Firefox? See http://bit.ly/getsizebug1"),e}function o(){if(!d){d=!0;var e=document.createElement("div");e.style.width="200px",e.style.padding="1px 2px 3px 4px",e.style.borderStyle="solid",e.style.borderWidth="1px 2px 3px 4px",e.style.boxSizing="border-box";var i=document.body||document.documentElement;i.appendChild(e);var o=n(e);r.isBoxSizeOuter=s=200==t(o.width),i.removeChild(e)}}function r(e){if(o(),"string"==typeof e&&(e=document.querySelector(e)),e&&"object"==typeof e&&e.nodeType){var r=n(e);if("none"==r.display)return i();var a={};a.width=e.offsetWidth,a.height=e.offsetHeight;for(var d=a.isBorderBox="border-box"==r.boxSizing,l=0;u>l;l++){var c=h[l],f=r[c],m=parseFloat(f);a[c]=isNaN(m)?0:m}var p=a.paddingLeft+a.paddingRight,g=a.paddingTop+a.paddingBottom,y=a.marginLeft+a.marginRight,v=a.marginTop+a.marginBottom,_=a.borderLeftWidth+a.borderRightWidth,z=a.borderTopWidth+a.borderBottomWidth,E=d&&s,b=t(r.width);b!==!1&&(a.width=b+(E?0:p+_));var x=t(r.height);return x!==!1&&(a.height=x+(E?0:g+z)),a.innerWidth=a.width-(p+_),a.innerHeight=a.height-(g+z),a.outerWidth=a.width+y,a.outerHeight=a.height+v,a}}var s,a="undefined"==typeof console?e:function(t){console.error(t)},h=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"],u=h.length,d=!1;return r}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("desandro-matches-selector/matches-selector",e):"object"==typeof module&&module.exports?module.exports=e():t.matchesSelector=e()}(window,function(){"use strict";var t=function(){var t=window.Element.prototype;if(t.matches)return"matches";if(t.matchesSelector)return"matchesSelector";for(var e=["webkit","moz","ms","o"],i=0;i<e.length;i++){var n=e[i],o=n+"MatchesSelector";if(t[o])return o}}();return function(e,i){return e[t](i)}}),function(t,e){"function"==typeof define&&define.amd?define("fizzy-ui-utils/utils",["desandro-matches-selector/matches-selector"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("desandro-matches-selector")):t.fizzyUIUtils=e(t,t.matchesSelector)}(window,function(t,e){var i={};i.extend=function(t,e){for(var i in e)t[i]=e[i];return t},i.modulo=function(t,e){return(t%e+e)%e},i.makeArray=function(t){var e=[];if(Array.isArray(t))e=t;else if(t&&"object"==typeof t&&"number"==typeof t.length)for(var i=0;i<t.length;i++)e.push(t[i]);else e.push(t);return e},i.removeFrom=function(t,e){var i=t.indexOf(e);-1!=i&&t.splice(i,1)},i.getParent=function(t,i){for(;t!=document.body;)if(t=t.parentNode,e(t,i))return t},i.getQueryElement=function(t){return"string"==typeof t?document.querySelector(t):t},i.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},i.filterFindElements=function(t,n){t=i.makeArray(t);var o=[];return t.forEach(function(t){if(t instanceof HTMLElement){if(!n)return void o.push(t);e(t,n)&&o.push(t);for(var i=t.querySelectorAll(n),r=0;r<i.length;r++)o.push(i[r])}}),o},i.debounceMethod=function(t,e,i){var n=t.prototype[e],o=e+"Timeout";t.prototype[e]=function(){var t=this[o];t&&clearTimeout(t);var e=arguments,r=this;this[o]=setTimeout(function(){n.apply(r,e),delete r[o]},i||100)}},i.docReady=function(t){var e=document.readyState;"complete"==e||"interactive"==e?setTimeout(t):document.addEventListener("DOMContentLoaded",t)},i.toDashed=function(t){return t.replace(/(.)([A-Z])/g,function(t,e,i){return e+"-"+i}).toLowerCase()};var n=t.console;return i.htmlInit=function(e,o){i.docReady(function(){var r=i.toDashed(o),s="data-"+r,a=document.querySelectorAll("["+s+"]"),h=document.querySelectorAll(".js-"+r),u=i.makeArray(a).concat(i.makeArray(h)),d=s+"-options",l=t.jQuery;u.forEach(function(t){var i,r=t.getAttribute(s)||t.getAttribute(d);try{i=r&&JSON.parse(r)}catch(a){return void(n&&n.error("Error parsing "+s+" on "+t.className+": "+a))}var h=new e(t,i);l&&l.data(t,o,h)})})},i}),function(t,e){"function"==typeof define&&define.amd?define("outlayer/item",["ev-emitter/ev-emitter","get-size/get-size"],e):"object"==typeof module&&module.exports?module.exports=e(require("ev-emitter"),require("get-size")):(t.Outlayer={},t.Outlayer.Item=e(t.EvEmitter,t.getSize))}(window,function(t,e){"use strict";function i(t){for(var e in t)return!1;return e=null,!0}function n(t,e){t&&(this.element=t,this.layout=e,this.position={x:0,y:0},this._create())}function o(t){return t.replace(/([A-Z])/g,function(t){return"-"+t.toLowerCase()})}var r=document.documentElement.style,s="string"==typeof r.transition?"transition":"WebkitTransition",a="string"==typeof r.transform?"transform":"WebkitTransform",h={WebkitTransition:"webkitTransitionEnd",transition:"transitionend"}[s],u={transform:a,transition:s,transitionDuration:s+"Duration",transitionProperty:s+"Property",transitionDelay:s+"Delay"},d=n.prototype=Object.create(t.prototype);d.constructor=n,d._create=function(){this._transn={ingProperties:{},clean:{},onEnd:{}},this.css({position:"absolute"})},d.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},d.getSize=function(){this.size=e(this.element)},d.css=function(t){var e=this.element.style;for(var i in t){var n=u[i]||i;e[n]=t[i]}},d.getPosition=function(){var t=getComputedStyle(this.element),e=this.layout._getOption("originLeft"),i=this.layout._getOption("originTop"),n=t[e?"left":"right"],o=t[i?"top":"bottom"],r=this.layout.size,s=-1!=n.indexOf("%")?parseFloat(n)/100*r.width:parseInt(n,10),a=-1!=o.indexOf("%")?parseFloat(o)/100*r.height:parseInt(o,10);s=isNaN(s)?0:s,a=isNaN(a)?0:a,s-=e?r.paddingLeft:r.paddingRight,a-=i?r.paddingTop:r.paddingBottom,this.position.x=s,this.position.y=a},d.layoutPosition=function(){var t=this.layout.size,e={},i=this.layout._getOption("originLeft"),n=this.layout._getOption("originTop"),o=i?"paddingLeft":"paddingRight",r=i?"left":"right",s=i?"right":"left",a=this.position.x+t[o];e[r]=this.getXValue(a),e[s]="";var h=n?"paddingTop":"paddingBottom",u=n?"top":"bottom",d=n?"bottom":"top",l=this.position.y+t[h];e[u]=this.getYValue(l),e[d]="",this.css(e),this.emitEvent("layout",[this])},d.getXValue=function(t){var e=this.layout._getOption("horizontal");return this.layout.options.percentPosition&&!e?t/this.layout.size.width*100+"%":t+"px"},d.getYValue=function(t){var e=this.layout._getOption("horizontal");return this.layout.options.percentPosition&&e?t/this.layout.size.height*100+"%":t+"px"},d._transitionTo=function(t,e){this.getPosition();var i=this.position.x,n=this.position.y,o=parseInt(t,10),r=parseInt(e,10),s=o===this.position.x&&r===this.position.y;if(this.setPosition(t,e),s&&!this.isTransitioning)return void this.layoutPosition();var a=t-i,h=e-n,u={};u.transform=this.getTranslate(a,h),this.transition({to:u,onTransitionEnd:{transform:this.layoutPosition},isCleaning:!0})},d.getTranslate=function(t,e){var i=this.layout._getOption("originLeft"),n=this.layout._getOption("originTop");return t=i?t:-t,e=n?e:-e,"translate3d("+t+"px, "+e+"px, 0)"},d.goTo=function(t,e){this.setPosition(t,e),this.layoutPosition()},d.moveTo=d._transitionTo,d.setPosition=function(t,e){this.position.x=parseInt(t,10),this.position.y=parseInt(e,10)},d._nonTransition=function(t){this.css(t.to),t.isCleaning&&this._removeStyles(t.to);for(var e in t.onTransitionEnd)t.onTransitionEnd[e].call(this)},d.transition=function(t){if(!parseFloat(this.layout.options.transitionDuration))return void this._nonTransition(t);var e=this._transn;for(var i in t.onTransitionEnd)e.onEnd[i]=t.onTransitionEnd[i];for(i in t.to)e.ingProperties[i]=!0,t.isCleaning&&(e.clean[i]=!0);if(t.from){this.css(t.from);var n=this.element.offsetHeight;n=null}this.enableTransition(t.to),this.css(t.to),this.isTransitioning=!0};var l="opacity,"+o(a);d.enableTransition=function(){if(!this.isTransitioning){var t=this.layout.options.transitionDuration;t="number"==typeof t?t+"ms":t,this.css({transitionProperty:l,transitionDuration:t,transitionDelay:this.staggerDelay||0}),this.element.addEventListener(h,this,!1)}},d.onwebkitTransitionEnd=function(t){this.ontransitionend(t)},d.onotransitionend=function(t){this.ontransitionend(t)};var c={"-webkit-transform":"transform"};d.ontransitionend=function(t){if(t.target===this.element){var e=this._transn,n=c[t.propertyName]||t.propertyName;if(delete e.ingProperties[n],i(e.ingProperties)&&this.disableTransition(),n in e.clean&&(this.element.style[t.propertyName]="",delete e.clean[n]),n in e.onEnd){var o=e.onEnd[n];o.call(this),delete e.onEnd[n]}this.emitEvent("transitionEnd",[this])}},d.disableTransition=function(){this.removeTransitionStyles(),this.element.removeEventListener(h,this,!1),this.isTransitioning=!1},d._removeStyles=function(t){var e={};for(var i in t)e[i]="";this.css(e)};var f={transitionProperty:"",transitionDuration:"",transitionDelay:""};return d.removeTransitionStyles=function(){this.css(f)},d.stagger=function(t){t=isNaN(t)?0:t,this.staggerDelay=t+"ms"},d.removeElem=function(){this.element.parentNode.removeChild(this.element),this.css({display:""}),this.emitEvent("remove",[this])},d.remove=function(){return s&&parseFloat(this.layout.options.transitionDuration)?(this.once("transitionEnd",function(){this.removeElem()}),void this.hide()):void this.removeElem()},d.reveal=function(){delete this.isHidden,this.css({display:""});var t=this.layout.options,e={},i=this.getHideRevealTransitionEndProperty("visibleStyle");e[i]=this.onRevealTransitionEnd,this.transition({from:t.hiddenStyle,to:t.visibleStyle,isCleaning:!0,onTransitionEnd:e})},d.onRevealTransitionEnd=function(){this.isHidden||this.emitEvent("reveal")},d.getHideRevealTransitionEndProperty=function(t){var e=this.layout.options[t];if(e.opacity)return"opacity";for(var i in e)return i},d.hide=function(){this.isHidden=!0,this.css({display:""});var t=this.layout.options,e={},i=this.getHideRevealTransitionEndProperty("hiddenStyle");e[i]=this.onHideTransitionEnd,this.transition({from:t.visibleStyle,to:t.hiddenStyle,isCleaning:!0,onTransitionEnd:e})},d.onHideTransitionEnd=function(){this.isHidden&&(this.css({display:"none"}),this.emitEvent("hide"))},d.destroy=function(){this.css({position:"",left:"",right:"",top:"",bottom:"",transition:"",transform:""})},n}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("outlayer/outlayer",["ev-emitter/ev-emitter","get-size/get-size","fizzy-ui-utils/utils","./item"],function(i,n,o,r){return e(t,i,n,o,r)}):"object"==typeof module&&module.exports?module.exports=e(t,require("ev-emitter"),require("get-size"),require("fizzy-ui-utils"),require("./item")):t.Outlayer=e(t,t.EvEmitter,t.getSize,t.fizzyUIUtils,t.Outlayer.Item)}(window,function(t,e,i,n,o){"use strict";function r(t,e){var i=n.getQueryElement(t);if(!i)return void(h&&h.error("Bad element for "+this.constructor.namespace+": "+(i||t)));this.element=i,u&&(this.$element=u(this.element)),this.options=n.extend({},this.constructor.defaults),this.option(e);var o=++l;this.element.outlayerGUID=o,c[o]=this,this._create();var r=this._getOption("initLayout");r&&this.layout()}function s(t){function e(){t.apply(this,arguments)}return e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e}function a(t){if("number"==typeof t)return t;var e=t.match(/(^\d*\.?\d*)(\w*)/),i=e&&e[1],n=e&&e[2];if(!i.length)return 0;i=parseFloat(i);var o=m[n]||1;return i*o}var h=t.console,u=t.jQuery,d=function(){},l=0,c={};r.namespace="outlayer",r.Item=o,r.defaults={containerStyle:{position:"relative"},initLayout:!0,originLeft:!0,originTop:!0,resize:!0,resizeContainer:!0,transitionDuration:"0.4s",hiddenStyle:{opacity:0,transform:"scale(0.001)"},visibleStyle:{opacity:1,transform:"scale(1)"}};var f=r.prototype;n.extend(f,e.prototype),f.option=function(t){n.extend(this.options,t)},f._getOption=function(t){var e=this.constructor.compatOptions[t];return e&&void 0!==this.options[e]?this.options[e]:this.options[t]},r.compatOptions={initLayout:"isInitLayout",horizontal:"isHorizontal",layoutInstant:"isLayoutInstant",originLeft:"isOriginLeft",originTop:"isOriginTop",resize:"isResizeBound",resizeContainer:"isResizingContainer"},f._create=function(){this.reloadItems(),this.stamps=[],this.stamp(this.options.stamp),n.extend(this.element.style,this.options.containerStyle);var t=this._getOption("resize");t&&this.bindResize()},f.reloadItems=function(){this.items=this._itemize(this.element.children)},f._itemize=function(t){for(var e=this._filterFindItemElements(t),i=this.constructor.Item,n=[],o=0;o<e.length;o++){var r=e[o],s=new i(r,this);n.push(s)}return n},f._filterFindItemElements=function(t){return n.filterFindElements(t,this.options.itemSelector)},f.getItemElements=function(){return this.items.map(function(t){return t.element})},f.layout=function(){this._resetLayout(),this._manageStamps();var t=this._getOption("layoutInstant"),e=void 0!==t?t:!this._isLayoutInited;this.layoutItems(this.items,e),this._isLayoutInited=!0},f._init=f.layout,f._resetLayout=function(){this.getSize()},f.getSize=function(){this.size=i(this.element)},f._getMeasurement=function(t,e){var n,o=this.options[t];o?("string"==typeof o?n=this.element.querySelector(o):o instanceof HTMLElement&&(n=o),this[t]=n?i(n)[e]:o):this[t]=0},f.layoutItems=function(t,e){t=this._getItemsForLayout(t),this._layoutItems(t,e),this._postLayout()},f._getItemsForLayout=function(t){return t.filter(function(t){return!t.isIgnored})},f._layoutItems=function(t,e){if(this._emitCompleteOnItems("layout",t),t&&t.length){var i=[];t.forEach(function(t){var n=this._getItemLayoutPosition(t);n.item=t,n.isInstant=e||t.isLayoutInstant,i.push(n)},this),this._processLayoutQueue(i)}},f._getItemLayoutPosition=function(){return{x:0,y:0}},f._processLayoutQueue=function(t){this.updateStagger(),t.forEach(function(t,e){this._positionItem(t.item,t.x,t.y,t.isInstant,e)},this)},f.updateStagger=function(){var t=this.options.stagger;return null===t||void 0===t?void(this.stagger=0):(this.stagger=a(t),this.stagger)},f._positionItem=function(t,e,i,n,o){n?t.goTo(e,i):(t.stagger(o*this.stagger),t.moveTo(e,i))},f._postLayout=function(){this.resizeContainer()},f.resizeContainer=function(){var t=this._getOption("resizeContainer");if(t){var e=this._getContainerSize();e&&(this._setContainerMeasure(e.width,!0),this._setContainerMeasure(e.height,!1))}},f._getContainerSize=d,f._setContainerMeasure=function(t,e){if(void 0!==t){var i=this.size;i.isBorderBox&&(t+=e?i.paddingLeft+i.paddingRight+i.borderLeftWidth+i.borderRightWidth:i.paddingBottom+i.paddingTop+i.borderTopWidth+i.borderBottomWidth),t=Math.max(t,0),this.element.style[e?"width":"height"]=t+"px"}},f._emitCompleteOnItems=function(t,e){function i(){o.dispatchEvent(t+"Complete",null,[e])}function n(){s++,s==r&&i()}var o=this,r=e.length;if(!e||!r)return void i();var s=0;e.forEach(function(e){e.once(t,n)})},f.dispatchEvent=function(t,e,i){var n=e?[e].concat(i):i;if(this.emitEvent(t,n),u)if(this.$element=this.$element||u(this.element),e){var o=u.Event(e);o.type=t,this.$element.trigger(o,i)}else this.$element.trigger(t,i)},f.ignore=function(t){var e=this.getItem(t);e&&(e.isIgnored=!0)},f.unignore=function(t){var e=this.getItem(t);e&&delete e.isIgnored},f.stamp=function(t){t=this._find(t),t&&(this.stamps=this.stamps.concat(t),t.forEach(this.ignore,this))},f.unstamp=function(t){t=this._find(t),t&&t.forEach(function(t){n.removeFrom(this.stamps,t),this.unignore(t)},this)},f._find=function(t){return t?("string"==typeof t&&(t=this.element.querySelectorAll(t)),t=n.makeArray(t)):void 0},f._manageStamps=function(){this.stamps&&this.stamps.length&&(this._getBoundingRect(),this.stamps.forEach(this._manageStamp,this))},f._getBoundingRect=function(){var t=this.element.getBoundingClientRect(),e=this.size;this._boundingRect={left:t.left+e.paddingLeft+e.borderLeftWidth,top:t.top+e.paddingTop+e.borderTopWidth,right:t.right-(e.paddingRight+e.borderRightWidth),bottom:t.bottom-(e.paddingBottom+e.borderBottomWidth)}},f._manageStamp=d,f._getElementOffset=function(t){var e=t.getBoundingClientRect(),n=this._boundingRect,o=i(t),r={left:e.left-n.left-o.marginLeft,top:e.top-n.top-o.marginTop,right:n.right-e.right-o.marginRight,bottom:n.bottom-e.bottom-o.marginBottom};return r},f.handleEvent=n.handleEvent,f.bindResize=function(){t.addEventListener("resize",this),this.isResizeBound=!0},f.unbindResize=function(){t.removeEventListener("resize",this),this.isResizeBound=!1},f.onresize=function(){this.resize()},n.debounceMethod(r,"onresize",100),f.resize=function(){this.isResizeBound&&this.needsResizeLayout()&&this.layout()},f.needsResizeLayout=function(){var t=i(this.element),e=this.size&&t;return e&&t.innerWidth!==this.size.innerWidth},f.addItems=function(t){var e=this._itemize(t);return e.length&&(this.items=this.items.concat(e)),e},f.appended=function(t){var e=this.addItems(t);e.length&&(this.layoutItems(e,!0),this.reveal(e))},f.prepended=function(t){var e=this._itemize(t);if(e.length){var i=this.items.slice(0);this.items=e.concat(i),this._resetLayout(),this._manageStamps(),this.layoutItems(e,!0),this.reveal(e),this.layoutItems(i)}},f.reveal=function(t){if(this._emitCompleteOnItems("reveal",t),t&&t.length){var e=this.updateStagger();t.forEach(function(t,i){t.stagger(i*e),t.reveal()})}},f.hide=function(t){if(this._emitCompleteOnItems("hide",t),t&&t.length){var e=this.updateStagger();t.forEach(function(t,i){t.stagger(i*e),t.hide()})}},f.revealItemElements=function(t){var e=this.getItems(t);this.reveal(e)},f.hideItemElements=function(t){var e=this.getItems(t);this.hide(e)},f.getItem=function(t){for(var e=0;e<this.items.length;e++){var i=this.items[e];if(i.element==t)return i}},f.getItems=function(t){t=n.makeArray(t);var e=[];return t.forEach(function(t){var i=this.getItem(t);i&&e.push(i)},this),e},f.remove=function(t){var e=this.getItems(t);this._emitCompleteOnItems("remove",e),e&&e.length&&e.forEach(function(t){t.remove(),n.removeFrom(this.items,t)},this)},f.destroy=function(){var t=this.element.style;t.height="",t.position="",t.width="",this.items.forEach(function(t){t.destroy()}),this.unbindResize();var e=this.element.outlayerGUID;delete c[e],delete this.element.outlayerGUID,u&&u.removeData(this.element,this.constructor.namespace)},r.data=function(t){t=n.getQueryElement(t);var e=t&&t.outlayerGUID;return e&&c[e]},r.create=function(t,e){var i=s(r);return i.defaults=n.extend({},r.defaults),n.extend(i.defaults,e),i.compatOptions=n.extend({},r.compatOptions),i.namespace=t,i.data=r.data,i.Item=s(o),n.htmlInit(i,t),u&&u.bridget&&u.bridget(t,i),i};var m={ms:1,s:1e3};return r.Item=o,r}),function(t,e){"function"==typeof define&&define.amd?define(["outlayer/outlayer","get-size/get-size"],e):"object"==typeof module&&module.exports?module.exports=e(require("outlayer"),require("get-size")):t.Masonry=e(t.Outlayer,t.getSize)}(window,function(t,e){var i=t.create("masonry");i.compatOptions.fitWidth="isFitWidth";var n=i.prototype;return n._resetLayout=function(){this.getSize(),this._getMeasurement("columnWidth","outerWidth"),this._getMeasurement("gutter","outerWidth"),this.measureColumns(),this.colYs=[];for(var t=0;t<this.cols;t++)this.colYs.push(0);this.maxY=0,this.horizontalColIndex=0},n.measureColumns=function(){if(this.getContainerWidth(),!this.columnWidth){var t=this.items[0],i=t&&t.element;this.columnWidth=i&&e(i).outerWidth||this.containerWidth}var n=this.columnWidth+=this.gutter,o=this.containerWidth+this.gutter,r=o/n,s=n-o%n,a=s&&1>s?"round":"floor";r=Math[a](r),this.cols=Math.max(r,1)},n.getContainerWidth=function(){var t=this._getOption("fitWidth"),i=t?this.element.parentNode:this.element,n=e(i);this.containerWidth=n&&n.innerWidth},n._getItemLayoutPosition=function(t){t.getSize();var e=t.size.outerWidth%this.columnWidth,i=e&&1>e?"round":"ceil",n=Math[i](t.size.outerWidth/this.columnWidth);n=Math.min(n,this.cols);for(var o=this.options.horizontalOrder?"_getHorizontalColPosition":"_getTopColPosition",r=this[o](n,t),s={x:this.columnWidth*r.col,y:r.y},a=r.y+t.size.outerHeight,h=n+r.col,u=r.col;h>u;u++)this.colYs[u]=a;return s},n._getTopColPosition=function(t){var e=this._getTopColGroup(t),i=Math.min.apply(Math,e);return{col:e.indexOf(i),y:i}},n._getTopColGroup=function(t){if(2>t)return this.colYs;for(var e=[],i=this.cols+1-t,n=0;i>n;n++)e[n]=this._getColGroupY(n,t);return e},n._getColGroupY=function(t,e){if(2>e)return this.colYs[t];var i=this.colYs.slice(t,t+e);return Math.max.apply(Math,i)},n._getHorizontalColPosition=function(t,e){var i=this.horizontalColIndex%this.cols,n=t>1&&i+t>this.cols;i=n?0:i;var o=e.size.outerWidth&&e.size.outerHeight;return this.horizontalColIndex=o?i+t:this.horizontalColIndex,{col:i,y:this._getColGroupY(i,t)}},n._manageStamp=function(t){var i=e(t),n=this._getElementOffset(t),o=this._getOption("originLeft"),r=o?n.left:n.right,s=r+i.outerWidth,a=Math.floor(r/this.columnWidth);a=Math.max(0,a);var h=Math.floor(s/this.columnWidth);h-=s%this.columnWidth?0:1,h=Math.min(this.cols-1,h);for(var u=this._getOption("originTop"),d=(u?n.top:n.bottom)+i.outerHeight,l=a;h>=l;l++)this.colYs[l]=Math.max(d,this.colYs[l])},n._getContainerSize=function(){this.maxY=Math.max.apply(Math,this.colYs);var t={height:this.maxY};return this._getOption("fitWidth")&&(t.width=this._getContainerFitWidth()),t},n._getContainerFitWidth=function(){for(var t=0,e=this.cols;--e&&0===this.colYs[e];)t++;return(this.cols-t)*this.columnWidth-this.gutter},n.needsResizeLayout=function(){var t=this.containerWidth;return this.getContainerWidth(),t!=this.containerWidth},i});
elements/call-to-action/call-to-action.php CHANGED
@@ -167,6 +167,31 @@ class Widget_Eael_Cta_Box extends Widget_Base {
167
 
168
  $this->end_controls_section();
169
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
170
  /**
171
  * -------------------------------------------
172
  * Tab Style (Cta Title Style)
167
 
168
  $this->end_controls_section();
169
 
170
+ $this->start_controls_section(
171
+ 'eael_section_pro',
172
+ [
173
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
174
+ ]
175
+ );
176
+
177
+ $this->add_control(
178
+ 'eael_control_get_pro',
179
+ [
180
+ 'label' => __( 'Unlock more possibilities', 'essential-addons-elementor' ),
181
+ 'type' => Controls_Manager::CHOOSE,
182
+ 'options' => [
183
+ '1' => [
184
+ 'title' => __( '', 'essential-addons-elementor' ),
185
+ 'icon' => 'fa fa-unlock-alt',
186
+ ],
187
+ ],
188
+ 'default' => '1',
189
+ 'description' => '<span class="pro-feature"> Get the <a href="https://essential-addons.com/elementor/buy.php" target="_blank">Pro version</a> for more stunning elements and customization options.</span>'
190
+ ]
191
+ );
192
+
193
+ $this->end_controls_section();
194
+
195
  /**
196
  * -------------------------------------------
197
  * Tab Style (Cta Title Style)
elements/contact-form-7/contact-form-7.php CHANGED
@@ -51,11 +51,10 @@ class Widget_Eael_Contact_Form extends Widget_Base {
51
  $this->start_controls_section(
52
  'eael_section_pro',
53
  [
54
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
55
  ]
56
  );
57
 
58
-
59
  $this->add_control(
60
  'eael_control_get_pro',
61
  [
@@ -72,7 +71,6 @@ class Widget_Eael_Contact_Form extends Widget_Base {
72
  ]
73
  );
74
 
75
-
76
  $this->end_controls_section();
77
 
78
 
51
  $this->start_controls_section(
52
  'eael_section_pro',
53
  [
54
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
55
  ]
56
  );
57
 
 
58
  $this->add_control(
59
  'eael_control_get_pro',
60
  [
71
  ]
72
  );
73
 
 
74
  $this->end_controls_section();
75
 
76
 
elements/countdown/countdown.php CHANGED
@@ -87,6 +87,31 @@ class Widget_Eael_Countdown extends Widget_Base {
87
  ]
88
  );
89
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
90
 
91
  $this->add_control(
92
  'eael_countdown_days',
@@ -233,11 +258,10 @@ class Widget_Eael_Countdown extends Widget_Base {
233
  $this->start_controls_section(
234
  'eael_section_pro',
235
  [
236
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
237
  ]
238
  );
239
 
240
-
241
  $this->add_control(
242
  'eael_control_get_pro',
243
  [
@@ -254,8 +278,7 @@ class Widget_Eael_Countdown extends Widget_Base {
254
  ]
255
  );
256
 
257
-
258
- $this->end_controls_section();
259
 
260
  $this->start_controls_section(
261
  'eael_section_countdown_styles_general',
@@ -455,12 +478,14 @@ class Widget_Eael_Countdown extends Widget_Base {
455
  $get_due_date = esc_attr($settings['eael_countdown_due_time']);
456
  $due_date = date("M d Y G:i:s", strtotime($get_due_date));
457
 
458
-
 
 
459
  ?>
460
 
461
  <div class="eael-countdown-wrapper">
462
  <div class="eael-countdown-container <?php echo esc_attr($settings['eael_countdown_label_view'] ); ?> <?php echo esc_attr($settings['eael_countdown_separator'] ); ?>">
463
- <ul id="eael-countdown-<?php echo esc_attr($this->get_id()); ?>" class="eael-countdown-items" data-date="<?php echo esc_attr($due_date) ; ?>">
464
  <?php if ( ! empty( $settings['eael_countdown_days'] ) ) : ?><li class="eael-countdown-item"><div class="eael-countdown-days"><span data-days class="eael-countdown-digits">00</span><?php if ( ! empty( $settings['eael_countdown_days_label'] ) ) : ?><span class="eael-countdown-label"><?php echo esc_attr($settings['eael_countdown_days_label'] ); ?></span><?php endif; ?></div></li><?php endif; ?>
465
  <?php if ( ! empty( $settings['eael_countdown_hours'] ) ) : ?><li class="eael-countdown-item"><div class="eael-countdown-hours"><span data-hours class="eael-countdown-digits">00</span><?php if ( ! empty( $settings['eael_countdown_hours_label'] ) ) : ?><span class="eael-countdown-label"><?php echo esc_attr($settings['eael_countdown_hours_label'] ); ?></span><?php endif; ?></div></li><?php endif; ?>
466
  <?php if ( ! empty( $settings['eael_countdown_minutes'] ) ) : ?><li class="eael-countdown-item"><div class="eael-countdown-minutes"><span data-minutes class="eael-countdown-digits">00</span><?php if ( ! empty( $settings['eael_countdown_minutes_label'] ) ) : ?><span class="eael-countdown-label"><?php echo esc_attr($settings['eael_countdown_minutes_label'] ); ?></span><?php endif; ?></div></li><?php endif; ?>
87
  ]
88
  );
89
 
90
+ $this->add_control(
91
+ 'eael_section_countdown_style',
92
+ [
93
+ 'label' => esc_html__( 'Countdown Style', 'essential-addons-elementor' ),
94
+ 'type' => Controls_Manager::SELECT,
95
+ 'default' => 'style-1',
96
+ 'label_block' => false,
97
+ 'options' => [
98
+ 'style-1' => esc_html__( 'Style 1', 'essential-addons-elementor' ),
99
+ 'style-2' => esc_html__( 'Style 2 (Pro)', 'essential-addons-elementor' ),
100
+ 'style-3' => esc_html__( 'Style 3 (Pro)', 'essential-addons-elementor' ),
101
+ ],
102
+ ]
103
+ );
104
+
105
+ $this->add_control(
106
+ 'eael_section_countdown_style_pro_alert',
107
+ [
108
+ 'label' => esc_html__( 'Only available in pro version!', 'essential-addons-elementor' ),
109
+ 'type' => Controls_Manager::HEADING,
110
+ 'condition' => [
111
+ 'eael_section_countdown_style' => ['style-2', 'style-3'],
112
+ ]
113
+ ]
114
+ );
115
 
116
  $this->add_control(
117
  'eael_countdown_days',
258
  $this->start_controls_section(
259
  'eael_section_pro',
260
  [
261
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
262
  ]
263
  );
264
 
 
265
  $this->add_control(
266
  'eael_control_get_pro',
267
  [
278
  ]
279
  );
280
 
281
+ $this->end_controls_section();
 
282
 
283
  $this->start_controls_section(
284
  'eael_section_countdown_styles_general',
478
  $get_due_date = esc_attr($settings['eael_countdown_due_time']);
479
  $due_date = date("M d Y G:i:s", strtotime($get_due_date));
480
 
481
+ if( 'style-1' === $settings['eael_section_countdown_style'] || 'style-2' === $settings['eael_section_countdown_style'] || 'style-3' === $settings['eael_section_countdown_style'] ) {
482
+ $eael_countdown_style = 'style-1';
483
+ }
484
  ?>
485
 
486
  <div class="eael-countdown-wrapper">
487
  <div class="eael-countdown-container <?php echo esc_attr($settings['eael_countdown_label_view'] ); ?> <?php echo esc_attr($settings['eael_countdown_separator'] ); ?>">
488
+ <ul id="eael-countdown-<?php echo esc_attr($this->get_id()); ?>" class="eael-countdown-items <?php echo esc_attr( $eael_countdown_style ); ?>" data-date="<?php echo esc_attr($due_date) ; ?>">
489
  <?php if ( ! empty( $settings['eael_countdown_days'] ) ) : ?><li class="eael-countdown-item"><div class="eael-countdown-days"><span data-days class="eael-countdown-digits">00</span><?php if ( ! empty( $settings['eael_countdown_days_label'] ) ) : ?><span class="eael-countdown-label"><?php echo esc_attr($settings['eael_countdown_days_label'] ); ?></span><?php endif; ?></div></li><?php endif; ?>
490
  <?php if ( ! empty( $settings['eael_countdown_hours'] ) ) : ?><li class="eael-countdown-item"><div class="eael-countdown-hours"><span data-hours class="eael-countdown-digits">00</span><?php if ( ! empty( $settings['eael_countdown_hours_label'] ) ) : ?><span class="eael-countdown-label"><?php echo esc_attr($settings['eael_countdown_hours_label'] ); ?></span><?php endif; ?></div></li><?php endif; ?>
491
  <?php if ( ! empty( $settings['eael_countdown_minutes'] ) ) : ?><li class="eael-countdown-item"><div class="eael-countdown-minutes"><span data-minutes class="eael-countdown-digits">00</span><?php if ( ! empty( $settings['eael_countdown_minutes_label'] ) ) : ?><span class="eael-countdown-label"><?php echo esc_attr($settings['eael_countdown_minutes_label'] ); ?></span><?php endif; ?></div></li><?php endif; ?>
elements/creative-button/creative-button.php CHANGED
@@ -164,11 +164,10 @@ class Widget_Eael_Creative_Button extends Widget_Base {
164
  $this->start_controls_section(
165
  'eael_section_pro',
166
  [
167
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
168
  ]
169
  );
170
 
171
-
172
  $this->add_control(
173
  'eael_control_get_pro',
174
  [
@@ -185,8 +184,7 @@ class Widget_Eael_Creative_Button extends Widget_Base {
185
  ]
186
  );
187
 
188
-
189
- $this->end_controls_section();
190
 
191
  // Style Controls
192
  $this->start_controls_section(
@@ -204,14 +202,24 @@ class Widget_Eael_Creative_Button extends Widget_Base {
204
  'type' => Controls_Manager::SELECT,
205
  'default' => 'eael-creative-button--default',
206
  'options' => [
207
- 'eael-creative-button--default' => esc_html__( 'Default', 'essential-addons-elementor' ),
208
- 'eael-creative-button--winona' => esc_html__( 'Winona', 'essential-addons-elementor' ),
209
- 'eael-creative-button--ujarak' => esc_html__( 'Ujarak', 'essential-addons-elementor' ),
210
- 'eael-creative-button--wayra' => esc_html__( 'Wayra', 'essential-addons-elementor' ),
211
- 'eael-creative-button--tamaya' => esc_html__( 'Tamaya', 'essential-addons-elementor' ),
212
- 'eael-creative-button--rayen' => esc_html__( 'Rayen', 'essential-addons-elementor' ),
 
 
 
 
 
 
 
 
 
 
213
  ],
214
- 'description' => 'More effects on <a href="https://essential-addons.com/elementor/buy.php">Pro version</a>'
215
  ]
216
  );
217
 
164
  $this->start_controls_section(
165
  'eael_section_pro',
166
  [
167
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
168
  ]
169
  );
170
 
 
171
  $this->add_control(
172
  'eael_control_get_pro',
173
  [
184
  ]
185
  );
186
 
187
+ $this->end_controls_section();
 
188
 
189
  // Style Controls
190
  $this->start_controls_section(
202
  'type' => Controls_Manager::SELECT,
203
  'default' => 'eael-creative-button--default',
204
  'options' => [
205
+ 'eael-creative-button--default' => esc_html__( 'Default', 'essential-addons-elementor' ),
206
+ 'eael-creative-button--winona' => esc_html__( 'Winona', 'essential-addons-elementor' ),
207
+ 'eael-creative-button--ujarak' => esc_html__( 'Ujarak', 'essential-addons-elementor' ),
208
+ 'eael-creative-button--wayra' => esc_html__( 'Wayra', 'essential-addons-elementor' ),
209
+ 'eael-creative-button--tamaya' => esc_html__( 'Tamaya', 'essential-addons-elementor' ),
210
+ 'eael-creative-button--rayen' => esc_html__( 'Rayen', 'essential-addons-elementor' ),
211
+ 'eael-creative-button--pro-1' => esc_html__( 'Pipaluk (Pro)', 'essential-addons-elementor' ),
212
+ 'eael-creative-button--pro-2' => esc_html__( 'Moema (Pro)', 'essential-addons-elementor' ),
213
+ 'eael-creative-button--pro-3' => esc_html__( 'Wave (Pro)', 'essential-addons-elementor' ),
214
+ 'eael-creative-button--pro-4' => esc_html__( 'Aylen (Pro)', 'essential-addons-elementor' ),
215
+ 'eael-creative-button--pro-5' => esc_html__( 'Saqui (Pro)', 'essential-addons-elementor' ),
216
+ 'eael-creative-button--pro-6' => esc_html__( 'Wapasha (Pro)', 'essential-addons-elementor' ),
217
+ 'eael-creative-button--pro-7' => esc_html__( 'Nuka (Pro)', 'essential-addons-elementor' ),
218
+ 'eael-creative-button--pro-8' => esc_html__( 'Antiman (Pro)', 'essential-addons-elementor' ),
219
+ 'eael-creative-button--pro-9' => esc_html__( 'Quidel (Pro)', 'essential-addons-elementor' ),
220
+ 'eael-creative-button--pro-10' => esc_html__( 'Shikoba (Pro)', 'essential-addons-elementor' ),
221
  ],
222
+ 'description' => '10 more effects on <a href="https://essential-addons.com/elementor/buy.php">Pro version</a>'
223
  ]
224
  );
225
 
elements/dual-color-header/dual-color-header.php CHANGED
@@ -148,6 +148,31 @@ class Widget_Eael_Dual_Color_Header extends Widget_Base {
148
 
149
  $this->end_controls_section();
150
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
151
  /**
152
  * -------------------------------------------
153
  * Tab Style ( Dual Heading Style )
148
 
149
  $this->end_controls_section();
150
 
151
+ $this->start_controls_section(
152
+ 'eael_section_pro',
153
+ [
154
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
155
+ ]
156
+ );
157
+
158
+ $this->add_control(
159
+ 'eael_control_get_pro',
160
+ [
161
+ 'label' => __( 'Unlock more possibilities', 'essential-addons-elementor' ),
162
+ 'type' => Controls_Manager::CHOOSE,
163
+ 'options' => [
164
+ '1' => [
165
+ 'title' => __( '', 'essential-addons-elementor' ),
166
+ 'icon' => 'fa fa-unlock-alt',
167
+ ],
168
+ ],
169
+ 'default' => '1',
170
+ 'description' => '<span class="pro-feature"> Get the <a href="https://essential-addons.com/elementor/buy.php" target="_blank">Pro version</a> for more stunning elements and customization options.</span>'
171
+ ]
172
+ );
173
+
174
+ $this->end_controls_section();
175
+
176
  /**
177
  * -------------------------------------------
178
  * Tab Style ( Dual Heading Style )
elements/fancy-text/fancy-text.php CHANGED
@@ -96,7 +96,31 @@ class Widget_Eael_Fancy_Text extends Widget_Base {
96
  'label' => esc_html__( 'Fancy Text Settings', 'essential-addons-elementor' )
97
  ]
98
  );
99
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
100
  $this->add_responsive_control(
101
  'eael_fancy_text_alignment',
102
  [
@@ -197,11 +221,10 @@ class Widget_Eael_Fancy_Text extends Widget_Base {
197
  $this->start_controls_section(
198
  'eael_section_pro',
199
  [
200
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
201
  ]
202
  );
203
 
204
-
205
  $this->add_control(
206
  'eael_control_get_pro',
207
  [
@@ -218,8 +241,7 @@ class Widget_Eael_Fancy_Text extends Widget_Base {
218
  ]
219
  );
220
 
221
-
222
- $this->end_controls_section();
223
 
224
  $this->start_controls_section(
225
  'eael_fancy_text_prefix_styles',
@@ -404,10 +426,12 @@ class Widget_Eael_Fancy_Text extends Widget_Base {
404
 
405
  $settings = $this->get_settings();
406
 
407
-
 
 
408
  ?>
409
 
410
- <div class="eael-fancy-text-container">
411
  <?php if ( ! empty( $settings['eael_fancy_text_prefix'] ) ) : ?><span class="eael-fancy-text-prefix"><?php echo wp_kses(($settings['eael_fancy_text_prefix'] ), true ); ?> </span><?php endif; ?>
412
 
413
  <?php if ( $settings['eael_fancy_text_transition_type'] == 'fancy' ) : ?>
96
  'label' => esc_html__( 'Fancy Text Settings', 'essential-addons-elementor' )
97
  ]
98
  );
99
+
100
+ $this->add_control(
101
+ 'eael_fancy_text_style',
102
+ [
103
+ 'label' => esc_html__( 'Style Type', 'essential-addons-elementor' ),
104
+ 'type' => Controls_Manager::SELECT,
105
+ 'default' => 'style-1',
106
+ 'options' => [
107
+ 'style-1' => esc_html__( 'Style 1', 'essential-addons-elementor' ),
108
+ 'style-2' => esc_html__( 'Style 2', 'essential-addons-elementor' ),
109
+ ],
110
+ ]
111
+ );
112
+
113
+ $this->add_control(
114
+ 'eael_fancy_text_style_pro_alert',
115
+ [
116
+ 'label' => esc_html__( 'Only available in pro version!', 'essential-addons-elementor' ),
117
+ 'type' => Controls_Manager::HEADING,
118
+ 'condition' => [
119
+ 'eael_fancy_text_style' => ['style-2'],
120
+ ]
121
+ ]
122
+ );
123
+
124
  $this->add_responsive_control(
125
  'eael_fancy_text_alignment',
126
  [
221
  $this->start_controls_section(
222
  'eael_section_pro',
223
  [
224
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
225
  ]
226
  );
227
 
 
228
  $this->add_control(
229
  'eael_control_get_pro',
230
  [
241
  ]
242
  );
243
 
244
+ $this->end_controls_section();
 
245
 
246
  $this->start_controls_section(
247
  'eael_fancy_text_prefix_styles',
426
 
427
  $settings = $this->get_settings();
428
 
429
+ if( 'style-1' === $settings['eael_fancy_text_style'] || 'style-2' === $settings['eael_fancy_text_style'] ) {
430
+ $eael_fancy_text_style = 'style-1';
431
+ }
432
  ?>
433
 
434
+ <div class="eael-fancy-text-container <?php echo esc_attr( $eael_fancy_text_style ); ?>">
435
  <?php if ( ! empty( $settings['eael_fancy_text_prefix'] ) ) : ?><span class="eael-fancy-text-prefix"><?php echo wp_kses(($settings['eael_fancy_text_prefix'] ), true ); ?> </span><?php endif; ?>
436
 
437
  <?php if ( $settings['eael_fancy_text_transition_type'] == 'fancy' ) : ?>
elements/flipbox/flipbox.php CHANGED
@@ -247,6 +247,31 @@ class Widget_Eael_Flip_Box extends Widget_Base {
247
  );
248
  $this->end_controls_section();
249
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
250
  /**
251
  * -------------------------------------------
252
  * Tab Style (Flipbox Style)
247
  );
248
  $this->end_controls_section();
249
 
250
+ $this->start_controls_section(
251
+ 'eael_section_pro',
252
+ [
253
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
254
+ ]
255
+ );
256
+
257
+ $this->add_control(
258
+ 'eael_control_get_pro',
259
+ [
260
+ 'label' => __( 'Unlock more possibilities', 'essential-addons-elementor' ),
261
+ 'type' => Controls_Manager::CHOOSE,
262
+ 'options' => [
263
+ '1' => [
264
+ 'title' => __( '', 'essential-addons-elementor' ),
265
+ 'icon' => 'fa fa-unlock-alt',
266
+ ],
267
+ ],
268
+ 'default' => '1',
269
+ 'description' => '<span class="pro-feature"> Get the <a href="https://essential-addons.com/elementor/buy.php" target="_blank">Pro version</a> for more stunning elements and customization options.</span>'
270
+ ]
271
+ );
272
+
273
+ $this->end_controls_section();
274
+
275
  /**
276
  * -------------------------------------------
277
  * Tab Style (Flipbox Style)
elements/infobox/infobox.php CHANGED
@@ -169,6 +169,31 @@ class Widget_Eael_Info_Box extends Widget_Base {
169
  );
170
  $this->end_controls_section();
171
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
172
  /**
173
  * -------------------------------------------
174
  * Tab Style (Info Box Style)
169
  );
170
  $this->end_controls_section();
171
 
172
+ $this->start_controls_section(
173
+ 'eael_section_pro',
174
+ [
175
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
176
+ ]
177
+ );
178
+
179
+ $this->add_control(
180
+ 'eael_control_get_pro',
181
+ [
182
+ 'label' => __( 'Unlock more possibilities', 'essential-addons-elementor' ),
183
+ 'type' => Controls_Manager::CHOOSE,
184
+ 'options' => [
185
+ '1' => [
186
+ 'title' => __( '', 'essential-addons-elementor' ),
187
+ 'icon' => 'fa fa-unlock-alt',
188
+ ],
189
+ ],
190
+ 'default' => '1',
191
+ 'description' => '<span class="pro-feature"> Get the <a href="https://essential-addons.com/elementor/buy.php" target="_blank">Pro version</a> for more stunning elements and customization options.</span>'
192
+ ]
193
+ );
194
+
195
+ $this->end_controls_section();
196
+
197
  /**
198
  * -------------------------------------------
199
  * Tab Style (Info Box Style)
elements/ninja-form/ninja-form.php ADDED
@@ -0,0 +1,719 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ namespace Elementor;
3
+
4
+ if ( ! defined( 'ABSPATH' ) ) exit; // If this file is called directly, abort.
5
+
6
+
7
+ class Widget_Eael_NinjaForm extends Widget_Base {
8
+
9
+ public function get_name() {
10
+ return 'eael-ninja';
11
+ }
12
+
13
+ public function get_title() {
14
+ return esc_html__( 'EA Ninja Form', 'essential-addons-elementor' );
15
+ }
16
+
17
+ public function get_icon() {
18
+ return 'fa fa-envelope-o';
19
+ }
20
+
21
+ public function get_categories() {
22
+ return [ 'essential-addons-elementor' ];
23
+ }
24
+
25
+ protected function _register_controls() {
26
+
27
+ $this->start_controls_section(
28
+ 'eael_section_ninja_form',
29
+ [
30
+ 'label' => esc_html__( 'Add Form Shortcode', 'essential-addons-elementor' )
31
+ ]
32
+ );
33
+
34
+
35
+
36
+ $this->add_control(
37
+ 'eael_ninja_form_shortcode',
38
+ [
39
+ 'label' => esc_html__( 'Ninja Form Shortcode', 'essential-addons-elementor' ),
40
+ 'type' => Controls_Manager::TEXTAREA,
41
+ 'label_block' => true,
42
+ 'description' => esc_html__( 'Please save and refresh the page after selecting the form', 'essential-addons-elementor' ),
43
+ ]
44
+ );
45
+
46
+ $this->end_controls_section();
47
+
48
+
49
+ $this->start_controls_section(
50
+ 'eael_section_ninja_styles',
51
+ [
52
+ 'label' => esc_html__( 'Form Container Styles', 'essential-addons-elementor' ),
53
+ 'tab' => Controls_Manager::TAB_STYLE
54
+ ]
55
+ );
56
+
57
+ $this->add_control(
58
+ 'eael_ninja_background',
59
+ [
60
+ 'label' => esc_html__( 'Form Background Color', 'essential-addons-elementor' ),
61
+ 'type' => Controls_Manager::COLOR,
62
+ 'default' => '#fff',
63
+ 'selectors' => [
64
+ '{{WRAPPER}} .eael-ninja-container' => 'background-color: {{VALUE}};',
65
+ ],
66
+ ]
67
+ );
68
+
69
+ $this->add_responsive_control(
70
+ 'eael_ninja_alignment',
71
+ [
72
+ 'label' => esc_html__( 'Form Alignment', 'essential-addons-elementor' ),
73
+ 'type' => Controls_Manager::CHOOSE,
74
+ 'label_block' => true,
75
+ 'options' => [
76
+ 'default' => [
77
+ 'title' => __( 'Default', 'essential-addons-elementor' ),
78
+ 'icon' => 'fa fa-ban',
79
+ ],
80
+ 'left' => [
81
+ 'title' => esc_html__( 'Left', 'essential-addons-elementor' ),
82
+ 'icon' => 'fa fa-align-left',
83
+ ],
84
+ 'center' => [
85
+ 'title' => esc_html__( 'Center', 'essential-addons-elementor' ),
86
+ 'icon' => 'fa fa-align-center',
87
+ ],
88
+ 'right' => [
89
+ 'title' => esc_html__( 'Right', 'essential-addons-elementor' ),
90
+ 'icon' => 'fa fa-align-right',
91
+ ],
92
+ ],
93
+ 'default' => 'default',
94
+ 'prefix_class' => 'eael-contact-form-align-',
95
+ ]
96
+ );
97
+
98
+ $this->add_responsive_control(
99
+ 'eael_ninja_width',
100
+ [
101
+ 'label' => esc_html__( 'Form Width', 'essential-addons-elementor' ),
102
+ 'type' => Controls_Manager::SLIDER,
103
+ 'size_units' => [ 'px', 'em', '%' ],
104
+ 'range' => [
105
+ 'px' => [
106
+ 'min' => 10,
107
+ 'max' => 1500,
108
+ ],
109
+ 'em' => [
110
+ 'min' => 1,
111
+ 'max' => 80,
112
+ ],
113
+ ],
114
+ 'selectors' => [
115
+ '{{WRAPPER}} .eael-ninja-container' => 'width: {{SIZE}}{{UNIT}};',
116
+ ],
117
+ ]
118
+ );
119
+
120
+ $this->add_responsive_control(
121
+ 'eael_ninja_max_width',
122
+ [
123
+ 'label' => esc_html__( 'Form Max Width', 'essential-addons-elementor' ),
124
+ 'type' => Controls_Manager::SLIDER,
125
+ 'size_units' => [ 'px', 'em', '%' ],
126
+ 'range' => [
127
+ 'px' => [
128
+ 'min' => 10,
129
+ 'max' => 1500,
130
+ ],
131
+ 'em' => [
132
+ 'min' => 1,
133
+ 'max' => 80,
134
+ ],
135
+ ],
136
+ 'selectors' => [
137
+ '{{WRAPPER}} .eael-ninja-container' => 'max-width: {{SIZE}}{{UNIT}};',
138
+ ],
139
+ ]
140
+ );
141
+
142
+ $this->add_responsive_control(
143
+ 'eael_ninja_margin',
144
+ [
145
+ 'label' => esc_html__( 'Form Margin', 'essential-addons-elementor' ),
146
+ 'type' => Controls_Manager::DIMENSIONS,
147
+ 'size_units' => [ 'px', 'em', '%' ],
148
+ 'selectors' => [
149
+ '{{WRAPPER}} .eael-ninja-container' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
150
+ ],
151
+ ]
152
+ );
153
+
154
+ $this->add_responsive_control(
155
+ 'eael_ninja_padding',
156
+ [
157
+ 'label' => esc_html__( 'Form Padding', 'essential-addons-elementor' ),
158
+ 'type' => Controls_Manager::DIMENSIONS,
159
+ 'size_units' => [ 'px', 'em', '%' ],
160
+ 'selectors' => [
161
+ '{{WRAPPER}} .eael-ninja-container' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
162
+ ],
163
+ ]
164
+ );
165
+
166
+ $this->add_control(
167
+ 'eael_ninja_border_radius',
168
+ [
169
+ 'label' => esc_html__( 'Border Radius', 'essential-addons-elementor' ),
170
+ 'type' => Controls_Manager::DIMENSIONS,
171
+ 'separator' => 'before',
172
+ 'size_units' => [ 'px' ],
173
+ 'selectors' => [
174
+ '{{WRAPPER}} .eael-ninja-container' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
175
+ ],
176
+ ]
177
+ );
178
+
179
+ $this->add_group_control(
180
+ Group_Control_Border::get_type(),
181
+ [
182
+ 'name' => 'eael_ninja_border',
183
+ 'selector' => '{{WRAPPER}} .eael-ninja-container',
184
+ ]
185
+ );
186
+
187
+ $this->add_group_control(
188
+ Group_Control_Box_Shadow::get_type(),
189
+ [
190
+ 'name' => 'eael_ninja_box_shadow',
191
+ 'selector' => '{{WRAPPER}} .eael-ninja-container',
192
+ ]
193
+ );
194
+
195
+ $this->end_controls_section();
196
+
197
+ /**
198
+ * Form Fields Styles
199
+ */
200
+ $this->start_controls_section(
201
+ 'eael_section_ninja_field_styles',
202
+ [
203
+ 'label' => esc_html__( 'Form Fields Styles', 'essential-addons-elementor' ),
204
+ 'tab' => Controls_Manager::TAB_STYLE
205
+ ]
206
+ );
207
+
208
+ $this->add_control(
209
+ 'eael_ninja_input_background',
210
+ [
211
+ 'label' => esc_html__( 'Input Field Background', 'essential-addons-elementor' ),
212
+ 'type' => Controls_Manager::COLOR,
213
+ 'selectors' => [
214
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"],
215
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"],
216
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"],
217
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
218
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
219
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"],
220
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea' => 'background-color: {{VALUE}};',
221
+ ],
222
+ ]
223
+ );
224
+
225
+
226
+ $this->add_responsive_control(
227
+ 'eael_ninja_input_width',
228
+ [
229
+ 'label' => esc_html__( 'Input Width', 'essential-addons-elementor' ),
230
+ 'type' => Controls_Manager::SLIDER,
231
+ 'size_units' => [ 'px', 'em', '%' ],
232
+ 'range' => [
233
+ 'px' => [
234
+ 'min' => 10,
235
+ 'max' => 1500,
236
+ ],
237
+ 'em' => [
238
+ 'min' => 1,
239
+ 'max' => 80,
240
+ ],
241
+ ],
242
+ 'selectors' => [
243
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"],
244
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"],
245
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"],
246
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
247
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
248
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"]' => 'width: {{SIZE}}{{UNIT}};',
249
+ ],
250
+ ]
251
+ );
252
+
253
+ $this->add_responsive_control(
254
+ 'eael_ninja_textarea_width',
255
+ [
256
+ 'label' => esc_html__( 'Textarea Width', 'essential-addons-elementor' ),
257
+ 'type' => Controls_Manager::SLIDER,
258
+ 'size_units' => [ 'px', 'em', '%' ],
259
+ 'range' => [
260
+ 'px' => [
261
+ 'min' => 10,
262
+ 'max' => 1500,
263
+ ],
264
+ 'em' => [
265
+ 'min' => 1,
266
+ 'max' => 80,
267
+ ],
268
+ ],
269
+ 'selectors' => [
270
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea' => 'width: {{SIZE}}{{UNIT}};',
271
+ ],
272
+ ]
273
+ );
274
+
275
+ $this->add_responsive_control(
276
+ 'eael_ninja_input_padding',
277
+ [
278
+ 'label' => esc_html__( 'Fields Padding', 'essential-addons-elementor' ),
279
+ 'type' => Controls_Manager::DIMENSIONS,
280
+ 'size_units' => [ 'px', 'em', '%' ],
281
+ 'selectors' => [
282
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"],
283
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"],
284
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"],
285
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
286
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
287
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"],
288
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
289
+ ],
290
+ ]
291
+ );
292
+
293
+
294
+
295
+ $this->add_control(
296
+ 'eael_ninja_input_border_radius',
297
+ [
298
+ 'label' => esc_html__( 'Border Radius', 'essential-addons-elementor' ),
299
+ 'type' => Controls_Manager::DIMENSIONS,
300
+ 'separator' => 'before',
301
+ 'size_units' => [ 'px' ],
302
+ 'selectors' => [
303
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"],
304
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"],
305
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"],
306
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
307
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
308
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"],
309
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
310
+ ],
311
+ ]
312
+ );
313
+
314
+
315
+ $this->add_group_control(
316
+ Group_Control_Border::get_type(),
317
+ [
318
+ 'name' => 'eael_ninja_input_border',
319
+ 'selector' => '
320
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"],
321
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"],
322
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"],
323
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
324
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
325
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"],
326
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea',
327
+ ]
328
+ );
329
+
330
+
331
+ $this->add_group_control(
332
+ Group_Control_Box_Shadow::get_type(),
333
+ [
334
+ 'name' => 'eael_ninja_input_box_shadow',
335
+ 'selector' => '
336
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"],
337
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"],
338
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"],
339
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
340
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
341
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"],
342
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea',
343
+ ]
344
+ );
345
+
346
+ $this->add_control(
347
+ 'eael_ninja_focus_heading',
348
+ [
349
+ 'type' => Controls_Manager::HEADING,
350
+ 'label' => esc_html__( 'Focus State Style', 'essential-addons-elementor' ),
351
+ 'separator' => 'before',
352
+ ]
353
+ );
354
+
355
+
356
+ $this->add_group_control(
357
+ Group_Control_Box_Shadow::get_type(),
358
+ [
359
+ 'name' => 'eael_ninja_input_focus_box_shadow',
360
+ 'selector' => '
361
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"]:focus,
362
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"]:focus,
363
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"]:focus,
364
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"]:focus,
365
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"]:focus,
366
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"]:focus,
367
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea:focus',
368
+ ]
369
+ );
370
+
371
+ $this->add_control(
372
+ 'eael_ninja_input_focus_border',
373
+ [
374
+ 'label' => esc_html__( 'Border Color', 'essential-addons-elementor' ),
375
+ 'type' => Controls_Manager::COLOR,
376
+ 'selectors' => [
377
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"]:focus,
378
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"]:focus,
379
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"]:focus,
380
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"]:focus,
381
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"]:focus,
382
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"]:focus,
383
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea:focus' => 'border-color: {{VALUE}};',
384
+ ],
385
+ ]
386
+ );
387
+
388
+ $this->end_controls_section();
389
+
390
+ /**
391
+ * Typography
392
+ */
393
+ $this->start_controls_section(
394
+ 'eael_section_ninja_typography',
395
+ [
396
+ 'label' => esc_html__( 'Color & Typography', 'essential-addons-elementor' ),
397
+ 'tab' => Controls_Manager::TAB_STYLE
398
+ ]
399
+ );
400
+
401
+
402
+ $this->add_control(
403
+ 'eael_ninja_label_color',
404
+ [
405
+ 'label' => esc_html__( 'Label Color', 'essential-addons-elementor' ),
406
+ 'type' => Controls_Manager::COLOR,
407
+ 'selectors' => [
408
+ '{{WRAPPER}} .eael-ninja-container, {{WRAPPER}} .eael-ninja-container .nf-field-label label' => 'color: {{VALUE}};',
409
+ ],
410
+ ]
411
+ );
412
+
413
+ $this->add_control(
414
+ 'eael_ninja_field_color',
415
+ [
416
+ 'label' => esc_html__( 'Field Font Color', 'essential-addons-elementor' ),
417
+ 'type' => Controls_Manager::COLOR,
418
+ 'selectors' => [
419
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"],
420
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"],
421
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"],
422
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
423
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
424
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"],
425
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea' => 'color: {{VALUE}};',
426
+ ],
427
+ ]
428
+ );
429
+
430
+ $this->add_control(
431
+ 'eael_ninja_placeholder_color',
432
+ [
433
+ 'label' => esc_html__( 'Placeholder Font Color', 'essential-addons-elementor' ),
434
+ 'type' => Controls_Manager::COLOR,
435
+ 'selectors' => [
436
+ '{{WRAPPER}} .eael-ninja-container ::-webkit-input-placeholder' => 'color: {{VALUE}};',
437
+ '{{WRAPPER}} .eael-ninja-container ::-moz-placeholder' => 'color: {{VALUE}};',
438
+ '{{WRAPPER}} .eael-ninja-container ::-ms-input-placeholder' => 'color: {{VALUE}};',
439
+ ],
440
+ ]
441
+ );
442
+
443
+
444
+ $this->add_control(
445
+ 'eael_ninja_label_heading',
446
+ [
447
+ 'type' => Controls_Manager::HEADING,
448
+ 'label' => esc_html__( 'Label Typography', 'essential-addons-elementor' ),
449
+ 'separator' => 'before',
450
+ ]
451
+ );
452
+
453
+ $this->add_group_control(
454
+ Group_Control_Typography::get_type(),
455
+ [
456
+ 'name' => 'eael_ninja_label_typography',
457
+ 'selector' => '{{WRAPPER}} .eael-ninja-container, {{WRAPPER}} .eael-ninja-container .wpuf-label label',
458
+ ]
459
+ );
460
+
461
+
462
+ $this->add_control(
463
+ 'eael_ninja_heading_input_field',
464
+ [
465
+ 'type' => Controls_Manager::HEADING,
466
+ 'label' => esc_html__( 'Input Fields Typography', 'essential-addons-elementor' ),
467
+ 'separator' => 'before',
468
+ ]
469
+ );
470
+
471
+ $this->add_group_control(
472
+ Group_Control_Typography::get_type(),
473
+ [
474
+ 'name' => 'eael_ninja_input_field_typography',
475
+ 'selector' => '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="text"],
476
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="password"],
477
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="email"],
478
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
479
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="url"],
480
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="number"],
481
+ {{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element textarea',
482
+ ]
483
+ );
484
+
485
+ $this->end_controls_section();
486
+
487
+ /**
488
+ * Button Style
489
+ */
490
+ $this->start_controls_section(
491
+ 'eael_section_ninja_submit_button_styles',
492
+ [
493
+ 'label' => esc_html__( 'Submit Button Styles', 'essential-addons-elementor' ),
494
+ 'tab' => Controls_Manager::TAB_STYLE
495
+ ]
496
+ );
497
+
498
+ $this->add_responsive_control(
499
+ 'eael_ninja_submit_btn_width',
500
+ [
501
+ 'label' => esc_html__( 'Button Width', 'essential-addons-elementor' ),
502
+ 'type' => Controls_Manager::SLIDER,
503
+ 'size_units' => [ 'px', 'em', '%' ],
504
+ 'range' => [
505
+ 'px' => [
506
+ 'min' => 10,
507
+ 'max' => 1500,
508
+ ],
509
+ 'em' => [
510
+ 'min' => 1,
511
+ 'max' => 80,
512
+ ],
513
+ ],
514
+ 'selectors' => [
515
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="submit"]' => 'width: {{SIZE}}{{UNIT}};',
516
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]' => 'width: {{SIZE}}{{UNIT}};',
517
+ ],
518
+ ]
519
+ );
520
+
521
+ $this->add_responsive_control(
522
+ 'eael_ninja_submit_btn_alignment',
523
+ [
524
+ 'label' => esc_html__( 'Button Alignment', 'essential-addons-elementor' ),
525
+ 'type' => Controls_Manager::CHOOSE,
526
+ 'label_block' => true,
527
+ 'options' => [
528
+ 'default' => [
529
+ 'title' => __( 'Default', 'essential-addons-elementor' ),
530
+ 'icon' => 'fa fa-ban',
531
+ ],
532
+ 'left' => [
533
+ 'title' => esc_html__( 'Left', 'essential-addons-elementor' ),
534
+ 'icon' => 'fa fa-align-left',
535
+ ],
536
+ 'center' => [
537
+ 'title' => esc_html__( 'Center', 'essential-addons-elementor' ),
538
+ 'icon' => 'fa fa-align-center',
539
+ ],
540
+ 'right' => [
541
+ 'title' => esc_html__( 'Right', 'essential-addons-elementor' ),
542
+ 'icon' => 'fa fa-align-right',
543
+ ],
544
+ ],
545
+ 'default' => 'default',
546
+ 'prefix_class' => 'eael-contact-form-btn-align-',
547
+ ]
548
+ );
549
+
550
+ $this->add_group_control(
551
+ Group_Control_Typography::get_type(),
552
+ [
553
+ 'name' => 'eael_ninja_submit_btn_typography',
554
+ 'scheme' => Scheme_Typography::TYPOGRAPHY_1,
555
+ 'selector' => '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]',
556
+ ]
557
+ );
558
+
559
+ $this->add_responsive_control(
560
+ 'eael_ninja_submit_btn_margin',
561
+ [
562
+ 'label' => esc_html__( 'Margin', 'essential-addons-elementor' ),
563
+ 'type' => Controls_Manager::DIMENSIONS,
564
+ 'size_units' => [ 'px', 'em', '%' ],
565
+ 'selectors' => [
566
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
567
+ ],
568
+ ]
569
+ );
570
+
571
+ $this->add_responsive_control(
572
+ 'eael_ninja_submit_btn_padding',
573
+ [
574
+ 'label' => esc_html__( 'Padding', 'essential-addons-elementor' ),
575
+ 'type' => Controls_Manager::DIMENSIONS,
576
+ 'size_units' => [ 'px', 'em', '%' ],
577
+ 'selectors' => [
578
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
579
+ ],
580
+ ]
581
+ );
582
+
583
+ $this->start_controls_tabs( 'eael_ninja_submit_button_tabs' );
584
+
585
+ $this->start_controls_tab( 'normal', [ 'label' => esc_html__( 'Normal', 'essential-addons-elementor' ) ] );
586
+
587
+ $this->add_control(
588
+ 'eael_ninja_submit_btn_text_color',
589
+ [
590
+ 'label' => esc_html__( 'Text Color', 'essential-addons-elementor' ),
591
+ 'type' => Controls_Manager::COLOR,
592
+ 'selectors' => [
593
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]' => 'color: {{VALUE}};',
594
+ ],
595
+ ]
596
+ );
597
+
598
+ $this->add_control(
599
+ 'eael_ninja_submit_btn_background_color',
600
+ [
601
+ 'label' => esc_html__( 'Background Color', 'essential-addons-elementor' ),
602
+ 'type' => Controls_Manager::COLOR,
603
+ 'selectors' => [
604
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]' => 'background-color: {{VALUE}};',
605
+ ],
606
+ ]
607
+ );
608
+
609
+ $this->add_group_control(
610
+ Group_Control_Border::get_type(),
611
+ [
612
+ 'name' => 'eael_ninja_submit_btn_border',
613
+ 'selector' => '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]',
614
+ ]
615
+ );
616
+
617
+ $this->add_control(
618
+ 'eael_ninja_submit_btn_border_radius',
619
+ [
620
+ 'label' => esc_html__( 'Border Radius', 'essential-addons-elementor' ),
621
+ 'type' => Controls_Manager::SLIDER,
622
+ 'range' => [
623
+ 'px' => [
624
+ 'max' => 100,
625
+ ],
626
+ ],
627
+ 'selectors' => [
628
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]' => 'border-radius: {{SIZE}}px;',
629
+ ],
630
+ ]
631
+ );
632
+
633
+
634
+
635
+ $this->end_controls_tab();
636
+
637
+ $this->start_controls_tab( 'eael_ninja_submit_btn_hover', [ 'label' => esc_html__( 'Hover', 'essential-addons-elementor' ) ] );
638
+
639
+ $this->add_control(
640
+ 'eael_ninja_submit_btn_hover_text_color',
641
+ [
642
+ 'label' => esc_html__( 'Text Color', 'essential-addons-elementor' ),
643
+ 'type' => Controls_Manager::COLOR,
644
+ 'selectors' => [
645
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]:hover' => 'color: {{VALUE}};',
646
+ ],
647
+ ]
648
+ );
649
+
650
+ $this->add_control(
651
+ 'eael_ninja_submit_btn_hover_background_color',
652
+ [
653
+ 'label' => esc_html__( 'Background Color', 'essential-addons-elementor' ),
654
+ 'type' => Controls_Manager::COLOR,
655
+ 'selectors' => [
656
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]:hover' => 'background-color: {{VALUE}};',
657
+ ],
658
+ ]
659
+ );
660
+
661
+ $this->add_control(
662
+ 'eael_ninja_submit_btn_hover_border_color',
663
+ [
664
+ 'label' => esc_html__( 'Border Color', 'essential-addons-elementor' ),
665
+ 'type' => Controls_Manager::COLOR,
666
+ 'selectors' => [
667
+ '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]:hover' => 'border-color: {{VALUE}};',
668
+ ],
669
+ ]
670
+ );
671
+
672
+ $this->end_controls_tab();
673
+
674
+ $this->end_controls_tabs();
675
+
676
+
677
+ $this->add_group_control(
678
+ Group_Control_Box_Shadow::get_type(),
679
+ [
680
+ 'name' => 'eael_ninja_submit_btn_box_shadow',
681
+ 'selector' => '{{WRAPPER}} .eael-ninja-container .nf-field .nf-field-element input[type="button"]',
682
+ ]
683
+ );
684
+
685
+
686
+ $this->end_controls_section();
687
+
688
+ }
689
+
690
+
691
+ protected function render( ) {
692
+
693
+ $settings = $this->get_settings();
694
+
695
+
696
+ ?>
697
+
698
+
699
+ <?php if ( ! empty( $settings['eael_ninja_form_shortcode'] ) ) : ?>
700
+ <div class="eael-ninja-container">
701
+ <?php echo do_shortcode( $settings['eael_ninja_form_shortcode'] ); ?>
702
+ </div>
703
+ <?php endif; ?>
704
+
705
+ <?php
706
+
707
+ }
708
+
709
+ protected function content_template() {''
710
+
711
+ ?>
712
+
713
+
714
+ <?php
715
+ }
716
+ }
717
+
718
+
719
+ Plugin::instance()->widgets_manager->register_widget_type( new Widget_Eael_NinjaForm() );
elements/post-grid/post-grid.php CHANGED
@@ -125,6 +125,38 @@ class Widget_Eael_Post_Grid extends Widget_Base {
125
  ]
126
  );
127
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
128
  $this->add_control(
129
  'eael_show_image',
130
  [
@@ -253,11 +285,10 @@ class Widget_Eael_Post_Grid extends Widget_Base {
253
  $this->start_controls_section(
254
  'eael_section_pro',
255
  [
256
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
257
  ]
258
  );
259
 
260
-
261
  $this->add_control(
262
  'eael_control_get_pro',
263
  [
@@ -274,8 +305,7 @@ class Widget_Eael_Post_Grid extends Widget_Base {
274
  ]
275
  );
276
 
277
-
278
- $this->end_controls_section();
279
 
280
  $this->start_controls_section(
281
  'eael_section_post_grid_style',
@@ -342,7 +372,7 @@ class Widget_Eael_Post_Grid extends Widget_Base {
342
  ],
343
  ]
344
  );
345
-
346
  $this->add_group_control(
347
  Group_Control_Box_Shadow::get_type(),
348
  [
@@ -350,7 +380,7 @@ class Widget_Eael_Post_Grid extends Widget_Base {
350
  'selector' => '{{WRAPPER}} .eael-grid-post-holder',
351
  ]
352
  );
353
-
354
 
355
  $this->end_controls_section();
356
 
@@ -556,6 +586,208 @@ class Widget_Eael_Post_Grid extends Widget_Base {
556
 
557
  $this->end_controls_section();
558
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
559
  }
560
 
561
 
@@ -566,10 +798,29 @@ class Widget_Eael_Post_Grid extends Widget_Base {
566
 
567
  $posts = eael_get_post_data($post_args);
568
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
569
  ?>
570
 
571
- <div id="eael-post-grid-<?php echo esc_attr($this->get_id()); ?>" class="eael-post-grid <?php echo esc_attr($settings['eael_post_grid_columns'] ); ?>">
572
- <div class="eael-post-grid">
573
  <?php
574
  if(count($posts)){
575
  global $post;
@@ -615,7 +866,7 @@ class Widget_Eael_Post_Grid extends Widget_Base {
615
  <div class="eael-entry-content">
616
  <?php if($settings['eael_show_excerpt']){ ?>
617
  <div class="eael-grid-post-excerpt">
618
- <p><?php echo eael_get_excerpt_by_id(get_the_ID(), 40);?></p>
619
  </div>
620
  <?php } ?>
621
  </div>
@@ -643,29 +894,58 @@ class Widget_Eael_Post_Grid extends Widget_Base {
643
  }
644
  ?>
645
  </div>
 
646
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
647
 
 
 
 
 
 
 
 
 
 
 
 
 
648
 
649
- <script type="text/javascript">
650
-
651
- (function ($) {
652
- 'use strict';
653
-
654
- $(window).load(function(){
655
 
656
- $('.eael-post-grid').masonry({
657
- itemSelector: '.eael-grid-post',
658
- percentPosition: true,
659
- columnWidth: '.eael-post-grid-column'
660
- });
 
 
 
661
 
662
- });
663
-
664
- }(jQuery));
665
 
666
  </script>
667
 
668
-
669
  <?php
670
  }
671
 
125
  ]
126
  );
127
 
128
+ $this->add_control(
129
+ 'eael_post_grid_show_load_more',
130
+ [
131
+ 'label' => __( 'Show Load More', 'essential-addons-elementor' ),
132
+ 'type' => Controls_Manager::CHOOSE,
133
+ 'options' => [
134
+ '1' => [
135
+ 'title' => __( 'Yes', 'essential-addons-elementor' ),
136
+ 'icon' => 'fa fa-check',
137
+ ],
138
+ '0' => [
139
+ 'title' => __( 'No', 'essential-addons-elementor' ),
140
+ 'icon' => 'fa fa-ban',
141
+ ]
142
+ ],
143
+ 'default' => '0'
144
+ ]
145
+ );
146
+
147
+ $this->add_control(
148
+ 'eael_post_grid_show_load_more_text',
149
+ [
150
+ 'label' => esc_html__( 'Label Text', 'essential-addons-elementor' ),
151
+ 'type' => Controls_Manager::TEXT,
152
+ 'label_block' => false,
153
+ 'default' => esc_html__( 'Load More', 'essential-addons-elementor' ),
154
+ 'condition' => [
155
+ 'eael_post_grid_show_load_more' => '1',
156
+ ]
157
+ ]
158
+ );
159
+
160
  $this->add_control(
161
  'eael_show_image',
162
  [
285
  $this->start_controls_section(
286
  'eael_section_pro',
287
  [
288
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
289
  ]
290
  );
291
 
 
292
  $this->add_control(
293
  'eael_control_get_pro',
294
  [
305
  ]
306
  );
307
 
308
+ $this->end_controls_section();
 
309
 
310
  $this->start_controls_section(
311
  'eael_section_post_grid_style',
372
  ],
373
  ]
374
  );
375
+
376
  $this->add_group_control(
377
  Group_Control_Box_Shadow::get_type(),
378
  [
380
  'selector' => '{{WRAPPER}} .eael-grid-post-holder',
381
  ]
382
  );
383
+
384
 
385
  $this->end_controls_section();
386
 
586
 
587
  $this->end_controls_section();
588
 
589
+ $this->start_controls_section(
590
+ 'eael_section_load_more_btn',
591
+ [
592
+ 'label' => __( 'Load More Button Style', 'essential-addons-elementor' ),
593
+ 'tab' => Controls_Manager::TAB_STYLE,
594
+ 'condition' => [
595
+ 'eael_post_grid_show_load_more' => '1'
596
+ ]
597
+ ]
598
+ );
599
+
600
+ $this->add_responsive_control(
601
+ 'eael_post_grid_load_more_btn_padding',
602
+ [
603
+ 'label' => esc_html__( 'Padding', 'essential-addons-elementor' ),
604
+ 'type' => Controls_Manager::DIMENSIONS,
605
+ 'size_units' => [ 'px', 'em', '%' ],
606
+ 'selectors' => [
607
+ '{{WRAPPER}} .eael-load-more-button' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
608
+ ],
609
+ ]
610
+ );
611
+
612
+ $this->add_responsive_control(
613
+ 'eael_post_grid_load_more_btn_margin',
614
+ [
615
+ 'label' => esc_html__( 'Margin', 'essential-addons-elementor' ),
616
+ 'type' => Controls_Manager::DIMENSIONS,
617
+ 'size_units' => [ 'px', 'em', '%' ],
618
+ 'selectors' => [
619
+ '{{WRAPPER}} .eael-load-more-button' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
620
+ ],
621
+ ]
622
+ );
623
+ $this->add_group_control(
624
+ Group_Control_Typography::get_type(),
625
+ [
626
+ 'name' => 'eael_post_grid_load_more_btn_typography',
627
+ 'selector' => '{{WRAPPER}} .eael-load-more-button',
628
+ ]
629
+ );
630
+
631
+ $this->start_controls_tabs( 'eael_post_grid_load_more_btn_tabs' );
632
+
633
+ // Normal State Tab
634
+ $this->start_controls_tab( 'eael_post_grid_load_more_btn_normal', [ 'label' => esc_html__( 'Normal', 'essential-addons-elementor' ) ] );
635
+
636
+ $this->add_control(
637
+ 'eael_post_grid_load_more_btn_normal_text_color',
638
+ [
639
+ 'label' => esc_html__( 'Text Color', 'essential-addons-elementor' ),
640
+ 'type' => Controls_Manager::COLOR,
641
+ 'default' => '#fff',
642
+ 'selectors' => [
643
+ '{{WRAPPER}} .eael-load-more-button' => 'color: {{VALUE}};',
644
+ ],
645
+ ]
646
+ );
647
+
648
+ $this->add_control(
649
+ 'eael_cta_btn_normal_bg_color',
650
+ [
651
+ 'label' => esc_html__( 'Background Color', 'essential-addons-elementor' ),
652
+ 'type' => Controls_Manager::COLOR,
653
+ 'default' => '#29d8d8',
654
+ 'selectors' => [
655
+ '{{WRAPPER}} .eael-load-more-button' => 'background: {{VALUE}};',
656
+ ],
657
+ ]
658
+ );
659
+
660
+ $this->add_group_control(
661
+ Group_Control_Border::get_type(),
662
+ [
663
+ 'name' => 'eael_post_grid_load_more_btn_normal_border',
664
+ 'label' => esc_html__( 'Border', 'essential-addons-elementor' ),
665
+ 'selector' => '{{WRAPPER}} .eael-load-more-button',
666
+ ]
667
+ );
668
+
669
+ $this->add_control(
670
+ 'eael_post_grid_load_more_btn_border_radius',
671
+ [
672
+ 'label' => esc_html__( 'Border Radius', 'essential-addons-elementor' ),
673
+ 'type' => Controls_Manager::SLIDER,
674
+ 'range' => [
675
+ 'px' => [
676
+ 'max' => 100,
677
+ ],
678
+ ],
679
+ 'selectors' => [
680
+ '{{WRAPPER}} .eael-load-more-button' => 'border-radius: {{SIZE}}px;',
681
+ ],
682
+ ]
683
+ );
684
+
685
+ $this->end_controls_tab();
686
+
687
+ // Hover State Tab
688
+ $this->start_controls_tab( 'eael_post_grid_load_more_btn_hover', [ 'label' => esc_html__( 'Hover', 'essential-addons-elementor' ) ] );
689
+
690
+ $this->add_control(
691
+ 'eael_post_grid_load_more_btn_hover_text_color',
692
+ [
693
+ 'label' => esc_html__( 'Text Color', 'essential-addons-elementor' ),
694
+ 'type' => Controls_Manager::COLOR,
695
+ 'default' => '#fff',
696
+ 'selectors' => [
697
+ '{{WRAPPER}} .eael-load-more-button:hover' => 'color: {{VALUE}};',
698
+ ],
699
+ ]
700
+ );
701
+
702
+ $this->add_control(
703
+ 'eael_post_grid_load_more_btn_hover_bg_color',
704
+ [
705
+ 'label' => esc_html__( 'Background Color', 'essential-addons-elementor' ),
706
+ 'type' => Controls_Manager::COLOR,
707
+ 'default' => '27bdbd',
708
+ 'selectors' => [
709
+ '{{WRAPPER}} .eael-load-more-button:hover' => 'background: {{VALUE}};',
710
+ ],
711
+ ]
712
+ );
713
+
714
+ $this->add_control(
715
+ 'eael_post_grid_load_more_btn_hover_border_color',
716
+ [
717
+ 'label' => esc_html__( 'Border Color', 'essential-addons-elementor' ),
718
+ 'type' => Controls_Manager::COLOR,
719
+ 'default' => '',
720
+ 'selectors' => [
721
+ '{{WRAPPER}} .eael-load-more-button:hover' => 'border-color: {{VALUE}};',
722
+ ],
723
+ ]
724
+
725
+ );
726
+
727
+ $this->end_controls_tab();
728
+
729
+ $this->end_controls_tabs();
730
+
731
+ $this->add_group_control(
732
+ Group_Control_Box_Shadow::get_type(),
733
+ [
734
+ 'name' => 'eael_post_grid_load_more_btn_shadow',
735
+ 'selector' => '{{WRAPPER}} .eael-load-more-button',
736
+ 'separator' => 'before'
737
+ ]
738
+ );
739
+
740
+ $this->add_control(
741
+ 'eael_post_grid_load_more_loader_pos_title',
742
+ [
743
+ 'label' => esc_html__( 'Loader Position', 'essential-addons-elementor' ),
744
+ 'type' => Controls_Manager::HEADING,
745
+ 'separator' => 'before'
746
+ ]
747
+ );
748
+
749
+ $this->add_control(
750
+ 'eael_post_grid_loader_pos_left',
751
+ [
752
+ 'label' => esc_html__( 'From Left', 'essential-addons-elementor' ),
753
+ 'type' => Controls_Manager::SLIDER,
754
+ 'default' => [
755
+ 'size' => 15
756
+ ],
757
+ 'range' => [
758
+ 'px' => [
759
+ 'min' => 0,
760
+ 'max' => 100,
761
+ ],
762
+ ],
763
+ 'selectors' => [
764
+ '{{WRAPPER}} .eael-load-more-button.button--loading .button__loader' => 'left: {{SIZE}}px;',
765
+ ],
766
+ ]
767
+ );
768
+
769
+ $this->add_control(
770
+ 'eael_post_grid_loader_pos_top',
771
+ [
772
+ 'label' => esc_html__( 'From Top', 'essential-addons-elementor' ),
773
+ 'type' => Controls_Manager::SLIDER,
774
+ 'default' => [
775
+ 'size' => 15
776
+ ],
777
+ 'range' => [
778
+ 'px' => [
779
+ 'min' => 0,
780
+ 'max' => 100,
781
+ ],
782
+ ],
783
+ 'selectors' => [
784
+ '{{WRAPPER}} .eael-load-more-button.button--loading .button__loader' => 'top: {{SIZE}}px;',
785
+ ],
786
+ ]
787
+ );
788
+
789
+ $this->end_controls_section();
790
+
791
  }
792
 
793
 
798
 
799
  $posts = eael_get_post_data($post_args);
800
 
801
+ /* Get Post Categories */
802
+ $post_categories = $this->get_settings( 'category' );
803
+ if( !empty( $post_categories ) ) {
804
+ foreach ( $post_categories as $key=>$value ) {
805
+ $categories[] = $value;
806
+ }
807
+ $categories_id_string = implode( ',' , $categories );
808
+
809
+ /* Get All Post Count */
810
+ $total_post = 0;
811
+ foreach( $categories as $cat ) {
812
+ $category = get_category( $cat );
813
+ $total_post = $total_post + $category->category_count;
814
+ }
815
+ }else {
816
+ $categories_id_string = '';
817
+ $total_post = wp_count_posts()->publish;
818
+ }
819
+
820
  ?>
821
 
822
+ <div id="eael-post-grid-<?php echo esc_attr($this->get_id()); ?>" class="eael-post-grid-container <?php echo esc_attr($settings['eael_post_grid_columns'] ); ?>">
823
+ <div class="eael-post-grid eael-post-appender-<?php echo esc_attr( $this->get_id() ); ?>">
824
  <?php
825
  if(count($posts)){
826
  global $post;
866
  <div class="eael-entry-content">
867
  <?php if($settings['eael_show_excerpt']){ ?>
868
  <div class="eael-grid-post-excerpt">
869
+ <p><?php echo eael_get_excerpt_by_id(get_the_ID(),$settings['eael_excerpt_length']);?></p>
870
  </div>
871
  <?php } ?>
872
  </div>
894
  }
895
  ?>
896
  </div>
897
+ <div class="clearfix"></div>
898
  </div>
899
+ <?php if( 1 == $settings['eael_post_grid_show_load_more'] ) : ?>
900
+ <!-- Load More Button -->
901
+ <div class="eael-load-more-button-wrap">
902
+ <button class="eael-load-more-button" id="eael-load-more-btn-<?php echo $this->get_id(); ?>">
903
+ <div class="eael-btn-loader button__loader"></div>
904
+ <span><?php echo esc_html__( $settings['eael_post_grid_show_load_more_text'], 'essential-addons-elementor' ); ?></span>
905
+ </button>
906
+ </div>
907
+ <?php endif; ?>
908
+ <!-- Loading Lode More Js -->
909
+ <script>
910
+ jQuery(document).ready(function($) {
911
+
912
+ 'use strict';
913
+ var options = {
914
+ siteUrl: '<?php echo home_url( '/' ); ?>',
915
+ totalPosts: <?php echo $total_post; ?>,
916
+ loadMoreBtn: $( '#eael-load-more-btn-<?php echo $this->get_id(); ?>' ),
917
+ postContainer: $( '.eael-post-appender-<?php echo esc_attr( $this->get_id() ); ?>' ),
918
+ postStyle: 'grid',
919
+ }
920
 
921
+ var settings = {
922
+ perPage: parseInt( <?php echo $settings['eael_posts_count'] ?>, 10 ),
923
+ postOrder: '<?php echo $settings['eael_post_order'] ?>',
924
+ showImage: <?php echo $settings['eael_show_image']; ?>,
925
+ showTitle: <?php echo $settings['eael_show_title']; ?>,
926
+ showExcerpt: <?php echo $settings['eael_show_excerpt']; ?>,
927
+ showMeta: <?php echo $settings['eael_show_meta']; ?>,
928
+ metaPosition: '<?php echo $settings['eael_post_grid_meta_position']; ?>',
929
+ excerptLength: parseInt( <?php echo $settings['eael_excerpt_length']; ?>, 10 ),
930
+ btnText: '<?php echo $settings['eael_post_grid_show_load_more_text']; ?>',
931
+ categories: '<?php echo $categories_id_string; ?>',
932
+ }
933
 
934
+ loadMore( options, settings );
 
 
 
 
 
935
 
936
+ // Load Masonry Js
937
+ $(window).load(function(){
938
+ $('.eael-post-grid').masonry({
939
+ itemSelector: '.eael-grid-post',
940
+ percentPosition: true,
941
+ columnWidth: '.eael-post-grid-column'
942
+ });
943
+ });
944
 
945
+ });
 
 
946
 
947
  </script>
948
 
 
949
  <?php
950
  }
951
 
elements/post-timeline/post-timeline.php CHANGED
@@ -108,6 +108,37 @@ class Widget_PostTimeline extends Widget_Base {
108
  ]
109
  );
110
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
111
 
112
  $this->add_control(
113
  'eael_show_image',
@@ -198,11 +229,10 @@ class Widget_PostTimeline extends Widget_Base {
198
  $this->start_controls_section(
199
  'eael_section_pro',
200
  [
201
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
202
  ]
203
  );
204
 
205
-
206
  $this->add_control(
207
  'eael_control_get_pro',
208
  [
@@ -219,10 +249,9 @@ class Widget_PostTimeline extends Widget_Base {
219
  ]
220
  );
221
 
 
222
 
223
- $this->end_controls_section();
224
 
225
-
226
  $this->start_controls_section(
227
  'eael_section_post_timeline_style',
228
  [
@@ -457,6 +486,208 @@ class Widget_PostTimeline extends Widget_Base {
457
 
458
  $this->end_controls_section();
459
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
460
  }
461
 
462
 
@@ -466,11 +697,29 @@ class Widget_PostTimeline extends Widget_Base {
466
  $post_args = eael_get_post_settings($settings);
467
 
468
  $posts = eael_get_post_data($post_args);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
469
 
470
  ?>
471
 
472
  <div id="eael-post-timeline-<?php echo esc_attr($this->get_id()); ?>" class="eael-post-timeline">
473
- <div class="eael-post-timeline">
474
  <?php
475
  if(count($posts)){
476
  global $post;
@@ -490,7 +739,7 @@ class Widget_PostTimeline extends Widget_Base {
490
  <p><?php echo eael_get_excerpt_by_id(get_the_ID(),$settings['eael_excerpt_length']);?></p>
491
  </div>
492
  <?php } ?>
493
-
494
  <?php if($settings['eael_show_title']){ ?>
495
  <div class="eael-timeline-post-title">
496
  <h2><?php the_title(); ?></h2>
@@ -508,7 +757,43 @@ class Widget_PostTimeline extends Widget_Base {
508
  ?>
509
  </div>
510
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
511
 
 
 
512
 
513
  <?php
514
  }
108
  ]
109
  );
110
 
111
+ $this->add_control(
112
+ 'eael_post_timeline_show_load_more',
113
+ [
114
+ 'label' => __( 'Show Load More', 'essential-addons-elementor' ),
115
+ 'type' => Controls_Manager::CHOOSE,
116
+ 'options' => [
117
+ '1' => [
118
+ 'title' => __( 'Yes', 'essential-addons-elementor' ),
119
+ 'icon' => 'fa fa-check',
120
+ ],
121
+ '0' => [
122
+ 'title' => __( 'No', 'essential-addons-elementor' ),
123
+ 'icon' => 'fa fa-ban',
124
+ ]
125
+ ],
126
+ 'default' => '0'
127
+ ]
128
+ );
129
+
130
+ $this->add_control(
131
+ 'eael_post_timeline_load_more_text',
132
+ [
133
+ 'label' => esc_html__( 'Label Text', 'essential-addons-elementor' ),
134
+ 'type' => Controls_Manager::TEXT,
135
+ 'label_block' => false,
136
+ 'default' => esc_html__( 'Load More', 'essential-addons-elementor' ),
137
+ 'condition' => [
138
+ 'eael_post_timeline_show_load_more' => '1',
139
+ ]
140
+ ]
141
+ );
142
 
143
  $this->add_control(
144
  'eael_show_image',
229
  $this->start_controls_section(
230
  'eael_section_pro',
231
  [
232
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
233
  ]
234
  );
235
 
 
236
  $this->add_control(
237
  'eael_control_get_pro',
238
  [
249
  ]
250
  );
251
 
252
+ $this->end_controls_section();
253
 
 
254
 
 
255
  $this->start_controls_section(
256
  'eael_section_post_timeline_style',
257
  [
486
 
487
  $this->end_controls_section();
488
 
489
+ $this->start_controls_section(
490
+ 'eael_section_load_more_btn',
491
+ [
492
+ 'label' => __( 'Load More Button Style', 'essential-addons-elementor' ),
493
+ 'tab' => Controls_Manager::TAB_STYLE,
494
+ 'condition' => [
495
+ 'eael_post_timeline_show_load_more' => '1'
496
+ ]
497
+ ]
498
+ );
499
+
500
+ $this->add_responsive_control(
501
+ 'eael_post_timeline_load_more_btn_padding',
502
+ [
503
+ 'label' => esc_html__( 'Padding', 'essential-addons-elementor' ),
504
+ 'type' => Controls_Manager::DIMENSIONS,
505
+ 'size_units' => [ 'px', 'em', '%' ],
506
+ 'selectors' => [
507
+ '{{WRAPPER}} .eael-load-more-button' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
508
+ ],
509
+ ]
510
+ );
511
+
512
+ $this->add_responsive_control(
513
+ 'eael_post_timeline_load_more_btn_margin',
514
+ [
515
+ 'label' => esc_html__( 'Margin', 'essential-addons-elementor' ),
516
+ 'type' => Controls_Manager::DIMENSIONS,
517
+ 'size_units' => [ 'px', 'em', '%' ],
518
+ 'selectors' => [
519
+ '{{WRAPPER}} .eael-load-more-button' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
520
+ ],
521
+ ]
522
+ );
523
+ $this->add_group_control(
524
+ Group_Control_Typography::get_type(),
525
+ [
526
+ 'name' => 'eael_post_timeline_load_more_btn_typography',
527
+ 'selector' => '{{WRAPPER}} .eael-load-more-button',
528
+ ]
529
+ );
530
+
531
+ $this->start_controls_tabs( 'eael_post_timeline_load_more_btn_tabs' );
532
+
533
+ // Normal State Tab
534
+ $this->start_controls_tab( 'eael_post_timeline_load_more_btn_normal', [ 'label' => esc_html__( 'Normal', 'essential-addons-elementor' ) ] );
535
+
536
+ $this->add_control(
537
+ 'eael_post_timeline_load_more_btn_normal_text_color',
538
+ [
539
+ 'label' => esc_html__( 'Text Color', 'essential-addons-elementor' ),
540
+ 'type' => Controls_Manager::COLOR,
541
+ 'default' => '#fff',
542
+ 'selectors' => [
543
+ '{{WRAPPER}} .eael-load-more-button' => 'color: {{VALUE}};',
544
+ ],
545
+ ]
546
+ );
547
+
548
+ $this->add_control(
549
+ 'eael_cta_btn_normal_bg_color',
550
+ [
551
+ 'label' => esc_html__( 'Background Color', 'essential-addons-elementor' ),
552
+ 'type' => Controls_Manager::COLOR,
553
+ 'default' => '#29d8d8',
554
+ 'selectors' => [
555
+ '{{WRAPPER}} .eael-load-more-button' => 'background: {{VALUE}};',
556
+ ],
557
+ ]
558
+ );
559
+
560
+ $this->add_group_control(
561
+ Group_Control_Border::get_type(),
562
+ [
563
+ 'name' => 'eael_post_timeline_load_more_btn_normal_border',
564
+ 'label' => esc_html__( 'Border', 'essential-addons-elementor' ),
565
+ 'selector' => '{{WRAPPER}} .eael-load-more-button',
566
+ ]
567
+ );
568
+
569
+ $this->add_control(
570
+ 'eael_post_timeline_load_more_btn_border_radius',
571
+ [
572
+ 'label' => esc_html__( 'Border Radius', 'essential-addons-elementor' ),
573
+ 'type' => Controls_Manager::SLIDER,
574
+ 'range' => [
575
+ 'px' => [
576
+ 'max' => 100,
577
+ ],
578
+ ],
579
+ 'selectors' => [
580
+ '{{WRAPPER}} .eael-load-more-button' => 'border-radius: {{SIZE}}px;',
581
+ ],
582
+ ]
583
+ );
584
+
585
+ $this->end_controls_tab();
586
+
587
+ // Hover State Tab
588
+ $this->start_controls_tab( 'eael_post_timeline_load_more_btn_hover', [ 'label' => esc_html__( 'Hover', 'essential-addons-elementor' ) ] );
589
+
590
+ $this->add_control(
591
+ 'eael_post_timeline_load_more_btn_hover_text_color',
592
+ [
593
+ 'label' => esc_html__( 'Text Color', 'essential-addons-elementor' ),
594
+ 'type' => Controls_Manager::COLOR,
595
+ 'default' => '#fff',
596
+ 'selectors' => [
597
+ '{{WRAPPER}} .eael-load-more-button:hover' => 'color: {{VALUE}};',
598
+ ],
599
+ ]
600
+ );
601
+
602
+ $this->add_control(
603
+ 'eael_post_timeline_load_more_btn_hover_bg_color',
604
+ [
605
+ 'label' => esc_html__( 'Background Color', 'essential-addons-elementor' ),
606
+ 'type' => Controls_Manager::COLOR,
607
+ 'default' => '#27bdbd',
608
+ 'selectors' => [
609
+ '{{WRAPPER}} .eael-load-more-button:hover' => 'background: {{VALUE}};',
610
+ ],
611
+ ]
612
+ );
613
+
614
+ $this->add_control(
615
+ 'eael_post_timeline_load_more_btn_hover_border_color',
616
+ [
617
+ 'label' => esc_html__( 'Border Color', 'essential-addons-elementor' ),
618
+ 'type' => Controls_Manager::COLOR,
619
+ 'default' => '',
620
+ 'selectors' => [
621
+ '{{WRAPPER}} .eael-load-more-button:hover' => 'border-color: {{VALUE}};',
622
+ ],
623
+ ]
624
+
625
+ );
626
+
627
+ $this->end_controls_tab();
628
+
629
+ $this->end_controls_tabs();
630
+
631
+ $this->add_group_control(
632
+ Group_Control_Box_Shadow::get_type(),
633
+ [
634
+ 'name' => 'eael_post_timeline_load_more_btn_shadow',
635
+ 'selector' => '{{WRAPPER}} .eael-load-more-button',
636
+ 'separator' => 'before'
637
+ ]
638
+ );
639
+
640
+ $this->add_control(
641
+ 'eael_post_timeline_load_more_loader_pos_title',
642
+ [
643
+ 'label' => esc_html__( 'Loader Position', 'essential-addons-elementor' ),
644
+ 'type' => Controls_Manager::HEADING,
645
+ 'separator' => 'before'
646
+ ]
647
+ );
648
+
649
+ $this->add_control(
650
+ 'eael_post_timeline_loader_pos_left',
651
+ [
652
+ 'label' => esc_html__( 'From Left', 'essential-addons-elementor' ),
653
+ 'type' => Controls_Manager::SLIDER,
654
+ 'default' => [
655
+ 'size' => 15
656
+ ],
657
+ 'range' => [
658
+ 'px' => [
659
+ 'min' => 0,
660
+ 'max' => 100,
661
+ ],
662
+ ],
663
+ 'selectors' => [
664
+ '{{WRAPPER}} .eael-load-more-button.button--loading .button__loader' => 'left: {{SIZE}}px;',
665
+ ],
666
+ ]
667
+ );
668
+
669
+ $this->add_control(
670
+ 'eael_post_timeline_loader_pos_top',
671
+ [
672
+ 'label' => esc_html__( 'From Top', 'essential-addons-elementor' ),
673
+ 'type' => Controls_Manager::SLIDER,
674
+ 'default' => [
675
+ 'size' => 15
676
+ ],
677
+ 'range' => [
678
+ 'px' => [
679
+ 'min' => 0,
680
+ 'max' => 100,
681
+ ],
682
+ ],
683
+ 'selectors' => [
684
+ '{{WRAPPER}} .eael-load-more-button.button--loading .button__loader' => 'top: {{SIZE}}px;',
685
+ ],
686
+ ]
687
+ );
688
+
689
+ $this->end_controls_section();
690
+
691
  }
692
 
693
 
697
  $post_args = eael_get_post_settings($settings);
698
 
699
  $posts = eael_get_post_data($post_args);
700
+ /* Get Post Categories */
701
+ $post_categories = $this->get_settings( 'category' );
702
+ if( !empty( $post_categories ) ) {
703
+ foreach ( $post_categories as $key=>$value ) {
704
+ $categories[] = $value;
705
+ }
706
+ $categories_id_string = implode( ',' , $categories );
707
+
708
+ /* Get All Post Count */
709
+ $total_post = 0;
710
+ foreach( $categories as $cat ) {
711
+ $category = get_category( $cat );
712
+ $total_post = $total_post + $category->category_count;
713
+ }
714
+ }else {
715
+ $categories_id_string = '';
716
+ $total_post = wp_count_posts()->publish;
717
+ }
718
 
719
  ?>
720
 
721
  <div id="eael-post-timeline-<?php echo esc_attr($this->get_id()); ?>" class="eael-post-timeline">
722
+ <div class="eael-post-timeline eael-post-appender-<?php echo esc_attr( $this->get_id() ); ?>">
723
  <?php
724
  if(count($posts)){
725
  global $post;
739
  <p><?php echo eael_get_excerpt_by_id(get_the_ID(),$settings['eael_excerpt_length']);?></p>
740
  </div>
741
  <?php } ?>
742
+
743
  <?php if($settings['eael_show_title']){ ?>
744
  <div class="eael-timeline-post-title">
745
  <h2><?php the_title(); ?></h2>
757
  ?>
758
  </div>
759
  </div>
760
+ <?php if( 1 == $settings['eael_post_timeline_show_load_more'] ) : ?>
761
+ <!-- Load More Button -->
762
+ <div class="eael-load-more-button-wrap">
763
+ <button class="eael-load-more-button" id="eael-load-more-btn-<?php echo $this->get_id(); ?>">
764
+ <div class="eael-btn-loader button__loader"></div>
765
+ <span><?php echo esc_html__( $settings['eael_post_timeline_load_more_text'], 'essential-addons-elementor' ); ?></span>
766
+ </button>
767
+ </div>
768
+ <?php endif; ?>
769
+ <!-- Loading Lode More Js -->
770
+ <script>
771
+ jQuery(document).ready(function($) {
772
+
773
+ 'use strict';
774
+ var options = {
775
+ siteUrl: '<?php echo home_url( '/' ); ?>',
776
+ totalPosts: <?php echo $total_post; ?>,
777
+ loadMoreBtn: $( '#eael-load-more-btn-<?php echo $this->get_id(); ?>' ),
778
+ postContainer: $( '.eael-post-appender-<?php echo esc_attr( $this->get_id() ); ?>' ),
779
+ postStyle: 'timeline',
780
+ }
781
+
782
+ var settings = {
783
+ perPage: parseInt( <?php echo $settings['eael_posts_count'] ?>, 10 ),
784
+ postOrder: '<?php echo $settings['eael_post_order'] ?>',
785
+ showImage: <?php echo $settings['eael_show_image']; ?>,
786
+ showTitle: <?php echo $settings['eael_show_title']; ?>,
787
+ showExcerpt: <?php echo $settings['eael_show_excerpt']; ?>,
788
+ excerptLength: parseInt( <?php echo $settings['eael_excerpt_length']; ?>, 10 ),
789
+ btnText: '<?php echo $settings['eael_post_timeline_load_more_text']; ?>',
790
+ categories: '<?php echo $categories_id_string; ?>',
791
+ }
792
+
793
+ loadMore( options, settings );
794
 
795
+ });
796
+ </script>
797
 
798
  <?php
799
  }
elements/pricing-table/pricing-table.php CHANGED
@@ -49,9 +49,19 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
49
  ]
50
  );
51
 
 
 
 
 
 
 
 
 
 
 
52
 
53
  /**
54
- * Condition: 'eael_pricing_table_style' => [ 'style-3', 'style-4' ], 'eael_pricing_table_featured' => 'yes'
55
  */
56
  $this->add_control(
57
  'eael_pricing_table_icon_enabled',
@@ -104,26 +114,6 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
104
  ]
105
  );
106
 
107
- /**
108
- * Condition: 'eael_pricing_table_style' => 'style-4'
109
- */
110
- $this->add_control(
111
- 'eael_pricing_table_style_4_image',
112
- [
113
- 'label' => esc_html__( 'Header Image', 'essential-addons-elementor' ),
114
- 'type' => Controls_Manager::MEDIA,
115
- 'default' => [
116
- 'url' => Utils::get_placeholder_image_src(),
117
- ],
118
- 'selectors' => [
119
- '{{WRAPPER}} .eael-pricing-image' => 'background-image: url({{URL}});',
120
- ],
121
- 'condition' => [
122
- 'eael_pricing_table_style' => 'style-4'
123
- ]
124
- ]
125
- );
126
-
127
  $this->end_controls_section();
128
 
129
  /**
@@ -159,24 +149,23 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
159
  ]
160
  );
161
 
162
- /**
163
- * Condition: 'eael_pricing_table_style' => 'style-3'
164
- */
165
- $this->add_control(
166
- 'eael_pricing_table_style_3_price_position',
167
- [
168
- 'label' => esc_html__( 'Pricing Position', 'essential-addons-elementor' ),
169
- 'type' => Controls_Manager::SELECT,
170
- 'default' => 'bottom',
171
- 'label_block' => false,
172
- 'options' => [
173
- 'top' => esc_html__( 'On Top', 'essential-addons-elementor' ),
174
- 'bottom' => esc_html__( 'At Bottom', 'essential-addons-elementor' ),
175
- ],
176
- 'condition' => [
177
- 'eael_pricing_table_style' => 'style-3'
178
- ]
179
- ]
180
  );
181
 
182
  $this->add_control(
@@ -349,7 +338,7 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
349
  );
350
 
351
  /**
352
- * Condition: 'eael_pricing_table_style' => [ 'style-3', 'style-4' ], 'eael_pricing_table_featured' => 'yes'
353
  */
354
  $this->add_control(
355
  'eael_pricing_table_featured_tag_text',
@@ -363,7 +352,6 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
363
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item.featured:before' => 'content: "{{VALUE}}";',
364
  ],
365
  'condition' => [
366
- 'eael_pricing_table_style' => [ 'style-3', 'style-4' ],
367
  'eael_pricing_table_featured' => 'yes'
368
  ]
369
  ]
@@ -371,6 +359,31 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
371
 
372
  $this->end_controls_section();
373
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
374
  /**
375
  * -------------------------------------------
376
  * Tab Style (Pricing Table Style)
@@ -396,21 +409,6 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
396
  ]
397
  );
398
 
399
- $this->add_control(
400
- 'eael_pricing_table_featured_bg_color',
401
- [
402
- 'label' => esc_html__( 'Featured Background Color', 'essential-addons-elementor' ),
403
- 'type' => Controls_Manager::COLOR,
404
- 'default' => '',
405
- 'selectors' => [
406
- '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item.featured .header' => 'background-color: {{VALUE}};',
407
- ],
408
- 'condition' => [
409
- 'eael_pricing_table_style' => 'style-4'
410
- ]
411
- ]
412
- );
413
-
414
  $this->add_responsive_control(
415
  'eael_pricing_table_container_padding',
416
  [
@@ -570,7 +568,7 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
570
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item .header' => 'background: {{VALUE}};',
571
  ],
572
  'condition' => [
573
- 'eael_pricing_table_style' => ['style-2', 'style-4']
574
  ]
575
  ]
576
  );
@@ -590,21 +588,6 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
590
  ]
591
  );
592
 
593
- $this->add_control(
594
- 'eael_pricing_table_style_3_title_line_color',
595
- [
596
- 'label' => esc_html__( 'Line Color', 'essential-addons-elementor' ),
597
- 'type' => Controls_Manager::COLOR,
598
- 'default' => '#E25A77',
599
- 'selectors' => [
600
- '{{WRAPPER}} .eael-pricing.style-3 .eael-pricing-item .header:after' => 'background: {{VALUE}};',
601
- ],
602
- 'condition' => [
603
- 'eael_pricing_table_style' => ['style-3']
604
- ]
605
- ]
606
- );
607
-
608
  $this->add_group_control(
609
  Group_Control_Typography::get_type(),
610
  [
@@ -764,7 +747,7 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
764
  'label' => esc_html__( 'Ribbon Style', 'essential-addons-elementor' ),
765
  'tab' => Controls_Manager::TAB_STYLE,
766
  'condition' => [
767
- 'eael_pricing_table_style' => [ 'style-1', 'style-3', 'style-4' ]
768
  ]
769
  ]
770
  );
@@ -826,7 +809,6 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
826
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item.featured:before' => 'font-size: {{SIZE}}px;',
827
  ],
828
  'condition' => [
829
- 'eael_pricing_table_style' => ['style-3', 'style-4'],
830
  'eael_pricing_table_featured' => 'yes'
831
  ],
832
  ]
@@ -843,7 +825,6 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
843
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item.featured:before' => 'color: {{VALUE}};',
844
  ],
845
  'condition' => [
846
- 'eael_pricing_table_style' => ['style-3', 'style-4'],
847
  'eael_pricing_table_featured' => 'yes'
848
  ],
849
  ]
@@ -861,7 +842,6 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
861
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item.featured:before' => 'background: {{VALUE}};',
862
  ],
863
  'condition' => [
864
- 'eael_pricing_table_style' => ['style-3', 'style-4'],
865
  'eael_pricing_table_featured' => 'yes'
866
  ],
867
  ]
@@ -1251,7 +1231,7 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
1251
  $nofollow = $settings['eael_pricing_table_btn_link']['nofollow'] ? 'rel="nofollow"' : '';
1252
  if( 'yes' === $settings['eael_pricing_table_featured'] ) : $featured_class = 'featured'; else : $featured_class = ''; endif;
1253
  ?>
1254
- <?php if( 'style-1' === $settings['eael_pricing_table_style'] ) : ?>
1255
  <div class="eael-pricing style-1">
1256
  <div class="eael-pricing-item <?php echo esc_attr( $featured_class ); ?>">
1257
  <div class="header">
@@ -1329,18 +1309,6 @@ class Widget_Eael_Pricing_Table extends Widget_Base {
1329
  </div>
1330
  </div>
1331
  </div>
1332
- <?php elseif( 'style-3' === $settings['eael_pricing_table_style'] ) : ?>
1333
- <div class="eael-pricing style-3">
1334
- <div class="only-in-pro">
1335
- <h2 class="title"><?php echo esc_html__( 'Available in Pro Version!', 'essential-addons-elementor' ); ?></h2>
1336
- </div>
1337
- </div>
1338
- <?php elseif( 'style-4' === $settings['eael_pricing_table_style'] ) : ?>
1339
- <div class="eael-pricing style-4">
1340
- <div class="only-in-pro">
1341
- <h2 class="title"><?php echo esc_html__( 'Available in Pro Version!', 'essential-addons-elementor' ); ?></h2>
1342
- </div>
1343
- </div>
1344
  <?php endif; ?>
1345
  <?php
1346
  }
49
  ]
50
  );
51
 
52
+ $this->add_control(
53
+ 'eael_pricing_table_style_pro_alert',
54
+ [
55
+ 'label' => esc_html__( 'Only available in pro version!', 'essential-addons-elementor' ),
56
+ 'type' => Controls_Manager::HEADING,
57
+ 'condition' => [
58
+ 'eael_pricing_table_style' => ['style-3', 'style-4'],
59
+ ]
60
+ ]
61
+ );
62
 
63
  /**
64
+ * Condition: 'eael_pricing_table_featured' => 'yes'
65
  */
66
  $this->add_control(
67
  'eael_pricing_table_icon_enabled',
114
  ]
115
  );
116
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
117
  $this->end_controls_section();
118
 
119
  /**
149
  ]
150
  );
151
 
152
+ $this->add_responsive_control(
153
+ 'eael_pricing_table_price_cur_alignment',
154
+ [
155
+ 'label' => esc_html__( 'Alignment', 'essential-addons-elementor' ),
156
+ 'type' => Controls_Manager::SLIDER,
157
+ 'default' => [
158
+ 'size' => 12
159
+ ],
160
+ 'range' => [
161
+ 'px' => [
162
+ 'max' => 100,
163
+ ],
164
+ ],
165
+ 'selectors' => [
166
+ '{{WRAPPER}} .eael-pricing-item .price-tag:before' => 'left: -{{SIZE}}px;',
167
+ ],
168
+ ]
 
169
  );
170
 
171
  $this->add_control(
338
  );
339
 
340
  /**
341
+ * Condition: 'eael_pricing_table_featured' => 'yes'
342
  */
343
  $this->add_control(
344
  'eael_pricing_table_featured_tag_text',
352
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item.featured:before' => 'content: "{{VALUE}}";',
353
  ],
354
  'condition' => [
 
355
  'eael_pricing_table_featured' => 'yes'
356
  ]
357
  ]
359
 
360
  $this->end_controls_section();
361
 
362
+ $this->start_controls_section(
363
+ 'eael_section_pro',
364
+ [
365
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
366
+ ]
367
+ );
368
+
369
+ $this->add_control(
370
+ 'eael_control_get_pro',
371
+ [
372
+ 'label' => __( 'Unlock more possibilities', 'essential-addons-elementor' ),
373
+ 'type' => Controls_Manager::CHOOSE,
374
+ 'options' => [
375
+ '1' => [
376
+ 'title' => __( '', 'essential-addons-elementor' ),
377
+ 'icon' => 'fa fa-unlock-alt',
378
+ ],
379
+ ],
380
+ 'default' => '1',
381
+ 'description' => '<span class="pro-feature"> Get the <a href="https://essential-addons.com/elementor/buy.php" target="_blank">Pro version</a> for more stunning elements and customization options.</span>'
382
+ ]
383
+ );
384
+
385
+ $this->end_controls_section();
386
+
387
  /**
388
  * -------------------------------------------
389
  * Tab Style (Pricing Table Style)
409
  ]
410
  );
411
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
412
  $this->add_responsive_control(
413
  'eael_pricing_table_container_padding',
414
  [
568
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item .header' => 'background: {{VALUE}};',
569
  ],
570
  'condition' => [
571
+ 'eael_pricing_table_style' => ['style-2']
572
  ]
573
  ]
574
  );
588
  ]
589
  );
590
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
591
  $this->add_group_control(
592
  Group_Control_Typography::get_type(),
593
  [
747
  'label' => esc_html__( 'Ribbon Style', 'essential-addons-elementor' ),
748
  'tab' => Controls_Manager::TAB_STYLE,
749
  'condition' => [
750
+ 'eael_pricing_table_style' => [ 'style-1' ]
751
  ]
752
  ]
753
  );
809
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item.featured:before' => 'font-size: {{SIZE}}px;',
810
  ],
811
  'condition' => [
 
812
  'eael_pricing_table_featured' => 'yes'
813
  ],
814
  ]
825
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item.featured:before' => 'color: {{VALUE}};',
826
  ],
827
  'condition' => [
 
828
  'eael_pricing_table_featured' => 'yes'
829
  ],
830
  ]
842
  '{{WRAPPER}} .eael-pricing.style-4 .eael-pricing-item.featured:before' => 'background: {{VALUE}};',
843
  ],
844
  'condition' => [
 
845
  'eael_pricing_table_featured' => 'yes'
846
  ],
847
  ]
1231
  $nofollow = $settings['eael_pricing_table_btn_link']['nofollow'] ? 'rel="nofollow"' : '';
1232
  if( 'yes' === $settings['eael_pricing_table_featured'] ) : $featured_class = 'featured'; else : $featured_class = ''; endif;
1233
  ?>
1234
+ <?php if( 'style-1' === $settings['eael_pricing_table_style'] || 'style-3' === $settings['eael_pricing_table_style'] || 'style-4' === $settings['eael_pricing_table_style'] ) : ?>
1235
  <div class="eael-pricing style-1">
1236
  <div class="eael-pricing-item <?php echo esc_attr( $featured_class ); ?>">
1237
  <div class="header">
1309
  </div>
1310
  </div>
1311
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
1312
  <?php endif; ?>
1313
  <?php
1314
  }
elements/product-grid/product-grid.php CHANGED
@@ -122,11 +122,10 @@ class Widget_Eael_Product_Grid extends Widget_Base {
122
  $this->start_controls_section(
123
  'eael_section_pro',
124
  [
125
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
126
  ]
127
  );
128
 
129
-
130
  $this->add_control(
131
  'eael_control_get_pro',
132
  [
@@ -143,8 +142,7 @@ class Widget_Eael_Product_Grid extends Widget_Base {
143
  ]
144
  );
145
 
146
-
147
- $this->end_controls_section();
148
 
149
  $this->start_controls_section(
150
  'eael_product_grid_styles',
122
  $this->start_controls_section(
123
  'eael_section_pro',
124
  [
125
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
126
  ]
127
  );
128
 
 
129
  $this->add_control(
130
  'eael_control_get_pro',
131
  [
142
  ]
143
  );
144
 
145
+ $this->end_controls_section();
 
146
 
147
  $this->start_controls_section(
148
  'eael_product_grid_styles',
elements/team-members/team-members.php CHANGED
@@ -207,11 +207,10 @@ class Widget_Eael_Team_Member extends Widget_Base {
207
  $this->start_controls_section(
208
  'eael_section_pro',
209
  [
210
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
211
  ]
212
  );
213
 
214
-
215
  $this->add_control(
216
  'eael_control_get_pro',
217
  [
@@ -228,8 +227,7 @@ class Widget_Eael_Team_Member extends Widget_Base {
228
  ]
229
  );
230
 
231
-
232
- $this->end_controls_section();
233
 
234
  $this->start_controls_section(
235
  'eael_section_team_members_styles_general',
@@ -249,10 +247,24 @@ class Widget_Eael_Team_Member extends Widget_Base {
249
  'options' => [
250
  'eael-team-members-simple' => esc_html__( 'Simple Style', 'essential-addons-elementor' ),
251
  'eael-team-members-overlay' => esc_html__( 'Overlay Style', 'essential-addons-elementor' ),
 
 
 
252
  ],
253
  ]
254
  );
255
 
 
 
 
 
 
 
 
 
 
 
 
256
  $this->add_control(
257
  'eael_team_members_overlay_background',
258
  [
@@ -694,6 +706,7 @@ class Widget_Eael_Team_Member extends Widget_Base {
694
  $settings = $this->get_settings();
695
  $team_member_image = $this->get_settings( 'eael_team_member_image' );
696
  $team_member_image_url = Group_Control_Image_Size::get_attachment_image_src( $team_member_image['id'], 'thumbnail', $settings );
 
697
  $team_member_classes = $this->get_settings('eael_team_members_preset') . " " . $this->get_settings('eael_team_members_image_rounded');
698
 
699
  ?>
207
  $this->start_controls_section(
208
  'eael_section_pro',
209
  [
210
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
211
  ]
212
  );
213
 
 
214
  $this->add_control(
215
  'eael_control_get_pro',
216
  [
227
  ]
228
  );
229
 
230
+ $this->end_controls_section();
 
231
 
232
  $this->start_controls_section(
233
  'eael_section_team_members_styles_general',
247
  'options' => [
248
  'eael-team-members-simple' => esc_html__( 'Simple Style', 'essential-addons-elementor' ),
249
  'eael-team-members-overlay' => esc_html__( 'Overlay Style', 'essential-addons-elementor' ),
250
+ 'eael-team-members-pro-style-3' => esc_html__( 'Centered Style', 'essential-addons-elementor' ),
251
+ 'eael-team-members-pro-style-4' => esc_html__( 'Circle Style', 'essential-addons-elementor' ),
252
+ 'eael-team-members-pro-style-5' => esc_html__( 'Social on Bottom', 'essential-addons-elementor' ),
253
  ],
254
  ]
255
  );
256
 
257
+ $this->add_control(
258
+ 'eael_team_members_preset_pro_alert',
259
+ [
260
+ 'label' => esc_html__( 'Only available in pro version!', 'essential-addons-elementor' ),
261
+ 'type' => Controls_Manager::HEADING,
262
+ 'condition' => [
263
+ 'eael_team_members_preset' => ['eael-team-members-pro-style-3', 'eael-team-members-pro-style-4', 'eael-team-members-pro-style-5'],
264
+ ]
265
+ ]
266
+ );
267
+
268
  $this->add_control(
269
  'eael_team_members_overlay_background',
270
  [
706
  $settings = $this->get_settings();
707
  $team_member_image = $this->get_settings( 'eael_team_member_image' );
708
  $team_member_image_url = Group_Control_Image_Size::get_attachment_image_src( $team_member_image['id'], 'thumbnail', $settings );
709
+ if( empty( $team_member_image_url ) ) : $team_member_image_url = $team_member_image['url']; else: $team_member_image_url = $team_member_image_url; endif;
710
  $team_member_classes = $this->get_settings('eael_team_members_preset') . " " . $this->get_settings('eael_team_members_image_rounded');
711
 
712
  ?>
elements/testimonials/testimonials.php CHANGED
@@ -113,11 +113,10 @@ class Widget_Eael_Testimonial extends Widget_Base {
113
  $this->start_controls_section(
114
  'eael_section_pro',
115
  [
116
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
117
  ]
118
  );
119
 
120
-
121
  $this->add_control(
122
  'eael_control_get_pro',
123
  [
@@ -132,10 +131,9 @@ class Widget_Eael_Testimonial extends Widget_Base {
132
  'default' => '1',
133
  'description' => '<span class="pro-feature"> Get the <a href="https://essential-addons.com/elementor/buy.php" target="_blank">Pro version</a> for more stunning elements and customization options.</span>'
134
  ]
135
- );
136
-
137
 
138
- $this->end_controls_section();
139
 
140
  $this->start_controls_section(
141
  'eael_section_testimonial_styles_general',
113
  $this->start_controls_section(
114
  'eael_section_pro',
115
  [
116
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
117
  ]
118
  );
119
 
 
120
  $this->add_control(
121
  'eael_control_get_pro',
122
  [
131
  'default' => '1',
132
  'description' => '<span class="pro-feature"> Get the <a href="https://essential-addons.com/elementor/buy.php" target="_blank">Pro version</a> for more stunning elements and customization options.</span>'
133
  ]
134
+ );
 
135
 
136
+ $this->end_controls_section();
137
 
138
  $this->start_controls_section(
139
  'eael_section_testimonial_styles_general',
elements/weforms/weforms.php CHANGED
@@ -51,11 +51,10 @@ class Widget_Eael_WeForm extends Widget_Base {
51
  $this->start_controls_section(
52
  'eael_section_pro',
53
  [
54
- 'label' => __( 'Go Premium', 'essential-addons-elementor' )
55
  ]
56
  );
57
 
58
-
59
  $this->add_control(
60
  'eael_control_get_pro',
61
  [
@@ -70,10 +69,9 @@ class Widget_Eael_WeForm extends Widget_Base {
70
  'default' => '1',
71
  'description' => '<span class="pro-feature"> Get the <a href="https://essential-addons.com/elementor/buy.php" target="_blank">Pro version</a> for more stunning elements and customization options.</span>'
72
  ]
73
- );
74
-
75
 
76
- $this->end_controls_section();
77
 
78
  $this->start_controls_section(
79
  'eael_section_weform_styles',
51
  $this->start_controls_section(
52
  'eael_section_pro',
53
  [
54
+ 'label' => __( 'Go Premium for More Features', 'essential-addons-elementor' )
55
  ]
56
  );
57
 
 
58
  $this->add_control(
59
  'eael_control_get_pro',
60
  [
69
  'default' => '1',
70
  'description' => '<span class="pro-feature"> Get the <a href="https://essential-addons.com/elementor/buy.php" target="_blank">Pro version</a> for more stunning elements and customization options.</span>'
71
  ]
72
+ );
 
73
 
74
+ $this->end_controls_section();
75
 
76
  $this->start_controls_section(
77
  'eael_section_weform_styles',
essential_adons_elementor.php CHANGED
@@ -1,10 +1,10 @@
1
  <?php
2
  /**
3
- * Plugin Name: Essential Addons Elementor [Lite]
4
- * Description: Elements bundle for Elementor page builder plugin for WordPress. <a href="https://essential-addons.com/elementor/buy.php">Get Premium version</a>
5
  * Plugin URI: https://essential-addons.com/elementor/
6
  * Author: Codetic
7
- * Version: 2.2.1
8
  * Author URI: http://www.codetic.net
9
  *
10
  * Text Domain: essential-addons-elementor
@@ -22,29 +22,15 @@ require_once ESSENTIAL_ADDONS_EL_PATH.'admin/settings.php';
22
 
23
  function add_eael_elements(){
24
 
25
- $eael_default_settings = array(
26
- 'contact-form-7' => true,
27
- 'count-down' => true,
28
- 'creative-btn' => true,
29
- 'fancy-text' => true,
30
- 'post-grid' => true,
31
- 'post-timeline' => true,
32
- 'product-grid' => true,
33
- 'team-members' => true,
34
- 'testimonials' => true,
35
- 'weforms' => true,
36
- 'call-to-action' => true,
37
- 'flip-box' => true,
38
- 'info-box' => true,
39
- 'dual-header' => true,
40
- 'price-table' => true,
41
- );
42
  $is_component_active = get_option( 'eael_save_settings', $eael_default_settings );
43
  // load elements
44
  if( $is_component_active['post-grid'] ) {
45
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/post-grid/post-grid.php';
46
  }
47
- if( $is_component_active['post-timeline'] ) {
48
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/post-timeline/post-timeline.php';
49
  }
50
  if( $is_component_active['fancy-text'] ) {
@@ -82,7 +68,7 @@ function add_eael_elements(){
82
  if( $is_component_active['flip-box'] ) {
83
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/flipbox/flipbox.php';
84
  }
85
-
86
  if( $is_component_active['call-to-action'] ) {
87
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/call-to-action/call-to-action.php';
88
  }
@@ -93,6 +79,9 @@ function add_eael_elements(){
93
  if( $is_component_active['price-table'] ) {
94
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/pricing-table/pricing-table.php';
95
  }
 
 
 
96
  }
97
  add_action('elementor/widgets/widgets_registered','add_eael_elements');
98
 
@@ -104,11 +93,16 @@ function essential_addons_el_enqueue(){
104
  if( $is_component_active['fancy-text'] ) {
105
  wp_enqueue_script('essential_addons_elementor-fancy-text-js',ESSENTIAL_ADDONS_EL_URL.'assets/js/fancy-text.js', array('jquery'),'1.0', true);
106
  }
107
-
108
  if( $is_component_active['count-down'] ) {
109
  wp_enqueue_script('essential_addons_elementor-countdown-js',ESSENTIAL_ADDONS_EL_URL.'assets/js/countdown.min.js', array('jquery'),'1.0', true);
110
  }
111
-
 
 
 
 
 
 
112
  }
113
  add_action( 'wp_enqueue_scripts', 'essential_addons_el_enqueue' );
114
 
@@ -116,10 +110,10 @@ add_action( 'wp_enqueue_scripts', 'essential_addons_el_enqueue' );
116
  // Editor CSS
117
 
118
  add_action( 'elementor/editor/before_enqueue_scripts', function() {
119
-
120
  wp_register_style( 'essential_addons_elementor_editor-css', ESSENTIAL_ADDONS_EL_URL.'assets/css/essential-addons-editor.css');
121
  wp_enqueue_style( 'essential_addons_elementor_editor-css' );
122
-
123
  } );
124
 
125
  // Action menus
1
  <?php
2
  /**
3
+ * Plugin Name: Essential Addons for Elementor
4
+ * Description: The ultimate elements library for Elementor page builder plugin for WordPress.
5
  * Plugin URI: https://essential-addons.com/elementor/
6
  * Author: Codetic
7
+ * Version: 2.2.2
8
  * Author URI: http://www.codetic.net
9
  *
10
  * Text Domain: essential-addons-elementor
22
 
23
  function add_eael_elements(){
24
 
25
+ $eael_default_keys = [ 'contact-form-7', 'count-down', 'creative-btn', 'fancy-text', 'img-comparison', 'instagram-gallery', 'interactive-promo', 'lightbox', 'post-block', 'post-grid', 'post-timeline', 'product-grid', 'team-members', 'testimonial-slider', 'testimonials', 'testimonials', 'weforms', 'static-product', 'call-to-action', 'flip-box', 'info-box', 'dual-header', 'price-table', 'flip-carousel', 'interactive-cards', 'ninja-form' ];
26
+ $eael_default_settings = array_fill_keys( $eael_default_keys, true );
27
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
28
  $is_component_active = get_option( 'eael_save_settings', $eael_default_settings );
29
  // load elements
30
  if( $is_component_active['post-grid'] ) {
31
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/post-grid/post-grid.php';
32
  }
33
+ if( $is_component_active['post-timeline'] ) {
34
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/post-timeline/post-timeline.php';
35
  }
36
  if( $is_component_active['fancy-text'] ) {
68
  if( $is_component_active['flip-box'] ) {
69
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/flipbox/flipbox.php';
70
  }
71
+
72
  if( $is_component_active['call-to-action'] ) {
73
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/call-to-action/call-to-action.php';
74
  }
79
  if( $is_component_active['price-table'] ) {
80
  require_once ESSENTIAL_ADDONS_EL_PATH.'elements/pricing-table/pricing-table.php';
81
  }
82
+ if( function_exists( 'Ninja_Forms' ) && $is_component_active['ninja-form'] ) {
83
+ require_once ESSENTIAL_ADDONS_EL_PATH.'elements/ninja-form/ninja-form.php';
84
+ }
85
  }
86
  add_action('elementor/widgets/widgets_registered','add_eael_elements');
87
 
93
  if( $is_component_active['fancy-text'] ) {
94
  wp_enqueue_script('essential_addons_elementor-fancy-text-js',ESSENTIAL_ADDONS_EL_URL.'assets/js/fancy-text.js', array('jquery'),'1.0', true);
95
  }
 
96
  if( $is_component_active['count-down'] ) {
97
  wp_enqueue_script('essential_addons_elementor-countdown-js',ESSENTIAL_ADDONS_EL_URL.'assets/js/countdown.min.js', array('jquery'),'1.0', true);
98
  }
99
+ if( $is_component_active['post-grid'] ) {
100
+ wp_enqueue_script('essential_addons_elementor-masonry-js',ESSENTIAL_ADDONS_EL_URL.'assets/js/masonry.min.js', array('jquery'),'1.0', true);
101
+ }
102
+ if( $is_component_active['post-grid'] || $is_component_active['post-timeline'] ) {
103
+ wp_enqueue_script('essential_addons_elementor-load-more-js',ESSENTIAL_ADDONS_EL_URL.'assets/js/load-more.js', array('jquery'),'1.0', true);
104
+ }
105
+
106
  }
107
  add_action( 'wp_enqueue_scripts', 'essential_addons_el_enqueue' );
108
 
110
  // Editor CSS
111
 
112
  add_action( 'elementor/editor/before_enqueue_scripts', function() {
113
+
114
  wp_register_style( 'essential_addons_elementor_editor-css', ESSENTIAL_ADDONS_EL_URL.'assets/css/essential-addons-editor.css');
115
  wp_enqueue_style( 'essential_addons_elementor_editor-css' );
116
+
117
  } );
118
 
119
  // Action menus
readme.txt CHANGED
@@ -2,8 +2,8 @@
2
  Contributors: Codetic, re_enter_rupok, robicse11128
3
  Tags: elementor, elements, addons, elementor addon, elementor widget, page builder, builder, visual editor, wordpress page builder
4
  Requires at least: 4.0
5
- Tested up to: 4.8.2
6
- Stable tag: 2.2.1
7
  License: GPLv3
8
  License URI: https://opensource.org/licenses/GPL-3.0
9
 
@@ -14,13 +14,13 @@ Ultimate elements library for Elementor WordPress Page Builder. Premium elements
14
  Ultimate elements library for Elementor WordPress Page Builder. Lots of useful and premium elements to complete your website quickly. Stunning design and neat and clean code. Option to enable/disable certain elements to improve page loading. No extra resources to slow down your website.
15
 
16
 
17
- <a href="https://essential-addons.com/elementor/" rel="nofollow">Check the demos</a>
18
 
19
- ### <a href="https://wordpress.org/plugins/elementor/" rel="nofollow">Elementor</a> page builder is required for this plugin.
20
 
21
  ### Features
22
 
23
- * 15+ Stunning Elements (Free)
24
  * Fully Customizable
25
  * Unlimited Design Options
26
  * Elements Control option
@@ -29,40 +29,43 @@ Ultimate elements library for Elementor WordPress Page Builder. Lots of useful
29
 
30
  ### Available Elements
31
 
32
- * <a href="https://essential-addons.com/elementor/post-grid/" target="_blank">Post Grid (Masonry)</a>
33
- * <a href="https://essential-addons.com/elementor/post-timeline/" target="_blank">Post Timeline</a>
34
- * <a href="https://essential-addons.com/elementor/fancy-text/" target="_blank">Fancy Text</a>
35
- * <a href="https://essential-addons.com/elementor/creative-buttons/" target="_blank">Creative Buttons</a>
36
- * <a href="https://essential-addons.com/elementor/countdown/" target="_blank">Countdown</a>
37
- * <a href="https://essential-addons.com/elementor/team-members/" target="_blank">Team Members</a>
38
- * <a href="https://essential-addons.com/elementor/testimonials/" target="_blank">Testimonials</a>
39
- * <a href="https://essential-addons.com/elementor/woo-product-grid/" target="_blank">WooCommerce Product Grid</a>
40
- * <a href="https://essential-addons.com/elementor/contact-form-7/" target="_blank">Contact Form 7</a>
41
- * <a href="https://essential-addons.com/elementor/weforms/" target="_blank">weForms</a>
42
- * <a href="https://essential-addons.com/elementor/info-box/" target="_blank">Info Box</a>
43
- * <a href="https://essential-addons.com/elementor/flip-box/" target="_blank">Flip Box</a>
44
- * <a href="https://essential-addons.com/elementor/dual-color-headline/" target="_blank">Dual Color Headline</a>
45
- * <a href="https://essential-addons.com/elementor/call-to-action/" target="_blank">Call to Action</a>
46
- * <a href="https://essential-addons.com/elementor/pricing-table/" target="_blank">Pricing-table</a>
47
-
48
-
49
- ### More elements on <a href="https://essential-addons.com/elementor/buy.php">Premium Version</a>
50
-
51
- * <a href="https://essential-addons.com/elementor/post-block/" target="_blank">Post Block (Flex)</a>
52
- * <a href="https://essential-addons.com/elementor/lightbox-modal/" target="_blank">Lightbox & Modal</a>
53
- * <a href="https://essential-addons.com/elementor/testimonial-slider/" target="_blank">Testimonial Slider</a>
54
- * <a href="https://essential-addons.com/elementor/image-comparison/" target="_blank">Image Comparison</a>
55
- * <a href="https://essential-addons.com/elementor/interactive-promo/" target="_blank">Interactive Promo</a>
56
- * <a href="https://essential-addons.com/elementor/instagram-feed/" target="_blank">Interactive Promo</a>
57
- * <a href="https://essential-addons.com/elementor/static-product/" target="_blank">Static Product</a>
58
- * <a href="https://essential-addons.com/elementor/flip-carousel/" target="_blank">Flip Carousel</a>
59
-
60
-
61
- More coming soon...
 
 
 
62
 
63
  == Installation ==
64
 
65
- Note : This plugin works with Elementor. Make sure you have <a href="https://wordpress.org/plugins/elementor/" rel="nofollow">Elementor</a> installed.
66
 
67
 
68
  1. Upload the plugin folder to the `/wp-content/plugins/` directory, or install the plugin through the WordPress plugins screen directly.
@@ -90,6 +93,14 @@ Your existing elements/content will work with premium version. So you won't lose
90
 
91
  == Changelog ==
92
 
 
 
 
 
 
 
 
 
93
  = 2.2.1 =
94
 
95
  - (Clear cache after update)
@@ -140,9 +151,9 @@ Initial stable realese
140
 
141
  == Upgrade Notice ==
142
 
143
- = 2.2.1 =
144
 
145
- - Several improvements for CTA, Info Box, Flip box and dual heading elements
146
- - Call to action width control and button control added
147
- - Pricing table options improved
148
- - Admin page improved and optimized
2
  Contributors: Codetic, re_enter_rupok, robicse11128
3
  Tags: elementor, elements, addons, elementor addon, elementor widget, page builder, builder, visual editor, wordpress page builder
4
  Requires at least: 4.0
5
+ Tested up to: 4.8.3
6
+ Stable tag: 2.2.2
7
  License: GPLv3
8
  License URI: https://opensource.org/licenses/GPL-3.0
9
 
14
  Ultimate elements library for Elementor WordPress Page Builder. Lots of useful and premium elements to complete your website quickly. Stunning design and neat and clean code. Option to enable/disable certain elements to improve page loading. No extra resources to slow down your website.
15
 
16
 
17
+ [Check the Demos](https://essential-addons.com/elementor/)
18
 
19
+ ### [Elementor](https://wordpress.org/plugins/elementor/) page builder is required for this plugin.
20
 
21
  ### Features
22
 
23
+ * 16+ Stunning Elements (Free)
24
  * Fully Customizable
25
  * Unlimited Design Options
26
  * Elements Control option
29
 
30
  ### Available Elements
31
 
32
+ * [Post Grid](https://essential-addons.com/elementor/post-grid/)
33
+ * [Post Timeline](https://essential-addons.com/elementor/post-timeline/)
34
+ * [Fancy Text](https://essential-addons.com/elementor/fancy-text/ )
35
+ * [Creative Buttons](https://essential-addons.com/elementor/creative-buttons/)
36
+ * [Countdown](https://essential-addons.com/elementor/countdown/ )
37
+ * [Team Members](https://essential-addons.com/elementor/team-members/)
38
+ * [Testimonials](https://essential-addons.com/elementor/testimonials/)
39
+ * [WooCommerce Product Grid](https://essential-addons.com/elementor/woo-product-grid/)
40
+ * [Contact Form 7](https://essential-addons.com/elementor/contact-form-7/)
41
+ * [Ninja Forms](https://essential-addons.com/elementor/ninja-forms/)
42
+ * [weForms](https://essential-addons.com/elementor/weforms/)
43
+ * [Info Box](https://essential-addons.com/elementor/info-box/)
44
+ * [Flip Box](https://essential-addons.com/elementor/flip-box/)
45
+ * [Dual Color Headline](https://essential-addons.com/elementor/dual-color-headline/)
46
+ * [Call to Action](https://essential-addons.com/elementor/call-to-action/)
47
+ * [Pricing Table](https://essential-addons.com/elementor/pricing-table/)
48
+
49
+
50
+
51
+ ### More elements on [Premium Version](https://essential-addons.com/elementor/buy.php)
52
+
53
+ * [Post Block (Flex)](https://essential-addons.com/elementor/post-block/)
54
+ * [Lightbox & Modal](https://essential-addons.com/elementor/lightbox-modal/)
55
+ * [Testimonial Slider](https://essential-addons.com/elementor/testimonial-slider/)
56
+ * [Image Comparison](https://essential-addons.com/elementor/image-comparison/)
57
+ * [Interactive Promo](https://essential-addons.com/elementor/interactive-promo/ )
58
+ * [Instagram Gallery & Feed](https://essential-addons.com/elementor/instagram-feed/)
59
+ * [Static Product](https://essential-addons.com/elementor/static-product/)
60
+ * [Flip Carousel](https://essential-addons.com/elementor/flip-carousel/)
61
+ * [Interactive Cards](https://essential-addons.com/elementor/interactive-cards/)
62
+
63
+
64
+ More coming soon (weekly update) ...
65
 
66
  == Installation ==
67
 
68
+ Note : This plugin works with Elementor. Make sure you have [Elementor](https://wordpress.org/plugins/elementor/) installed.
69
 
70
 
71
  1. Upload the plugin folder to the `/wp-content/plugins/` directory, or install the plugin through the WordPress plugins screen directly.
93
 
94
  == Changelog ==
95
 
96
+ = 2.2.2 =
97
+
98
+ - Ninja Forms element added
99
+ - Load more functionality added to Post elements (Post Grid & Post Timeline)
100
+ - Few presets added for Team Members, Countdown, Fancy Text
101
+ - Few minor improvements
102
+
103
+
104
  = 2.2.1 =
105
 
106
  - (Clear cache after update)
151
 
152
  == Upgrade Notice ==
153
 
154
+ = 2.2.2 =
155
 
156
+ - Ninja Forms element added
157
+ - Load more functionality added to Post elements (Post Grid & Post Timeline)
158
+ - Few presets added for Team Members, Countdown, Fancy Text
159
+ - Few minor improvements