a3 Lazy Load - Version 2.2.0

Version Description

This feature release completes the full refactor (frontend and backend) of the plugins PHP to Composer plus introduces new standardized skip-lazy exclusion class with backward compatibility support for a3-notlazy class

Download this release

Release Info

Developer a3rev
Plugin Icon 128x128 a3 Lazy Load
Version 2.2.0
Comparing to
See all releases

Code changes from version 2.1.0 to 2.2.0

a3-lazy-load.php CHANGED
@@ -2,10 +2,10 @@
2
  /*
3
  Plugin Name: a3 Lazy Load
4
  Description: Speed up your site and enhance frontend user's visual experience in PC's, Tablets and mobile with a3 Lazy Load.
5
- Version: 2.1.0
6
  Author: a3rev Software
7
  Author URI: https://a3rev.com/
8
- Requires at least: 4.0
9
  Tested up to: 5.3.2
10
  Text Domain: a3-lazy-load
11
  Domain Path: /languages
@@ -32,12 +32,33 @@ define('A3_LAZY_LOAD_CSS_URL', A3_LAZY_LOAD_URL . '/assets/css');
32
  define('A3_LAZY_LOAD_IMAGES_URL', A3_LAZY_LOAD_URL . '/assets/images');
33
 
34
  define( 'A3_LAZY_LOAD_KEY', 'a3_lazy_load' );
35
- define( 'A3_LAZY_VERSION', '2.1.0' );
 
36
  define( 'A3_LAZY_LOAD_G_FONTS', false );
37
 
 
 
38
  if ( version_compare( PHP_VERSION, '5.6.0', '>=' ) ) {
39
  require __DIR__ . '/vendor/autoload.php';
40
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
41
  global $a3_lazy_load_excludes;
42
  $a3_lazy_load_excludes = new \A3Rev\LazyLoad\Excludes();
43
 
@@ -65,17 +86,9 @@ function a3_lazy_load_plugin_textdomain() {
65
  // Disable for load new google font faces
66
  add_filter( A3_LAZY_LOAD_KEY . '_new_google_fonts_enable', '__return_false' );
67
 
68
- include( 'admin/admin-ui.php' );
69
- include( 'admin/admin-interface.php' );
70
-
71
- include( 'admin/admin-pages/admin-settings-page.php' );
72
-
73
  // Backwards compatibility for 3rd party plugin use functions from this plugin
74
  include( 'classes/classes-backwards-compatibility.php' );
75
 
76
- include( 'admin/admin-init.php' );
77
- include( 'admin/less/sass.php' );
78
-
79
  include( 'admin/a3-lazy-load-admin.php' );
80
 
81
  // Defined this function for check Lazy Load is enabled that 3rd party plugins or theme can use to check
2
  /*
3
  Plugin Name: a3 Lazy Load
4
  Description: Speed up your site and enhance frontend user's visual experience in PC's, Tablets and mobile with a3 Lazy Load.
5
+ Version: 2.2.0
6
  Author: a3rev Software
7
  Author URI: https://a3rev.com/
8
+ Requires at least: 4.9
9
  Tested up to: 5.3.2
10
  Text Domain: a3-lazy-load
11
  Domain Path: /languages
32
  define('A3_LAZY_LOAD_IMAGES_URL', A3_LAZY_LOAD_URL . '/assets/images');
33
 
34
  define( 'A3_LAZY_LOAD_KEY', 'a3_lazy_load' );
35
+ define( 'A3_LAZY_LOAD_PREFIX', 'a3_lazy_load_' );
36
+ define( 'A3_LAZY_VERSION', '2.2.0' );
37
  define( 'A3_LAZY_LOAD_G_FONTS', false );
38
 
39
+ use \A3Rev\LazyLoad\FrameWork;
40
+
41
  if ( version_compare( PHP_VERSION, '5.6.0', '>=' ) ) {
42
  require __DIR__ . '/vendor/autoload.php';
43
 
44
+ /**
45
+ * Plugin Framework init
46
+ */
47
+ global ${A3_LAZY_LOAD_PREFIX.'admin_interface'};
48
+ ${A3_LAZY_LOAD_PREFIX.'admin_interface'} = new FrameWork\Admin_Interface();
49
+
50
+ global $a3_lazy_load_settings_page;
51
+ $a3_lazy_load_settings_page = new FrameWork\Pages\Settings();
52
+
53
+ global ${A3_LAZY_LOAD_PREFIX.'admin_init'};
54
+ ${A3_LAZY_LOAD_PREFIX.'admin_init'} = new FrameWork\Admin_Init();
55
+
56
+ global ${A3_LAZY_LOAD_PREFIX.'less'};
57
+ ${A3_LAZY_LOAD_PREFIX.'less'} = new FrameWork\Less_Sass();
58
+
59
+ // End - Plugin Framework init
60
+
61
+
62
  global $a3_lazy_load_excludes;
63
  $a3_lazy_load_excludes = new \A3Rev\LazyLoad\Excludes();
64
 
86
  // Disable for load new google font faces
87
  add_filter( A3_LAZY_LOAD_KEY . '_new_google_fonts_enable', '__return_false' );
88
 
 
 
 
 
 
89
  // Backwards compatibility for 3rd party plugin use functions from this plugin
90
  include( 'classes/classes-backwards-compatibility.php' );
91
 
 
 
 
92
  include( 'admin/a3-lazy-load-admin.php' );
93
 
94
  // Defined this function for check Lazy Load is enabled that 3rd party plugins or theme can use to check
admin/a3-lazy-load-admin.php CHANGED
@@ -3,8 +3,8 @@
3
  function a3_lazy_load_activated(){
4
  update_option('a3_lazy_load_version', A3_LAZY_VERSION );
5
 
6
- global $a3_lazy_load_admin_init;
7
- delete_metadata( 'user', 0, $a3_lazy_load_admin_init->plugin_name . '-' . 'plugin_framework_global_box' . '-' . 'opened', '', true );
8
 
9
  update_option('a3_lazy_load_just_installed', true);
10
  }
@@ -18,8 +18,8 @@ function a3_lazy_load_init() {
18
  delete_option( 'a3_lazy_load_just_installed' );
19
 
20
  // Set Settings Default from Admin Init
21
- global $a3_lazy_load_admin_init;
22
- $a3_lazy_load_admin_init->set_default_settings();
23
  }
24
 
25
  a3_lazy_load_plugin_textdomain();
@@ -27,11 +27,11 @@ function a3_lazy_load_init() {
27
  a3_lazy_load_upgrade_plugin();
28
  }
29
 
30
- global $a3_lazy_load_admin_init;
31
- $a3_lazy_load_admin_init->init();
32
 
33
  // Add upgrade notice to Dashboard pages
34
- add_filter( $a3_lazy_load_admin_init->plugin_name . '_plugin_extension_boxes', array( '\A3Rev\LazyLoad\Hook_Filter', 'plugin_extension_box' ) );
35
 
36
  // Add language
37
  add_action('init', 'a3_lazy_load_init', 105);
3
  function a3_lazy_load_activated(){
4
  update_option('a3_lazy_load_version', A3_LAZY_VERSION );
5
 
6
+ global ${A3_LAZY_LOAD_PREFIX.'admin_init'};
7
+ delete_metadata( 'user', 0, ${A3_LAZY_LOAD_PREFIX.'admin_init'}->plugin_name . '-' . 'plugin_framework_global_box' . '-' . 'opened', '', true );
8
 
9
  update_option('a3_lazy_load_just_installed', true);
10
  }
