a3 Lazy Load - Version 2.4.7

Version Description

This maintenance release has code tweaks for WordPress 5.8 compatibility plus Security hardening.

Download this release

Release Info

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

Code changes from version 2.4.6 to 2.4.7

a3-lazy-load.php CHANGED
@@ -2,11 +2,11 @@
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.4.6
6
  Author: a3rev Software
7
  Author URI: https://a3rev.com/
8
  Requires at least: 5.0
9
- Tested up to: 5.7.2
10
  Text Domain: a3-lazy-load
11
  Domain Path: /languages
12
  License: GPLv2 or later
@@ -31,7 +31,7 @@ define('A3_LAZY_LOAD_IMAGES_URL', A3_LAZY_LOAD_URL . '/assets/images');
31
 
32
  define( 'A3_LAZY_LOAD_KEY', 'a3_lazy_load' );
33
  define( 'A3_LAZY_LOAD_PREFIX', 'a3_lazy_load_' );
34
- define( 'A3_LAZY_VERSION', '2.4.6' );
35
  define( 'A3_LAZY_LOAD_G_FONTS', false );
36
 
37
  use \A3Rev\LazyLoad\FrameWork;
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.4.7
6
  Author: a3rev Software
7
  Author URI: https://a3rev.com/
8
  Requires at least: 5.0
9
+ Tested up to: 5.8
10
  Text Domain: a3-lazy-load
11
  Domain Path: /languages
12
  License: GPLv2 or later
31
 
32
  define( 'A3_LAZY_LOAD_KEY', 'a3_lazy_load' );
33
  define( 'A3_LAZY_LOAD_PREFIX', 'a3_lazy_load_' );
34
+ define( 'A3_LAZY_VERSION', '2.4.7' );
35
  define( 'A3_LAZY_LOAD_G_FONTS', false );
36
 
37
  use \A3Rev\LazyLoad\FrameWork;
admin/admin-init.php CHANGED
@@ -228,7 +228,7 @@ class Admin_Init extends Admin_UI
228
  $tab_data = $tab;
229
  }
230
  echo ' ' . esc_attr( sanitize_title( $tab['name'] ) );
231
- echo '">' . $tab['label'] . '</a>';
232
  }
233
 
234
  do_action( $this->plugin_name . '-' . $current_page . '_settings_tabs' );
@@ -281,7 +281,7 @@ class Admin_Init extends Admin_UI
281
  $separate_text = '';
282
  $activated_first_subtab = false;
283
  foreach ( $subtabs as $subtab ) {
284
- echo '<li>' . $separate_text . '<a href="#' . trim( $subtab['name'] ) . '" class="';
285
  if ( $current_subtab == '' && $activated_first_subtab === false ) {
286
  echo 'current';
287
  $activated_first_subtab = true;
@@ -289,7 +289,7 @@ class Admin_Init extends Admin_UI
289
  } elseif ( $current_subtab == $subtab['name'] ) {
290
  echo 'current';
291
  }
292
- echo '">' . $subtab['label'] . '</a></li>' . "\n";
293
 
294
  $separate_text = ' | ';
295
  }
228
  $tab_data = $tab;
229
  }
230
  echo ' ' . esc_attr( sanitize_title( $tab['name'] ) );
231
+ echo '">' . esc_html( $tab['label'] ) . '</a>';
232
  }
233
 
234
  do_action( $this->plugin_name . '-' . $current_page . '_settings_tabs' );
281
  $separate_text = '';
282
  $activated_first_subtab = false;
283
  foreach ( $subtabs as $subtab ) {
284
+ echo '<li>' . $separate_text . '<a href="#' . trim( esc_attr( $subtab['name'] ) ) . '" class="';
285
  if ( $current_subtab == '' && $activated_first_subtab === false ) {
286
  echo 'current';
287
  $activated_first_subtab = true;
289
  } elseif ( $current_subtab == $subtab['name'] ) {
290
  echo 'current';
291
  }
292
+ echo '">' . esc_html( $subtab['label'] ) . '</a></li>' . "\n";
293
 
294
  $separate_text = ' | ';
295
  }
admin/admin-interface.php CHANGED
@@ -1398,7 +1398,7 @@ class Admin_Interface extends Admin_UI
1398
  if ( !is_array( $options ) || count( $options ) < 1 ) return '';
1399
  ?>
1400
 
1401
- <?php echo $admin_message; ?>
1402
  <div class="a3rev_panel_container" style="visibility:hidden; height:0; overflow:hidden;" >
1403
  <form action="" method="post">
1404
  <?php do_action( $this->plugin_name . '-' . trim( $form_key ) . '_settings_start' ); ?>
@@ -1459,9 +1459,9 @@ class Admin_Interface extends Admin_UI
1459
  }
1460
 
1461
  if ( $description && in_array( $value['type'], array( 'manual_check_version', 'ajax_submit', 'ajax_multi_submit', 'textarea', 'radio', 'onoff_radio', 'typography', 'border', 'border_styles', 'array_textfields', 'wp_editor', 'upload' ) ) ) {
1462
- $description = '<div class="desc" style="margin-bottom:5px;">' . $description . '</div>';
1463
  } elseif ( $description ) {
1464
- $description = '<span class="description" style="margin-left:5px;">' . $description . '</span>';
1465
  }
1466
 
