a3 Lazy Load - Version 1.5.0

Version Description

Feature Upgrade. 2 new features plus 1 bug fix and tweaks for full compatibility with WordPress major Version 4.4

Download this release

Release Info

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

Code changes from version 1.4.1 to 1.5.0

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: 1.4.1
6
  Author: a3 Revolution
7
  Author URI: http://www.a3rev.com/
8
  Requires at least: 3.8
9
- Tested up to: 4.3
10
  License: GPLv2 or later
11
  Copyright © 2011 a3 Revolution Software Development team
12
  a3 Revolution Software Development team
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: 1.5.0
6
  Author: a3 Revolution
7
  Author URI: http://www.a3rev.com/
8
  Requires at least: 3.8
9
+ Tested up to: 4.4
10
  License: GPLv2 or later
11
  Copyright © 2011 a3 Revolution Software Development team
12
  a3 Revolution Software Development team
admin/a3-lazy-load-admin.php CHANGED
@@ -2,7 +2,7 @@
2
  update_option('a3rev_lazy_load_plugin', 'a3_lazy_load');
3
 
4
  function a3_lazy_load_activated(){
5
- update_option('a3_lazy_load_version', '1.4.`');
6
 
7
  // Set Settings Default from Admin Init
8
  global $a3_lazy_load_admin_init;
@@ -59,6 +59,6 @@ function a3_lazy_load_upgrade_plugin() {
59
  include( A3_LAZY_LOAD_DIR. '/includes/updates/a3-lazy-load-update-1.1.0.php' );
60
  }
61
 
62
- update_option('a3_lazy_load_version', '1.4.1');
63
  }
64
  ?>
2
  update_option('a3rev_lazy_load_plugin', 'a3_lazy_load');
3
 
4
  function a3_lazy_load_activated(){
5
+ update_option('a3_lazy_load_version', '1.5.0');
6
 
7
  // Set Settings Default from Admin Init
8
  global $a3_lazy_load_admin_init;
59
  include( A3_LAZY_LOAD_DIR. '/includes/updates/a3-lazy-load-update-1.1.0.php' );
60
  }
61
 
62
+ update_option('a3_lazy_load_version', '1.5.0');
63
  }
64
  ?>
admin/admin-interface.php CHANGED
@@ -155,6 +155,47 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
155
  }
156
  update_user_meta( $user_id, $this->plugin_name . '-' . trim( $form_key ), $opened_box );
157
  break;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
158
  }
159
 
160
  }
@@ -687,6 +728,45 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
687
  // Just for Color type
688
  if ( 'color' == $value['type'] && '' == trim( $option_value ) ) {
689
  $option_value = 'transparent';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
690
  }
691
 
692
  break;
@@ -1176,10 +1256,10 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1176
  $description = $tip = '';
1177
  }
1178
 
1179
- if ( $description && in_array( $value['type'], array( 'textarea', 'radio', 'onoff_radio', 'typography', 'border', 'border_styles', 'border_corner', 'box_shadow', 'array_textfields', 'wp_editor', 'upload' ) ) ) {
1180
- $description = '<div class="desc" style="margin-bottom:5px;">' . wp_kses_post( $description ) . '</div>';
1181
  } elseif ( $description ) {
1182
- $description = '<span class="description" style="margin-left:5px;">' . wp_kses_post( $description ) . '</span>';
1183
  }
1184
 
1185
  /**
@@ -1442,7 +1522,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1442
 
1443
  if ( ! empty( $value['desc'] ) ) {
1444
  echo '<div class="a3rev_panel_box_description" >' . "\n\n";
1445
- echo wpautop( wptexturize( wp_kses_post( $value['desc'] ) ) );
1446
  echo '</div>' . "\n\n";
1447
  }
1448
 
@@ -1507,6 +1587,37 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1507
 
1508
  break;
1509
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1510
  // Toggle Box Open type
1511
  case 'onoff_toggle_box' :
1512
 
@@ -2612,6 +2723,13 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
2612
  case 'upload':
2613
 
2614
  $class = 'a3rev-ui-' . sanitize_title( $value['type'] ) . ' ' . esc_attr( $value['class'] );
 
 
 
 
 
 
 
2615
 
2616
  ?><tr valign="top">
2617
  <th scope="row" class="titledesc">
@@ -2620,7 +2738,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
2620
  </th>
2621
  <td class="forminp forminp-<?php echo sanitize_title( $value['type'] ) ?>">
2622
  <?php echo $description; ?>
2623
- <?php echo $a3_lazy_load_uploader->upload_input( $name_attribute, $id_attribute, $option_value, $value['default'], esc_html( $value['name'] ), $class, esc_attr( $value['css'] ) , '' );?>
2624
  </td>
2625
  </tr><?php
2626
 
@@ -2931,7 +3049,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
2931
 
2932
  if ( ! empty( $options['desc'] ) ) {
2933
  echo '<div class="a3rev_panel_box_description" >' . "\n\n";
2934
- echo wpautop( wptexturize( wp_kses_post( $options['desc'] ) ) );
2935
  echo '</div>' . "\n\n";
2936
  }
2937
 
155
  }
156
  update_user_meta( $user_id, $this->plugin_name . '-' . trim( $form_key ), $opened_box );
157
  break;
158
+
159
+ case 'check_new_version':
160
+ $transient_name = $_REQUEST['transient_name'];
161
+ delete_transient( $transient_name );
162
+
163
+ $new_version = '';
164
+ if ( class_exists( 'A3_Lazy_Load_Upgrade' ) ) {
165
+ $new_version = A3_Lazy_Load_Upgrade::get_version_info();
166
+ }
167
+
168
+ $version_message = $this->get_version_message();
169
+ $has_new_version = 1;
170
+ if ( '' == trim( $version_message ) ) {
171
+ $version_message = __( 'Great! You have the latest version installed.', 'a3_lazy_load' );
172
+ $has_new_version = 0;
173
+ } else {
174
+ delete_option('a3_lazy_load_clean_on_deletion');
175
+ if ( is_array( $new_version ) && 'valid' == $new_version['is_valid_key'] ) {
176
+ $current_update_plugins = get_site_transient( 'update_plugins' );
177
+ if ( isset( $current_update_plugins->response ) ) {
178
+ $plugin_name = A3_LAZY_LOAD_NAME;
179
+ if ( empty( $current_update_plugins->response[$plugin_name] ) ) {
180
+ $current_update_plugins->response[$plugin_name] = new stdClass();
181
+ }
182
+ $current_update_plugins->response[$plugin_name]->url = "http://www.a3rev.com";
183
+ $current_update_plugins->response[$plugin_name]->slug = get_option( $this->plugin_option_key );
184
+ $current_update_plugins->response[$plugin_name]->package = $new_version["url"];
185
+ $current_update_plugins->response[$plugin_name]->new_version = $new_version['version'];
186
+ $current_update_plugins->response[$plugin_name]->upgrade_notice = $new_version['upgrade_notice'];
187
+ $current_update_plugins->response[$plugin_name]->id = "0";
188
+ set_site_transient( 'update_plugins', $current_update_plugins );
189
+ }
190
+ }
191
+ }
192
+
193
+ $response_data = array(
194
+ 'has_new_version' => $has_new_version,
195
+ 'version_message' => $version_message,
196
+ );
197
+ echo json_encode( $response_data );
198
+ break;
199
  }
200
 
201
  }
728
  // Just for Color type
729
  if ( 'color' == $value['type'] && '' == trim( $option_value ) ) {
730
  $option_value = 'transparent';
731
+ } elseif ( 'upload' == $value['type'] ) {
732
+ // Uploader: Set key and value for attachment id of upload type
733
+ if ( strstr( $value['id'], '[' ) ) {
734
+ $key = key( $option_array[ $id_attribute ] );
735
+
736
+ if ( trim( $option_name ) != '' && $value['separate_option'] != false ) {
737
+ if ( isset( $_POST[ $id_attribute ][ $key . '_attachment_id' ] ) ) {
738
+ $attachment_id = $_POST[ $id_attribute ][ $key . '_attachment_id' ];
739
+ } else {
740
+ $attachment_id = 0;
741
+ }
742
+
743
+ $update_separate_options[ $id_attribute ][ $key . '_attachment_id' ] = $attachment_id;
744
+ } else {
745
+ if ( isset( $_POST[ $option_name ][ $id_attribute ][ $key . '_attachment_id' ] ) ) {
746
+ $attachment_id = $_POST[ $option_name ][ $id_attribute ][ $key . '_attachment_id' ];
747
+ } else {
748
+ $attachment_id = 0;
749
+ }
750
+
751
+ $update_options[ $id_attribute ][ $key . '_attachment_id' ] = $attachment_id;
752
+ }
753
+ } else {
754
+ if ( trim( $option_name ) != '' && $value['separate_option'] != false ) {
755
+ if ( isset( $_POST[ $id_attribute . '_attachment_id' ] ) ) {
756
+ $attachment_id = $_POST[ $id_attribute . '_attachment_id' ];
757
+ } else {
758
+ $attachment_id = 0;
759
+ }
760
+ $update_separate_options[ $id_attribute . '_attachment_id' ] = $attachment_id;
761
+ } else {
762
+ if ( isset( $_POST[ $option_name ][ $id_attribute . '_attachment_id' ] ) ) {
763
+ $attachment_id = $_POST[ $option_name ][ $id_attribute . '_attachment_id' ];
764
+ } else {
765
+ $attachment_id = 0;
766
+ }
767
+ $update_options[ $id_attribute . '_attachment_id' ] = $attachment_id;
768
+ }
769
+ }
770
  }
771
 
772
  break;
1256
  $description = $tip = '';
1257
  }
1258
 
1259
+ if ( $description && in_array( $value['type'], array( 'manual_check_version', 'textarea', 'radio', 'onoff_radio', 'typography', 'border', 'border_styles', 'border_corner', 'box_shadow', 'array_textfields', 'wp_editor', 'upload' ) ) ) {
1260
+ $description = '<div class="desc" style="margin-bottom:5px;">' . $description . '</div>';
1261
  } elseif ( $description ) {
1262
+ $description = '<span class="description" style="margin-left:5px;">' . $description . '</span>';
1263
  }
1264
 
1265
  /**
1522
 
1523
  if ( ! empty( $value['desc'] ) ) {
1524
  echo '<div class="a3rev_panel_box_description" >' . "\n\n";
1525
+ echo wpautop( wptexturize( $value['desc'] ) );
1526
  echo '</div>' . "\n\n";
1527
  }
1528
 
1587
 
1588
  break;
1589
 
1590
+ // Manual Check New Version when click on the button instead of wait for daily
1591
+ case 'manual_check_version':
1592
+ $version_message = $this->get_version_message();
1593
+ $new_version_class = '';
1594
+ if ( '' != trim( $version_message ) ) {
1595
+ $new_version_class = 'a3rev-ui-new-version-message';
1596
+ }
1597
+
1598
+ ?><tr valign="top">
1599
+ <th scope="row" class="titledesc">
1600
+ <?php echo $tip; ?>
1601
+ <label><?php echo __( 'Check New Version', 'a3_lazy_load' ); ?></label>
1602
+ </th>
1603
+ <td class="forminp forminp-manual_check_version">
1604
+ <?php echo $description; ?>
1605
+
1606
+ <input
1607
+ data-transient-name="<?php echo $this->version_transient; ?>"
1608
+ name="<?php echo $this->plugin_name . '-check-version'; ?>"
1609
+ id="<?php echo $this->plugin_name . '-check-version'; ?>"
1610
+ class="button button-primary a3rev-ui-manual_check_version"
1611
+ type="button"
1612
+ value="<?php echo __( 'Check Now', 'a3_lazy_load' ); ?>"
1613
+ /> <span class="a3rev-ui-version-checking"> </span>
1614
+ <p class="a3rev-ui-check-version-message <?php echo $new_version_class; ?>"><?php echo $version_message; ?></p>
1615
+
1616
+ </td>
1617
+ </tr><?php
1618
+
1619
+ break;
1620
+
1621
  // Toggle Box Open type
1622
  case 'onoff_toggle_box' :
1623
 
2723
  case 'upload':
2724
 
2725
  $class = 'a3rev-ui-' . sanitize_title( $value['type'] ) . ' ' . esc_attr( $value['class'] );
2726
+
2727
+ if ( strstr( $name_attribute, ']' ) ) {
2728
+ $attachment_id_name_attribute = substr_replace( $name_attribute, '_attachment_id', -1, 0 );
2729
+ } else {
2730
+ $attachment_id_name_attribute = $name_attribute.'_attachment_id';
2731
+ }
2732
+ $attachment_id = $this->settings_get_option( $attachment_id_name_attribute, 0 );
2733
 
2734
  ?><tr valign="top">
2735
  <th scope="row" class="titledesc">
2738
  </th>
2739
  <td class="forminp forminp-<?php echo sanitize_title( $value['type'] ) ?>">
2740
  <?php echo $description; ?>
2741
+ <?php echo $a3_lazy_load_uploader->upload_input( $name_attribute, $id_attribute, $option_value, $attachment_id, $value['default'], esc_html( $value['name'] ), $class, esc_attr( $value['css'] ) , '' );?>
2742
  </td>
2743
  </tr><?php
2744
 
3049
 
3050
  if ( ! empty( $options['desc'] ) ) {
3051
  echo '<div class="a3rev_panel_box_description" >' . "\n\n";
3052
+ echo wpautop( wptexturize( $options['desc'] ) );
3053
  echo '</div>' . "\n\n";
3054
  }
3055
 
admin/admin-ui.php CHANGED
@@ -36,9 +36,15 @@ class A3_Lazy_Load_Admin_UI
36
 
37
  public $toggle_box_open_option = 'a3_lz_toggle_box_open';
38
 
39
-
40
  public $is_free_plugin = true;
41
 
 
 
 
 
 
 
 
42
  /**
43
  * @var string
44
  * You must change to correct class name that you are working
@@ -176,7 +182,7 @@ class A3_Lazy_Load_Admin_UI
176
  , apply_filters( $this->plugin_name . '_' . $setting_id . '_pro_version_name', apply_filters( $this->plugin_name . '_pro_version_name', __( 'Pro Version', 'a3_lazy_load' ) ) )
177
  );
178
 
179
- $upgrade_top_message = apply_filters( $this->plugin_name . '_upgrade_top_message', $upgrade_top_message );
180
 
181
  if ( $echo ) echo $upgrade_top_message;
182
  else return $upgrade_top_message;
@@ -210,6 +216,44 @@ class A3_Lazy_Load_Admin_UI
210
  return $message;
211
  }
212
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
213
  }
214
 
215
  ?>
36
 
37
  public $toggle_box_open_option = 'a3_lz_toggle_box_open';
38
 
 
39
  public $is_free_plugin = true;
40
 
41
+ public $version_transient = 'a3_lazy_load_update_info';
42
+
43
+ public $plugin_option_key = 'a3rev_lazy_load_plugin';
44
+
45
+ public $support_url = 'https://wordpress.org/support/plugin/a3-lazy-load/';
46
+
47
+
48
  /**
49
  * @var string
50
  * You must change to correct class name that you are working
182
  , apply_filters( $this->plugin_name . '_' . $setting_id . '_pro_version_name', apply_filters( $this->plugin_name . '_pro_version_name', __( 'Pro Version', 'a3_lazy_load' ) ) )
183
  );
184
 
185
+ $upgrade_top_message = apply_filters( $this->plugin_name . '_upgrade_top_message', $upgrade_top_message, $setting_id );
186
 
187
  if ( $echo ) echo $upgrade_top_message;
188
  else return $upgrade_top_message;
216
  return $message;
217
  }
218
 
219
+ /*-----------------------------------------------------------------------------------*/
220
+ /* get_version_message() */
221
+ /* Get new version message, also include error connect
222
+ /*-----------------------------------------------------------------------------------*/
223
+ public function get_version_message() {
224
+ $version_message = '';
225
+
226
+ //Getting version number
227
+ $version_transient = get_transient( $this->version_transient );
228
+ if ( false !== $version_transient ) {
229
+ $transient_timeout = '_transient_timeout_' . $this->version_transient;
230
+ $timeout = get_option( $transient_timeout, false );
231
+ if ( false === $timeout ) {
232
+ $version_message = __( 'You should check now to see if have any new version is available', 'a3_lazy_load' );
233
+ } elseif ( 'cannot_connect_api' == $version_transient ) {
234
+ $version_message = sprintf( __( 'Connection Failure! Please try again. If this issue persists please create a support request on the plugin <a href="%s" target="_blank">a3rev support forum</a>.', 'a3_lazy_load' ), $this->support_url );
235
+ } else {
236
+ $version_info = explode( '||', $version_transient );
237
+ if ( FALSE !== stristr( $version_transient, '||' )
238
+ && is_array( $version_info )
239
+ && isset( $version_info[1] ) && $version_info[1] == 'valid'
240
+ && version_compare( get_option('a3_lazy_load_version') , $version_info[0], '<' ) ) {
241
+
242
+ $version_message = sprintf( __( 'There is a new version <span class="a3rev-ui-new-plugin-version">%s</span> available, <a href="%s" target="_blank">update now</a> or download direct from <a href="%s" target="_blank">My Account</a> on a3rev.com', 'a3_lazy_load' ),
243
+ $version_info[0],
244
+ wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin&plugin=' . A3_LAZY_LOAD_NAME ), 'upgrade-plugin_' . A3_LAZY_LOAD_NAME ),
245
+ 'https://a3rev.com/my-account/downloads/'
246
+ );
247
+ }
248
+ }
249
+
250
+ } else {
251
+ $version_message = __( 'You should check now to see if have any new version is available', 'a3_lazy_load' );
252
+ }
253
+
254
+ return $version_message;
255
+ }
256
+
257
  }