18
  delete_option( 'a3_lazy_load_just_installed' );
19
 
20
  // Set Settings Default from Admin Init
21
+ global ${A3_LAZY_LOAD_PREFIX.'admin_init'};
22
+ ${A3_LAZY_LOAD_PREFIX.'admin_init'}->set_default_settings();
23
  }
24
 
25
  a3_lazy_load_plugin_textdomain();
27
  a3_lazy_load_upgrade_plugin();
28
  }
29
 
30
+ global ${A3_LAZY_LOAD_PREFIX.'admin_init'};
31
+ ${A3_LAZY_LOAD_PREFIX.'admin_init'}->init();
32
 
33
  // Add upgrade notice to Dashboard pages
34
+ add_filter( ${A3_LAZY_LOAD_PREFIX.'admin_init'}->plugin_name . '_plugin_extension_boxes', array( '\A3Rev\LazyLoad\Hook_Filter', 'plugin_extension_box' ) );
35
 
36
  // Add language
37
  add_action('init', 'a3_lazy_load_init', 105);
admin/admin-init.php CHANGED
@@ -1,9 +1,11 @@
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
 
 
 
3
  // File Security Check
4
  if ( ! defined( 'ABSPATH' ) ) exit;
5
- ?>
6
- <?php
7
  /*-----------------------------------------------------------------------------------
8
  A3rev Plugin Admin Init
9
 
@@ -20,7 +22,7 @@ TABLE OF CONTENTS
20
 
21
  -----------------------------------------------------------------------------------*/
22
 