1467
  /**
@@ -1554,7 +1554,7 @@ class Admin_Interface extends Admin_UI
1554
 
1555
  if ( $tip && in_array( $value['type'], array( 'checkbox' ) ) ) {
1556
 
1557
- $tip = '<p class="description">' . $tip . '</p>';
1558
 
1559
  } elseif ( $tip ) {
1560
 
@@ -1813,7 +1813,7 @@ class Admin_Interface extends Admin_UI
1813
  // open box handle
1814
  echo '<div data-form-key="'. esc_attr( trim( $form_key ) ) .'" data-box-id="'. esc_attr( $heading_box_id ) .'" class="a3rev_panel_box_handle ' . $box_handle_class .'" >' . "\n\n";
1815
 
1816
- echo ( ! empty( $value['name'] ) ) ? '<h3 class="a3-plugin-ui-panel-box '. $toggle_box_class . ' ' . $opened_class . '">'. $value['name'] .' '. $view_doc .'</h3>' : '';
1817
 
1818
  if ( stristr( $value['class'], 'pro_feature_fields' ) !== false && ! empty( $value['id'] ) ) $this->upgrade_top_message( true, sanitize_title( $value['id'] ) );
1819
  elseif ( stristr( $value['class'], 'pro_feature_fields' ) !== false ) $this->upgrade_top_message( true );
@@ -1839,7 +1839,7 @@ class Admin_Interface extends Admin_UI
1839
  if ( stristr( $value['class'], 'pro_feature_fields' ) !== false && ! empty( $value['id'] ) ) $this->upgrade_top_message( true, sanitize_title( $value['id'] ) );
1840
  elseif ( stristr( $value['class'], 'pro_feature_fields' ) !== false ) $this->upgrade_top_message( true );
1841
 
1842
- echo ( ! empty( $value['name'] ) ) ? '<h3>'. $value['name'] .' '. $view_doc .'</h3>' : '';
1843
  }
1844
 
1845
  if ( ! empty( $value['desc'] ) ) {
@@ -1865,7 +1865,7 @@ class Admin_Interface extends Admin_UI
1865
 
1866
  ?><tr valign="top">
1867
  <th scope="row" class="titledesc">
1868
- <?php echo $tip; ?>
1869
  <label for="<?php echo esc_attr( $this->google_api_key_option ); ?>"><?php echo __( 'Google Fonts API', 'a3-lazy-load' ); ?></label>
1870
  </th>
1871
  <td class="forminp forminp-onoff_checkbox forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
@@ -1900,7 +1900,7 @@ class Admin_Interface extends Admin_UI
1900
  value="<?php echo esc_attr( $google_api_key ); ?>"
1901
  class="a3rev-ui-text a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
1902
  placeholder="<?php echo __( 'Google Fonts API Key', 'a3-lazy-load' ); ?>"
1903
- <?php echo implode( ' ', $custom_attributes ); ?>
1904
  />
1905
  <p class="a3rev-ui-google-valid-key-message"><?php echo __( 'Your Google API Key is valid and automatic font updates are enabled.', 'a3-lazy-load' ); ?></p>
1906
  <p class="a3rev-ui-google-unvalid-key-message"><?php echo __( 'Please enter a valid Google API Key.', 'a3-lazy-load' ); ?></p>
@@ -1921,7 +1921,7 @@ class Admin_Interface extends Admin_UI
1921
 
1922
  ?><tr valign="top">
1923
  <th scope="row" class="titledesc">
1924
- <?php echo $tip; ?>
1925
  <label for="<?php echo esc_attr( $this->google_map_api_key_option ); ?>"><?php echo __( 'Google Maps API', 'a3-lazy-load' ); ?></label>
1926
  </th>
1927
  <td class="forminp forminp-onoff_checkbox forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
@@ -1956,7 +1956,7 @@ class Admin_Interface extends Admin_UI
1956
  value="<?php echo esc_attr( $google_map_api_key ); ?>"
1957
  class="a3rev-ui-text a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
1958
  placeholder="<?php echo __( 'Google Map API Key', 'a3-lazy-load' ); ?>"
1959
- <?php echo implode( ' ', $custom_attributes ); ?>
1960
  />
1961
  <p class="a3rev-ui-google-valid-key-message"><?php echo __( 'Your Google API Key is valid and automatic font updates are enabled.', 'a3-lazy-load' ); ?></p>
1962
  <p class="a3rev-ui-google-unvalid-key-message"><?php echo __( 'Please enter a valid Google API Key.', 'a3-lazy-load' ); ?></p>
@@ -2007,32 +2007,32 @@ class Admin_Interface extends Admin_UI
2007
  $submit_data = json_encode( $value['submit_data'] );
2008
 
2009
  ?><tr valign="top">
2010
- <th scope="row" class="titledesc"><?php echo $tip; ?><?php echo $value['name']; ?></th>
2011
  <td class="forminp">
2012
 
2013
  <div class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-control">
2014
 
2015
  <button
2016
- name="<?php echo $name_attribute; ?>"
2017
  id="<?php echo esc_attr( $id_attribute ); ?>"
2018
  data-submit_data="<?php echo esc_attr( $submit_data ); ?>"
2019
  type="button"
2020
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-button <?php echo esc_attr( $value['class'] ); ?>"
2021
  style="<?php echo esc_attr( $value['css'] ); ?>"
2022
- <?php echo implode( ' ', $custom_attributes ); ?>
2023
- ><?php echo $button_name; ?></button>
2024
- <span class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-successed"><?php echo $successed_text; ?></span>
2025
- <span class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-errors"><?php echo $errors_text; ?></span>
2026
 
2027
  <!-- Progress Bar -->
2028
  <div class="a3rev-ui-progress-bar-wrap">
2029
  <div class="a3rev-ui-progress-inner"></div>
2030
- <div class="a3rev-ui-progressing-text"><?php echo $progressing_text; ?></div>
2031
- <div class="a3rev-ui-completed-text"><?php echo $completed_text; ?></div>
2032
  </div>
2033
 
2034
  </div>
2035
- <?php echo $description; ?>
2036
  </td>
2037
  </tr><?php
2038
 
@@ -2080,35 +2080,35 @@ class Admin_Interface extends Admin_UI
2080
  $multi_ajax = json_encode( $multi_ajax );
2081
 
2082
  ?><tr valign="top">
2083
- <th scope="row" class="titledesc"><?php echo $tip; ?><?php echo $value['name']; ?></th>
2084
  <td class="forminp">
2085
 
2086
  <div class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-control">
2087
- <?php echo $description; ?>
2088
  <button
2089
  data-resubmit="<?php echo $resubmit ? 1 : 0 ; ?>"
2090
- name="<?php echo $name_attribute; ?>"
2091
  id="<?php echo esc_attr( $id_attribute ); ?>"
2092
  data-multi_ajax="<?php echo esc_attr( $multi_ajax ); ?>"
2093
  type="button"
2094
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-button <?php echo esc_attr( $value['class'] ); ?>"
2095
  style="<?php echo esc_attr( $value['css'] ); ?>"
2096
- <?php echo implode( ' ', $custom_attributes ); ?>
2097
  <?php if ( ! empty( $confirm_message ) ) { ?>
2098
  data-confirm_message="<?php echo esc_attr( $confirm_message ); ?>"
2099
  <?php } ?>
2100
- ><?php echo $button_name; ?></button>
2101
- <span class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-successed"><?php echo $successed_text; ?></span>
2102
- <span class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-errors"><?php echo $errors_text; ?></span>
2103
 
2104
  <!-- Progress Bar -->
2105
  <?php if ( ! empty( $notice ) ) { ?>
2106
- <div class="a3rev-ui-progress-notice"><?php echo $notice; ?></div>
2107
  <?php } ?>
2108
  <div class="a3rev-ui-progress-bar-wrap">
2109
- <div class="a3rev-ui-progress-inner" data-current="<?php echo esc_attr( $multi_current_items ); ?>" data-total="<?php echo $multi_total_items; ?>" ></div>
2110
- <div class="a3rev-ui-progressing-text"><?php echo $progressing_text; ?></div>
2111
- <div class="a3rev-ui-completed-text"><?php echo $completed_text; ?></div>
2112
  </div>
2113
  <div style="clear: both;"></div>
2114
 
@@ -2151,11 +2151,11 @@ class Admin_Interface extends Admin_UI
2151
  <div class="a3rev-ui-pie-shadow"></div>
2152
  </div>
2153
  <div class="a3rev-ui-statistic-text">
2154
- <span class="a3rev-ui-statistic-current-item" data-current="<?php echo esc_attr( $current_items ); ?>" ><?php echo $current_items; ?></span>
2155
  <span class="a3rev-ui-statistic-separate">/</span>
2156
- <span class="a3rev-ui-statistic-total-item"><?php echo $total_items; ?></span>
2157
  <br />
2158
- <span class="a3rev-ui-statistic-item-name"><?php echo $single_submit['item_name']; ?></span>
2159
  </div>
2160
  </div>
2161
  <?php
@@ -2178,7 +2178,7 @@ class Admin_Interface extends Admin_UI
2178
 
2179
  ?><tr valign="top">
2180
  <th scope="row" class="titledesc">
2181
- <?php echo $tip; ?>
2182
  <label for="<?php echo esc_attr( $this->toggle_box_open_option ); ?>"><?php echo __( 'Open Box Display', 'a3-lazy-load' ); ?></label>
2183
  </th>
2184
  <td class="forminp forminp-onoff_checkbox forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
@@ -2191,7 +2191,7 @@ class Admin_Interface extends Admin_UI
2191
  type="checkbox"
2192
  value="1"
2193
  <?php checked( $option_value, 1 ); ?>
2194
- <?php echo implode( ' ', $custom_attributes ); ?>
2195
  /> <span class="description" style="margin-left:5px;"><?php echo __( 'ON and each admin panel setting box OPEN | CLOSED position are saved each time changes are SAVED.', 'a3-lazy-load' ); ?></span>
2196
  </td>
2197
  </tr><?php
@@ -2207,20 +2207,20 @@ class Admin_Interface extends Admin_UI
2207
 
2208
  ?><tr valign="top">
2209
  <th scope="row" class="titledesc">
2210
- <?php echo $tip; ?>
2211
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2212
  </th>
2213
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2214
  <input
2215
- name="<?php echo $name_attribute; ?>"
2216
  id="<?php echo esc_attr( $id_attribute ); ?>"
2217
  type="<?php echo esc_attr( $type ); ?>"
2218
  style="<?php echo esc_attr( $value['css'] ); ?>"
2219
  value="<?php echo esc_attr( $option_value ); ?>"
2220
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
2221
  placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
2222
- <?php echo implode( ' ', $custom_attributes ); ?>
2223
- /> <?php echo $description; ?>
2224
  </td>
2225
  </tr><?php
2226
  break;
@@ -2234,18 +2234,18 @@ class Admin_Interface extends Admin_UI
2234
 
2235
  ?><tr valign="top">
2236
  <th scope="row" class="titledesc">
2237
- <?php echo $tip; ?>
2238
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2239
  </th>
2240
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2241
  <input
2242
- name="<?php echo $name_attribute; ?>"
2243
  id="<?php echo esc_attr( $id_attribute ); ?>"
2244
  type="text"
2245
  value="<?php echo esc_attr( $option_value ); ?>"
2246
  class="a3rev-color-picker"
2247
- <?php echo $default_color; ?>
2248
- /> <?php echo $description; ?>
2249
  </td>
2250
  </tr><?php
2251
 
@@ -2265,8 +2265,8 @@ class Admin_Interface extends Admin_UI
2265
 
2266
  ?><tr valign="top">
2267
  <th scope="row" class="titledesc">
2268
- <?php echo $tip; ?>
2269
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2270
  </th>
2271
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2272
  <input
@@ -2278,8 +2278,8 @@ class Admin_Interface extends Admin_UI
2278
  type="checkbox"
2279
  value="1"
2280
  <?php checked( 1, $enable ); ?>
2281
- <?php echo implode( ' ', $custom_attributes ); ?>
2282
- /> <?php echo $description; ?>
2283
  <div style="clear:both;"></div>
2284
  <div class="a3rev-ui-bg_color-enable-container">
2285
  <input
@@ -2288,7 +2288,7 @@ class Admin_Interface extends Admin_UI
2288
  type="text"
2289
  value="<?php echo esc_attr( $color ); ?>"
2290
  class="a3rev-color-picker"
2291
- <?php echo $default_color; ?>
2292
  />
2293
  </div>
2294
  </td>
@@ -2301,19 +2301,19 @@ class Admin_Interface extends Admin_UI
2301
 
2302
  ?><tr valign="top">
2303
  <th scope="row" class="titledesc">
2304
- <?php echo $tip; ?>
2305
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2306
  </th>
2307
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2308
- <?php echo $description; ?>
2309
 
2310
  <textarea
2311
- name="<?php echo $name_attribute; ?>"
2312
  id="<?php echo esc_attr( $id_attribute ); ?>"
2313
  style="<?php echo esc_attr( $value['css'] ); ?>"
2314
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
2315
  placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
2316
- <?php echo implode( ' ', $custom_attributes ); ?>
2317
  ><?php echo esc_textarea( $option_value ); ?></textarea>
2318
  </td>
2319
  </tr><?php
@@ -2337,17 +2337,17 @@ class Admin_Interface extends Admin_UI
2337
 
2338
  ?><tr valign="top">
2339
  <th scope="row" class="titledesc">
2340
- <?php echo $tip; ?>
2341
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2342
  </th>
2343
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2344
  <select
2345
- name="<?php echo $name_attribute; ?><?php if ( $value['type'] == 'multiselect' ) echo '[]'; ?>"
2346
  id="<?php echo esc_attr( $id_attribute ); ?>"
2347
  style="<?php echo esc_attr( $value['css'] ); ?>"
2348
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
2349
  data-placeholder="<?php echo esc_html( $value['placeholder'] ); ?>"
2350
- <?php echo implode( ' ', $custom_attributes ); ?>
2351
  <?php if ( $value['type'] == 'multiselect' ) echo 'multiple="multiple"'; ?>
2352
  <?php if ( $is_ajax ) {
2353
  echo 'options_url="'.esc_url( $value['options_url'] ).'"';
@@ -2371,7 +2371,7 @@ class Admin_Interface extends Admin_UI
2371
  else
2372
  selected( $option_value, $sub_key );
2373
 
2374
- ?>><?php echo $sub_val ?></option>
2375
  <?php
2376
  }
2377
  ?>
@@ -2386,13 +2386,13 @@ class Admin_Interface extends Admin_UI
2386
  else
2387
  selected( $option_value, $key );
2388
 
2389
- ?>><?php echo $val ?></option>
2390
  <?php
2391
  }
2392
  }
2393
  }
2394
  ?>
2395
- </select> <?php echo $description; ?>
2396
  </td>
2397
  </tr><?php
2398
  break;
@@ -2404,12 +2404,12 @@ class Admin_Interface extends Admin_UI
2404
 
2405
  ?><tr valign="top">
2406
  <th scope="row" class="titledesc">
2407
- <?php echo $tip; ?>
2408
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2409
  </th>
2410
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2411
  <fieldset>
2412
- <?php echo $description; ?>
2413
  <ul>
2414
  <?php
2415
  if ( is_array( $value['options'] ) && count( $value['options'] ) > 0 ) {
@@ -2417,14 +2417,14 @@ class Admin_Interface extends Admin_UI
2417
  ?>
2418
  <li>
2419
  <label><input
2420
- name="<?php echo $name_attribute; ?>"
2421
  value="<?php echo esc_attr( $val ); ?>"
2422
  type="radio"
2423
  style="<?php echo esc_attr( $value['css'] ); ?>"
2424
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
2425
- <?php echo implode( ' ', $custom_attributes ); ?>
2426
  <?php checked( $val, $option_value ); ?>
2427
- /> <span class="description" style="margin-left:5px;"><?php echo $text ?></span></label>
2428
  </li>
2429
  <?php
2430
  }
@@ -2443,12 +2443,12 @@ class Admin_Interface extends Admin_UI
2443
 
2444
  ?><tr valign="top">
2445
  <th scope="row" class="titledesc">
2446
- <?php echo $tip; ?>
2447
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2448
  </th>
2449
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2450
  <fieldset>
2451
- <?php echo $description; ?>
2452
  <ul>
2453
  <?php
2454
  if ( is_array( $value['onoff_options'] ) && count( $value['onoff_options'] ) > 0 ) {
@@ -2460,7 +2460,7 @@ class Admin_Interface extends Admin_UI
2460
  ?>
2461
  <li>
2462
  <input
2463
- name="<?php echo $name_attribute; ?>"
2464
  <?php if ( $i_option['val'] == $option_value ) echo ' checkbox-disabled="true" ' ; ?>
2465
  class="a3rev-ui-onoff_radio <?php echo esc_attr( $value['class'] ); ?>"
2466
  checked_label="<?php echo esc_html( $i_option['checked_label'] ); ?>"
@@ -2468,8 +2468,8 @@ class Admin_Interface extends Admin_UI
2468
  type="radio"
2469
  value="<?php echo esc_attr( stripslashes( $i_option['val'] ) ); ?>"
2470
  <?php checked( esc_attr( stripslashes( $i_option['val'] ) ), $option_value ); ?>
2471
- <?php echo implode( ' ', $custom_attributes ); ?>
2472
- /> <span class="description" style="margin-left:5px;"><?php echo $i_option['text'] ?></span>
2473
  </li>
2474
  <?php
2475
  }
@@ -2496,7 +2496,7 @@ class Admin_Interface extends Admin_UI
2496
  if ( $value['show_if_checked'] == 'option' ) echo 'show_options_if_checked';
2497
  ?>">
2498
  <th scope="row" class="titledesc">
2499
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2500
  </th>
2501
  <td class="forminp forminp-checkbox">
2502
  <fieldset>
@@ -2512,17 +2512,17 @@ class Admin_Interface extends Admin_UI
2512
  }
2513
 
2514
  ?>
2515
- <legend class="screen-reader-text"><span><?php echo $value['name']; ?></span></legend>
2516
 
2517
  <label for="<?php echo esc_attr( $id_attribute ); ?>">
2518
  <input
2519
- name="<?php echo $name_attribute; ?>"
2520
  id="<?php echo esc_attr( $id_attribute ); ?>"
2521
  type="checkbox"
2522
  value="<?php echo esc_attr( stripslashes( $value['checked_value'] ) ); ?>"
2523
  <?php checked( $option_value, esc_attr( stripslashes( $value['checked_value'] ) ) ); ?>
2524
- <?php echo implode( ' ', $custom_attributes ); ?>
2525
- /> <?php echo $description; ?></label> <?php echo $tip; ?>
2526
  <?php
2527
 
2528
  if ( ! isset( $value['checkboxgroup'] ) || ( isset( $value['checkboxgroup'] ) && $value['checkboxgroup'] == 'end' ) ) {
@@ -2548,12 +2548,12 @@ class Admin_Interface extends Admin_UI
2548
 
2549
  ?><tr valign="top">
2550
  <th scope="row" class="titledesc">
2551
- <?php echo $tip; ?>
2552
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2553
  </th>
2554
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2555
  <input
2556
- name="<?php echo $name_attribute; ?>"
2557
  id="<?php echo esc_attr( $id_attribute ); ?>"
2558
  class="a3rev-ui-onoff_checkbox <?php echo esc_attr( $value['class'] ); ?>"
2559
  checked_label="<?php echo esc_html( $value['checked_label'] ); ?>"
@@ -2561,8 +2561,8 @@ class Admin_Interface extends Admin_UI
2561
  type="checkbox"
2562
  value="<?php echo esc_attr( stripslashes( $value['checked_value'] ) ); ?>"
2563
  <?php checked( $option_value, esc_attr( stripslashes( $value['checked_value'] ) ) ); ?>
2564
- <?php echo implode( ' ', $custom_attributes ); ?>
2565
- /> <?php echo $description; ?>
2566
  </td>
2567
  </tr><?php
2568
 
@@ -2577,12 +2577,12 @@ class Admin_Interface extends Admin_UI
2577
 
2578
  ?><tr valign="top">
2579
  <th scope="row" class="titledesc">
2580
- <?php echo $tip; ?>
2581
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
2582
  </th>
2583
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2584
  <input
2585
- name="<?php echo $name_attribute; ?>"
2586
  id="<?php echo esc_attr( $id_attribute ); ?>"
2587
  class="a3rev-ui-onoff_checkbox <?php echo esc_attr( $value['class'] ); ?>"
2588
  checked_label="<?php echo esc_html( $value['checked_label'] ); ?>"
@@ -2590,8 +2590,8 @@ class Admin_Interface extends Admin_UI
2590
  type="checkbox"
2591
  value="<?php echo esc_attr( stripslashes( $value['checked_value'] ) ); ?>"
2592
  <?php checked( $option_value, esc_attr( stripslashes( $value['checked_value'] ) ) ); ?>
2593
- <?php echo implode( ' ', $custom_attributes ); ?>
2594
- /> <?php echo $description; ?>
2595
  </td>
2596
  </tr><?php
2597
 
@@ -2605,12 +2605,12 @@ class Admin_Interface extends Admin_UI
2605
  $crop = checked( 1, $option_value['crop'], false );
2606
 
2607
  ?><tr valign="top">
2608
- <th scope="row" class="titledesc"><?php echo $tip; ?><?php echo $value['name']; ?></th>
2609
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2610
 
2611
- <label><?php _e( 'Width', 'a3-lazy-load' ); ?> <input name="<?php echo $name_attribute; ?>[width]" id="<?php echo esc_attr( $id_attribute ); ?>-width" type="text" class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-width" value="<?php echo $width; ?>" /></label>
2612
 
2613
- <label><?php _e( 'Height', 'a3-lazy-load' ); ?> <input name="<?php echo $name_attribute; ?>[height]" id="<?php echo esc_attr( $id_attribute ); ?>-height" type="text" class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-height" value="<?php echo $height; ?>" /></label>
2614
 
2615
  <label><?php _e( 'Hard Crop', 'a3-lazy-load' ); ?> <input name="<?php echo $name_attribute; ?>[crop]" id="<?php echo esc_attr( $id_attribute ); ?>-crop" type="checkbox" class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-crop" <?php echo $crop; ?> /></label>
2616
 
@@ -2640,9 +2640,9 @@ class Admin_Interface extends Admin_UI
2640
  $args = wp_parse_args( $value['args'], $args );
2641
 
2642
  ?><tr valign="top">
2643
- <th scope="row" class="titledesc"><?php echo $tip; ?><?php echo $value['name']; ?></th>
2644
  <td class="forminp">
2645
- <?php echo str_replace(' id=', " data-placeholder='" . esc_html( $value['placeholder'] ) . "' style='" . $value['css'] . "' class='" . $value['class'] . "' id=", wp_dropdown_pages( $args ) ); ?> <?php echo $description; ?>
2646
  </td>
2647
  </tr><?php
2648
  break;
@@ -2663,9 +2663,9 @@ class Admin_Interface extends Admin_UI
2663
  $color = $option_value['color'];
2664
 
2665
  ?><tr valign="top">
2666
- <th scope="row" class="titledesc"><?php echo $tip; ?><?php echo $value['name']; ?></th>
2667
  <td class="forminp">
2668
- <?php echo $description; ?>
2669
  <div class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-control">
2670
  <!-- Font Size -->
2671
  <select
@@ -2678,7 +2678,7 @@ class Admin_Interface extends Admin_UI
2678
  ?>
2679
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
2680
  selected( $size, $i.'px' );
2681
- ?>><?php echo esc_attr( $i ); ?>px</option>
2682
  <?php
2683
  }
2684
  ?>
@@ -2694,7 +2694,7 @@ class Admin_Interface extends Admin_UI
2694
  ?>
2695
  <option value="<?php echo esc_attr( $i ); ?>em" <?php
2696
  selected( $line_height, $i.'em' );
2697
- ?>><?php echo esc_attr( $i ); ?>em</option>
2698
  <?php
2699
  }
2700
  ?>
@@ -2711,7 +2711,7 @@ class Admin_Interface extends Admin_UI
2711
  ?>
2712
  <option value="<?php echo esc_attr( $val ); ?>" <?php
2713
  selected( esc_attr( $val ), esc_attr( $face ) );
2714
- ?>><?php echo esc_attr( $text ); ?></option>
2715
  <?php
2716
  }
2717
  ?>
@@ -2722,7 +2722,7 @@ class Admin_Interface extends Admin_UI
2722
  ?>
2723
  <option value="<?php echo esc_attr( $font['name'] ); ?>" <?php
2724
  selected( esc_attr( $font['name'] ), esc_attr( $face ) );
2725
- ?>><?php echo esc_attr( $font['name'] ); ?></option>
2726
  <?php
2727
  }
2728
  ?>
@@ -2740,7 +2740,7 @@ class Admin_Interface extends Admin_UI
2740
  ?>
2741
  <option value="<?php echo esc_attr( $val ); ?>" <?php
2742
  selected( esc_attr( $val ), esc_attr( $style ) );
2743
- ?>><?php echo esc_attr( $text ); ?></option>
2744
  <?php
2745
  }
2746
  ?>
@@ -2753,11 +2753,11 @@ class Admin_Interface extends Admin_UI
2753
  type="text"
2754
  value="<?php echo esc_attr( $color ); ?>"
2755
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-color a3rev-color-picker"
2756
- <?php echo $default_color; ?>
2757
  />
2758
 
2759
  <!-- Preview Button -->
2760
- <div class="a3rev-ui-typography-preview"><a href="#" class="a3rev-ui-typography-preview-button button submit-button" title="<?php _e( 'Preview your customized typography settings', 'a3-lazy-load' ); ?>"><span>&nbsp;</span></a></div>
2761
 
2762
  </div>
2763
 
@@ -2817,9 +2817,9 @@ class Admin_Interface extends Admin_UI
2817
  $bottom_right_corner = intval( $bottom_right_corner );
2818
 
2819
  ?><tr valign="top">
2820
- <th scope="row" class="titledesc"><?php echo $tip; ?><?php echo $value['name']; ?></th>
2821
  <td class="forminp forminp-border_corner">
2822
- <?php echo $description; ?>
2823
  <div class="a3rev-ui-settings-control">
2824
  <!-- Border Width -->
2825
  <select
@@ -2832,7 +2832,7 @@ class Admin_Interface extends Admin_UI
2832
  ?>
2833
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
2834
  selected( $width, $i.'px' );
2835
- ?>><?php echo esc_attr( $i ); ?>px</option>
2836
  <?php
2837
  }
2838
  ?>
@@ -2849,7 +2849,7 @@ class Admin_Interface extends Admin_UI
2849
  ?>
2850
  <option value="<?php echo esc_attr( $val ); ?>" <?php
2851
  selected( esc_attr( $val ), esc_attr( $style ) );
2852
- ?>><?php echo esc_attr( $text ); ?></option>
2853
  <?php
2854
  }
2855
  ?>
@@ -2862,7 +2862,7 @@ class Admin_Interface extends Admin_UI
2862
  type="text"
2863
  value="<?php echo esc_attr( $color ); ?>"
2864
  class="a3rev-ui-border_styles-color a3rev-color-picker"
2865
- <?php echo $default_color; ?>
2866
  />
2867
 
2868
  <!-- Preview Button -->
@@ -2880,7 +2880,7 @@ class Admin_Interface extends Admin_UI
2880
  type="checkbox"
2881
  value="rounded"
2882
  <?php checked( 'rounded', $corner ); ?>
2883
- <?php echo implode( ' ', $custom_attributes ); ?>
2884
  />
2885
 
2886
  <!-- Border Rounded Value -->
@@ -2984,9 +2984,9 @@ class Admin_Interface extends Admin_UI
2984
  $color = $option_value['color'];
2985
 
2986
  ?><tr valign="top">
2987
- <th scope="row" class="titledesc"><?php echo $tip; ?><?php echo $value['name']; ?></th>
2988
  <td class="forminp">
2989
- <?php echo $description; ?>
2990
  <div class="a3rev-ui-settings-control">
2991
  <!-- Border Width -->
2992
  <select
@@ -2999,7 +2999,7 @@ class Admin_Interface extends Admin_UI
2999
  ?>
3000
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3001
  selected( $width, $i.'px' );
3002
- ?>><?php echo esc_attr( $i ); ?>px</option>
3003
  <?php
3004
  }
3005
  ?>
@@ -3016,7 +3016,7 @@ class Admin_Interface extends Admin_UI
3016
  ?>
3017
  <option value="<?php echo esc_attr( $val ); ?>" <?php
3018
  selected( esc_attr( $val ), esc_attr( $style ) );
3019
- ?>><?php echo esc_attr( $text ); ?></option>
3020
  <?php
3021
  }
3022
  ?>
@@ -3029,7 +3029,7 @@ class Admin_Interface extends Admin_UI
3029
  type="text"
3030
  value="<?php echo esc_attr( $color ); ?>"
3031
  class="a3rev-ui-border_styles-color a3rev-color-picker"
3032
- <?php echo $default_color; ?>
3033
  />
3034
 
3035
  <!-- Preview Button -->
@@ -3083,7 +3083,7 @@ class Admin_Interface extends Admin_UI
3083
  $bottom_right_corner = intval( $bottom_right_corner );
3084
 
3085
  ?><tr valign="top">
3086
- <th scope="row" class="titledesc"><?php echo $tip; ?><?php echo $value['name']; ?></th>
3087
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3088
  <div class="a3rev-ui-settings-control">
3089
  <!-- Border Corner : Rounded or Square -->
@@ -3096,12 +3096,12 @@ class Admin_Interface extends Admin_UI
3096
  type="checkbox"
3097
  value="rounded"
3098
  <?php checked( 'rounded', $corner ); ?>
3099
- <?php echo implode( ' ', $custom_attributes ); ?>
3100
  />
3101
 
3102
  <!-- Preview Button -->
3103
  <div class="a3rev-ui-settings-preview"><a href="#" class="a3rev-ui-border-preview-button a3rev-ui-settings-preview-button button submit-button" title="<?php _e( 'Preview your customized border settings', 'a3-lazy-load' ); ?>"><span>&nbsp;</span></a></div>
3104
- <?php echo $description; ?>
3105
  <!-- Border Rounded Value -->
3106
  <div class="a3rev-ui-border-corner-value-container">
3107
  <div class="a3rev-ui-border_corner-top_left">
@@ -3209,7 +3209,7 @@ class Admin_Interface extends Admin_UI
3209
  $inset = $option_value['inset'];
3210
 
3211
  ?><tr valign="top">
3212
- <th scope="row" class="titledesc"><?php echo $tip; ?><?php echo $value['name']; ?></th>
3213
  <td class="forminp forminp-box_shadow">
3214
  <input
3215
  name="<?php echo $name_attribute; ?>[enable]"
@@ -3220,9 +3220,9 @@ class Admin_Interface extends Admin_UI
3220
  type="checkbox"
3221
  value="1"
3222
  <?php checked( 1, $enable ); ?>
3223
- <?php echo implode( ' ', $custom_attributes ); ?>
3224
  />
3225
- <?php echo $description; ?>
3226
  <div style="clear:both;"></div>
3227
  <div class="a3rev-ui-box_shadow-enable-container">
3228
  <div class="a3rev-ui-settings-control">
@@ -3238,7 +3238,7 @@ class Admin_Interface extends Admin_UI
3238
  ?>
3239
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3240
  selected( $h_shadow, $i.'px' );
3241
- ?>><?php echo esc_attr( $i ); ?>px</option>
3242
  <?php
3243
  }
3244
  ?>
@@ -3256,7 +3256,7 @@ class Admin_Interface extends Admin_UI
3256
  ?>
3257
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3258
  selected( $v_shadow, $i.'px' );
3259
- ?>><?php echo esc_attr( $i ); ?>px</option>
3260
  <?php
3261
  }
3262
  ?>
@@ -3274,7 +3274,7 @@ class Admin_Interface extends Admin_UI
3274
  ?>
3275
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3276
  selected( $blur, $i.'px' );
3277
- ?>><?php echo esc_attr( $i ); ?>px</option>
3278
  <?php
3279
  }
3280
  ?>
@@ -3292,7 +3292,7 @@ class Admin_Interface extends Admin_UI
3292
  ?>
3293
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3294
  selected( $spread, $i.'px' );
3295
- ?>><?php echo esc_attr( $i ); ?>px</option>
3296
  <?php
3297
  }
3298
  ?>
@@ -3308,7 +3308,7 @@ class Admin_Interface extends Admin_UI
3308
  type="checkbox"
3309
  value="inset"
3310
  <?php checked( 'inset', $inset ); ?>
3311
- <?php echo implode( ' ', $custom_attributes ); ?>
3312
  />
3313
 
3314
  <!-- Box Shadow Color -->
@@ -3318,11 +3318,11 @@ class Admin_Interface extends Admin_UI
3318
  type="text"
3319
  value="<?php echo esc_attr( $color ); ?>"
3320
  class="a3rev-ui-box_shadow-color a3rev-color-picker"
3321
- <?php echo $default_color; ?>
3322
  />
3323
 
3324
  <!-- Preview Button -->
3325
- <div class="a3rev-ui-settings-preview"><a href="#" class="a3rev-ui-box_shadow-preview-button a3rev-ui-settings-preview-button button submit-button" title="<?php _e( 'Preview your customized box shadow settings', 'a3-lazy-load' ); ?>"><span>&nbsp;</span></a></div>
3326
  </div>
3327
  <div style="clear:both;"></div>
3328
  </div>
@@ -3342,8 +3342,8 @@ class Admin_Interface extends Admin_UI
3342
 
3343
  ?><tr valign="top">
3344
  <th scope="row" class="titledesc">
3345
- <?php echo $tip; ?>
3346
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
3347
  </th>
3348
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3349
  <div class="a3rev-ui-slide-container">
@@ -3353,13 +3353,13 @@ class Admin_Interface extends Admin_UI
3353
  <div class="a3rev-ui-slide-result-container">
3354
  <input
3355
  readonly="readonly"
3356
- name="<?php echo $name_attribute; ?>"
3357
  id="<?php echo esc_attr( $id_attribute ); ?>"
3358
  type="text"
3359
  value="<?php echo esc_attr( $option_value ); ?>"
3360
  class="a3rev-ui-slider"
3361
- <?php echo implode( ' ', $custom_attributes ); ?>
3362
- /> <?php echo $description; ?>
3363
  </div>
3364
  </div>
3365
  </td>
@@ -3386,11 +3386,11 @@ class Admin_Interface extends Admin_UI
3386
 
3387
  ?><tr valign="top">
3388
  <th scope="row" class="titledesc">
3389
- <?php echo $tip; ?>
3390
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
3391
  </th>
3392
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3393
- <?php echo $description; ?>
3394
  <?php echo $GLOBALS[$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 );?>
3395
  </td>
3396
  </tr><?php
@@ -3404,11 +3404,11 @@ class Admin_Interface extends Admin_UI
3404
 
3405
  ?><tr valign="top">
3406
  <th scope="row" class="titledesc">
3407
- <?php echo $tip; ?>
3408
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
3409
  </th>
3410
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3411
- <?php echo $description; ?>
3412
  <?php remove_all_filters('mce_external_plugins'); ?>
3413
  <?php wp_editor( $option_value,
3414
  $id_attribute,
@@ -3428,11 +3428,11 @@ class Admin_Interface extends Admin_UI
3428
 
3429
  ?><tr valign="top">
3430
  <th scope="row" class="titledesc">
3431
- <?php echo $tip; ?>
3432
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
3433
  </th>
3434
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3435
- <?php echo $description; ?>
3436
  <div class="a3rev-ui-array_textfields-container">
3437
  <?php
3438
  foreach ( $value['ids'] as $text_field ) {
@@ -3489,13 +3489,13 @@ class Admin_Interface extends Admin_UI
3489
  }
3490
  ?>
3491
  <label><input
3492
- name="<?php echo $name_attribute; ?>"
3493
  id="<?php echo esc_attr( $id_attribute ); ?>"
3494
  type="text"
3495
  style="<?php echo esc_attr( $text_field['css'] ); ?>"
3496
  value="<?php echo esc_attr( $option_value ); ?>"
3497
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $text_field['class'] ); ?>"
3498
- /> <span><?php echo $text_field['name']; ?></span></label>
3499
  <?php
3500
  }
3501
  ?>
@@ -3513,13 +3513,13 @@ class Admin_Interface extends Admin_UI
3513
 
3514
  ?><tr valign="top">
3515
  <th scope="row" class="titledesc">
3516
- <?php echo $tip; ?>
3517
- <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo $value['name']; ?></label>
3518
  </th>
3519
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3520
  <input
3521
  readonly="readonly"
3522
- name="<?php echo $name_attribute; ?>"
3523
  id="<?php echo esc_attr( $id_attribute ); ?>"
3524
  type="text"
3525
  value="<?php echo esc_attr( $option_value ); ?>"
@@ -3528,7 +3528,7 @@ class Admin_Interface extends Admin_UI
3528
  <?php if ( ! empty( $value['time_min'] ) ) { ?>data-time_min="<?php echo esc_attr( $value['time_min'] ); ?>"<?php } ?>
3529
  <?php if ( ! empty( $value['time_max'] ) ) { ?>data-time_max="<?php echo esc_attr( $value['time_max'] ); ?>"<?php } ?>
3530
  <?php if ( ! empty( $value['time_allow'] ) ) { ?>data-time_max="<?php echo esc_attr( $value['time_allow'] ); ?>"<?php } ?>
3531
- /> <?php echo $description; ?>
3532
  </td>
3533
  </tr><?php
3534
 
@@ -3624,10 +3624,10 @@ class Admin_Interface extends Admin_UI
3624
  </div> <!-- Close Panel Row -->
3625
  <?php do_action( $this->plugin_name . '-' . trim( $form_key ) . '_settings_end' ); ?>
3626
  <p class="submit">
3627
- <input type="submit" value="<?php _e('Save changes', 'a3-lazy-load' ); ?>" class="button button-primary" name="bt_save_settings" />
3628
- <input type="submit" name="bt_reset_settings" class="button" value="<?php _e('Reset Settings', 'a3-lazy-load' ); ?>" />
3629
- <input type="hidden" name="form_name_action" value="<?php echo $form_key; ?>" />
3630
- <input type="hidden" class="last_tab" name="subtab" value="#<?php echo $current_subtab; ?>" />
3631
  </p>
3632
 
3633
  </form>
@@ -3713,7 +3713,7 @@ class Admin_Interface extends Admin_UI
3713
  // open box handle
3714
  echo '<div data-form-key="custom-boxes" data-box-id="'. esc_attr( $heading_box_id ) .'" class="a3rev_panel_box_handle" >' . "\n\n";
3715
 
3716
- echo ( ! empty( $options['name'] ) ) ? '<h3 class="a3-plugin-ui-panel-box '. $toggle_box_class . ' ' . $opened_class . '">'. $options['name'] .' '. $view_doc .'</h3>' : '';
3717
 
3718
  if ( stristr( $options['class'], 'pro_feature_fields' ) !== false && ! empty( $options['id'] ) ) $this->upgrade_top_message( true, sanitize_title( $options['id'] ) );
3719
  elseif ( stristr( $options['class'], 'pro_feature_fields' ) !== false ) $this->upgrade_top_message( true );
@@ -3731,7 +3731,7 @@ class Admin_Interface extends Admin_UI
3731
  if ( stristr( $options['class'], 'pro_feature_fields' ) !== false && ! empty( $options['id'] ) ) $this->upgrade_top_message( true, sanitize_title( $options['id'] ) );
3732
  elseif ( stristr( $options['class'], 'pro_feature_fields' ) !== false ) $this->upgrade_top_message( true );
3733
 
3734
- echo ( ! empty( $options['name'] ) ) ? '<h3>'. $options['name'] .' '. $view_doc .'</h3>' : '';
3735
  }
3736
 
3737
  if ( ! empty( $options['desc'] ) ) {
1398
  if ( !is_array( $options ) || count( $options ) < 1 ) return '';
1399
  ?>
1400
 
1401
+ <?php echo $admin_message; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
1402
  <div class="a3rev_panel_container" style="visibility:hidden; height:0; overflow:hidden;" >
1403
  <form action="" method="post">
1404
  <?php do_action( $this->plugin_name . '-' . trim( $form_key ) . '_settings_start' ); ?>
1459
  }
1460
 
1461
  if ( $description && in_array( $value['type'], array( 'manual_check_version', 'ajax_submit', 'ajax_multi_submit', 'textarea', 'radio', 'onoff_radio', 'typography', 'border', 'border_styles', 'array_textfields', 'wp_editor', 'upload' ) ) ) {
1462
+ $description = '<div class="desc" style="margin-bottom:5px;">' . wptexturize( $description ) . '</div>';
1463
  } elseif ( $description ) {
1464
+ $description = '<span class="description" style="margin-left:5px;">' . wptexturize( $description ) . '</span>';
1465
  }
1466
 
1467
  /**
1554
 
1555
  if ( $tip && in_array( $value['type'], array( 'checkbox' ) ) ) {
1556
 
1557
+ $tip = '<p class="description">' . esc_html( $tip ) . '</p>';
1558
 
1559
  } elseif ( $tip ) {
1560
 
1813
  // open box handle
1814
  echo '<div data-form-key="'. esc_attr( trim( $form_key ) ) .'" data-box-id="'. esc_attr( $heading_box_id ) .'" class="a3rev_panel_box_handle ' . $box_handle_class .'" >' . "\n\n";
1815
 
1816
+ echo ( ! empty( $value['name'] ) ) ? '<h3 class="a3-plugin-ui-panel-box '. $toggle_box_class . ' ' . $opened_class . '">'. esc_html( $value['name'] ) .' '. wptexturize( $view_doc ) .'</h3>' : '';
1817
 
1818
  if ( stristr( $value['class'], 'pro_feature_fields' ) !== false && ! empty( $value['id'] ) ) $this->upgrade_top_message( true, sanitize_title( $value['id'] ) );
1819
  elseif ( stristr( $value['class'], 'pro_feature_fields' ) !== false ) $this->upgrade_top_message( true );
1839
  if ( stristr( $value['class'], 'pro_feature_fields' ) !== false && ! empty( $value['id'] ) ) $this->upgrade_top_message( true, sanitize_title( $value['id'] ) );
1840
  elseif ( stristr( $value['class'], 'pro_feature_fields' ) !== false ) $this->upgrade_top_message( true );
1841
 
1842
+ echo ( ! empty( $value['name'] ) ) ? '<h3>'. esc_html( $value['name'] ) .' '. wptexturize( $view_doc ) .'</h3>' : '';
1843
  }
1844
 
1845
  if ( ! empty( $value['desc'] ) ) {
1865
 
1866
  ?><tr valign="top">
1867
  <th scope="row" class="titledesc">
1868
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
1869
  <label for="<?php echo esc_attr( $this->google_api_key_option ); ?>"><?php echo __( 'Google Fonts API', 'a3-lazy-load' ); ?></label>
1870
  </th>
1871
  <td class="forminp forminp-onoff_checkbox forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
1900
  value="<?php echo esc_attr( $google_api_key ); ?>"
1901
  class="a3rev-ui-text a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
1902
  placeholder="<?php echo __( 'Google Fonts API Key', 'a3-lazy-load' ); ?>"
1903
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
1904
  />
1905
  <p class="a3rev-ui-google-valid-key-message"><?php echo __( 'Your Google API Key is valid and automatic font updates are enabled.', 'a3-lazy-load' ); ?></p>
1906
  <p class="a3rev-ui-google-unvalid-key-message"><?php echo __( 'Please enter a valid Google API Key.', 'a3-lazy-load' ); ?></p>
1921
 
1922
  ?><tr valign="top">
1923
  <th scope="row" class="titledesc">
1924
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
1925
  <label for="<?php echo esc_attr( $this->google_map_api_key_option ); ?>"><?php echo __( 'Google Maps API', 'a3-lazy-load' ); ?></label>
1926
  </th>
1927
  <td class="forminp forminp-onoff_checkbox forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
1956
  value="<?php echo esc_attr( $google_map_api_key ); ?>"
1957
  class="a3rev-ui-text a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
1958
  placeholder="<?php echo __( 'Google Map API Key', 'a3-lazy-load' ); ?>"
1959
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
1960
  />
1961
  <p class="a3rev-ui-google-valid-key-message"><?php echo __( 'Your Google API Key is valid and automatic font updates are enabled.', 'a3-lazy-load' ); ?></p>
1962
  <p class="a3rev-ui-google-unvalid-key-message"><?php echo __( 'Please enter a valid Google API Key.', 'a3-lazy-load' ); ?></p>
2007
  $submit_data = json_encode( $value['submit_data'] );
2008
 
2009
  ?><tr valign="top">
2010
+ <th scope="row" class="titledesc"><?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?><?php echo esc_html( $value['name'] ); ?></th>
2011
  <td class="forminp">
2012
 
2013
  <div class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-control">
2014
 
2015
  <button
2016
+ name="<?php echo $name_attribute; // XSS ok ?>"
2017
  id="<?php echo esc_attr( $id_attribute ); ?>"
2018
  data-submit_data="<?php echo esc_attr( $submit_data ); ?>"
2019
  type="button"
2020
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-button <?php echo esc_attr( $value['class'] ); ?>"
2021
  style="<?php echo esc_attr( $value['css'] ); ?>"
2022
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2023
+ ><?php echo esc_html( $button_name ); ?></button>
2024
+ <span class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-successed"><?php echo esc_html( $successed_text ); ?></span>
2025
+ <span class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-errors"><?php echo esc_html( $errors_text ); ?></span>
2026
 
2027
  <!-- Progress Bar -->
2028
  <div class="a3rev-ui-progress-bar-wrap">
2029
  <div class="a3rev-ui-progress-inner"></div>
2030
+ <div class="a3rev-ui-progressing-text"><?php echo esc_html( $progressing_text ); ?></div>
2031
+ <div class="a3rev-ui-completed-text"><?php echo esc_html( $completed_text ); ?></div>
2032
  </div>
2033
 
2034
  </div>
2035
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2036
  </td>
2037
  </tr><?php
2038
 
2080
  $multi_ajax = json_encode( $multi_ajax );
2081
 
2082
  ?><tr valign="top">
2083
+ <th scope="row" class="titledesc"><?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?><?php echo esc_html( $value['name'] ); ?></th>
2084
  <td class="forminp">
2085
 
2086
  <div class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-control">
2087
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2088
  <button
2089
  data-resubmit="<?php echo $resubmit ? 1 : 0 ; ?>"
2090
+ name="<?php echo $name_attribute; // XSS ok ?>"
2091
  id="<?php echo esc_attr( $id_attribute ); ?>"
2092
  data-multi_ajax="<?php echo esc_attr( $multi_ajax ); ?>"
2093
  type="button"
2094
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-button <?php echo esc_attr( $value['class'] ); ?>"
2095
  style="<?php echo esc_attr( $value['css'] ); ?>"
2096
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2097
  <?php if ( ! empty( $confirm_message ) ) { ?>
2098
  data-confirm_message="<?php echo esc_attr( $confirm_message ); ?>"
2099
  <?php } ?>
2100
+ ><?php echo esc_html( $button_name ); ?></button>
2101
+ <span class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-successed"><?php echo esc_html( $successed_text ); ?></span>
2102
+ <span class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-errors"><?php echo esc_html( $errors_text ); ?></span>
2103
 
2104
  <!-- Progress Bar -->
2105
  <?php if ( ! empty( $notice ) ) { ?>
2106
+ <div class="a3rev-ui-progress-notice"><?php echo esc_html( $notice ); ?></div>
2107
  <?php } ?>
2108
  <div class="a3rev-ui-progress-bar-wrap">
2109
+ <div class="a3rev-ui-progress-inner" data-current="<?php echo esc_attr( $multi_current_items ); ?>" data-total="<?php echo esc_attr( $multi_total_items ); ?>" ></div>
2110
+ <div class="a3rev-ui-progressing-text"><?php echo esc_html( $progressing_text ); ?></div>
2111
+ <div class="a3rev-ui-completed-text"><?php echo esc_html( $completed_text ); ?></div>
2112
  </div>
2113
  <div style="clear: both;"></div>
2114
 
2151
  <div class="a3rev-ui-pie-shadow"></div>
2152
  </div>
2153
  <div class="a3rev-ui-statistic-text">
2154
+ <span class="a3rev-ui-statistic-current-item" data-current="<?php echo esc_attr( $current_items ); ?>" ><?php echo esc_html( $current_items ); ?></span>
2155
  <span class="a3rev-ui-statistic-separate">/</span>
2156
+ <span class="a3rev-ui-statistic-total-item"><?php echo esc_html( $total_items ); ?></span>
2157
  <br />
2158
+ <span class="a3rev-ui-statistic-item-name"><?php echo esc_html( $single_submit['item_name'] ); ?></span>
2159
  </div>
2160
  </div>
2161
  <?php
2178
 
2179
  ?><tr valign="top">
2180
  <th scope="row" class="titledesc">
2181
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2182
  <label for="<?php echo esc_attr( $this->toggle_box_open_option ); ?>"><?php echo __( 'Open Box Display', 'a3-lazy-load' ); ?></label>
2183
  </th>
2184
  <td class="forminp forminp-onoff_checkbox forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2191
  type="checkbox"
2192
  value="1"
2193
  <?php checked( $option_value, 1 ); ?>
2194
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2195
  /> <span class="description" style="margin-left:5px;"><?php echo __( 'ON and each admin panel setting box OPEN | CLOSED position are saved each time changes are SAVED.', 'a3-lazy-load' ); ?></span>
2196
  </td>
2197
  </tr><?php
2207
 
2208
  ?><tr valign="top">
2209
  <th scope="row" class="titledesc">
2210
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2211
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2212
  </th>
2213
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2214
  <input
2215
+ name="<?php echo $name_attribute; // XSS ok ?>"
2216
  id="<?php echo esc_attr( $id_attribute ); ?>"
2217
  type="<?php echo esc_attr( $type ); ?>"
2218
  style="<?php echo esc_attr( $value['css'] ); ?>"
2219
  value="<?php echo esc_attr( $option_value ); ?>"
2220
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
2221
  placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
2222
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2223
+ /> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2224
  </td>
2225
  </tr><?php
2226
  break;
2234
 
2235
  ?><tr valign="top">
2236
  <th scope="row" class="titledesc">
2237
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2238
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2239
  </th>
2240
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2241
  <input
2242
+ name="<?php echo $name_attribute; // XSS ok ?>"
2243
  id="<?php echo esc_attr( $id_attribute ); ?>"
2244
  type="text"
2245
  value="<?php echo esc_attr( $option_value ); ?>"
2246
  class="a3rev-color-picker"
2247
+ <?php echo $default_color // XSS ok; ?>
2248
+ /> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2249
  </td>
2250
  </tr><?php
2251
 
2265
 
2266
  ?><tr valign="top">
2267
  <th scope="row" class="titledesc">
2268
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2269
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2270
  </th>
2271
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2272
  <input
2278
  type="checkbox"
2279
  value="1"
2280
  <?php checked( 1, $enable ); ?>
2281
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2282
+ /> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2283
  <div style="clear:both;"></div>
2284
  <div class="a3rev-ui-bg_color-enable-container">
2285
  <input
2288
  type="text"
2289
  value="<?php echo esc_attr( $color ); ?>"
2290
  class="a3rev-color-picker"
2291
+ <?php echo $default_color; // XSS ok ?>
2292
  />
2293
  </div>
2294
  </td>
2301
 
2302
  ?><tr valign="top">
2303
  <th scope="row" class="titledesc">
2304
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2305
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2306
  </th>
2307
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2308
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2309
 
2310
  <textarea
2311
+ name="<?php echo $name_attribute; // XSS ok ?>"
2312
  id="<?php echo esc_attr( $id_attribute ); ?>"
2313
  style="<?php echo esc_attr( $value['css'] ); ?>"
2314
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
2315
  placeholder="<?php echo esc_attr( $value['placeholder'] ); ?>"
2316
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2317
  ><?php echo esc_textarea( $option_value ); ?></textarea>
2318
  </td>
2319
  </tr><?php
2337
 
2338
  ?><tr valign="top">
2339
  <th scope="row" class="titledesc">
2340
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2341
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2342
  </th>
2343
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2344
  <select
2345
+ name="<?php echo $name_attribute; // XSS ok ?><?php if ( $value['type'] == 'multiselect' ) echo '[]'; ?>"
2346
  id="<?php echo esc_attr( $id_attribute ); ?>"
2347
  style="<?php echo esc_attr( $value['css'] ); ?>"
2348
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
2349
  data-placeholder="<?php echo esc_html( $value['placeholder'] ); ?>"
2350
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2351
  <?php if ( $value['type'] == 'multiselect' ) echo 'multiple="multiple"'; ?>
2352
  <?php if ( $is_ajax ) {
2353
  echo 'options_url="'.esc_url( $value['options_url'] ).'"';
2371
  else
2372
  selected( $option_value, $sub_key );
2373
 
2374
+ ?>><?php echo esc_html( $sub_val ); ?></option>
2375
  <?php
2376
  }
2377
  ?>
2386
  else
2387
  selected( $option_value, $key );
2388
 
2389
+ ?>><?php echo esc_html( $val ); ?></option>
2390
  <?php
2391
  }
2392
  }
2393
  }
2394
  ?>
2395
+ </select> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2396
  </td>
2397
  </tr><?php
2398
  break;
2404
 
2405
  ?><tr valign="top">
2406
  <th scope="row" class="titledesc">
2407
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2408
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2409
  </th>
2410
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2411
  <fieldset>
2412
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2413
  <ul>
2414
  <?php
2415
  if ( is_array( $value['options'] ) && count( $value['options'] ) > 0 ) {
2417
  ?>
2418
  <li>
2419
  <label><input
2420
+ name="<?php echo $name_attribute; // XSS ok ?>"
2421
  value="<?php echo esc_attr( $val ); ?>"
2422
  type="radio"
2423
  style="<?php echo esc_attr( $value['css'] ); ?>"
2424
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $value['class'] ); ?>"
2425
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2426
  <?php checked( $val, $option_value ); ?>
2427
+ /> <span class="description" style="margin-left:5px;"><?php echo esc_html( $text ); ?></span></label>
2428
  </li>
2429
  <?php
2430
  }
2443
 
2444
  ?><tr valign="top">
2445
  <th scope="row" class="titledesc">
2446
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2447
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2448
  </th>
2449
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2450
  <fieldset>
2451
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2452
  <ul>
2453
  <?php
2454
  if ( is_array( $value['onoff_options'] ) && count( $value['onoff_options'] ) > 0 ) {
2460
  ?>
2461
  <li>
2462
  <input
2463
+ name="<?php echo $name_attribute; // XSS ok ?>"
2464
  <?php if ( $i_option['val'] == $option_value ) echo ' checkbox-disabled="true" ' ; ?>
2465
  class="a3rev-ui-onoff_radio <?php echo esc_attr( $value['class'] ); ?>"
2466
  checked_label="<?php echo esc_html( $i_option['checked_label'] ); ?>"
2468
  type="radio"
2469
  value="<?php echo esc_attr( stripslashes( $i_option['val'] ) ); ?>"
2470
  <?php checked( esc_attr( stripslashes( $i_option['val'] ) ), $option_value ); ?>
2471
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2472
+ /> <span class="description" style="margin-left:5px;"><?php echo wptexturize( $i_option['text'] ); ?></span>
2473
  </li>
2474
  <?php
2475
  }
2496
  if ( $value['show_if_checked'] == 'option' ) echo 'show_options_if_checked';
2497
  ?>">
2498
  <th scope="row" class="titledesc">
2499
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2500
  </th>
2501
  <td class="forminp forminp-checkbox">
2502
  <fieldset>
2512
  }
2513
 
2514
  ?>
2515
+ <legend class="screen-reader-text"><span><?php echo esc_html( $value['name'] ); ?></span></legend>
2516
 
2517
  <label for="<?php echo esc_attr( $id_attribute ); ?>">
2518
  <input
2519
+ name="<?php echo $name_attribute; // XSS ok ?>"
2520
  id="<?php echo esc_attr( $id_attribute ); ?>"
2521
  type="checkbox"
2522
  value="<?php echo esc_attr( stripslashes( $value['checked_value'] ) ); ?>"
2523
  <?php checked( $option_value, esc_attr( stripslashes( $value['checked_value'] ) ) ); ?>
2524
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2525
+ /> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?></label> <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2526
  <?php
2527
 
2528
  if ( ! isset( $value['checkboxgroup'] ) || ( isset( $value['checkboxgroup'] ) && $value['checkboxgroup'] == 'end' ) ) {
2548
 
2549
  ?><tr valign="top">
2550
  <th scope="row" class="titledesc">
2551
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2552
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2553
  </th>
2554
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2555
  <input
2556
+ name="<?php echo $name_attribute; // XSS ok ?>"
2557
  id="<?php echo esc_attr( $id_attribute ); ?>"
2558
  class="a3rev-ui-onoff_checkbox <?php echo esc_attr( $value['class'] ); ?>"
2559
  checked_label="<?php echo esc_html( $value['checked_label'] ); ?>"
2561
  type="checkbox"
2562
  value="<?php echo esc_attr( stripslashes( $value['checked_value'] ) ); ?>"
2563
  <?php checked( $option_value, esc_attr( stripslashes( $value['checked_value'] ) ) ); ?>
2564
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2565
+ /> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2566
  </td>
2567
  </tr><?php
2568
 
2577
 
2578
  ?><tr valign="top">
2579
  <th scope="row" class="titledesc">
2580
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2581
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
2582
  </th>
2583
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2584
  <input
2585
+ name="<?php echo $name_attribute; // XSS ok ?>"
2586
  id="<?php echo esc_attr( $id_attribute ); ?>"
2587
  class="a3rev-ui-onoff_checkbox <?php echo esc_attr( $value['class'] ); ?>"
2588
  checked_label="<?php echo esc_html( $value['checked_label'] ); ?>"
2590
  type="checkbox"
2591
  value="<?php echo esc_attr( stripslashes( $value['checked_value'] ) ); ?>"
2592
  <?php checked( $option_value, esc_attr( stripslashes( $value['checked_value'] ) ) ); ?>
2593
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2594
+ /> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2595
  </td>
2596
  </tr><?php
2597
 
2605
  $crop = checked( 1, $option_value['crop'], false );
2606
 
2607
  ?><tr valign="top">
2608
+ <th scope="row" class="titledesc"><?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?><?php echo esc_html( $value['name'] ); ?></th>
2609
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
2610
 
2611
+ <label><?php _e( 'Width', 'a3-lazy-load' ); ?> <input name="<?php echo $name_attribute; ?>[width]" id="<?php echo esc_attr( $id_attribute ); ?>-width" type="text" class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-width" value="<?php echo esc_attr( $width ); ?>" /></label>
2612
 
2613
+ <label><?php _e( 'Height', 'a3-lazy-load' ); ?> <input name="<?php echo $name_attribute; ?>[height]" id="<?php echo esc_attr( $id_attribute ); ?>-height" type="text" class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-height" value="<?php echo esc_attr( $height ); ?>" /></label>
2614
 
2615
  <label><?php _e( 'Hard Crop', 'a3-lazy-load' ); ?> <input name="<?php echo $name_attribute; ?>[crop]" id="<?php echo esc_attr( $id_attribute ); ?>-crop" type="checkbox" class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-crop" <?php echo $crop; ?> /></label>
2616
 
2640
  $args = wp_parse_args( $value['args'], $args );
2641
 
2642
  ?><tr valign="top">
2643
+ <th scope="row" class="titledesc"><?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?><?php echo esc_html( $value['name'] ); ?></th>
2644
  <td class="forminp">
2645
+ <?php echo str_replace(' id=', " data-placeholder='" . esc_html( $value['placeholder'] ) . "' style='" . esc_attr( $value['css'] ) . "' class='" . esc_attr( $value['class'] ) . "' id=", wp_dropdown_pages( $args ) ); ?> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2646
  </td>
2647
  </tr><?php
2648
  break;
2663
  $color = $option_value['color'];
2664
 
2665
  ?><tr valign="top">
2666
+ <th scope="row" class="titledesc"><?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?><?php echo esc_html( $value['name'] ); ?></th>
2667
  <td class="forminp">
2668
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2669
  <div class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-control">
2670
  <!-- Font Size -->
2671
  <select
2678
  ?>
2679
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
2680
  selected( $size, $i.'px' );
2681
+ ?>><?php echo esc_html( $i ); ?>px</option>
2682
  <?php
2683
  }
2684
  ?>
2694
  ?>
2695
  <option value="<?php echo esc_attr( $i ); ?>em" <?php
2696
  selected( $line_height, $i.'em' );
2697
+ ?>><?php echo esc_html( $i ); ?>em</option>
2698
  <?php
2699
  }
2700
  ?>
2711
  ?>
2712
  <option value="<?php echo esc_attr( $val ); ?>" <?php
2713
  selected( esc_attr( $val ), esc_attr( $face ) );
2714
+ ?>><?php echo esc_html( $text ); ?></option>
2715
  <?php
2716
  }
2717
  ?>
2722
  ?>
2723
  <option value="<?php echo esc_attr( $font['name'] ); ?>" <?php
2724
  selected( esc_attr( $font['name'] ), esc_attr( $face ) );
2725
+ ?>><?php echo esc_html( $font['name'] ); ?></option>
2726
  <?php
2727
  }
2728
  ?>
2740
  ?>
2741
  <option value="<?php echo esc_attr( $val ); ?>" <?php
2742
  selected( esc_attr( $val ), esc_attr( $style ) );
2743
+ ?>><?php echo esc_html( $text ); ?></option>
2744
  <?php
2745
  }
2746
  ?>
2753
  type="text"
2754
  value="<?php echo esc_attr( $color ); ?>"
2755
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>-color a3rev-color-picker"
2756
+ <?php echo $default_color; // XSS ok ?>
2757
  />
2758
 
2759
  <!-- Preview Button -->
2760
+ <div class="a3rev-ui-typography-preview"><a href="#" class="a3rev-ui-typography-preview-button button submit-button" title="<?php _e( 'Preview your customized typography settings', 'a3-lazy-load'); ?>"><span>&nbsp;</span></a></div>
2761
 
2762
  </div>
2763
 
2817
  $bottom_right_corner = intval( $bottom_right_corner );
2818
 
2819
  ?><tr valign="top">
2820
+ <th scope="row" class="titledesc"><?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?><?php echo esc_html( $value['name'] ); ?></th>
2821
  <td class="forminp forminp-border_corner">
2822
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2823
  <div class="a3rev-ui-settings-control">
2824
  <!-- Border Width -->
2825
  <select
2832
  ?>
2833
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
2834
  selected( $width, $i.'px' );
2835
+ ?>><?php echo esc_html( $i ); ?>px</option>
2836
  <?php
2837
  }
2838
  ?>
2849
  ?>
2850
  <option value="<?php echo esc_attr( $val ); ?>" <?php
2851
  selected( esc_attr( $val ), esc_attr( $style ) );
2852
+ ?>><?php echo esc_html( $text ); ?></option>
2853
  <?php
2854
  }
2855
  ?>
2862
  type="text"
2863
  value="<?php echo esc_attr( $color ); ?>"
2864
  class="a3rev-ui-border_styles-color a3rev-color-picker"
2865
+ <?php echo $default_color; // XSS ok ?>
2866
  />
2867
 
2868
  <!-- Preview Button -->
2880
  type="checkbox"
2881
  value="rounded"
2882
  <?php checked( 'rounded', $corner ); ?>
2883
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
2884
  />
2885
 
2886
  <!-- Border Rounded Value -->
2984
  $color = $option_value['color'];
2985
 
2986
  ?><tr valign="top">
2987
+ <th scope="row" class="titledesc"><?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?><?php echo esc_html( $value['name'] ); ?></th>
2988
  <td class="forminp">
2989
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
2990
  <div class="a3rev-ui-settings-control">
2991
  <!-- Border Width -->
2992
  <select
2999
  ?>
3000
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3001
  selected( $width, $i.'px' );
3002
+ ?>><?php echo esc_html( $i ); ?>px</option>
3003
  <?php
3004
  }
3005
  ?>
3016
  ?>
3017
  <option value="<?php echo esc_attr( $val ); ?>" <?php
3018
  selected( esc_attr( $val ), esc_attr( $style ) );
3019
+ ?>><?php echo esc_html( $text ); ?></option>
3020
  <?php
3021
  }
3022
  ?>
3029
  type="text"
3030
  value="<?php echo esc_attr( $color ); ?>"
3031
  class="a3rev-ui-border_styles-color a3rev-color-picker"
3032
+ <?php echo $default_color; // XSS ok ?>
3033
  />
3034
 
3035
  <!-- Preview Button -->
3083
  $bottom_right_corner = intval( $bottom_right_corner );
3084
 
3085
  ?><tr valign="top">
3086
+ <th scope="row" class="titledesc"><?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?><?php echo esc_html( $value['name'] ); ?></th>
3087
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3088
  <div class="a3rev-ui-settings-control">
3089
  <!-- Border Corner : Rounded or Square -->
3096
  type="checkbox"
3097
  value="rounded"
3098
  <?php checked( 'rounded', $corner ); ?>
3099
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
3100
  />
3101
 
3102
  <!-- Preview Button -->
3103
  <div class="a3rev-ui-settings-preview"><a href="#" class="a3rev-ui-border-preview-button a3rev-ui-settings-preview-button button submit-button" title="<?php _e( 'Preview your customized border settings', 'a3-lazy-load' ); ?>"><span>&nbsp;</span></a></div>
3104
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3105
  <!-- Border Rounded Value -->
3106
  <div class="a3rev-ui-border-corner-value-container">
3107
  <div class="a3rev-ui-border_corner-top_left">
3209
  $inset = $option_value['inset'];
3210
 
3211
  ?><tr valign="top">
3212
+ <th scope="row" class="titledesc"><?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?><?php echo esc_html( $value['name'] ); ?></th>
3213
  <td class="forminp forminp-box_shadow">
3214
  <input
3215
  name="<?php echo $name_attribute; ?>[enable]"
3220
  type="checkbox"
3221
  value="1"
3222
  <?php checked( 1, $enable ); ?>
3223
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
3224
  />
3225
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3226
  <div style="clear:both;"></div>
3227
  <div class="a3rev-ui-box_shadow-enable-container">
3228
  <div class="a3rev-ui-settings-control">
3238
  ?>
3239
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3240
  selected( $h_shadow, $i.'px' );
3241
+ ?>><?php echo esc_html( $i ); ?>px</option>
3242
  <?php
3243
  }
3244
  ?>
3256
  ?>
3257
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3258
  selected( $v_shadow, $i.'px' );
3259
+ ?>><?php echo esc_html( $i ); ?>px</option>
3260
  <?php
3261
  }
3262
  ?>
3274
  ?>
3275
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3276
  selected( $blur, $i.'px' );
3277
+ ?>><?php echo esc_html( $i ); ?>px</option>
3278
  <?php
3279
  }
3280
  ?>
3292
  ?>
3293
  <option value="<?php echo esc_attr( $i ); ?>px" <?php
3294
  selected( $spread, $i.'px' );
3295
+ ?>><?php echo esc_html( $i ); ?>px</option>
3296
  <?php
3297
  }
3298
  ?>
3308
  type="checkbox"
3309
  value="inset"
3310
  <?php checked( 'inset', $inset ); ?>
3311
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
3312
  />
3313
 
3314
  <!-- Box Shadow Color -->
3318
  type="text"
3319
  value="<?php echo esc_attr( $color ); ?>"
3320
  class="a3rev-ui-box_shadow-color a3rev-color-picker"
3321
+ <?php echo $default_color; // XSS ok ?>
3322
  />
3323
 
3324
  <!-- Preview Button -->
3325
+ <div class="a3rev-ui-settings-preview"><a href="#" class="a3rev-ui-box_shadow-preview-button a3rev-ui-settings-preview-button button submit-button" title="<?php _e( 'Preview your customized box shadow settings', 'a3-lazy-load'); ?>"><span>&nbsp;</span></a></div>
3326
  </div>
3327
  <div style="clear:both;"></div>
3328
  </div>
3342
 
3343
  ?><tr valign="top">
3344
  <th scope="row" class="titledesc">
3345
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3346
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
3347
  </th>
3348
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3349
  <div class="a3rev-ui-slide-container">
3353
  <div class="a3rev-ui-slide-result-container">
3354
  <input
3355
  readonly="readonly"
3356
+ name="<?php echo $name_attribute; // XSS ok ?>"
3357
  id="<?php echo esc_attr( $id_attribute ); ?>"
3358
  type="text"
3359
  value="<?php echo esc_attr( $option_value ); ?>"
3360
  class="a3rev-ui-slider"
3361
+ <?php echo implode( ' ', $custom_attributes ); // XSS ok ?>
3362
+ /> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3363
  </div>
3364
  </div>
3365
  </td>
3386
 
3387
  ?><tr valign="top">
3388
  <th scope="row" class="titledesc">
3389
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3390
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
3391
  </th>
3392
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3393
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3394
  <?php echo $GLOBALS[$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 );?>
3395
  </td>
3396
  </tr><?php
3404
 
3405
  ?><tr valign="top">
3406
  <th scope="row" class="titledesc">
3407
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3408
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
3409
  </th>
3410
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3411
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3412
  <?php remove_all_filters('mce_external_plugins'); ?>
3413
  <?php wp_editor( $option_value,
3414
  $id_attribute,
3428
 
3429
  ?><tr valign="top">
3430
  <th scope="row" class="titledesc">
3431
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3432
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
3433
  </th>
3434
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3435
+ <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3436
  <div class="a3rev-ui-array_textfields-container">
3437
  <?php
3438
  foreach ( $value['ids'] as $text_field ) {
3489
  }
3490
  ?>
3491
  <label><input
3492
+ name="<?php echo $name_attribute; // XSS ok ?>"
3493
  id="<?php echo esc_attr( $id_attribute ); ?>"
3494
  type="text"
3495
  style="<?php echo esc_attr( $text_field['css'] ); ?>"
3496
  value="<?php echo esc_attr( $option_value ); ?>"
3497
  class="a3rev-ui-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?> <?php echo esc_attr( $text_field['class'] ); ?>"
3498
+ /> <span><?php echo esc_html( $text_field['name'] ); ?></span></label>
3499
  <?php
3500
  }
3501
  ?>
3513
 
3514
  ?><tr valign="top">
3515
  <th scope="row" class="titledesc">
3516
+ <?php echo $tip; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3517
+ <label for="<?php echo esc_attr( $id_attribute ); ?>"><?php echo esc_html( $value['name'] ); ?></label>
3518
  </th>
3519
  <td class="forminp forminp-<?php echo esc_attr( sanitize_title( $value['type'] ) ); ?>">
3520
  <input
3521
  readonly="readonly"
3522
+ name="<?php echo $name_attribute; // XSS ok ?>"
3523
  id="<?php echo esc_attr( $id_attribute ); ?>"
3524
  type="text"
3525
  value="<?php echo esc_attr( $option_value ); ?>"
3528
  <?php if ( ! empty( $value['time_min'] ) ) { ?>data-time_min="<?php echo esc_attr( $value['time_min'] ); ?>"<?php } ?>
3529
  <?php if ( ! empty( $value['time_max'] ) ) { ?>data-time_max="<?php echo esc_attr( $value['time_max'] ); ?>"<?php } ?>
3530
  <?php if ( ! empty( $value['time_allow'] ) ) { ?>data-time_max="<?php echo esc_attr( $value['time_allow'] ); ?>"<?php } ?>
3531
+ /> <?php echo $description; /* phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped */ ?>
3532
  </td>