258
 
259
  ?>
admin/assets/css/a3_admin_metabox.css CHANGED
@@ -46,6 +46,7 @@
46
  .a3-metabox-panel-wrap {
47
  background: #fff;
48
  padding-left: 153px;
 
49
  }
50
  .a3-metabox-wrapper, .a3-metabox-options-panel {
51
  float: right;
46
  .a3-metabox-panel-wrap {
47
  background: #fff;
48
  padding-left: 153px;
49
+ box-sizing: border-box;
50
  }
51
  .a3-metabox-wrapper, .a3-metabox-options-panel {
52
  float: right;
admin/assets/css/admin-ui-style.css CHANGED
@@ -219,6 +219,14 @@
219
  .a3rev_panel_container .a3rev-ui-google-valid-key .a3rev-ui-google-valid-key-message,
220
  .a3rev_panel_container .a3rev-ui-google-unvalid-key .a3rev-ui-google-unvalid-key-message { display: block; }
221
 
 
 
 
 
 
 
 
 
222
  /* Textarea Control */
223
  .a3rev_panel_container .a3rev-ui-textarea { width:600px; max-width:70%; }
224
 
219
  .a3rev_panel_container .a3rev-ui-google-valid-key .a3rev-ui-google-valid-key-message,
220
  .a3rev_panel_container .a3rev-ui-google-unvalid-key .a3rev-ui-google-unvalid-key-message { display: block; }
221
 
222
+ /* Manual Check New Version Control */
223
+ .a3rev_panel_container .a3rev-ui-version-checking { display: none; margin-top: 6px; background-image: url('../images/loading-bottom.gif'); background-repeat: no-repeat; background-size: 100% auto; width: 16px; height: 16px; }
224
+ .a3rev_panel_container .a3rev-ui-check-version-message { font-size: 13px; }
225
+ .a3rev_panel_container .a3rev-ui-new-version-message,
226
+ .a3rev_panel_container .a3rev-ui-latest-version-message { padding: 8px 10px; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1); margin-top: 8px; }
227
+ .a3rev_panel_container .a3rev-ui-latest-version-message { background-color: #dff0d8; border: 1px solid #468847; color: #468847; }
228
+ .a3rev_panel_container .a3rev-ui-new-version-message { background-color: #ffebe8; border: 1px solid #dd3d36; color: #dd3d36; }
229
+
230
  /* Textarea Control */
231
  .a3rev_panel_container .a3rev-ui-textarea { width:600px; max-width:70%; }
232
 
admin/assets/css/admin-ui-style.min.css CHANGED
@@ -56,6 +56,11 @@
56
  .a3rev_panel_container .a3rev-ui-google-valid-key{background-color:#dff0d8;border:1px solid #468847;color:#468847}
57
  .a3rev_panel_container .a3rev-ui-google-unvalid-key{background-color:#ffebe8;border:1px solid #dd3d36;color:#dd3d36}
58
  .a3rev_panel_container .a3rev-ui-google-valid-key .a3rev-ui-google-valid-key-message,.a3rev_panel_container .a3rev-ui-google-unvalid-key .a3rev-ui-google-unvalid-key-message{display:block}
 
 
 
 
 
59
  .a3rev_panel_container .a3rev-ui-textarea{width:600px;max-width:70%}
60
  .a3rev_panel_container .a3rev-ui-select{width:160px;max-width:70%}
61
  .a3rev_panel_container .a3rev-ui-multiselect{width:300px;max-width:70%}
@@ -157,4 +162,4 @@
157
  .a3rev_panel_container .a3rev-ui-slide-container-start{margin-top:5px}
158
  .a3_subsubsub_section .subsubsub{text-align:left}
159
  .a3rev_panel_container .chosen-container-single{max-width:300px!important}
160
- }
56
  .a3rev_panel_container .a3rev-ui-google-valid-key{background-color:#dff0d8;border:1px solid #468847;color:#468847}
57
  .a3rev_panel_container .a3rev-ui-google-unvalid-key{background-color:#ffebe8;border:1px solid #dd3d36;color:#dd3d36}
58
  .a3rev_panel_container .a3rev-ui-google-valid-key .a3rev-ui-google-valid-key-message,.a3rev_panel_container .a3rev-ui-google-unvalid-key .a3rev-ui-google-unvalid-key-message{display:block}
59
+ .a3rev_panel_container .a3rev-ui-version-checking{display:none;margin-top:6px;background-image:url(../images/loading-bottom.gif);background-repeat:no-repeat;background-size:100% auto;width:16px;height:16px}
60
+ .a3rev_panel_container .a3rev-ui-check-version-message{font-size:13px}
61
+ .a3rev_panel_container .a3rev-ui-new-version-message,.a3rev_panel_container .a3rev-ui-latest-version-message{padding:8px 10px;box-shadow:0 1px 1px rgba(0,0,0,0.1);margin-top:8px}
62
+ .a3rev_panel_container .a3rev-ui-latest-version-message{background-color:#dff0d8;border:1px solid #468847;color:#468847}
63
+ .a3rev_panel_container .a3rev-ui-new-version-message{background-color:#ffebe8;border:1px solid #dd3d36;color:#dd3d36}
64
  .a3rev_panel_container .a3rev-ui-textarea{width:600px;max-width:70%}
65
  .a3rev_panel_container .a3rev-ui-select{width:160px;max-width:70%}
66
  .a3rev_panel_container .a3rev-ui-multiselect{width:300px;max-width:70%}
162
  .a3rev_panel_container .a3rev-ui-slide-container-start{margin-top:5px}
163
  .a3_subsubsub_section .subsubsub{text-align:left}
164
  .a3rev_panel_container .chosen-container-single{max-width:300px!important}
165
+ }
admin/assets/js/admin-ui-script.js CHANGED
@@ -256,5 +256,41 @@
256
  $.post( a3_admin_ui_script_params.ajax_url, box_data );
257
  }
258
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
259
  });
260
  })(jQuery);
256
  $.post( a3_admin_ui_script_params.ajax_url, box_data );
257
  }
258
  });