23
- class A3_Lazy_Load_Admin_Init extends A3_Lazy_Load_Admin_UI
24
  {
25
 
26
  /**
@@ -317,7 +319,4 @@ class A3_Lazy_Load_Admin_Init extends A3_Lazy_Load_Admin_UI
317
  }
318
  }
319
 
320
- global $a3_lazy_load_admin_init;
321
- $a3_lazy_load_admin_init = new A3_Lazy_Load_Admin_Init();
322
-
323
- ?>
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
3
+
4
+ namespace A3Rev\LazyLoad\FrameWork {
5
+
6
  // File Security Check
7
  if ( ! defined( 'ABSPATH' ) ) exit;
8
+
 
9
  /*-----------------------------------------------------------------------------------
10
  A3rev Plugin Admin Init
11
 
22
 
23
  -----------------------------------------------------------------------------------*/
24
 
25
+ class Admin_Init extends Admin_UI
26
  {
27
 
28
  /**
319
  }
320
  }
321
 
322
+ }
 
 
 
admin/admin-interface.php CHANGED
@@ -1,9 +1,11 @@
1
  <?php
2
  /* "Copyright 2012 A3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
 
 
 
3
  // File Security Check
4
  if ( ! defined( 'ABSPATH' ) ) exit;
5
- ?>
6
- <?php
7
  /*-----------------------------------------------------------------------------------
8
  A3rev Plugin Admin Interface
9
 
@@ -32,7 +34,7 @@ TABLE OF CONTENTS
32
 
33
  -----------------------------------------------------------------------------------*/
34
 
35
- class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
36
  {
37
 
38
  /*-----------------------------------------------------------------------------------*/
@@ -214,7 +216,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
214
  $current_update_plugins = get_site_transient( 'update_plugins' );
215
  if ( isset( $current_update_plugins->response ) ) {
216
  if ( empty( $current_update_plugins->response[$this->plugin_path] ) ) {
217
- $current_update_plugins->response[$this->plugin_path] = new stdClass();
218
  }
219
  $current_update_plugins->response[$this->plugin_path]->url = "http://www.a3rev.com";
220
  $current_update_plugins->response[$this->plugin_path]->slug = $this->plugin_name;
@@ -296,10 +298,12 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
296
  /*-----------------------------------------------------------------------------------*/
297
  public function admin_includes() {
298
  // Includes Font Face Lib
299
- include_once( 'includes/fonts_face.php' );
 
300
 
301
  // Includes Uploader Lib
302
- include_once( 'includes/uploader/class-uploader.php' );
 
303
  }
304
 
305
  /*-----------------------------------------------------------------------------------*/
@@ -1356,7 +1360,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1356
  */
1357
 
1358
  public function admin_forms( $options, $form_key, $option_name = '', $form_messages = array() ) {
1359
- global $a3_lazy_load_fonts_face, $a3_lazy_load_uploader, $current_subtab;
1360
 
1361
  $new_settings = array(); $new_single_setting = ''; // :)
1362
  $admin_message = '';
@@ -1886,7 +1890,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1886
  <div class="a3rev-ui-google-api-key-description"><?php echo sprintf( __( "Enter your existing Google Fonts API Key below. Don't have a key? Visit <a href='%s' target='_blank'>Google Developer API</a> to create a key", 'a3-lazy-load' ), 'https://developers.google.com/fonts/docs/developer_api#APIKey' ); ?></div>
1887
  <div class="a3rev-ui-google-api-key-inside
1888
  <?php
1889
- if ( $a3_lazy_load_fonts_face->is_valid_google_api_key() ) {
1890
  echo 'a3rev-ui-google-valid-key';
1891
  } elseif ( '' != $google_api_key ) {
1892
  echo 'a3rev-ui-google-unvalid-key';
@@ -2708,7 +2712,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
2708
  >
2709
  <optgroup label="<?php _e( '-- Default Fonts --', 'a3-lazy-load' ); ?>">
2710
  <?php
2711
- foreach ( $a3_lazy_load_fonts_face->get_default_fonts() as $val => $text ) {
2712
  ?>
2713
  <option value="<?php echo esc_attr( $val ); ?>" <?php
2714
  selected( esc_attr( $val ), esc_attr( $face ) );
@@ -2719,7 +2723,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
2719
  </optgroup>
2720
  <optgroup label="<?php _e( '-- Google Fonts --', 'a3-lazy-load' ); ?>">
2721
  <?php
2722
- foreach ( $a3_lazy_load_fonts_face->get_google_fonts() as $font ) {
2723
  ?>
2724
  <option value="<?php echo esc_attr( $font['name'] ); ?>" <?php
2725
  selected( esc_attr( $font['name'] ), esc_attr( $face ) );
@@ -3392,7 +3396,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
3392
  </th>
3393
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3394
  <?php echo $description; ?>
3395
- <?php echo $a3_lazy_load_uploader->upload_input( $name_attribute, $id_attribute, $option_value, $attachment_id, $value['default'], $value['name'], $class, esc_attr( $value['css'] ) , '', $strip_methods );?>
3396
  </td>
3397
  </tr><?php
3398
 
@@ -3927,7 +3931,4 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
3927
 
3928
  }
3929
 
3930
- global $a3_lazy_load_admin_interface;
3931
- $a3_lazy_load_admin_interface = new A3_Lazy_Load_Admin_Interface();
3932
-
3933
- ?>
1
  <?php
2
  /* "Copyright 2012 A3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
3
+
4
+ namespace A3Rev\LazyLoad\FrameWork {
5
+
6
  // File Security Check
7
  if ( ! defined( 'ABSPATH' ) ) exit;
8
+
 
9
  /*-----------------------------------------------------------------------------------
10
  A3rev Plugin Admin Interface
11
 
34
 
35
  -----------------------------------------------------------------------------------*/
36
 
37
+ class Admin_Interface extends Admin_UI
38
  {
39
 
40
  /*-----------------------------------------------------------------------------------*/
216
  $current_update_plugins = get_site_transient( 'update_plugins' );
217
  if ( isset( $current_update_plugins->response ) ) {
218
  if ( empty( $current_update_plugins->response[$this->plugin_path] ) ) {
219
+ $current_update_plugins->response[$this->plugin_path] = new \stdClass();
220
  }
221
  $current_update_plugins->response[$this->plugin_path]->url = "http://www.a3rev.com";
222
  $current_update_plugins->response[$this->plugin_path]->slug = $this->plugin_name;
298
  /*-----------------------------------------------------------------------------------*/
299
  public function admin_includes() {
300
  // Includes Font Face Lib
301
+ global ${$this->plugin_prefix.'fonts_face'};
302
+ ${$this->plugin_prefix.'fonts_face'} = new Fonts_Face();
303
 
304
  // Includes Uploader Lib
305
+ global ${$this->plugin_prefix.'uploader'};
306
+ ${$this->plugin_prefix.'uploader'} = new Uploader();
307
  }
308
 
309
  /*-----------------------------------------------------------------------------------*/
1360
  */
1361
 
1362
  public function admin_forms( $options, $form_key, $option_name = '', $form_messages = array() ) {
1363
+ global ${$this->plugin_prefix.'fonts_face'}, ${$this->plugin_prefix.'uploader'}, $current_subtab;
1364
 
1365
  $new_settings = array(); $new_single_setting = ''; // :)
1366
  $admin_message = '';
1890
  <div class="a3rev-ui-google-api-key-description"><?php echo sprintf( __( "Enter your existing Google Fonts API Key below. Don't have a key? Visit <a href='%s' target='_blank'>Google Developer API</a> to create a key", 'a3-lazy-load' ), 'https://developers.google.com/fonts/docs/developer_api#APIKey' ); ?></div>
1891
  <div class="a3rev-ui-google-api-key-inside
1892
  <?php
1893
+ if ( ${$this->plugin_prefix.'fonts_face'}->is_valid_google_api_key() ) {
1894
  echo 'a3rev-ui-google-valid-key';
1895
  } elseif ( '' != $google_api_key ) {
1896
  echo 'a3rev-ui-google-unvalid-key';
2712
  >
2713
  <optgroup label="<?php _e( '-- Default Fonts --', 'a3-lazy-load' ); ?>">
2714
  <?php
2715
+ foreach ( ${$this->plugin_prefix.'fonts_face'}->get_default_fonts() as $val => $text ) {
2716
  ?>
2717
  <option value="<?php echo esc_attr( $val ); ?>" <?php
2718
  selected( esc_attr( $val ), esc_attr( $face ) );
2723
  </optgroup>
2724
  <optgroup label="<?php _e( '-- Google Fonts --', 'a3-lazy-load' ); ?>">
2725
  <?php
2726
+ foreach ( ${$this->plugin_prefix.'fonts_face'}->get_google_fonts() as $font ) {
2727
  ?>
2728
  <option value="<?php echo esc_attr( $font['name'] ); ?>" <?php
2729
  selected( esc_attr( $font['name'] ), esc_attr( $face ) );
3396
  </th>
3397
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3398
  <?php echo $description; ?>
3399
+ <?php echo ${$this->plugin_prefix.'uploader'}->upload_input( $name_attribute, $id_attribute, $option_value, $attachment_id, $value['default'], $value['name'], $class, esc_attr( $value['css'] ) , '', $strip_methods );?>
3400
  </td>
3401
  </tr><?php
3402
 
3931
 
3932
  }
3933
 
3934
+ }
 
 
 
admin/admin-pages/admin-settings-page.php CHANGED
@@ -1,9 +1,13 @@
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
 
 
 
 
 
3
  // File Security Check
4
  if ( ! defined( 'ABSPATH' ) ) exit;
5
- ?>
6
- <?php
7
  /*-----------------------------------------------------------------------------------
8
  a3 LazyLoad Settings Page
9
 
@@ -21,7 +25,7 @@ TABLE OF CONTENTS
21
 
22
  -----------------------------------------------------------------------------------*/
23
 
24
- class A3_Lazy_Load_Settings_Page extends A3_Lazy_Load_Admin_UI
25
  {
26
  /**
27
  * @var string
@@ -92,7 +96,8 @@ class A3_Lazy_Load_Settings_Page extends A3_Lazy_Load_Admin_UI
92
  /* Include all tabs into this page
93
  /*-----------------------------------------------------------------------------------*/
94
  public function tabs_include() {
95
- include_once( $this->admin_plugin_dir() . '/tabs/template-settings/global-settings-tab.php' );
 
96
  }
97
 
98
  /*-----------------------------------------------------------------------------------*/
@@ -100,13 +105,13 @@ class A3_Lazy_Load_Settings_Page extends A3_Lazy_Load_Admin_UI
100
  /* Show Settings Page */
101
  /*-----------------------------------------------------------------------------------*/
102
  public function admin_settings_page() {
103
- global $a3_lazy_load_admin_init;
104
 
105
- $a3_lazy_load_admin_init->admin_settings_page( $this->page_data() );
106
 
107
  //$my_page_data = $this->page_data();
108
  //$my_page_data = array_values( $my_page_data );
109
- //$a3_lazy_load_admin_init->admin_settings_page( $my_page_data[1] );
110
  }
111
 
112
  /*-----------------------------------------------------------------------------------*/
@@ -123,8 +128,10 @@ class A3_Lazy_Load_Settings_Page extends A3_Lazy_Load_Admin_UI
123
 
124
  }
125
 
126
- global $a3_lazy_load_settings_page;
127
- $a3_lazy_load_settings_page = new A3_Lazy_Load_Settings_Page();
 
 
128
 
129
  /**
130
  * a3_lazy_load_settings_page_show()
@@ -140,4 +147,4 @@ function callback_a3_lazy_load_settings_page_show() {
140
  $a3_lazy_load_settings_page->callback_admin_settings_page();
141
  }
142
 
143
- ?>
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
3
+
4
+ namespace A3Rev\LazyLoad\FrameWork\Pages {
5
+
6
+ use A3Rev\LazyLoad\FrameWork;
7
+
8
  // File Security Check
9
  if ( ! defined( 'ABSPATH' ) ) exit;
10
+
 
11
  /*-----------------------------------------------------------------------------------
12
  a3 LazyLoad Settings Page
13
 
25
 
26
  -----------------------------------------------------------------------------------*/
27
 
28
+ class Settings extends FrameWork\Admin_UI
29
  {
30
  /**
31
  * @var string
96
  /* Include all tabs into this page
97
  /*-----------------------------------------------------------------------------------*/
98
  public function tabs_include() {
99
+ global $a3_lazy_load_global_settings_tab;
100
+ $a3_lazy_load_global_settings_tab = new FrameWork\Tabs\Global_Settings();
101
  }
102
 
103
  /*-----------------------------------------------------------------------------------*/
105
  /* Show Settings Page */
106
  /*-----------------------------------------------------------------------------------*/
107
  public function admin_settings_page() {
108
+ global ${$this->plugin_prefix.'admin_init'};
109
 
110
+ ${$this->plugin_prefix.'admin_init'}->admin_settings_page( $this->page_data() );
111
 
112
  //$my_page_data = $this->page_data();
113
  //$my_page_data = array_values( $my_page_data );
114
+ //${$this->plugin_prefix.'admin_init'}->admin_settings_page( $my_page_data[1] );
115
  }
116
 
117
  /*-----------------------------------------------------------------------------------*/
128
 
129
  }
130
 
131
+ }
132
+
133
+ // global code
134
+ namespace {
135
 
136
  /**
137
  * a3_lazy_load_settings_page_show()
147
  $a3_lazy_load_settings_page->callback_admin_settings_page();
148
  }
149
 
150
+ }
admin/admin-ui.php CHANGED
@@ -1,9 +1,11 @@
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
 
 
 
3
  // File Security Check
4
  if ( ! defined( 'ABSPATH' ) ) exit;
5
- ?>
6
- <?php
7
  /*-----------------------------------------------------------------------------------
8
  A3rev Plugin Admin UI
9
 
@@ -24,14 +26,14 @@ TABLE OF CONTENTS
24
 
25
  -----------------------------------------------------------------------------------*/
26
 
27
- class A3_Lazy_Load_Admin_UI
28
  {
29
  /**
30
  * @var string
31
  * You must change to correct plugin name that you are working
32
  */
33
 
34
- public $framework_version = '2.2.0';
35
  public $plugin_name = A3_LAZY_LOAD_KEY;
36
  public $plugin_path = A3_LAZY_LOAD_NAME;
37
  public $google_api_key_option = '';
@@ -50,6 +52,8 @@ class A3_Lazy_Load_Admin_UI
50
  */
51
  public $class_name = 'A3_Lazy_Load';
52
 
 
 
53
  /**
54
  * @var string
55
  * You must change to correct pro plugin page url on a3rev site
@@ -445,4 +449,4 @@ class A3_Lazy_Load_Admin_UI
445
 
446
  }
447
 
448
- ?>
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
3
+
4
+ namespace A3Rev\LazyLoad\FrameWork {
5
+
6
  // File Security Check
7
  if ( ! defined( 'ABSPATH' ) ) exit;
8
+
 
9
  /*-----------------------------------------------------------------------------------
10
  A3rev Plugin Admin UI
11
 
26
 
27
  -----------------------------------------------------------------------------------*/
28
 
29
+ class Admin_UI
30
  {
31
  /**
32
  * @var string
33
  * You must change to correct plugin name that you are working
34
  */
35
 
36
+ public $framework_version = '2.3.0';
37
  public $plugin_name = A3_LAZY_LOAD_KEY;
38
  public $plugin_path = A3_LAZY_LOAD_NAME;
39
  public $google_api_key_option = '';
52
  */
53
  public $class_name = 'A3_Lazy_Load';
54
 
55
+ public $plugin_prefix = A3_LAZY_LOAD_PREFIX;
56
+
57
  /**
58
  * @var string
59
  * You must change to correct pro plugin page url on a3rev site
449
 
450
  }
451
 
452
+ }
admin/includes/fonts_face.php CHANGED
@@ -1,9 +1,11 @@
1
  <?php
2
  /* "Copyright 2012 A3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
 
 
 
3
  // File Security Check
4
  if ( ! defined( 'ABSPATH' ) ) exit;
5
- ?>
6
- <?php
7
  /*-----------------------------------------------------------------------------------
8
  A3rev Plugin Fonts Face
9
 
@@ -19,7 +21,7 @@ TABLE OF CONTENTS
19
 
20
  -----------------------------------------------------------------------------------*/
21
 
22
- class A3_Lazy_Load_Fonts_Face extends A3_Lazy_Load_Admin_UI
23
  {
24
 
25
  /**
@@ -642,6 +644,4 @@ class A3_Lazy_Load_Fonts_Face extends A3_Lazy_Load_Admin_UI
642
 
643
  }
644
 
645
- global $a3_lazy_load_fonts_face;
646
- $a3_lazy_load_fonts_face = new A3_Lazy_Load_Fonts_Face();
647
- ?>
1
  <?php
2
  /* "Copyright 2012 A3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
3
+
4
+ namespace A3Rev\LazyLoad\FrameWork {
5
+
6
  // File Security Check
7
  if ( ! defined( 'ABSPATH' ) ) exit;
8
+
 
9
  /*-----------------------------------------------------------------------------------
10
  A3rev Plugin Fonts Face
11
 
21
 
22
  -----------------------------------------------------------------------------------*/
23
 
24
+ class Fonts_Face extends Admin_UI
25
  {
26
 
27
  /**
644
 
645
  }
646
 
647
+ }
 
 
admin/includes/uploader/class-uploader.php CHANGED
@@ -1,9 +1,11 @@
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
 
 
 
3
  // File Security Check
4
  if ( ! defined( 'ABSPATH' ) ) exit;
5
- ?>
6
- <?php
7
  /*-----------------------------------------------------------------------------------
8
  A3rev Plugin Uploader
9
 
@@ -22,7 +24,7 @@ TABLE OF CONTENTS
22
  - inside_popup()
23
 
24
  -----------------------------------------------------------------------------------*/
25
- class A3_Lazy_Load_Uploader extends A3_Lazy_Load_Admin_UI
26
  {
27
 
28
  /**
@@ -135,7 +137,4 @@ class A3_Lazy_Load_Uploader extends A3_Lazy_Load_Admin_UI
135
  }
136
  }
137
 
138
- global $a3_lazy_load_uploader;
139
- $a3_lazy_load_uploader = new A3_Lazy_Load_Uploader();
140
-
141
- ?>
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
3
+
4
+ namespace A3Rev\LazyLoad\FrameWork {
5
+
6
  // File Security Check
7
  if ( ! defined( 'ABSPATH' ) ) exit;
8
+
 
9
  /*-----------------------------------------------------------------------------------
10
  A3rev Plugin Uploader
11
 
24
  - inside_popup()
25
 
26
  -----------------------------------------------------------------------------------*/
27
+ class Uploader extends Admin_UI
28
  {
29
 
30
  /**
137
  }
138
  }
139
 
140
+ }
 
 
 
admin/less/compile_less_sass_class.php CHANGED
@@ -1,4 +1,10 @@
1
  <?php
 
 
 
 
 
 
2
  class Compile_Less_Sass {
3
 
4
  public function __construct(){
@@ -53,4 +59,3 @@ class Compile_Less_Sass {
53
 
54
  }
55
  }
56
- ?>
1
  <?php
2
+
3
+ // File Security Check
4
+ if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
+ }
7
+
8
  class Compile_Less_Sass {
9
 
10
  public function __construct(){
59
 
60
  }
61
  }
 
admin/less/lib/cssmin.inc.php CHANGED
@@ -1,5 +1,10 @@
1
  <?php
2
 
 
 
 
 
 
3
  /*!
4
  * cssmin.php v2.4.8-4
5
  * Author: Tubal Martin - http://tubalmartin.me/
1
  <?php
2
 
3
+ // File Security Check
4
+ if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
+ }
7
+
8
  /*!
9
  * cssmin.php v2.4.8-4
10
  * Author: Tubal Martin - http://tubalmartin.me/
admin/less/lib/lessc.inc.php CHANGED
@@ -1,5 +1,10 @@
1
  <?php
2
 
 
 
 
 
 
3
  /**
4
  * lessphp v0.4.0
5
  * http://leafo.net/lessphp
@@ -3672,5 +3677,3 @@ class a3_lessc_formatter_lessjs extends a3_lessc_formatter_classic {
3672
  public $assignSeparator = ": ";
3673
  public $selectorSeparator = ",";
3674
  }
3675
-
3676
-
1
  <?php
2
 
3
+ // File Security Check
4
+ if ( ! defined( 'ABSPATH' ) ) {
5
+ exit;
6
+ }
7
+
8
  /**
9
  * lessphp v0.4.0
10
  * http://leafo.net/lessphp
3677
  public $assignSeparator = ": ";
3678
  public $selectorSeparator = ",";
3679
  }
 
 
admin/less/sass.php CHANGED
@@ -1,9 +1,12 @@
1
  <?php
 
 
 
2
  // File Security Check
3
  if (!defined('ABSPATH'))
4
  exit;
5
 
6
- class A3_Lazy_Load_Less
7
  {
8
  public $plugin_name = A3_LAZY_LOAD_KEY;
9
  public $css_file_name = 'a3_lazy_load';
@@ -134,7 +137,7 @@ class A3_Lazy_Load_Less
134
  $wp_filesystem->put_contents($less_file, $sass_data, 0644);
135
  $css_file = $_upload_dir['basedir'] . '/sass/' . $filename . '.css';
136
  $css_min_file = $_upload_dir['basedir'] . '/sass/' . $filename . '.min.css';
137
- $compile = new Compile_Less_Sass;
138
  $compile->compileLessFile($less_file, $css_file, $css_min_file);
139
  }
140
  }
@@ -187,6 +190,6 @@ class A3_Lazy_Load_Less
187
  return $version_number;
188
  }
189
  }
190
- global $a3_lazy_load_less;
191
- $a3_lazy_load_less = new A3_Lazy_Load_Less();
192
- ?>
1
  <?php
2
+
3
+ namespace A3Rev\LazyLoad\FrameWork {
4
+
5
  // File Security Check
6
  if (!defined('ABSPATH'))
7
  exit;
8
 
9
+ class Less_Sass
10
  {
11
  public $plugin_name = A3_LAZY_LOAD_KEY;
12
  public $css_file_name = 'a3_lazy_load';
137
  $wp_filesystem->put_contents($less_file, $sass_data, 0644);
138
  $css_file = $_upload_dir['basedir'] . '/sass/' . $filename . '.css';
139
  $css_min_file = $_upload_dir['basedir'] . '/sass/' . $filename . '.min.css';
140
+ $compile = new \Compile_Less_Sass;
141
  $compile->compileLessFile($less_file, $css_file, $css_min_file);
142
  }
143
  }
190
  return $version_number;
191
  }
192
  }
193
+
194
+ }
195
+
admin/settings/template-settings/global-settings.php CHANGED
@@ -1,9 +1,13 @@
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
 
 
 
 
 
3
  // File Security Check
4
  if ( ! defined( 'ABSPATH' ) ) exit;
5
- ?>
6
- <?php
7
  /*-----------------------------------------------------------------------------------
8
  a3 LazyLoad General Settings
9
 
@@ -28,7 +32,7 @@ TABLE OF CONTENTS
28
 
29
  -----------------------------------------------------------------------------------*/
30
 
31
- class A3_Lazy_Load_Global_Settings extends A3_Lazy_Load_Admin_UI
32
  {
33
 
34
  /**
@@ -110,9 +114,9 @@ class A3_Lazy_Load_Global_Settings extends A3_Lazy_Load_Admin_UI
110
  /* Set default settings with function called from Admin Interface */
111
  /*-----------------------------------------------------------------------------------*/
112
  public function set_default_settings() {
113
- global $a3_lazy_load_admin_interface;
114
 
115
- $a3_lazy_load_admin_interface->reset_settings( $this->form_fields, $this->option_name, false );
116
  }
117
 
118
  /*-----------------------------------------------------------------------------------*/
@@ -132,9 +136,9 @@ class A3_Lazy_Load_Global_Settings extends A3_Lazy_Load_Admin_UI
132
  /* Get settings with function called from Admin Interface */
133
  /*-----------------------------------------------------------------------------------*/
134
  public function get_settings() {
135
- global $a3_lazy_load_admin_interface;
136
 
137
- $a3_lazy_load_admin_interface->get_settings( $this->form_fields, $this->option_name );
138
  }
139
 
140
  /**
@@ -178,10 +182,10 @@ class A3_Lazy_Load_Global_Settings extends A3_Lazy_Load_Admin_UI
178
  /* Call the form from Admin Interface
179
  /*-----------------------------------------------------------------------------------*/
180
  public function settings_form() {
181
- global $a3_lazy_load_admin_interface;
182
 
183
  $output = '';
184
- $output .= $a3_lazy_load_admin_interface->admin_forms( $this->form_fields, $this->form_key, $this->option_name, $this->form_messages );
185
 
186
  return $output;
187
  }
@@ -310,13 +314,6 @@ class A3_Lazy_Load_Global_Settings extends A3_Lazy_Load_Admin_UI
310
  'checked_label' => __( 'ON', 'a3-lazy-load' ),
311
  'unchecked_label' => __( 'OFF', 'a3-lazy-load' ),
312
  ),
313
- array(
314
- 'name' => __( 'Skip Images Classes', 'a3-lazy-load' ),
315
- 'id' => 'a3l_skip_image_with_class',
316
- 'desc' => __('Find and enter image class name. If more than 1 then comma seperate.<br>Example: image-class1, image-class2. Supports Wild Cards image*, .*thumbnail', 'a3-lazy-load' ),
317
- 'type' => 'text',
318
- 'default' => ""
319
- ),
320
  array(
321
  'name' => __( 'Noscript Support', 'a3-lazy-load' ),
322
  'id' => 'a3l_image_include_noscript',
@@ -328,6 +325,20 @@ class A3_Lazy_Load_Global_Settings extends A3_Lazy_Load_Admin_UI
328
  'checked_label' => __( 'ON', 'a3-lazy-load' ),
329
  'unchecked_label' => __( 'OFF', 'a3-lazy-load' ),
330
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
 
331
 
332
  array(
333
  'name' => __( 'Lazy Load Videos and iframes', 'a3-lazy-load' ),
@@ -373,13 +384,6 @@ class A3_Lazy_Load_Global_Settings extends A3_Lazy_Load_Admin_UI
373
  'checked_label' => __( 'ON', 'a3-lazy-load' ),
374
  'unchecked_label' => __( 'OFF', 'a3-lazy-load' ),
375
  ),
376
- array(
377
- 'name' => __( 'Skip Videos Classes', 'a3-lazy-load' ),
378
- 'id' => 'a3l_skip_video_with_class',
379
- 'desc' => __('Find and enter video class name. If more than 1 then comma seperate.<br>Example: video-class1, video-class2. Supports WildCards video*, .*video', 'a3-lazy-load' ),
380
- 'type' => 'text',
381
- 'default' => ""
382
- ),
383
  array(
384
  'name' => __( 'Noscript Support', 'a3-lazy-load' ),
385
  'id' => 'a3l_video_include_noscript',
@@ -391,6 +395,19 @@ class A3_Lazy_Load_Global_Settings extends A3_Lazy_Load_Admin_UI
391
  'checked_label' => __( 'ON', 'a3-lazy-load' ),
392
  'unchecked_label' => __( 'OFF', 'a3-lazy-load' ),
393
  ),
 
 
 
 
 
 
 
 
 
 
 
 
 
394
  );
395
 
396
  $this->form_fields = array_merge( $this->form_fields, array(
@@ -612,8 +629,9 @@ class A3_Lazy_Load_Global_Settings extends A3_Lazy_Load_Admin_UI
612
  }
613
  }
614
 
615
- global $a3_lazy_load_global_settings_panel;
616
- $a3_lazy_load_global_settings_panel = new A3_Lazy_Load_Global_Settings();
 
617
 
618
  /**
619
  * a3_lazy_load_cards_settings_form()
@@ -624,4 +642,4 @@ function a3_lazy_load_global_settings_form() {
624
  $a3_lazy_load_global_settings_panel->settings_form();
625
  }
626
 
627
- ?>
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
3
+
4
+ namespace A3Rev\LazyLoad\FrameWork\Settings {
5
+
6
+ use A3Rev\LazyLoad\FrameWork;
7
+
8
  // File Security Check
9
  if ( ! defined( 'ABSPATH' ) ) exit;
10
+
 
11
  /*-----------------------------------------------------------------------------------
12
  a3 LazyLoad General Settings
13
 
32
 
33
  -----------------------------------------------------------------------------------*/
34
 
35
+ class Global_Panel extends FrameWork\Admin_UI
36
  {
37
 
38
  /**
114
  /* Set default settings with function called from Admin Interface */
115
  /*-----------------------------------------------------------------------------------*/
116
  public function set_default_settings() {
117
+ global ${$this->plugin_prefix.'admin_interface'};
118
 
119
+ ${$this->plugin_prefix.'admin_interface'}->reset_settings( $this->form_fields, $this->option_name, false );
120
  }
121
 
122
  /*-----------------------------------------------------------------------------------*/
136
  /* Get settings with function called from Admin Interface */
137
  /*-----------------------------------------------------------------------------------*/
138
  public function get_settings() {
139
+ global ${$this->plugin_prefix.'admin_interface'};
140
 
141
+ ${$this->plugin_prefix.'admin_interface'}->get_settings( $this->form_fields, $this->option_name );
142
  }
143
 
144
  /**
182
  /* Call the form from Admin Interface
183
  /*-----------------------------------------------------------------------------------*/
184
  public function settings_form() {
185
+ global ${$this->plugin_prefix.'admin_interface'};
186
 
187
  $output = '';
188
+ $output .= ${$this->plugin_prefix.'admin_interface'}->admin_forms( $this->form_fields, $this->form_key, $this->option_name, $this->form_messages );
189
 
190
  return $output;
191
  }
314
  'checked_label' => __( 'ON', 'a3-lazy-load' ),
315
  'unchecked_label' => __( 'OFF', 'a3-lazy-load' ),
316
  ),
 
 
 
 
 
 
 
317
  array(
318
  'name' => __( 'Noscript Support', 'a3-lazy-load' ),
319
  'id' => 'a3l_image_include_noscript',
325
  'checked_label' => __( 'ON', 'a3-lazy-load' ),
326
  'unchecked_label' => __( 'OFF', 'a3-lazy-load' ),
327
  ),
328
+ array(
329
+ 'name' => __( 'Exclude Images', 'a3-lazy-load' ),
330
+ 'type' => 'heading',
331
+ 'class' => 'a3l_apply_to_load_images_container',
332
+ 'desc' => __( 'Images can be excluded from Lazy Load either by entering existing image classnames below or if the image has no classname by adding the <code>skip-lazy</code> class to the image, example <code>&#x3C;img class="skip-lazy"&#x3E;</code>', 'a3-lazy-load' )
333
+ ),
334
+ array(
335
+ 'name' => __( 'Skip Images Classes', 'a3-lazy-load' ),
336
+ 'id' => 'a3l_skip_image_with_class',
337
+ 'desc' => __('Find and enter image class name. If more than 1 then comma seperate.<br>Example: image-class1, image-class2. Supports Wild Cards image*, .*thumbnail', 'a3-lazy-load' ),
338
+ 'type' => 'text',
339
+ 'default' => ""
340
+ ),
341
+
342
 
343
  array(
344
  'name' => __( 'Lazy Load Videos and iframes', 'a3-lazy-load' ),
384
  'checked_label' => __( 'ON', 'a3-lazy-load' ),
385
  'unchecked_label' => __( 'OFF', 'a3-lazy-load' ),
386
  ),
 
 
 
 
 
 
 
387
  array(
388
  'name' => __( 'Noscript Support', 'a3-lazy-load' ),
389
  'id' => 'a3l_video_include_noscript',
395
  'checked_label' => __( 'ON', 'a3-lazy-load' ),
396
  'unchecked_label' => __( 'OFF', 'a3-lazy-load' ),
397
  ),
398
+ array(
399
+ 'name' => __( 'Exclude Videos / iframes', 'a3-lazy-load' ),
400
+ 'type' => 'heading',
401
+ 'class' => 'a3l_apply_to_load_videos_container',
402
+ 'desc' => __( 'Videos and iFrames can be excluded from Lazy Load either by entering the existing classnames below or if if it has has no classname by adding the <code>skip-lazy</code> class to the video / iframe, example <code>&#x3C;video class="skip-lazy"&#x3E;</code>', 'a3-lazy-load' )
403
+ ),
404
+ array(
405
+ 'name' => __( 'Skip Videos Classes', 'a3-lazy-load' ),
406
+ 'id' => 'a3l_skip_video_with_class',
407
+ 'desc' => __('Find and enter video class name. If more than 1 then comma seperate.<br>Example: video-class1, video-class2. Supports WildCards video*, .*video', 'a3-lazy-load' ),
408
+ 'type' => 'text',
409
+ 'default' => ""
410
+ ),
411
  );
412
 
413
  $this->form_fields = array_merge( $this->form_fields, array(
629
  }
630
  }
631
 
632
+ }
633
+
634
+ namespace {
635
 
636
  /**
637
  * a3_lazy_load_cards_settings_form()
642
  $a3_lazy_load_global_settings_panel->settings_form();
643
  }
644
 
645
+ }
admin/tabs/template-settings/global-settings-tab.php CHANGED
@@ -1,9 +1,13 @@
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
 
 
 
 
 
3
  // File Security Check
4
  if ( ! defined( 'ABSPATH' ) ) exit;
5
- ?>
6
- <?php
7
  /*-----------------------------------------------------------------------------------
8
  a3 LazyLoad Global Tab
9
 
@@ -22,7 +26,7 @@ TABLE OF CONTENTS
22
 
23
  -----------------------------------------------------------------------------------*/
24
 
25
- class A3_Lazy_Load_Global_Settings_Tab extends A3_Lazy_Load_Admin_UI
26
  {
27
  /**
28
  * @var string
@@ -103,7 +107,8 @@ class A3_Lazy_Load_Global_Settings_Tab extends A3_Lazy_Load_Admin_UI
103
  public function settings_include() {
104
 
105
  // Includes Settings file
106
- include_once( $this->admin_plugin_dir() . '/settings/template-settings/global-settings.php' );
 
107
 
108
  }
109
 
@@ -118,15 +123,16 @@ class A3_Lazy_Load_Global_Settings_Tab extends A3_Lazy_Load_Admin_UI
118
  $a3_lazy_load_global_settings_panel->settings_form();
119
  $this->plugin_extension_end();
120
 
121
- //global $a3_lazy_load_admin_init;
122
 
123
- //$a3_lazy_load_admin_init->admin_settings_tab( $this->parent_page, $this->tab_data() );
124
 
125
  }
126
  }
127
 
128
- global $a3_lazy_load_global_settings_tab;
129
- $a3_lazy_load_global_settings_tab = new A3_Lazy_Load_Global_Settings_Tab();
 
130
 
131
  /**
132
  * people_contact_grid_view_tab_manager()
@@ -137,4 +143,4 @@ function a3_lazy_load_global_settings_tab_manager() {
137
  $a3_lazy_load_global_settings_tab->tab_manager();
138
  }
139
 
140
- ?>
1
  <?php
2
  /* "Copyright 2012 a3 Revolution Web Design" This software is distributed under the terms of GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 */
3
+
4
+ namespace A3Rev\LazyLoad\FrameWork\Tabs {
5
+
6
+ use A3Rev\LazyLoad\FrameWork;
7
+
8
  // File Security Check
9
  if ( ! defined( 'ABSPATH' ) ) exit;
10
+
 
11
  /*-----------------------------------------------------------------------------------
12
  a3 LazyLoad Global Tab
13
 
26
 
27
  -----------------------------------------------------------------------------------*/
28
 
29
+ class Global_Settings extends FrameWork\Admin_UI
30
  {
31
  /**
32
  * @var string
107
  public function settings_include() {
108
 
109
  // Includes Settings file
110
+ global $a3_lazy_load_global_settings_panel;
111
+ $a3_lazy_load_global_settings_panel = new FrameWork\Settings\Global_Panel();
112
 
113
  }
114
 
123
  $a3_lazy_load_global_settings_panel->settings_form();
124
  $this->plugin_extension_end();
125
 
126
+ //global ${$this->plugin_prefix.'admin_init'};
127
 
128
+ //${$this->plugin_prefix.'admin_init'}->admin_settings_tab( $this->parent_page, $this->tab_data() );
129
 
130
  }
131
  }
132
 
133
+ }
134
+
135
+ namespace {
136
 
137
  /**
138
  * people_contact_grid_view_tab_manager()
143
  $a3_lazy_load_global_settings_tab->tab_manager();
144
  }
145
 
146
+ }
classes/class-a3-lazy-load.php CHANGED
@@ -70,9 +70,9 @@ class LazyLoad
70
  $this->_skip_images_classes = array_map( 'trim', explode( ',', $skip_images_classes ) );
71
  }
72
  if ( is_array( $this->_skip_images_classes ) ) {
73
- $this->_skip_images_classes = array_merge( array('a3-notlazy'), $this->_skip_images_classes );
74
  } else {
75
- $this->_skip_images_classes = array('a3-notlazy');
76
  }
77
 
78
  if ( $a3_lazy_load_global_settings['a3l_apply_to_images'] == true ) {
@@ -105,9 +105,9 @@ class LazyLoad
105
  $this->_skip_videos_classes = array_map( 'trim', explode( ',', $skip_videos_classes ) );
106
  }
107
  if ( is_array( $this->_skip_videos_classes ) ) {
108
- $this->_skip_videos_classes = array_merge( array('a3-notlazy', 'wp-video-shortcode'), $this->_skip_videos_classes );
109
  } else {
110
- $this->_skip_videos_classes = array('a3-notlazy','wp-video-shortcode');
111
  }
112
 
113
  if ( $a3_lazy_load_global_settings['a3l_apply_to_videos'] == true ) {
70
  $this->_skip_images_classes = array_map( 'trim', explode( ',', $skip_images_classes ) );
71
  }
72
  if ( is_array( $this->_skip_images_classes ) ) {
73
+ $this->_skip_images_classes = array_merge( array( 'skip-lazy', 'a3-notlazy' ), $this->_skip_images_classes );
74
  } else {
75
+ $this->_skip_images_classes = array( 'skip-lazy', 'a3-notlazy' );
76
  }
77
 
78
  if ( $a3_lazy_load_global_settings['a3l_apply_to_images'] == true ) {
105
  $this->_skip_videos_classes = array_map( 'trim', explode( ',', $skip_videos_classes ) );
106
  }
107
  if ( is_array( $this->_skip_videos_classes ) ) {
108
+ $this->_skip_videos_classes = array_merge( array( 'skip-lazy', 'a3-notlazy', 'wp-video-shortcode' ), $this->_skip_videos_classes );
109
  } else {
110
+ $this->_skip_videos_classes = array( 'skip-lazy', 'a3-notlazy', 'wp-video-shortcode' );
111
  }
112
 
113
  if ( $a3_lazy_load_global_settings['a3l_apply_to_videos'] == true ) {
readme.txt CHANGED
@@ -1,9 +1,9 @@
1
  === a3 Lazy Load ===
2
  Contributors: a3rev, a3rev Software, nguyencongtuan
3
  Tags: a3 lazy load, Lazy Loading , image lazy load, lazyload
4
- Requires at least: 4.5
5
  Tested up to: 5.3.2
6
- Stable tag: 2.1.0
7
  License: GPLv3
8
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
9
 
@@ -151,8 +151,8 @@ Want to add a new language to a3 Lazy Load? Great! You can contribute via [trans
151
 
152
  = How do I exclude individual objects from Lazy Load? =
153
 
154
- Use this built in class name to exclude lazy load on individual images, videos and iframes.
155
- <code>a3-notlazy</code>
156
 
157
  = Why are some images, videos, objects not Lazy Loaded? =
158
 
@@ -205,6 +205,15 @@ Filter tags to add to class name of theme to exclude lazy load on images or vide
205
 
206
  == Changelog ==
207
 
 
 
 
 
 
 
 
 
 
208
  = 2.1.0 - 2020/01/02 =
209
  * This feature release adds support for WebP images (this support is automatic there are no settings for it), plus compatibility with WordPress 5.3.2
210
  * Feature - Add auto support WebP images
@@ -454,6 +463,9 @@ Filter tags to add to class name of theme to exclude lazy load on images or vide
454
 
455
  == Upgrade Notice ==
456
 
 
 
 
457
  = 2.1.0 =
458
  This feature release adds support for WebP images (this support is automatic there are no settings for it), plus compatibility with WordPress 5.3.2
459
 
1
  === a3 Lazy Load ===
2
  Contributors: a3rev, a3rev Software, nguyencongtuan
3
  Tags: a3 lazy load, Lazy Loading , image lazy load, lazyload
4
+ Requires at least: 4.9
5
  Tested up to: 5.3.2
6
+ Stable tag: 2.2.0
7
  License: GPLv3
8
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
9
 
151
 
152
  = How do I exclude individual objects from Lazy Load? =
153
 
154
+ Images, Videos / iframes can be excluded from Lazy Load either by existing classnames or if none exist by manually adding the <code>skip-lazy</code> class to the element you want lazy load to skip, example
155
+ <code>&#x3C;img class="skip-lazy"&#x3E; , &#x3C;video class="skip-lazy"&#x3E;</code>
156
 
157
  = Why are some images, videos, objects not Lazy Loaded? =
158
 
205
 
206
  == Changelog ==
207
 
208
+ = 2.2.0 - 2020/01/13 =
209
+ * This feature release completes the full refactor (frontend and backend) of the plugins PHP to Composer plus introduces new standardized skip-lazy exclusion class with backward compatibility support for a3-notlazy class
210
+ * Feature - Plugin Framework fully refactored to Composer for cleaner code and faster PHP code
211
+ * Tweak - Update plugin for compatibility with new version of plugin Framework
212
+ * Dev - Add standardized skip-lazy exclusion class thanks to Frank Goossens for initiating this.
213
+ * Dev - Retain backward compatibility support for old a3-notlazy class for existing users
214
+ * Tweak - Add using new skip-lazy class instructions to the plugins admin menus
215
+ * Tweak - Update the plugins description FQAs about the skip-lazy class
216
+
217
  = 2.1.0 - 2020/01/02 =
218
  * This feature release adds support for WebP images (this support is automatic there are no settings for it), plus compatibility with WordPress 5.3.2
219
  * Feature - Add auto support WebP images
463
 
464
  == Upgrade Notice ==
465
 
466
+ = 2.2.0 =
467
+ This feature release completes the full refactor (frontend and backend) of the plugins PHP to Composer plus introduces new standardized skip-lazy exclusion class with backward compatibility support for a3-notlazy class
468
+
469
  = 2.1.0 =
470
  This feature release adds support for WebP images (this support is automatic there are no settings for it), plus compatibility with WordPress 5.3.2
471
 
vendor/composer/autoload_classmap.php CHANGED
@@ -9,5 +9,14 @@ return array(
9
  'A3Rev\\LazyLoad' => $baseDir . '/classes/class-a3-lazy-load.php',
10
  'A3Rev\\LazyLoad\\Addons' => $baseDir . '/classes/addons/class-a3-lazy-load-addons-page.php',
11
  'A3Rev\\LazyLoad\\Excludes' => $baseDir . '/classes/class-a3-lazy-load-excludes.php',
 
 
 
 
 
 
 
 
 
12
  'A3Rev\\LazyLoad\\Hook_Filter' => $baseDir . '/classes/class-a3-lazy-load-filter.php',
13
  );
9
  'A3Rev\\LazyLoad' => $baseDir . '/classes/class-a3-lazy-load.php',
10
  'A3Rev\\LazyLoad\\Addons' => $baseDir . '/classes/addons/class-a3-lazy-load-addons-page.php',
11
  'A3Rev\\LazyLoad\\Excludes' => $baseDir . '/classes/class-a3-lazy-load-excludes.php',
12
+ 'A3Rev\\LazyLoad\\FrameWork\\Admin_Init' => $baseDir . '/admin/admin-init.php',
13
+ 'A3Rev\\LazyLoad\\FrameWork\\Admin_Interface' => $baseDir . '/admin/admin-interface.php',
14
+ 'A3Rev\\LazyLoad\\FrameWork\\Admin_UI' => $baseDir . '/admin/admin-ui.php',
15
+ 'A3Rev\\LazyLoad\\FrameWork\\Fonts_Face' => $baseDir . '/admin/includes/fonts_face.php',
16
+ 'A3Rev\\LazyLoad\\FrameWork\\Less_Sass' => $baseDir . '/admin/less/sass.php',
17
+ 'A3Rev\\LazyLoad\\FrameWork\\Pages\\Settings' => $baseDir . '/admin/admin-pages/admin-settings-page.php',
18
+ 'A3Rev\\LazyLoad\\FrameWork\\Settings\\Global_Panel' => $baseDir . '/admin/settings/template-settings/global-settings.php',
19
+ 'A3Rev\\LazyLoad\\FrameWork\\Tabs\\Global_Settings' => $baseDir . '/admin/tabs/template-settings/global-settings-tab.php',
20
+ 'A3Rev\\LazyLoad\\FrameWork\\Uploader' => $baseDir . '/admin/includes/uploader/class-uploader.php',
21
  'A3Rev\\LazyLoad\\Hook_Filter' => $baseDir . '/classes/class-a3-lazy-load-filter.php',
22
  );
vendor/composer/autoload_psr4.php CHANGED
@@ -6,5 +6,5 @@ $vendorDir = dirname(dirname(__FILE__));
6
  $baseDir = dirname($vendorDir);
7
 
8
  return array(
9
- 'A3Rev\\' => array($baseDir . '/classes'),
10
  );
6
  $baseDir = dirname($vendorDir);
7
 
8
  return array(
9
+ 'A3Rev\\' => array($baseDir . '/classes', $baseDir . '/admin'),
10
  );
vendor/composer/autoload_static.php CHANGED
@@ -17,6 +17,7 @@ class ComposerStaticInit77a467d5323ba7825007e91ddb8ae762
17
  'A3Rev\\' =>
18
  array (
19
  0 => __DIR__ . '/../..' . '/classes',
 
20
  ),
21
  );
22
 
@@ -24,6 +25,15 @@ class ComposerStaticInit77a467d5323ba7825007e91ddb8ae762
24
  'A3Rev\\LazyLoad' => __DIR__ . '/../..' . '/classes/class-a3-lazy-load.php',
25
  'A3Rev\\LazyLoad\\Addons' => __DIR__ . '/../..' . '/classes/addons/class-a3-lazy-load-addons-page.php',
26
  'A3Rev\\LazyLoad\\Excludes' => __DIR__ . '/../..' . '/classes/class-a3-lazy-load-excludes.php',
 
 
 
 
 
 
 
 
 
27
  'A3Rev\\LazyLoad\\Hook_Filter' => __DIR__ . '/../..' . '/classes/class-a3-lazy-load-filter.php',
28
  );
29
 
17
  'A3Rev\\' =>
18
  array (
19
  0 => __DIR__ . '/../..' . '/classes',
20
+ 1 => __DIR__ . '/../..' . '/admin',
21
  ),
22
  );
23
 
25
  'A3Rev\\LazyLoad' => __DIR__ . '/../..' . '/classes/class-a3-lazy-load.php',
26
  'A3Rev\\LazyLoad\\Addons' => __DIR__ . '/../..' . '/classes/addons/class-a3-lazy-load-addons-page.php',
27
  'A3Rev\\LazyLoad\\Excludes' => __DIR__ . '/../..' . '/classes/class-a3-lazy-load-excludes.php',
28
+ 'A3Rev\\LazyLoad\\FrameWork\\Admin_Init' => __DIR__ . '/../..' . '/admin/admin-init.php',
29
+ 'A3Rev\\LazyLoad\\FrameWork\\Admin_Interface' => __DIR__ . '/../..' . '/admin/admin-interface.php',
30
+ 'A3Rev\\LazyLoad\\FrameWork\\Admin_UI' => __DIR__ . '/../..' . '/admin/admin-ui.php',
31
+ 'A3Rev\\LazyLoad\\FrameWork\\Fonts_Face' => __DIR__ . '/../..' . '/admin/includes/fonts_face.php',
32
+ 'A3Rev\\LazyLoad\\FrameWork\\Less_Sass' => __DIR__ . '/../..' . '/admin/less/sass.php',
33
+ 'A3Rev\\LazyLoad\\FrameWork\\Pages\\Settings' => __DIR__ . '/../..' . '/admin/admin-pages/admin-settings-page.php',
34
+ 'A3Rev\\LazyLoad\\FrameWork\\Settings\\Global_Panel' => __DIR__ . '/../..' . '/admin/settings/template-settings/global-settings.php',
35
+ 'A3Rev\\LazyLoad\\FrameWork\\Tabs\\Global_Settings' => __DIR__ . '/../..' . '/admin/tabs/template-settings/global-settings-tab.php',
36
+ 'A3Rev\\LazyLoad\\FrameWork\\Uploader' => __DIR__ . '/../..' . '/admin/includes/uploader/class-uploader.php',
37
  'A3Rev\\LazyLoad\\Hook_Filter' => __DIR__ . '/../..' . '/classes/class-a3-lazy-load-filter.php',
38
  );
39