3533
  </tr><?php
3534
 
3624
  </div> <!-- Close Panel Row -->
3625
  <?php do_action( $this->plugin_name . '-' . trim( $form_key ) . '_settings_end' ); ?>
3626
  <p class="submit">
3627
+ <input type="submit" value="<?php _e('Save changes', 'a3-lazy-load'); ?>" class="button button-primary" name="bt_save_settings" />
3628
+ <input type="submit" name="bt_reset_settings" class="button" value="<?php _e('Reset Settings', 'a3-lazy-load'); ?>" />
3629
+ <input type="hidden" name="form_name_action" value="<?php echo esc_attr( $form_key ); ?>" />
3630
+ <input type="hidden" class="last_tab" name="subtab" value="#<?php echo esc_attr( $current_subtab ); ?>" />
3631
  </p>
3632
 
3633
  </form>
3713
  // open box handle
3714
  echo '<div data-form-key="custom-boxes" data-box-id="'. esc_attr( $heading_box_id ) .'" class="a3rev_panel_box_handle" >' . "\n\n";
3715
 
3716
+ echo ( ! empty( $options['name'] ) ) ? '<h3 class="a3-plugin-ui-panel-box '. $toggle_box_class . ' ' . $opened_class . '">'. esc_html( $options['name'] ) .' '. wptexturize( $view_doc ) .'</h3>' : '';
3717
 