259
+
260
+ $(document).on( 'click', '.a3rev-ui-manual_check_version', function(){
261
+ var bt_check_version = $(this);
262
+ var version_message_container = $(this).siblings('.a3rev-ui-check-version-message');
263
+ var version_checking_status = $(this).siblings('.a3rev-ui-version-checking');
264
+ var transient_name = bt_check_version.data('transient-name');
265
+ if ( ! bt_check_version.hasClass('a3-version-checking') ) {
266
+ bt_check_version.addClass('a3-version-checking');
267
+ version_checking_status.css('display', 'inline-block');
268
+ version_message_container.slideUp();
269
+
270
+ var check_data = {
271
+ action: a3_admin_ui_script_params.plugin + '_a3_admin_ui_event',
272
+ type: 'check_new_version',
273
+ transient_name: transient_name,
274
+ security: a3_admin_ui_script_params.security
275
+ };
276
+
277
+ $.post( a3_admin_ui_script_params.ajax_url, check_data, function(response){
278
+ bt_check_version.removeClass('a3-version-checking');
279
+ version_checking_status.css('display', 'none');
280
+
281
+ // Get response
282
+ data = $.parseJSON( response );
283
+ if ( 0 == data.has_new_version ) {
284
+ version_message_container.removeClass('a3rev-ui-new-version-message');
285
+ version_message_container.addClass('a3rev-ui-latest-version-message');
286
+ } else {
287
+ version_message_container.addClass('a3rev-ui-new-version-message');
288
+ version_message_container.removeClass('a3rev-ui-latest-version-message');
289
+ }
290
+ version_message_container.html(data.version_message);
291
+ version_message_container.slideDown();
292
+ });
293
+ }
294
+ });
295
  });
296
  })(jQuery);
admin/includes/uploader/class-uploader.php CHANGED
@@ -24,40 +24,27 @@ TABLE OF CONTENTS
24
  -----------------------------------------------------------------------------------*/
25
  class A3_Lazy_Load_Uploader extends A3_Lazy_Load_Admin_UI
26
  {
27
-
28
  /**
29
  * @var string
30
  */
31
  private $admin_uploader_url;
32
-
33
- /**
34
- * @var string
35
- */
36
- private $custom_post_type_image = 'wp_email_images';
37
-
38
- /**
39
- * @var string
40
- */
41
- private $custom_post_type_name = 'Custom Image Type For Uploader';
42
-
43
  /*-----------------------------------------------------------------------------------*/
44
  /* Admin Uploader Constructor */
45
  /*-----------------------------------------------------------------------------------*/
46
  public function __construct() {
47
  if ( is_admin() ) {
48
- add_action( 'init', array( $this, 'uploader_init' ) );
49
- add_action( 'admin_print_scripts', array( $this, 'inside_popup' ) );
50
- add_filter( 'gettext', array( $this, 'change_button_text' ), null, 3 );
51
-
52
  // include scripts to Admin UI Interface
53
  add_action( $this->plugin_name . '_init_scripts', array( $this, 'uploader_js' ) );
54
-
55
  // include styles to Admin UI Interface
56
  add_action( $this->plugin_name . '_init_styles', array( $this, 'uploader_style' ) );
57
  }
58
-
59
  }
60
-
61
  /*-----------------------------------------------------------------------------------*/
62
  /* admin_uploader_url */
63
  /*-----------------------------------------------------------------------------------*/
@@ -65,17 +52,19 @@ class A3_Lazy_Load_Uploader extends A3_Lazy_Load_Admin_UI
65
  if ( $this->admin_uploader_url ) return $this->admin_uploader_url;
66
  return $this->admin_uploader_url = untrailingslashit( plugins_url( '/', __FILE__ ) );
67
  }
68
-
69
  /*-----------------------------------------------------------------------------------*/
70
  /* Include Uploader Script */
71
  /*-----------------------------------------------------------------------------------*/
72
  public function uploader_js () {
73
- wp_enqueue_script( 'jquery' );
74
- wp_enqueue_script( 'thickbox' );
75
- wp_enqueue_script( 'a3-uploader-script', $this->admin_uploader_url() . '/uploader-script.js' );
76
- wp_enqueue_script( 'media-upload' );
 
 
77
  }
78
-
79
  /*-----------------------------------------------------------------------------------*/
80
  /* Include Uploader Style */
81
  /*-----------------------------------------------------------------------------------*/
@@ -86,70 +75,24 @@ class A3_Lazy_Load_Uploader extends A3_Lazy_Load_Admin_UI
86
  wp_enqueue_style( 'a3-uploader-style-rtl', $this->admin_uploader_url() . '/uploader.rtl.css' );
87
  }
88
  }
89
-
90
- /*-----------------------------------------------------------------------------------*/
91
- /* Uploader Init : Create Custom Post for Image */
92
- /*-----------------------------------------------------------------------------------*/
93
- public function uploader_init () {
94
- register_post_type( $this->custom_post_type_image, array(
95
- 'labels' => array(
96
- 'name' => $this->custom_post_type_name,
97
- ),
98
- 'public' => true,
99
- 'show_ui' => false,
100
- 'capability_type' => 'post',
101
- 'hierarchical' => false,
102
- 'rewrite' => false,
103
- 'supports' => array( 'title', 'editor' ),
104
- 'query_var' => false,
105
- 'can_export' => true,
106
- 'show_in_nav_menus' => false
107
- ) );
108
- }
109
-
110
- /*-----------------------------------------------------------------------------------*/
111
- /* Get Post Id of Custom Post for Image */
112
- /*-----------------------------------------------------------------------------------*/
113
- public function get_silentpost ( $option_key = '' ) {
114
- global $wpdb;
115
- $post_id = 1;
116
- if ( $option_key != '' ) {
117
- $args = array(
118
- 'post_parent' => '0',
119
- 'post_type' => $this->custom_post_type_image,
120
- 'post_name' => $option_key,
121
- 'post_status' => 'draft',
122
- 'comment_status' => 'closed',
123
- 'ping_status' => 'closed'
124
- );
125
- $my_posts = get_posts( $args );
126
- if ( $my_posts ) {
127
- foreach ($my_posts as $my_post) {
128
- $post_id = $my_post->ID;
129
- break;
130
- }
131
- } else {
132
- $args['post_title'] = str_replace('_', ' ', $option_key);
133
- $post_id = wp_insert_post( $args );
134
- }
135
- }
136
- return $post_id;
137
- }
138
-
139
  /*-----------------------------------------------------------------------------------*/
140
  /* Get Upload Input Field */
141
  /*-----------------------------------------------------------------------------------*/
142
- public function upload_input ( $name_attribute, $id_attribute = '', $value = '', $default_value = '', $field_name = '', $class = '', $css = '', $description = '', $post_id = 0 ) {
143
  $output = '';
144
-
145
- if ( $post_id == 0 ) {
146
- $post_id = $this->get_silentpost( $id_attribute );
147
- }
148
-
149
  if ( trim( $value ) == '' ) $value = trim( $default_value );
150
-
 
 
 
 
 
 
 
151
  $output .= '<input type="text" name="'.$name_attribute.'" id="'.$id_attribute.'" value="'.esc_attr( $value ).'" class="'.$id_attribute. ' ' .$class.' a3_upload" style="'.$css.'" rel="'.$field_name.'" /> ';
152
- $output .= '<input id="upload_'.$id_attribute.'" class="a3rev-ui-upload-button a3_upload_button button" type="button" value="'.__( 'Upload', 'a3_lazy_load' ).'" rel="'.$post_id.'" /> '.$description;
153
 
154
  $output .= '<div style="clear:both;"></div><div class="a3_screenshot" id="'.$id_attribute.'_image" style="'.( ( $value == '' ) ? 'display:none;' : 'display:block;' ).'">';
155
 
@@ -180,38 +123,6 @@ class A3_Lazy_Load_Uploader extends A3_Lazy_Load_Admin_UI
180
 
181
  return $output;
182
  }
183
-
184
- /*-----------------------------------------------------------------------------------*/
185
- /* Change the Button text on image popup */
186
- /*-----------------------------------------------------------------------------------*/
187
- public function change_button_text( $translation, $original, $domain ) {
188
- if ( isset( $_REQUEST['type'] ) ) { return $translation; }
189
-
190
- if ( is_admin() && $original === 'Insert into Post' ) {
191
- $translation = __( 'Use this Image', 'a3_lazy_load' );
192
- if ( isset( $_REQUEST['title'] ) && $_REQUEST['title'] != '' ) { $translation =__( 'Use as', 'a3_lazy_load' ).' '.esc_attr( $_REQUEST['title'] ); }
193
- }
194
-
195
- return $translation;
196
- }
197
-
198
- /*-----------------------------------------------------------------------------------*/
199
- /* modify_tabs */
200
- /*-----------------------------------------------------------------------------------*/
201
- public function modify_tabs ( $tabs ) {
202
- if ( isset( $tabs['gallery'] ) ) { $tabs['gallery'] = str_replace( 'Gallery', __( 'Previously Uploaded', 'a3_lazy_load' ), $tabs['gallery'] ); }
203
- return $tabs;
204
- }
205
-
206
- /*-----------------------------------------------------------------------------------*/
207
- /* inside_popup */
208
- /*-----------------------------------------------------------------------------------*/
209
- public function inside_popup () {
210
- if ( isset( $_REQUEST['a3_uploader'] ) && $_REQUEST['a3_uploader'] == 'yes' ) {
211
- add_filter( 'media_upload_tabs', array( $this, 'modify_tabs' ) );
212
- }
213
- }
214
-
215
  }
216
 
217
  global $a3_lazy_load_uploader;
24
  -----------------------------------------------------------------------------------*/
25
  class A3_Lazy_Load_Uploader extends A3_Lazy_Load_Admin_UI
26
  {
27
+
28
  /**
29
  * @var string
30
  */
31
  private $admin_uploader_url;
32
+
 
 
 
 
 
 
 
 
 
 
33
  /*-----------------------------------------------------------------------------------*/
34
  /* Admin Uploader Constructor */
35
  /*-----------------------------------------------------------------------------------*/
36
  public function __construct() {
37
  if ( is_admin() ) {
38
+
 
 
 
39
  // include scripts to Admin UI Interface
40
  add_action( $this->plugin_name . '_init_scripts', array( $this, 'uploader_js' ) );
41
+
42
  // include styles to Admin UI Interface
43
  add_action( $this->plugin_name . '_init_styles', array( $this, 'uploader_style' ) );
44
  }
45
+
46
  }
47
+
48
  /*-----------------------------------------------------------------------------------*/
49
  /* admin_uploader_url */
50
  /*-----------------------------------------------------------------------------------*/
52
  if ( $this->admin_uploader_url ) return $this->admin_uploader_url;
53
  return $this->admin_uploader_url = untrailingslashit( plugins_url( '/', __FILE__ ) );
54
  }
55
+
56
  /*-----------------------------------------------------------------------------------*/
57
  /* Include Uploader Script */
58
  /*-----------------------------------------------------------------------------------*/
59
  public function uploader_js () {
60
+ wp_enqueue_script( 'a3-uploader-script', $this->admin_uploader_url() . '/uploader-script.js', array( 'jquery', 'thickbox' ) );
61
+ if ( function_exists( 'wp_enqueue_media' ) ) {
62
+ wp_enqueue_media();
63
+ } else {
64
+ wp_enqueue_script('media-upload');
65
+ }
66
  }
67
+
68
  /*-----------------------------------------------------------------------------------*/
69
  /* Include Uploader Style */
70
  /*-----------------------------------------------------------------------------------*/
75
  wp_enqueue_style( 'a3-uploader-style-rtl', $this->admin_uploader_url() . '/uploader.rtl.css' );
76
  }
77
  }
78
+
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
79
  /*-----------------------------------------------------------------------------------*/
80
  /* Get Upload Input Field */
81
  /*-----------------------------------------------------------------------------------*/
82
+ public function upload_input ( $name_attribute, $id_attribute = '', $value = '', $attachment_id = 0, $default_value = '', $field_name = '', $class = '', $css = '', $description = '' ) {
83
  $output = '';
84
+
 
 
 
 
85
  if ( trim( $value ) == '' ) $value = trim( $default_value );
86
+
87
+ if ( strstr( $name_attribute, ']' ) ) {
88
+ $attachment_id_name_attribute = substr_replace( $name_attribute, '_attachment_id', -1, 0 );
89
+ } else {
90
+ $attachment_id_name_attribute = $name_attribute.'_attachment_id';
91
+ }
92
+
93
+ $output .= '<input type="hidden" name="'.$attachment_id_name_attribute.'" id="'.$id_attribute.'_attachment_id" value="'.$attachment_id.'" class=" a3_upload_attachment_id" />';
94
  $output .= '<input type="text" name="'.$name_attribute.'" id="'.$id_attribute.'" value="'.esc_attr( $value ).'" class="'.$id_attribute. ' ' .$class.' a3_upload" style="'.$css.'" rel="'.$field_name.'" /> ';
95
+ $output .= '<input id="upload_'.$id_attribute.'" class="a3rev-ui-upload-button a3_upload_button button" type="button" value="'.__( 'Upload', 'a3_lazy_load' ).'" /> '.$description;
96
 
97
  $output .= '<div style="clear:both;"></div><div class="a3_screenshot" id="'.$id_attribute.'_image" style="'.( ( $value == '' ) ? 'display:none;' : 'display:block;' ).'">';
98
 
123
 
124
  return $output;
125
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
126
  }
127
 
128
  global $a3_lazy_load_uploader;
admin/includes/uploader/uploader-script.js CHANGED
@@ -1,69 +1,108 @@
1
  (function ($) {
2
 
3
  a3Uploader = {
 
 
 
 
 
4
  removeFile: function () {
5
- $(document).on( 'click', '.a3_uploader_remove', function(event) {
6
  $(this).hide();
7
- $(this).parents().parents().children( '.a3_upload').attr( 'value', '' );
 
8
  $(this).parents( '.a3_screenshot').slideUp();
9
-
10
  return false;
11
  });
12
  },
13
-
 
 
 
 
 
14
  mediaUpload: function () {
15
- jQuery.noConflict();
16
-
17
- var formfield, formID, upload_title, btnContent = true;
18
-
19
- $(document).on( 'click', 'input.a3_upload_button', function () {
 
 
20
  formfield = $(this).prev( 'input').attr( 'id' );
21
  formID = $(this).attr( 'rel' );
22
  upload_title = $(this).prev( 'input').attr( 'rel' );
23
-
24
- tb_show( upload_title, 'media-upload.php?post_id='+formID+'&amp;title=' + upload_title + '&amp;a3_uploader=yes&amp;TB_iframe=1' );
25
- return false;
26
- });
27
-
28
- window.original_send_to_editor = window.send_to_editor;
29
- window.send_to_editor = function(html) {
30
- if (formfield) {
31
- if ( $(html).html(html).find( 'img').length > 0 ) {
32
- itemurl = $(html).html(html).find( 'img').attr( 'src' );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33
  } else {
34
- var htmlBits = html.split( "'" );
35
- itemurl = htmlBits[1];
36
- var itemtitle = htmlBits[2];
37
- itemtitle = itemtitle.replace( '>', '' );
38
- itemtitle = itemtitle.replace( '</a>', '' );
39
  }
40
  var image = /(^.*\.jpg|jpeg|png|gif|ico*)/gi;
41
  var document = /(^.*\.pdf|doc|docx|ppt|pptx|odt*)/gi;
42
  var audio = /(^.*\.mp3|m4a|ogg|wav*)/gi;
43
  var video = /(^.*\.mp4|m4v|mov|wmv|avi|mpg|ogv|3gp|3g2*)/gi;
44
-
45
- if (itemurl.match(image)) {
46
- btnContent = '<img class="a3_uploader_image" src="'+itemurl+'" alt="" /><a href="#" class="a3_uploader_remove a3-plugin-ui-delete-icon">&nbsp;</a>';
47
  } else {
48
- html = '<a href="'+itemurl+'" target="_blank" rel="a3_external">View File</a>';
49
  btnContent = '<div class="a3_no_image"><span class="a3_file_link">'+html+'</span><a href="#" class="a3_uploader_remove a3-plugin-ui-delete-icon">&nbsp;</a></div>';
50
  }
51
- $( '#' + formfield).val(itemurl);
 
52
  $( '#' + formfield).siblings( '.a3_screenshot').slideDown().html(btnContent);
53
- tb_remove();
54
- } else {
55
- window.original_send_to_editor(html);
56
- }
57
- formfield = '';
58
- }
59
  }
60
  };
61
-
62
  $(document).ready(function () {
63
 
64
  a3Uploader.removeFile();
65
  a3Uploader.mediaUpload();
66
-
67
  });
68
 
69
  })(jQuery);
1
  (function ($) {
2
 
3
  a3Uploader = {
4
+
5
+ /*-----------------------------------------------------------------------------------*/
6
+ /* Remove file when the "remove" button is clicked.
7
+ /*-----------------------------------------------------------------------------------*/
8
+
9
  removeFile: function () {
10
+ $(document).on( 'click', '.a3_uploader_remove', function(event) {
11
  $(this).hide();
12
+ $(this).parents().parents().children('.a3_upload').val( '' ).trigger('change');
13
+ $(this).parents().parents().children('.a3_upload_attachment_id').val(0);
14
  $(this).parents( '.a3_screenshot').slideUp();
15
+
16
  return false;
17
  });
18
  },
19
+
20
+ /*-----------------------------------------------------------------------------------*/
21
+ /* Use a custom function when working with the Media Uploads popup.
22
+ /* Requires jQuery, Media Upload and Thickbox JavaScripts.
23
+ /*-----------------------------------------------------------------------------------*/
24
+
25
  mediaUpload: function () {
26
+ $.noConflict();
27
+
28
+ var formfield, file_frame, formID, upload_title, insertImage, btnContent = true;
29
+
30
+ $(document).on( 'click', 'input.a3_upload_button', function (e) {
31
+ e.preventDefault();
32
+
33
  formfield = $(this).prev( 'input').attr( 'id' );
34
  formID = $(this).attr( 'rel' );
35
  upload_title = $(this).prev( 'input').attr( 'rel' );
36
+
37
+ var insertImage = wp.media.controller.Library.extend({
38
+ defaults : _.defaults({
39
+ id: 'a3-insert-image',
40
+ title: upload_title,
41
+ filterable: 'uploaded',
42
+ allowLocalEdits: true,
43
+ displaySettings: true,
44
+ displayUserSettings: true,
45
+ multiple : false,
46
+ type : 'image'
47
+ }, wp.media.controller.Library.prototype.defaults )
48
+ });
49
+
50
+ if ( file_frame ) {
51
+ file_frame.open();
52
+ return;
53
+ }
54
+
55
+ file_frame = wp.media.frames.file_frame = wp.media({
56
+ title: 'Select Image',
57
+ button: {
58
+ text: 'Use as ' + upload_title,
59
+ },
60
+ state : 'a3-insert-image',
61
+ states : [
62
+ new insertImage()
63
+ ],
64
+ multiple: false
65
+ });
66
+
67
+ file_frame.open();
68
+
69
+ file_frame.on( 'select', function() {
70
+ var selection = file_frame.state().get('selection');
71
+ var size = $('.attachment-display-settings .size').val();
72
+ var attachment = selection.first().toJSON();
73
+ if ( !size ) {
74
+ attachment.url = attachment.url;
75
  } else {
76
+ attachment.url = attachment.sizes[size].url;
 
 
 
 
77
  }
78
  var image = /(^.*\.jpg|jpeg|png|gif|ico*)/gi;
79
  var document = /(^.*\.pdf|doc|docx|ppt|pptx|odt*)/gi;
80
  var audio = /(^.*\.mp3|m4a|ogg|wav*)/gi;
81
  var video = /(^.*\.mp4|m4v|mov|wmv|avi|mpg|ogv|3gp|3g2*)/gi;
82
+
83
+ if (attachment.url.match(image)) {
84
+ btnContent = '<img class="a3_uploader_image" src="'+attachment.url+'" alt="" /><a href="#" class="a3_uploader_remove a3-plugin-ui-delete-icon">&nbsp;</a>';
85
  } else {
86
+ html = '<a href="'+attachment.url+'" target="_blank" rel="a3_external">View File</a>';
87
  btnContent = '<div class="a3_no_image"><span class="a3_file_link">'+html+'</span><a href="#" class="a3_uploader_remove a3-plugin-ui-delete-icon">&nbsp;</a></div>';
88
  }
89
+ $( '#' + formfield).val(attachment.url.replace(/http:|https:/, '' )).trigger('change');
90
+ $( '#' + formfield + '_attachment_id').val(attachment.id);
91
  $( '#' + formfield).siblings( '.a3_screenshot').slideDown().html(btnContent);
92
+ $('.media-modal-close').trigger('click');
93
+ });
94
+
95
+ return false;
96
+
97
+ });
98
  }
99
  };
100
+
101
  $(document).ready(function () {
102
 
103
  a3Uploader.removeFile();
104
  a3Uploader.mediaUpload();
105
+
106
  });
107
 
108
  })(jQuery);
admin/less/sass.php CHANGED
@@ -16,14 +16,15 @@ class A3_Lazy_Load_Less
16
  public function __construct()
17
  {
18
  add_action( $this->plugin_name.'_after_settings_save_reset', array ($this, 'plugin_build_sass') );
19
- add_action( 'wp_head', array ($this, 'apply_style_css_fontend') , 9 );
20
  }
21
 
22
  public function apply_style_css_fontend()
23
  {
24
  $_upload_dir = wp_upload_dir();
25
- if ( file_exists( $_upload_dir['basedir'] . '/sass/' . $this->css_file_name . '.min.css' ) )
26
- echo '<link media="screen" type="text/css" href="' . str_replace(array('http:','https:'), '', $_upload_dir['baseurl'] ) . '/sass/' . $this->css_file_name . '.min.css" rel="stylesheet" />' . "\n";
 
27
  }
28
 
29
  public function plugin_build_sass()
16
  public function __construct()
17
  {
18
  add_action( $this->plugin_name.'_after_settings_save_reset', array ($this, 'plugin_build_sass') );
19
+ add_action( 'wp_enqueue_scripts', array ($this, 'apply_style_css_fontend') , 12 );
20
  }
21
 
22
  public function apply_style_css_fontend()