3718
  if ( stristr( $options['class'], 'pro_feature_fields' ) !== false && ! empty( $options['id'] ) ) $this->upgrade_top_message( true, sanitize_title( $options['id'] ) );
3719
  elseif ( stristr( $options['class'], 'pro_feature_fields' ) !== false ) $this->upgrade_top_message( true );
3731
  if ( stristr( $options['class'], 'pro_feature_fields' ) !== false && ! empty( $options['id'] ) ) $this->upgrade_top_message( true, sanitize_title( $options['id'] ) );
3732
  elseif ( stristr( $options['class'], 'pro_feature_fields' ) !== false ) $this->upgrade_top_message( true );
3733
 
3734
+ echo ( ! empty( $options['name'] ) ) ? '<h3>'. esc_html( $options['name'] ) .' '. wptexturize( $view_doc ) .'</h3>' : '';
3735
  }
3736
 
3737
  if ( ! empty( $options['desc'] ) ) {
admin/admin-ui.php CHANGED
@@ -33,7 +33,7 @@ class Admin_UI
33
  * You must change to correct plugin name that you are working
34
  */
35
 
36
- public $framework_version = '2.4.0';
37
  public $plugin_name = A3_LAZY_LOAD_KEY;
38
  public $plugin_path = A3_LAZY_LOAD_NAME;
39
  public $google_api_key_option = '';
33
  * You must change to correct plugin name that you are working
34
  */
35
 
36
+ public $framework_version = '2.4.1';
37
  public $plugin_name = A3_LAZY_LOAD_KEY;
38
  public $plugin_path = A3_LAZY_LOAD_NAME;
39
  public $google_api_key_option = '';
readme.txt CHANGED
@@ -2,8 +2,8 @@
2
  Contributors: a3rev, a3rev Software, nguyencongtuan
3
  Tags: a3 lazy load, Lazy Loading, image lazy load, lazyload
4
  Requires at least: 5.0
5
- Tested up to: 5.7.2
6
- Stable tag: 2.4.6
7
  License: GPLv3
8
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
9
 
@@ -199,6 +199,13 @@ Filter tags to add to class name of theme to exclude lazy load on images or vide
199
 
200
  == Changelog ==
201
 
 
 
 
 
 
 
 
202
  = 2.4.6 - 2021/06/08 =
203
  * This maintenance release has code tweaks to resolve conflicts with third party plugs that use data-src and data-poster attributes, plus compatibility with WordPress 5.7.2
204
  * Tweak - Check if data-src attribute exists on image tags, if so, then lazy load placeholder image for src attribute
@@ -576,6 +583,9 @@ Filter tags to add to class name of theme to exclude lazy load on images or vide
576
 
577
  == Upgrade Notice ==
578
 
 
 
 
579
  = 2.4.6 =
580
  This maintenance release has code tweaks to resolve conflicts with third party plugs that use data-src and data-poster attributes, plus compatibility with WordPress 5.7.2
581
 
2
  Contributors: a3rev, a3rev Software, nguyencongtuan
3
  Tags: a3 lazy load, Lazy Loading, image lazy load, lazyload
4
  Requires at least: 5.0
5
+ Tested up to: 5.8
6
+ Stable tag: 2.4.7
7
  License: GPLv3
8
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
9
 
199
 
200
  == Changelog ==
201
 
202
+ = 2.4.7 - 2021/07/19 =
203
+ * This maintenance release has code tweaks for WordPress 5.8 compatibility plus Security hardening.
204
+ * Tweak - Test for lazy load work correctly with new WebP extension that WordPress 5.8 support
205
+ * Tweak - Test for compatibility with WordPress 5.8
206
+ * Security - Add more variable, options and html escaping
207
+ * Security - Get variable via name instead of use extract
208
+
209
  = 2.4.6 - 2021/06/08 =
210
  * This maintenance release has code tweaks to resolve conflicts with third party plugs that use data-src and data-poster attributes, plus compatibility with WordPress 5.7.2
211
  * Tweak - Check if data-src attribute exists on image tags, if so, then lazy load placeholder image for src attribute
583
 
584
  == Upgrade Notice ==
585
 
586
+ = 2.4.7 =
587
+ This maintenance release has code tweaks for WordPress 5.8 compatibility plus Security hardening.
588
+
589
  = 2.4.6 =
590
  This maintenance release has code tweaks to resolve conflicts with third party plugs that use data-src and data-poster attributes, plus compatibility with WordPress 5.7.2
591