23
  {
24
  $_upload_dir = wp_upload_dir();
25
+ if ( file_exists( $_upload_dir['basedir'] . '/sass/' . $this->css_file_name . '.min.css' ) ) {
26
+ wp_enqueue_style( 'a3' . $this->css_file_name, str_replace( array('http:','https:'), '', $_upload_dir['baseurl'] ) . '/sass/' . $this->css_file_name . '.min.css', array() );
27
+ }
28
  }
29
 
30
  public function plugin_build_sass()
assets/images/placeholder.gif ADDED
Binary file
classes/class-a3-lazy-load.php CHANGED
@@ -30,7 +30,7 @@ class A3_Lazy_Load
30
  }
31
 
32
  // Disable on Opera Mini
33
- if ( strpos( $_SERVER['HTTP_USER_AGENT'], 'Opera Mini' ) !== false ) {
34
  return;
35
  }
36
 
@@ -48,7 +48,8 @@ class A3_Lazy_Load
48
 
49
  add_filter( 'a3_lazy_load_html', array( $this, 'filter_html' ), 10, 2 );
50
 
51
- $this->_placeholder_url = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7';
 
52
 
53
  // Apply for Images
54
  $skip_images_classes = apply_filters( 'a3_lazy_load_skip_images_classes', $a3_lazy_load_global_settings['a3l_skip_image_with_class'] );
30
  }
31
 
32
  // Disable on Opera Mini
33
+ if ( isset( $_SERVER['HTTP_USER_AGENT'] ) && strpos( $_SERVER['HTTP_USER_AGENT'], 'Opera Mini' ) !== false ) {
34
  return;
35
  }
36
 
48
 
49
  add_filter( 'a3_lazy_load_html', array( $this, 'filter_html' ), 10, 2 );
50
 
51
+ //$this->_placeholder_url = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7';
52
+ $this->_placeholder_url = A3_LAZY_LOAD_IMAGES_URL . '/placeholder.gif';
53
 
54
  // Apply for Images
55
  $skip_images_classes = apply_filters( 'a3_lazy_load_skip_images_classes', $a3_lazy_load_global_settings['a3l_skip_image_with_class'] );
languages/a3_lazy_load.mo CHANGED
Binary file
languages/a3_lazy_load.po CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: a3 Lazy Load\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2015-06-17 15:59+0700\n"
6
- "PO-Revision-Date: 2015-06-17 15:59+0700\n"
7
  "Last-Translator: Nguyen Cong Tuan <mr.nguyencongtuan@gmail.com>\n"
8
  "Language-Team: a3rev\n"
9
  "Language: en\n"
@@ -16,80 +16,84 @@ msgstr ""
16
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
  "X-Poedit-SearchPath-0: .\n"
18
 
19
- #: admin/admin-interface.php:195
 
 
 
 
20
  #: admin/settings/template-settings/global-settings.php:81
21
  msgid "Settings successfully saved."
22
  msgstr ""
23
 
24
- #: admin/admin-interface.php:203
25
  #: admin/settings/template-settings/global-settings.php:82
26
  msgid "Error: Settings can not save."
27
  msgstr ""
28
 
29
- #: admin/admin-interface.php:211
30
  #: admin/settings/template-settings/global-settings.php:83
31
  msgid "Settings successfully reseted."
32
  msgstr ""
33
 
34
- #: admin/admin-interface.php:232
35
  msgid "Thin"
36
  msgstr ""
37
 
38
- #: admin/admin-interface.php:233
39
  msgid "Thin/Italic"
40
  msgstr ""
41
 
42
- #: admin/admin-interface.php:234
43
  msgid "Normal"
44
  msgstr ""
45
 
46
- #: admin/admin-interface.php:235
47
  msgid "Italic"
48
  msgstr ""
49
 
50
- #: admin/admin-interface.php:236
51
  msgid "Bold"
52
  msgstr ""
53
 
54
- #: admin/admin-interface.php:237
55
  msgid "Bold/Italic"
56
  msgstr ""
57
 
58
- #: admin/admin-interface.php:247
59
  msgid "Solid"
60
  msgstr ""
61
 
62
- #: admin/admin-interface.php:248
63
  msgid "Double"
64
  msgstr ""
65
 
66
- #: admin/admin-interface.php:249
67
  msgid "Dashed"
68
  msgstr ""
69
 
70
- #: admin/admin-interface.php:250
71
  msgid "Dotted"
72
  msgstr ""
73
 
74
- #: admin/admin-interface.php:251
75
  msgid "Groove"
76
  msgstr ""
77
 
78
- #: admin/admin-interface.php:252
79
  msgid "Ridge"
80
  msgstr ""
81
 
82
- #: admin/admin-interface.php:253
83
  msgid "Inset"
84
  msgstr ""
85
 
86
- #: admin/admin-interface.php:254
87
  msgid "Outset"
88
  msgstr ""
89
 
90
- #: admin/admin-interface.php:1389 admin/admin-interface.php:1444
91
- #: admin/admin-interface.php:1646 admin/admin-interface.php:1736
92
- #: admin/admin-interface.php:1765
93
  #: admin/settings/template-settings/global-settings.php:224
94
  #: admin/settings/template-settings/global-settings.php:242
95
  #: admin/settings/template-settings/global-settings.php:261
@@ -107,9 +111,9 @@ msgstr ""
107
  msgid "ON"
108
  msgstr ""
109
 
110
- #: admin/admin-interface.php:1390 admin/admin-interface.php:1445
111
- #: admin/admin-interface.php:1647 admin/admin-interface.php:1737
112
- #: admin/admin-interface.php:1766
113
  #: admin/settings/template-settings/global-settings.php:225
114
  #: admin/settings/template-settings/global-settings.php:243
115
  #: admin/settings/template-settings/global-settings.php:262
@@ -127,142 +131,150 @@ msgstr ""
127
  msgid "OFF"
128
  msgstr ""
129
 
130
- #: admin/admin-interface.php:1395
131
  msgid "Google Fonts API"
132
  msgstr ""
133
 
134
- #: admin/admin-interface.php:1407
135
  msgid ""
136
  "ON to connect to Google Fonts API and have auto font updates direct from "
137
  "Google."
138
  msgstr ""
139
 
140
- #: admin/admin-interface.php:1411
141
  #, php-format
142
  msgid ""
143
  "Enter your existing Google Fonts API Key below. Don't have a key? Visit <a "
144
  "href='%s' target='_blank'>Google Developer API</a> to create a key"
145
  msgstr ""
146
 
147
- #: admin/admin-interface.php:1428
148
  msgid "Google Fonts API Key"
149
  msgstr ""
150
 
151
- #: admin/admin-interface.php:1431
152
  msgid "Your Google API Key is valid and automatic font updates are enabled."
153
  msgstr ""
154
 
155
- #: admin/admin-interface.php:1432
156
  msgid "Please enter a valid Google API Key."
157
  msgstr ""
158
 
159
- #: admin/admin-interface.php:1450
 
 
 
 
 
 
 
 
160
  msgid "Open Box Display"
161
  msgstr ""
162
 
163
- #: admin/admin-interface.php:1463
164
  msgid ""
165
  "ON and each admin panel setting box OPEN | CLOSED position are saved each "
166
  "time changes are SAVED."
167
  msgstr ""
168
 
169
- #: admin/admin-interface.php:1807
170
  msgid "Width"
171
  msgstr ""
172
 
173
- #: admin/admin-interface.php:1809
174
  msgid "Height"
175
  msgstr ""
176
 
177
- #: admin/admin-interface.php:1811
178
  msgid "Hard Crop"
179
  msgstr ""
180
 
181
- #: admin/admin-interface.php:1891
182
  msgid "-- Default Fonts --"
183
  msgstr ""
184
 
185
- #: admin/admin-interface.php:1902
186
  msgid "-- Google Fonts --"
187
  msgstr ""
188
 
189
- #: admin/admin-interface.php:1943
190
  msgid "Preview your customized typography settings"
191
  msgstr ""
192
 
193
- #: admin/admin-interface.php:2077 admin/admin-interface.php:2336
194
  msgid "Preview your customized border settings"
195
  msgstr ""
196
 
197
- #: admin/admin-interface.php:2086 admin/admin-interface.php:2327
198
  msgid "Rounded"
199
  msgstr ""
200
 
201
- #: admin/admin-interface.php:2087 admin/admin-interface.php:2328
202
  msgid "Square"
203
  msgstr ""
204
 
205
- #: admin/admin-interface.php:2097 admin/admin-interface.php:2341
206
  msgid "Top Left Corner"
207
  msgstr ""
208
 
209
- #: admin/admin-interface.php:2117 admin/admin-interface.php:2361
210
  msgid "Top Right Corner"
211
  msgstr ""
212
 
213
- #: admin/admin-interface.php:2137 admin/admin-interface.php:2381
214
  msgid "Bottom Right Corner"
215
  msgstr ""
216
 
217
- #: admin/admin-interface.php:2157 admin/admin-interface.php:2401
218
  msgid "Bottom Left Corner"
219
  msgstr ""
220
 
221
- #: admin/admin-interface.php:2250
222
  msgid "Preview your customized border styles settings"
223
  msgstr ""
224
 
225
- #: admin/admin-interface.php:2462
226
  msgid "YES"
227
  msgstr ""
228
 
229
- #: admin/admin-interface.php:2463
230
  msgid "NO"
231
  msgstr ""
232
 
233
- #: admin/admin-interface.php:2477
234
  msgid "Horizontal Shadow"
235
  msgstr ""
236
 
237
- #: admin/admin-interface.php:2495
238
  msgid "Vertical Shadow"
239
  msgstr ""
240
 
241
- #: admin/admin-interface.php:2513
242
  msgid "Blur Distance"
243
  msgstr ""
244
 
245
- #: admin/admin-interface.php:2531
246
  msgid "Spread Size"
247
  msgstr ""
248
 
249
- #: admin/admin-interface.php:2549
250
  msgid "INNER"
251
  msgstr ""
252
 
253
- #: admin/admin-interface.php:2550
254
  msgid "OUTER"
255
  msgstr ""
256
 
257
- #: admin/admin-interface.php:2568
258
  msgid "Preview your customized box shadow settings"
259
  msgstr ""
260
 
261
- #: admin/admin-interface.php:2824
262
  msgid "Save changes"
263
  msgstr ""
264
 
265
- #: admin/admin-interface.php:2825
266
  msgid "Reset Settings"
267
  msgstr ""
268
 
@@ -271,35 +283,43 @@ msgstr ""
271
  msgid "a3 Lazy Load"
272
  msgstr ""
273
 
274
- #: admin/admin-ui.php:173
275
  #, php-format
276
  msgid ""
277
  "Advanced Settings - Upgrade to the <a href=\"%s\" target=\"_blank\">%s "
278
  "License</a> to activate these settings."
279
  msgstr ""
280
 
281
- #: admin/admin-ui.php:176
282
  msgid "Pro Version"
283
  msgstr ""
284
 
285
- #: admin/includes/uploader/class-uploader.php:152
286
- msgid "Upload"
287
  msgstr ""
288
 
289
- #: admin/includes/uploader/class-uploader.php:172
290
- msgid "View File"
 
 
 
 
291
  msgstr ""
292
 
293
- #: admin/includes/uploader/class-uploader.php:191
294
- msgid "Use this Image"
 
 
 
 
295
  msgstr ""
296
 
297
- #: admin/includes/uploader/class-uploader.php:192
298
- msgid "Use as"
299
  msgstr ""
300
 
301
- #: admin/includes/uploader/class-uploader.php:202
302
- msgid "Previously Uploaded"
303
  msgstr ""
304
 
305
  #: admin/settings/template-settings/global-settings.php:153
2
  msgstr ""
3
  "Project-Id-Version: a3 Lazy Load\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2015-12-10 12:29+0700\n"
6
+ "PO-Revision-Date: 2015-12-10 12:29+0700\n"
7
  "Last-Translator: Nguyen Cong Tuan <mr.nguyencongtuan@gmail.com>\n"
8
  "Language-Team: a3rev\n"
9
  "Language: en\n"
16
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
  "X-Poedit-SearchPath-0: .\n"
18
 
19
+ #: admin/admin-interface.php:171
20
+ msgid "Great! You have the latest version installed."
21
+ msgstr ""
22
+
23
+ #: admin/admin-interface.php:236
24
  #: admin/settings/template-settings/global-settings.php:81
25
  msgid "Settings successfully saved."
26
  msgstr ""
27
 
28
+ #: admin/admin-interface.php:244
29
  #: admin/settings/template-settings/global-settings.php:82
30
  msgid "Error: Settings can not save."
31
  msgstr ""
32
 
33
+ #: admin/admin-interface.php:252
34
  #: admin/settings/template-settings/global-settings.php:83
35
  msgid "Settings successfully reseted."
36
  msgstr ""
37
 
38
+ #: admin/admin-interface.php:273
39
  msgid "Thin"
40
  msgstr ""
41
 
42
+ #: admin/admin-interface.php:274
43
  msgid "Thin/Italic"
44
  msgstr ""
45
 
46
+ #: admin/admin-interface.php:275
47
  msgid "Normal"
48
  msgstr ""
49
 
50
+ #: admin/admin-interface.php:276
51
  msgid "Italic"
52
  msgstr ""
53
 
54
+ #: admin/admin-interface.php:277
55
  msgid "Bold"
56
  msgstr ""
57
 
58
+ #: admin/admin-interface.php:278
59
  msgid "Bold/Italic"
60
  msgstr ""
61
 
62
+ #: admin/admin-interface.php:288
63
  msgid "Solid"
64
  msgstr ""
65
 
66
+ #: admin/admin-interface.php:289
67
  msgid "Double"
68
  msgstr ""
69
 
70
+ #: admin/admin-interface.php:290
71
  msgid "Dashed"
72
  msgstr ""
73
 
74
+ #: admin/admin-interface.php:291
75
  msgid "Dotted"
76
  msgstr ""
77
 
78
+ #: admin/admin-interface.php:292
79
  msgid "Groove"
80
  msgstr ""
81
 
82
+ #: admin/admin-interface.php:293
83
  msgid "Ridge"
84
  msgstr ""
85
 
86
+ #: admin/admin-interface.php:294
87
  msgid "Inset"
88
  msgstr ""
89
 
90
+ #: admin/admin-interface.php:295
91
  msgid "Outset"
92
  msgstr ""
93
 
94
+ #: admin/admin-interface.php:1539 admin/admin-interface.php:1625
95
+ #: admin/admin-interface.php:1828 admin/admin-interface.php:1918
96
+ #: admin/admin-interface.php:1947
97
  #: admin/settings/template-settings/global-settings.php:224
98
  #: admin/settings/template-settings/global-settings.php:242
99
  #: admin/settings/template-settings/global-settings.php:261
111
  msgid "ON"
112
  msgstr ""
113
 
114
+ #: admin/admin-interface.php:1540 admin/admin-interface.php:1626
115
+ #: admin/admin-interface.php:1829 admin/admin-interface.php:1919
116
+ #: admin/admin-interface.php:1948
117
  #: admin/settings/template-settings/global-settings.php:225
118
  #: admin/settings/template-settings/global-settings.php:243
119
  #: admin/settings/template-settings/global-settings.php:262
131
  msgid "OFF"
132
  msgstr ""
133
 
134
+ #: admin/admin-interface.php:1545
135
  msgid "Google Fonts API"
136
  msgstr ""
137
 
138
+ #: admin/admin-interface.php:1557
139
  msgid ""
140
  "ON to connect to Google Fonts API and have auto font updates direct from "
141
  "Google."
142
  msgstr ""
143
 
144
+ #: admin/admin-interface.php:1561
145
  #, php-format
146
  msgid ""
147
  "Enter your existing Google Fonts API Key below. Don't have a key? Visit <a "
148
  "href='%s' target='_blank'>Google Developer API</a> to create a key"
149
  msgstr ""
150
 
151
+ #: admin/admin-interface.php:1578
152
  msgid "Google Fonts API Key"
153
  msgstr ""
154
 
155
+ #: admin/admin-interface.php:1581
156
  msgid "Your Google API Key is valid and automatic font updates are enabled."
157
  msgstr ""
158
 
159
+ #: admin/admin-interface.php:1582
160
  msgid "Please enter a valid Google API Key."
161
  msgstr ""
162
 
163
+ #: admin/admin-interface.php:1601
164
+ msgid "Check New Version"
165
+ msgstr ""
166
+
167
+ #: admin/admin-interface.php:1612
168
+ msgid "Check Now"
169
+ msgstr ""
170
+
171
+ #: admin/admin-interface.php:1631
172
  msgid "Open Box Display"
173
  msgstr ""
174
 
175
+ #: admin/admin-interface.php:1644
176
  msgid ""
177
  "ON and each admin panel setting box OPEN | CLOSED position are saved each "
178
  "time changes are SAVED."
179
  msgstr ""
180
 
181
+ #: admin/admin-interface.php:1983
182
  msgid "Width"
183
  msgstr ""
184
 
185
+ #: admin/admin-interface.php:1985
186
  msgid "Height"
187
  msgstr ""
188
 
189
+ #: admin/admin-interface.php:1987
190
  msgid "Hard Crop"
191
  msgstr ""
192
 
193
+ #: admin/admin-interface.php:2060
194
  msgid "-- Default Fonts --"
195
  msgstr ""
196
 
197
+ #: admin/admin-interface.php:2071
198
  msgid "-- Google Fonts --"
199
  msgstr ""
200
 
201
+ #: admin/admin-interface.php:2112
202
  msgid "Preview your customized typography settings"
203
  msgstr ""
204
 
205
+ #: admin/admin-interface.php:2221 admin/admin-interface.php:2455
206
  msgid "Preview your customized border settings"
207
  msgstr ""
208
 
209
+ #: admin/admin-interface.php:2230 admin/admin-interface.php:2446
210
  msgid "Rounded"
211
  msgstr ""
212
 
213
+ #: admin/admin-interface.php:2231 admin/admin-interface.php:2447
214
  msgid "Square"
215
  msgstr ""
216
 
217
+ #: admin/admin-interface.php:2241 admin/admin-interface.php:2460
218
  msgid "Top Left Corner"
219
  msgstr ""
220
 
221
+ #: admin/admin-interface.php:2261 admin/admin-interface.php:2480
222
  msgid "Top Right Corner"
223
  msgstr ""
224
 
225
+ #: admin/admin-interface.php:2281 admin/admin-interface.php:2500
226
  msgid "Bottom Right Corner"
227
  msgstr ""
228
 
229
+ #: admin/admin-interface.php:2301 admin/admin-interface.php:2520
230
  msgid "Bottom Left Corner"
231
  msgstr ""
232
 
233
+ #: admin/admin-interface.php:2388
234
  msgid "Preview your customized border styles settings"
235
  msgstr ""
236
 
237
+ #: admin/admin-interface.php:2571
238
  msgid "YES"
239
  msgstr ""
240
 
241
+ #: admin/admin-interface.php:2572
242
  msgid "NO"
243
  msgstr ""
244
 
245
+ #: admin/admin-interface.php:2586
246
  msgid "Horizontal Shadow"
247
  msgstr ""
248
 
249
+ #: admin/admin-interface.php:2604
250
  msgid "Vertical Shadow"
251
  msgstr ""
252
 
253
+ #: admin/admin-interface.php:2622
254
  msgid "Blur Distance"
255
  msgstr ""
256
 
257
+ #: admin/admin-interface.php:2640
258
  msgid "Spread Size"
259
  msgstr ""
260
 
261
+ #: admin/admin-interface.php:2658
262
  msgid "INNER"
263
  msgstr ""
264
 
265
+ #: admin/admin-interface.php:2659
266
  msgid "OUTER"
267
  msgstr ""
268
 
269
+ #: admin/admin-interface.php:2677
270
  msgid "Preview your customized box shadow settings"
271
  msgstr ""
272
 
273
+ #: admin/admin-interface.php:2940
274
  msgid "Save changes"
275
  msgstr ""
276
 
277
+ #: admin/admin-interface.php:2941
278
  msgid "Reset Settings"
279
  msgstr ""
280
 
283
  msgid "a3 Lazy Load"
284
  msgstr ""
285
 
286
+ #: admin/admin-ui.php:179
287
  #, php-format
288
  msgid ""
289
  "Advanced Settings - Upgrade to the <a href=\"%s\" target=\"_blank\">%s "
290
  "License</a> to activate these settings."
291
  msgstr ""
292
 
293
+ #: admin/admin-ui.php:182
294
  msgid "Pro Version"
295
  msgstr ""
296
 
297
+ #: admin/admin-ui.php:232 admin/admin-ui.php:251
298
+ msgid "You should check now to see if have any new version is available"
299
  msgstr ""
300
 
301
+ #: admin/admin-ui.php:234
302
+ #, php-format
303
+ msgid ""
304
+ "Connection Failure! Please try again. If this issue persists please create a "
305
+ "support request on the plugin <a href=\"%s\" target=\"_blank\">a3rev support "
306
+ "forum</a>."
307
  msgstr ""
308
 
309
+ #: admin/admin-ui.php:242
310
+ #, php-format
311
+ msgid ""
312
+ "There is a new version <span class=\"a3rev-ui-new-plugin-version\">%s</span> "
313
+ "available, <a href=\"%s\" target=\"_blank\">update now</a> or download "
314
+ "direct from <a href=\"%s\" target=\"_blank\">My Account</a> on a3rev.com"
315
  msgstr ""
316
 
317
+ #: admin/includes/uploader/class-uploader.php:95
318
+ msgid "Upload"
319
  msgstr ""
320
 
321
+ #: admin/includes/uploader/class-uploader.php:115
322
+ msgid "View File"
323
  msgstr ""
324
 
325
  #: admin/settings/template-settings/global-settings.php:153
languages/a3_lazy_load.pot CHANGED
@@ -2,8 +2,8 @@ msgid ""
2
  msgstr ""
3
  "Project-Id-Version: a3 Lazy Load\n"
4
  "Report-Msgid-Bugs-To: \n"
5
- "POT-Creation-Date: 2015-06-17 15:59+0700\n"
6
- "PO-Revision-Date: 2015-06-17 15:59+0700\n"
7
  "Last-Translator: Nguyen Cong Tuan <mr.nguyencongtuan@gmail.com>\n"
8
  "Language-Team: a3rev\n"
9
  "Language: en\n"
@@ -16,80 +16,84 @@ msgstr ""
16
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
  "X-Poedit-SearchPath-0: .\n"
18
 
19
- #: admin/admin-interface.php:195
 
 
 
 
20
  #: admin/settings/template-settings/global-settings.php:81
21
  msgid "Settings successfully saved."
22
  msgstr ""
23
 
24
- #: admin/admin-interface.php:203
25
  #: admin/settings/template-settings/global-settings.php:82
26
  msgid "Error: Settings can not save."
27
  msgstr ""
28
 
29
- #: admin/admin-interface.php:211
30
  #: admin/settings/template-settings/global-settings.php:83
31
  msgid "Settings successfully reseted."
32
  msgstr ""
33
 
34
- #: admin/admin-interface.php:232
35
  msgid "Thin"
36
  msgstr ""
37
 
38
- #: admin/admin-interface.php:233
39
  msgid "Thin/Italic"
40
  msgstr ""
41
 
42
- #: admin/admin-interface.php:234
43
  msgid "Normal"
44
  msgstr ""
45
 
46
- #: admin/admin-interface.php:235
47
  msgid "Italic"
48
  msgstr ""
49
 
50
- #: admin/admin-interface.php:236
51
  msgid "Bold"
52
  msgstr ""
53
 
54
- #: admin/admin-interface.php:237
55
  msgid "Bold/Italic"
56
  msgstr ""
57
 
58
- #: admin/admin-interface.php:247
59
  msgid "Solid"
60
  msgstr ""
61
 
62
- #: admin/admin-interface.php:248
63
  msgid "Double"
64
  msgstr ""
65
 
66
- #: admin/admin-interface.php:249
67
  msgid "Dashed"
68
  msgstr ""
69
 
70
- #: admin/admin-interface.php:250
71
  msgid "Dotted"
72
  msgstr ""
73
 
74
- #: admin/admin-interface.php:251
75
  msgid "Groove"
76
  msgstr ""
77
 
78
- #: admin/admin-interface.php:252
79
  msgid "Ridge"
80
  msgstr ""
81
 
82
- #: admin/admin-interface.php:253
83
  msgid "Inset"
84
  msgstr ""
85
 
86
- #: admin/admin-interface.php:254
87
  msgid "Outset"
88
  msgstr ""
89
 
90
- #: admin/admin-interface.php:1389 admin/admin-interface.php:1444
91
- #: admin/admin-interface.php:1646 admin/admin-interface.php:1736
92
- #: admin/admin-interface.php:1765
93
  #: admin/settings/template-settings/global-settings.php:224
94
  #: admin/settings/template-settings/global-settings.php:242
95
  #: admin/settings/template-settings/global-settings.php:261
@@ -107,9 +111,9 @@ msgstr ""
107
  msgid "ON"
108
  msgstr ""
109
 
110
- #: admin/admin-interface.php:1390 admin/admin-interface.php:1445
111
- #: admin/admin-interface.php:1647 admin/admin-interface.php:1737
112
- #: admin/admin-interface.php:1766
113
  #: admin/settings/template-settings/global-settings.php:225
114
  #: admin/settings/template-settings/global-settings.php:243
115
  #: admin/settings/template-settings/global-settings.php:262
@@ -127,142 +131,150 @@ msgstr ""
127
  msgid "OFF"
128
  msgstr ""
129
 
130
- #: admin/admin-interface.php:1395
131
  msgid "Google Fonts API"
132
  msgstr ""
133
 
134
- #: admin/admin-interface.php:1407
135
  msgid ""
136
  "ON to connect to Google Fonts API and have auto font updates direct from "
137
  "Google."
138
  msgstr ""
139
 
140
- #: admin/admin-interface.php:1411
141
  #, php-format
142
  msgid ""
143
  "Enter your existing Google Fonts API Key below. Don't have a key? Visit <a "
144
  "href='%s' target='_blank'>Google Developer API</a> to create a key"
145
  msgstr ""
146
 
147
- #: admin/admin-interface.php:1428
148
  msgid "Google Fonts API Key"
149
  msgstr ""
150
 
151
- #: admin/admin-interface.php:1431
152
  msgid "Your Google API Key is valid and automatic font updates are enabled."
153
  msgstr ""
154
 
155
- #: admin/admin-interface.php:1432
156
  msgid "Please enter a valid Google API Key."
157
  msgstr ""
158
 
159
- #: admin/admin-interface.php:1450
 
 
 
 
 
 
 
 
160
  msgid "Open Box Display"
161
  msgstr ""
162
 
163
- #: admin/admin-interface.php:1463
164
  msgid ""
165
  "ON and each admin panel setting box OPEN | CLOSED position are saved each "
166
  "time changes are SAVED."
167
  msgstr ""
168
 
169
- #: admin/admin-interface.php:1807
170
  msgid "Width"
171
  msgstr ""
172
 
173
- #: admin/admin-interface.php:1809
174
  msgid "Height"
175
  msgstr ""
176
 
177
- #: admin/admin-interface.php:1811
178
  msgid "Hard Crop"
179
  msgstr ""
180
 
181
- #: admin/admin-interface.php:1891
182
  msgid "-- Default Fonts --"
183
  msgstr ""
184
 
185
- #: admin/admin-interface.php:1902
186
  msgid "-- Google Fonts --"
187
  msgstr ""
188
 
189
- #: admin/admin-interface.php:1943
190
  msgid "Preview your customized typography settings"
191
  msgstr ""
192
 
193
- #: admin/admin-interface.php:2077 admin/admin-interface.php:2336
194
  msgid "Preview your customized border settings"
195
  msgstr ""
196
 
197
- #: admin/admin-interface.php:2086 admin/admin-interface.php:2327
198
  msgid "Rounded"
199
  msgstr ""
200
 
201
- #: admin/admin-interface.php:2087 admin/admin-interface.php:2328
202
  msgid "Square"
203
  msgstr ""
204
 
205
- #: admin/admin-interface.php:2097 admin/admin-interface.php:2341
206
  msgid "Top Left Corner"
207
  msgstr ""
208
 
209
- #: admin/admin-interface.php:2117 admin/admin-interface.php:2361
210
  msgid "Top Right Corner"
211
  msgstr ""
212
 
213
- #: admin/admin-interface.php:2137 admin/admin-interface.php:2381
214
  msgid "Bottom Right Corner"
215
  msgstr ""
216
 
217
- #: admin/admin-interface.php:2157 admin/admin-interface.php:2401
218
  msgid "Bottom Left Corner"
219
  msgstr ""
220
 
221
- #: admin/admin-interface.php:2250
222
  msgid "Preview your customized border styles settings"
223
  msgstr ""
224
 
225
- #: admin/admin-interface.php:2462
226
  msgid "YES"
227
  msgstr ""
228
 
229
- #: admin/admin-interface.php:2463
230
  msgid "NO"
231
  msgstr ""
232
 
233
- #: admin/admin-interface.php:2477
234
  msgid "Horizontal Shadow"
235
  msgstr ""
236
 
237
- #: admin/admin-interface.php:2495
238
  msgid "Vertical Shadow"
239
  msgstr ""
240
 
241
- #: admin/admin-interface.php:2513
242
  msgid "Blur Distance"
243
  msgstr ""
244
 
245
- #: admin/admin-interface.php:2531
246
  msgid "Spread Size"
247
  msgstr ""
248
 
249
- #: admin/admin-interface.php:2549
250
  msgid "INNER"
251
  msgstr ""
252
 
253
- #: admin/admin-interface.php:2550
254
  msgid "OUTER"
255
  msgstr ""
256
 
257
- #: admin/admin-interface.php:2568
258
  msgid "Preview your customized box shadow settings"
259
  msgstr ""
260
 
261
- #: admin/admin-interface.php:2824
262
  msgid "Save changes"
263
  msgstr ""
264
 
265
- #: admin/admin-interface.php:2825
266
  msgid "Reset Settings"
267
  msgstr ""
268
 
@@ -271,35 +283,43 @@ msgstr ""
271
  msgid "a3 Lazy Load"
272
  msgstr ""
273
 
274
- #: admin/admin-ui.php:173
275
  #, php-format
276
  msgid ""
277
  "Advanced Settings - Upgrade to the <a href=\"%s\" target=\"_blank\">%s "
278
  "License</a> to activate these settings."
279
  msgstr ""
280
 
281
- #: admin/admin-ui.php:176
282
  msgid "Pro Version"
283
  msgstr ""
284
 
285
- #: admin/includes/uploader/class-uploader.php:152
286
- msgid "Upload"
287
  msgstr ""
288
 
289
- #: admin/includes/uploader/class-uploader.php:172
290
- msgid "View File"
 
 
 
 
291
  msgstr ""
292
 
293
- #: admin/includes/uploader/class-uploader.php:191
294
- msgid "Use this Image"
 
 
 
 
295
  msgstr ""
296
 
297
- #: admin/includes/uploader/class-uploader.php:192
298
- msgid "Use as"
299
  msgstr ""
300
 
301
- #: admin/includes/uploader/class-uploader.php:202
302
- msgid "Previously Uploaded"
303
  msgstr ""
304
 
305
  #: admin/settings/template-settings/global-settings.php:153
2
  msgstr ""
3
  "Project-Id-Version: a3 Lazy Load\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2015-12-10 12:29+0700\n"
6
+ "PO-Revision-Date: 2015-12-10 12:29+0700\n"
7
  "Last-Translator: Nguyen Cong Tuan <mr.nguyencongtuan@gmail.com>\n"
8
  "Language-Team: a3rev\n"
9
  "Language: en\n"
16
  "Plural-Forms: nplurals=2; plural=(n != 1);\n"
17
  "X-Poedit-SearchPath-0: .\n"
18
 
19
+ #: admin/admin-interface.php:171
20
+ msgid "Great! You have the latest version installed."
21
+ msgstr ""
22
+
23
+ #: admin/admin-interface.php:236
24
  #: admin/settings/template-settings/global-settings.php:81
25
  msgid "Settings successfully saved."
26
  msgstr ""
27
 
28
+ #: admin/admin-interface.php:244
29
  #: admin/settings/template-settings/global-settings.php:82
30
  msgid "Error: Settings can not save."
31
  msgstr ""
32
 
33
+ #: admin/admin-interface.php:252
34
  #: admin/settings/template-settings/global-settings.php:83
35
  msgid "Settings successfully reseted."
36
  msgstr ""
37
 
38
+ #: admin/admin-interface.php:273
39
  msgid "Thin"
40
  msgstr ""
41
 
42
+ #: admin/admin-interface.php:274
43
  msgid "Thin/Italic"
44
  msgstr ""
45
 
46
+ #: admin/admin-interface.php:275
47
  msgid "Normal"
48
  msgstr ""
49
 
50
+ #: admin/admin-interface.php:276
51
  msgid "Italic"
52
  msgstr ""
53
 
54
+ #: admin/admin-interface.php:277
55
  msgid "Bold"
56
  msgstr ""
57
 
58
+ #: admin/admin-interface.php:278
59
  msgid "Bold/Italic"
60
  msgstr ""
61
 
62
+ #: admin/admin-interface.php:288
63
  msgid "Solid"
64
  msgstr ""
65
 
66
+ #: admin/admin-interface.php:289
67
  msgid "Double"
68
  msgstr ""
69
 
70
+ #: admin/admin-interface.php:290
71
  msgid "Dashed"
72
  msgstr ""
73
 
74
+ #: admin/admin-interface.php:291
75
  msgid "Dotted"
76
  msgstr ""
77
 
78
+ #: admin/admin-interface.php:292
79
  msgid "Groove"
80
  msgstr ""
81
 
82
+ #: admin/admin-interface.php:293
83
  msgid "Ridge"
84
  msgstr ""
85
 
86
+ #: admin/admin-interface.php:294
87
  msgid "Inset"
88
  msgstr ""
89
 
90
+ #: admin/admin-interface.php:295
91
  msgid "Outset"
92
  msgstr ""
93
 
94
+ #: admin/admin-interface.php:1539 admin/admin-interface.php:1625
95
+ #: admin/admin-interface.php:1828 admin/admin-interface.php:1918
96
+ #: admin/admin-interface.php:1947
97
  #: admin/settings/template-settings/global-settings.php:224
98
  #: admin/settings/template-settings/global-settings.php:242
99
  #: admin/settings/template-settings/global-settings.php:261
111
  msgid "ON"
112
  msgstr ""
113
 
114
+ #: admin/admin-interface.php:1540 admin/admin-interface.php:1626
115
+ #: admin/admin-interface.php:1829 admin/admin-interface.php:1919
116
+ #: admin/admin-interface.php:1948
117
  #: admin/settings/template-settings/global-settings.php:225
118
  #: admin/settings/template-settings/global-settings.php:243
119
  #: admin/settings/template-settings/global-settings.php:262
131
  msgid "OFF"
132
  msgstr ""
133
 
134
+ #: admin/admin-interface.php:1545
135
  msgid "Google Fonts API"
136
  msgstr ""
137
 
138
+ #: admin/admin-interface.php:1557
139
  msgid ""
140
  "ON to connect to Google Fonts API and have auto font updates direct from "
141
  "Google."
142
  msgstr ""
143
 
144
+ #: admin/admin-interface.php:1561
145
  #, php-format
146
  msgid ""
147
  "Enter your existing Google Fonts API Key below. Don't have a key? Visit <a "
148
  "href='%s' target='_blank'>Google Developer API</a> to create a key"
149
  msgstr ""
150
 
151
+ #: admin/admin-interface.php:1578
152
  msgid "Google Fonts API Key"
153
  msgstr ""
154
 
155
+ #: admin/admin-interface.php:1581
156
  msgid "Your Google API Key is valid and automatic font updates are enabled."
157
  msgstr ""
158
 
159
+ #: admin/admin-interface.php:1582
160
  msgid "Please enter a valid Google API Key."
161
  msgstr ""
162
 
163
+ #: admin/admin-interface.php:1601
164
+ msgid "Check New Version"
165
+ msgstr ""
166
+
167
+ #: admin/admin-interface.php:1612
168
+ msgid "Check Now"
169
+ msgstr ""
170
+
171
+ #: admin/admin-interface.php:1631
172
  msgid "Open Box Display"
173
  msgstr ""
174
 
175
+ #: admin/admin-interface.php:1644
176
  msgid ""
177
  "ON and each admin panel setting box OPEN | CLOSED position are saved each "
178
  "time changes are SAVED."
179
  msgstr ""
180
 
181
+ #: admin/admin-interface.php:1983
182
  msgid "Width"
183
  msgstr ""
184
 
185
+ #: admin/admin-interface.php:1985
186
  msgid "Height"
187
  msgstr ""
188
 
189
+ #: admin/admin-interface.php:1987
190
  msgid "Hard Crop"
191
  msgstr ""
192
 
193
+ #: admin/admin-interface.php:2060
194
  msgid "-- Default Fonts --"
195
  msgstr ""
196
 
197
+ #: admin/admin-interface.php:2071
198
  msgid "-- Google Fonts --"
199
  msgstr ""
200
 
201
+ #: admin/admin-interface.php:2112
202
  msgid "Preview your customized typography settings"
203
  msgstr ""
204
 
205
+ #: admin/admin-interface.php:2221 admin/admin-interface.php:2455
206
  msgid "Preview your customized border settings"
207
  msgstr ""
208
 
209
+ #: admin/admin-interface.php:2230 admin/admin-interface.php:2446
210
  msgid "Rounded"
211
  msgstr ""
212
 
213
+ #: admin/admin-interface.php:2231 admin/admin-interface.php:2447
214
  msgid "Square"
215
  msgstr ""
216
 
217
+ #: admin/admin-interface.php:2241 admin/admin-interface.php:2460
218
  msgid "Top Left Corner"
219
  msgstr ""
220
 
221
+ #: admin/admin-interface.php:2261 admin/admin-interface.php:2480
222
  msgid "Top Right Corner"
223
  msgstr ""
224
 
225
+ #: admin/admin-interface.php:2281 admin/admin-interface.php:2500
226
  msgid "Bottom Right Corner"
227
  msgstr ""
228
 
229
+ #: admin/admin-interface.php:2301 admin/admin-interface.php:2520
230
  msgid "Bottom Left Corner"
231
  msgstr ""
232
 
233
+ #: admin/admin-interface.php:2388
234
  msgid "Preview your customized border styles settings"
235
  msgstr ""
236
 
237
+ #: admin/admin-interface.php:2571
238
  msgid "YES"
239
  msgstr ""
240
 
241
+ #: admin/admin-interface.php:2572
242
  msgid "NO"
243
  msgstr ""
244
 
245
+ #: admin/admin-interface.php:2586
246
  msgid "Horizontal Shadow"
247
  msgstr ""
248
 
249
+ #: admin/admin-interface.php:2604
250
  msgid "Vertical Shadow"
251
  msgstr ""
252
 
253
+ #: admin/admin-interface.php:2622
254
  msgid "Blur Distance"
255
  msgstr ""
256
 
257
+ #: admin/admin-interface.php:2640
258
  msgid "Spread Size"
259
  msgstr ""
260
 
261
+ #: admin/admin-interface.php:2658
262
  msgid "INNER"
263
  msgstr ""
264
 
265
+ #: admin/admin-interface.php:2659
266
  msgid "OUTER"
267
  msgstr ""
268
 
269
+ #: admin/admin-interface.php:2677
270
  msgid "Preview your customized box shadow settings"
271
  msgstr ""
272
 
273
+ #: admin/admin-interface.php:2940
274
  msgid "Save changes"
275
  msgstr ""
276
 
277
+ #: admin/admin-interface.php:2941
278
  msgid "Reset Settings"
279
  msgstr ""
280
 
283
  msgid "a3 Lazy Load"
284
  msgstr ""
285
 
286
+ #: admin/admin-ui.php:179
287
  #, php-format
288
  msgid ""
289
  "Advanced Settings - Upgrade to the <a href=\"%s\" target=\"_blank\">%s "
290
  "License</a> to activate these settings."
291
  msgstr ""
292
 
293
+ #: admin/admin-ui.php:182
294
  msgid "Pro Version"
295
  msgstr ""
296
 
297
+ #: admin/admin-ui.php:232 admin/admin-ui.php:251
298
+ msgid "You should check now to see if have any new version is available"
299
  msgstr ""
300
 
301
+ #: admin/admin-ui.php:234
302
+ #, php-format
303
+ msgid ""
304
+ "Connection Failure! Please try again. If this issue persists please create a "
305
+ "support request on the plugin <a href=\"%s\" target=\"_blank\">a3rev support "
306
+ "forum</a>."
307
  msgstr ""
308
 
309
+ #: admin/admin-ui.php:242
310
+ #, php-format
311
+ msgid ""
312
+ "There is a new version <span class=\"a3rev-ui-new-plugin-version\">%s</span> "
313
+ "available, <a href=\"%s\" target=\"_blank\">update now</a> or download "
314
+ "direct from <a href=\"%s\" target=\"_blank\">My Account</a> on a3rev.com"
315
  msgstr ""
316
 
317
+ #: admin/includes/uploader/class-uploader.php:95
318
+ msgid "Upload"
319
  msgstr ""
320
 
321
+ #: admin/includes/uploader/class-uploader.php:115
322
+ msgid "View File"
323
  msgstr ""
324
 
325
  #: admin/settings/template-settings/global-settings.php:153
readme.txt CHANGED
@@ -3,8 +3,8 @@
3
  Contributors: a3rev, A3 Revolution Software Development team, nguyencongtuan
4
  Tags: a3 lazy load, Lazy Loading , image lazy load, lazyload
5
  Requires at least: 4.0
6
- Tested up to: 4.3
7
- Stable tag: 1.4.1
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -37,9 +37,9 @@ From the a3 lazy Load admin panel turn Video Support ON | OFF. When ON you can c
37
 
38
  * Post and Pages (All Content areas)
39
  * Widgets (Sidebar, header and footer)
40
-
41
  * Youtube [see demo](http://ressio.github.io/lazy-load-xt/demo/youtube-iframe.htm)
42
  * Video [see demo](http://ressio.github.io/lazy-load-xt/demo/video-html5.htm)
 
43
 
44
  = Elements loaded by iframe =
45
 
@@ -144,6 +144,16 @@ Automatic installation is the easiest option as WordPress handles the file trans
144
 
145
  == Changelog ==
146
 
 
 
 
 
 
 
 
 
 
 
147
  = 1.4.1 - 2015/08/22 =
148
  * Tweak - include new CSSMin lib from https://github.com/tubalmartin/YUI-CSS-compressor-PHP-port into plugin framework instead of old CSSMin lib from http://code.google.com/p/cssmin/ , to avoid conflict with plugins or themes that have CSSMin lib
149
  * Tweak - make __construct() function for 'Compile_Less_Sass' class instead of using a method with the same name as the class for compatibility on WP 4.3 and is deprecated on PHP4
@@ -225,6 +235,9 @@ Automatic installation is the easiest option as WordPress handles the file trans
225
 
226
  == Upgrade Notice ==
227
 
 
 
 
228
  = 1.4.1 =
229
  Major Maintenance Upgrade. 5 Code Tweaks plus 2 bug fixes for full compatibility with WordPress v 4.3.0
230
 
3
  Contributors: a3rev, A3 Revolution Software Development team, nguyencongtuan
4
  Tags: a3 lazy load, Lazy Loading , image lazy load, lazyload
5
  Requires at least: 4.0
6
+ Tested up to: 4.4
7
+ Stable tag: 1.5.0
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
37
 
38
  * Post and Pages (All Content areas)
39
  * Widgets (Sidebar, header and footer)
 
40
  * Youtube [see demo](http://ressio.github.io/lazy-load-xt/demo/youtube-iframe.htm)
41
  * Video [see demo](http://ressio.github.io/lazy-load-xt/demo/video-html5.htm)
42
+ * Fully Compatible with the popular [Youtube Embed Plugin](https://wordpress.org/plugins/youtube-embed/)
43
 
44
  = Elements loaded by iframe =
45
 
144
 
145
  == Changelog ==
146
 
147
+ = 1.5.0 - 2015/12/10 =
148
+ * Feature - Change media uploader to New UI of WordPress media uploader with WordPress Backbone and Underscore
149
+ * Feature - Apply Lazy Load for new Embed Post feature on WordPress 4.4
150
+ * Tweak - Update the uploader script to save the Attachment ID and work with New Uploader
151
+ * Tweak - Updated a3 Plugin Framework to the latest version
152
+ * Tweak - Full compatibility with Responsive Image feature on WordPress 4.4
153
+ * Tweak - Change the PlaceHolder image from data image to real image placeholder.gif for fix display on IE
154
+ * Tweak - Tested for full compatibility with WordPress major version 4.4
155
+ * Fix - Check if 'HTTP_USER_AGENT' is defined before call it from strpos
156
+
157
  = 1.4.1 - 2015/08/22 =
158
  * Tweak - include new CSSMin lib from https://github.com/tubalmartin/YUI-CSS-compressor-PHP-port into plugin framework instead of old CSSMin lib from http://code.google.com/p/cssmin/ , to avoid conflict with plugins or themes that have CSSMin lib
159
  * Tweak - make __construct() function for 'Compile_Less_Sass' class instead of using a method with the same name as the class for compatibility on WP 4.3 and is deprecated on PHP4
235
 
236
  == Upgrade Notice ==
237
 
238
+ = 1.5.0 =
239
+ Feature Upgrade. 2 new features plus 1 bug fix and tweaks for full compatibility with WordPress major Version 4.4
240
+
241
  = 1.4.1 =
242
  Major Maintenance Upgrade. 5 Code Tweaks plus 2 bug fixes for full compatibility with WordPress v 4.3.0
243