a3 Lazy Load - Version 1.7.0

Version Description

Feature Upgrade. Full compatibility with WordPress AMP. No settings for it - just auto. 3 other features, 3 code tweaks and 1 major Microsoft Browser bug fix

Download this release

Release Info

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

Code changes from version 1.6.0 to 1.7.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.6.0
6
  Author: a3 Revolution
7
  Author URI: http://www.a3rev.com/
8
  Requires at least: 3.8
9
- Tested up to: 4.4.1
10
  License: GPLv2 or later
11
  Copyright © 2011 a3 Revolution Software Development team
12
  a3 Revolution Software Development team
@@ -17,7 +17,7 @@ License: GPLv2 or later
17
  */
18
  ?>
19
  <?php
20
- define('A3_LAZY_VERSION', '1.6.0');
21
  define('A3_LAZY_LOAD_FILE_PATH', dirname(__FILE__));
22
  define('A3_LAZY_LOAD_DIR_NAME', basename(A3_LAZY_LOAD_FILE_PATH));
23
  define('A3_LAZY_LOAD_FOLDER', dirname(plugin_basename(__FILE__)));
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.7.0
6
  Author: a3 Revolution
7
  Author URI: http://www.a3rev.com/
8
  Requires at least: 3.8
9
+ Tested up to: 4.4.2
10
  License: GPLv2 or later
11
  Copyright © 2011 a3 Revolution Software Development team
12
  a3 Revolution Software Development team
17
  */
18
  ?>
19
  <?php
20
+ define('A3_LAZY_VERSION', '1.7.0');
21
  define('A3_LAZY_LOAD_FILE_PATH', dirname(__FILE__));
22
  define('A3_LAZY_LOAD_DIR_NAME', basename(A3_LAZY_LOAD_FILE_PATH));
23
  define('A3_LAZY_LOAD_FOLDER', dirname(plugin_basename(__FILE__)));
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.6.0');
6
 
7
  // Set Settings Default from Admin Init
8
  global $a3_lazy_load_admin_init;
@@ -59,6 +59,12 @@ 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.6.0');
 
 
 
 
 
 
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.7.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
+ // Upgrade to 1.7.0
63
+ if ( version_compare(get_option('a3_lazy_load_version'), '1.7.0') === -1 ) {
64
+ update_option('a3_lazy_load_version', '1.7.0');
65
+ update_option('a3_lazy_load_style_version', time() );
66
+ }
67
+
68
+ update_option('a3_lazy_load_version', '1.7.0');
69
  }
70
  ?>
admin/admin-interface.php CHANGED
@@ -728,6 +728,10 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
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'], '[' ) ) {
@@ -1081,7 +1085,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1081
  * @return void
1082
  * ========================================================================
1083
  * Option Array Structure :
1084
- * type => heading | google_api_key | onoff_toggle_box | text | email | number | password | color | textarea | select | multiselect | radio | onoff_radio | checkbox | onoff_checkbox
1085
  * | switcher_checkbox | image_size | single_select_page | typography | border | border_styles | border_corner | box_shadow
1086
  * | slider | upload | wp_editor | array_textfields |
1087
  *
@@ -1091,6 +1095,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1091
  * class => text
1092
  * css => text
1093
  * default => text : apply for other types
 
1094
  * array( 'width' => '125', 'height' => '125', 'crop' => 1 ) : apply image_size only
1095
  * array( 'size' => '9px', 'face' => 'Arial', 'style' => 'normal', 'color' => '#515151' ) : apply for typography only
1096
  * array( 'width' => '1px', 'style' => 'normal', 'color' => '#515151', 'corner' => 'rounded' | 'square' , 'top_left_corner' => 3,
@@ -1154,6 +1159,8 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1154
  * )
1155
  * ---------------------------------------------
1156
  *
 
 
1157
  */
1158
 
1159
  public function admin_forms( $options, $form_key, $option_name = '', $form_messages = array() ) {
@@ -1338,6 +1345,12 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1338
  $description = str_replace( '[default_value_blur]', $value['default']['blur'], $description );
1339
  $description = str_replace( '[default_value_spread]', $value['default']['spread'], $description );
1340
 
 
 
 
 
 
 
1341
  } elseif ( $value['type'] != 'multiselect' ) {
1342
  $description = str_replace( '[default_value]', $value['default'], $description );
1343
  }
@@ -1697,12 +1710,57 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
1697
  /> <?php echo $description; ?>
1698
  </td>
1699
  </tr><?php
1700
-
1701
  break;
1702
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1703
  // Textarea
1704
  case 'textarea':
1705
-
1706
  ?><tr valign="top">
1707
  <th scope="row" class="titledesc">
1708
  <?php echo $tip; ?>
@@ -2724,6 +2782,11 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
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 {
@@ -2738,7 +2801,7 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
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
 
@@ -3078,7 +3141,40 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
3078
 
3079
  return $values;
3080
  }
3081
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3082
  /*-----------------------------------------------------------------------------------*/
3083
  /* generate_border_css() */
3084
  /* Generate Border CSS on frontend */
@@ -3174,9 +3270,35 @@ class A3_Lazy_Load_Admin_Interface extends A3_Lazy_Load_Admin_UI
3174
 
3175
  }
3176
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3177
  }
3178
 
3179
  global $a3_lazy_load_admin_interface;
3180
  $a3_lazy_load_admin_interface = new A3_Lazy_Load_Admin_Interface();
3181
 
3182
- ?>
728
  // Just for Color type
729
  if ( 'color' == $value['type'] && '' == trim( $option_value ) ) {
730
  $option_value = 'transparent';
731
+ }
732
+ // Just for Background Color type
733
+ elseif ( 'bg_color' == $value['type'] && '' == trim( $option_value['color'] ) ) {
734
+ $option_value['color'] = 'transparent';
735
  } elseif ( 'upload' == $value['type'] ) {
736
  // Uploader: Set key and value for attachment id of upload type
737
  if ( strstr( $value['id'], '[' ) ) {
1085
  * @return void
1086
  * ========================================================================
1087
  * Option Array Structure :
1088
+ * type => heading | google_api_key | onoff_toggle_box | text | email | number | password | color | bg_color | textarea | select | multiselect | radio | onoff_radio | checkbox | onoff_checkbox
1089
  * | switcher_checkbox | image_size | single_select_page | typography | border | border_styles | border_corner | box_shadow
1090
  * | slider | upload | wp_editor | array_textfields |
1091
  *
1095
  * class => text
1096
  * css => text
1097
  * default => text : apply for other types
1098
+ * array( 'enable' => 1, 'color' => '#515151' ) : apply bg_color only
1099
  * array( 'width' => '125', 'height' => '125', 'crop' => 1 ) : apply image_size only
1100
  * array( 'size' => '9px', 'face' => 'Arial', 'style' => 'normal', 'color' => '#515151' ) : apply for typography only
1101
  * array( 'width' => '1px', 'style' => 'normal', 'color' => '#515151', 'corner' => 'rounded' | 'square' , 'top_left_corner' => 3,
1159
  * )
1160
  * ---------------------------------------------
1161
  *
1162
+ * strip_methods => true | false : apply for upload type only
1163
+ *
1164
  */
1165
 
1166
  public function admin_forms( $options, $form_key, $option_name = '', $form_messages = array() ) {
1345
  $description = str_replace( '[default_value_blur]', $value['default']['blur'], $description );
1346
  $description = str_replace( '[default_value_spread]', $value['default']['spread'], $description );
1347
 
1348
+ } elseif ( $value['type'] == 'bg_color' ) {
1349
+ if ( ! is_array( $value['default'] ) ) $value['default'] = array();
1350
+ if ( ! isset( $value['default']['enable'] ) || trim( $value['default']['enable'] ) == '' ) $value['default']['enable'] = 0;
1351
+ if ( ! isset( $value['default']['color'] ) || trim( $value['default']['color'] ) == '' ) $value['default']['color'] = '#515151';
1352
+
1353
+ $description = str_replace( '[default_value_color]', $value['default']['color'], $description );
1354
  } elseif ( $value['type'] != 'multiselect' ) {
1355
  $description = str_replace( '[default_value]', $value['default'], $description );
1356
  }
1710
  /> <?php echo $description; ?>
1711
  </td>
1712
  </tr><?php
1713
+
1714
  break;
1715
+
1716
+ // Background Color
1717
+ case 'bg_color' :
1718
+
1719
+ if ( ! isset( $option_value['enable'] ) ) $option_value['enable'] = 0;
1720
+ $enable = $option_value['enable'];
1721
+
1722
+ if ( trim( $value['default']['color'] ) == '' ) $value['default']['color'] = '#515151';
1723
+ $default_color = ' data-default-color="' . esc_attr( $value['default']['color'] ) . '"';
1724
+
1725
+ $color = $option_value['color'];
1726
+ if ( '' == trim( $color ) ) $color = 'transparent';
1727
+
1728
+ ?><tr valign="top">
1729
+ <th scope="row" class="titledesc">
1730
+ <?php echo $tip; ?>
1731
+ <label for="<?php echo $id_attribute; ?>"><?php echo esc_html( $value['name'] ); ?></label>
1732
+ </th>
1733
+ <td class="forminp forminp-<?php echo sanitize_title( $value['type'] ) ?>">
1734
+ <input
1735
+ name="<?php echo $name_attribute; ?>[enable]"
1736
+ id="<?php echo $id_attribute; ?>"
1737
+ class="a3rev-ui-bg_color-enable a3rev-ui-onoff_checkbox <?php echo esc_attr( $value['class'] ); ?>"
1738
+ checked_label="<?php _e( 'ON', 'a3_lazy_load' ); ?>"
1739
+ unchecked_label="<?php _e( 'OFF', 'a3_lazy_load' ); ?>"
1740
+ type="checkbox"
1741
+ value="1"
1742
+ <?php checked( 1, $enable ); ?>
1743
+ <?php echo implode( ' ', $custom_attributes ); ?>
1744
+ /> <?php echo $description; ?>
1745
+ <div style="clear:both;"></div>
1746
+ <div class="a3rev-ui-bg_color-enable-container">
1747
+ <input
1748
+ name="<?php echo $name_attribute; ?>[color]"
1749
+ id="<?php echo $id_attribute; ?>-color"
1750
+ type="text"
1751
+ value="<?php echo esc_attr( $color ); ?>"
1752
+ class="a3rev-color-picker"
1753
+ <?php echo $default_color; ?>
1754
+ />
1755
+ </div>
1756
+ </td>
1757
+ </tr><?php
1758
+
1759
+ break;
1760
+
1761
  // Textarea
1762
  case 'textarea':
1763
+
1764
  ?><tr valign="top">
1765
  <th scope="row" class="titledesc">
1766
  <?php echo $tip; ?>
2782
 
2783
  $class = 'a3rev-ui-' . sanitize_title( $value['type'] ) . ' ' . esc_attr( $value['class'] );
2784
 
2785
+ $strip_methods = true;
2786
+ if ( isset( $value['strip_methods'] ) ) {
2787
+ $strip_methods = $value['strip_methods'];
2788
+ }
2789
+
2790
  if ( strstr( $name_attribute, ']' ) ) {
2791
  $attachment_id_name_attribute = substr_replace( $name_attribute, '_attachment_id', -1, 0 );
2792
  } else {
2801
  </th>
2802
  <td class="forminp forminp-<?php echo sanitize_title( $value['type'] ) ?>">
2803
  <?php echo $description; ?>
2804
+ <?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'] ) , '', $strip_methods );?>
2805
  </td>
2806
  </tr><?php
2807
 
3141
 
3142
  return $values;
3143
  }
3144
+
3145
+ /*-----------------------------------------------------------------------------------*/
3146
+ /* hextorgb() */
3147
+ /* Convert Hex to RGB for color */
3148
+ /*-----------------------------------------------------------------------------------*/
3149
+ public function hextorgb( $color = '', $text = true ) {
3150
+ $color = trim( $color );
3151
+ if ( '' == $color || 'transparent' == $color ) {
3152
+ return false;
3153
+ }
3154
+
3155
+ if ( '#' == $color[0] ) {
3156
+ $color = substr( $color, 1 );
3157
+ }
3158
+
3159
+ if ( 6 == strlen( $color ) ) {
3160
+ list( $r, $g, $b ) = array( $color[0].$color[1], $color[2].$color[3], $color[4].$color[5] );
3161
+ } elseif ( 3 == strlen( $color ) ) {
3162
+ list( $r, $g, $b ) = array( $color[0].$color[0], $color[1].$color[1], $color[2].$color[2] );
3163
+ } else {
3164
+ return false;
3165
+ }
3166
+
3167
+ $r = hexdec($r);
3168
+ $g = hexdec($g);
3169
+ $b = hexdec($b);
3170
+
3171
+ if ( $text ) {
3172
+ return $r.','.$g.','.$b;
3173
+ } else {
3174
+ return array( $r, $g, $b );
3175
+ }
3176
+ }
3177
+
3178
  /*-----------------------------------------------------------------------------------*/
3179
  /* generate_border_css() */
3180
  /* Generate Border CSS on frontend */
3270
 
3271
  }
3272
 
3273
+ /*-----------------------------------------------------------------------------------*/
3274
+ /* generate_background_css() */
3275
+ /* Generate Background Color CSS on frontend */
3276
+ /*-----------------------------------------------------------------------------------*/
3277
+ public function generate_background_color_css( $option, $transparency = 100 ) {
3278
+
3279
+ $return_css = '';
3280
+
3281
+ if ( isset( $option['enable'] ) && $option['enable'] == 1 ) {
3282
+ $color = $option['color'];
3283
+ if ( 100 != $transparency ) {
3284
+ $color = $this->hextorgb( $color );
3285
+ $transparency = (int) $transparency / 100;
3286
+
3287
+ if ( $color !== false ) {
3288
+ $return_css .= 'background-color: rgba( ' . $color . ', ' . $transparency . ' ) !important;';
3289
+ } else {
3290
+ $return_css .= 'background-color: transparent !important ;';
3291
+ }
3292
+ } else {
3293
+ $return_css .= 'background-color: ' . $color . ' !important ;';
3294
+ }
3295
+ } else {
3296
+ $return_css .= 'background-color: transparent !important ;';
3297
+ }
3298
+ }
3299
  }
3300
 
3301
  global $a3_lazy_load_admin_interface;
3302
  $a3_lazy_load_admin_interface = new A3_Lazy_Load_Admin_Interface();
3303
 
3304
+ ?>
admin/admin-ui.php CHANGED
@@ -99,6 +99,91 @@ class A3_Lazy_Load_Admin_UI
99
  return (array)$admin_pages;
100
  }
101
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
102
  public function plugin_extension_boxes( $echo = false ) {
103
 
104
  /**
99
  return (array)$admin_pages;
100
  }
101
 
102
+ /**
103
+ * get_premium_video_data()
104
+ * return array
105
+ * Data is used for Premium Video Box
106
+ */
107
+ public function get_premium_video_data() {
108
+ $premium_video_data = array(
109
+ 'box_title' => __( 'Premium Version Enhanced Features', 'a3_lazy_load' ),
110
+ 'image_url' => A3_LAZY_LOAD_IMAGES_URL. '/video.jpg',
111
+ 'video_url' => 'https://www.youtube.com/embed/9dGw-ORfMIk?version=3&autoplay=1',
112
+ 'left_title' => __( 'Premium Version Enhanced Features', 'a3_lazy_load' ),
113
+ 'left_text' => __( 'WooCommerce Dynamic Gallery Premium', 'a3_lazy_load' )
114
+ . "\n\n" . __( 'Quick Video showing the main (not all) enhanced features that are built into the WooCommerce Dynamic Gallery Premium version', 'a3_lazy_load' ),
115
+ 'right_title' => __( 'Developer Support and Premium Features', 'a3_lazy_load' ),
116
+ 'right_text' => __( 'Limited Time Offer. Purchase the Premium Version Lifetime License. That is a Lifetime of maintenance updates, feature upgrades and developer support for a once only fee. Offer ending soon.', 'a3_lazy_load' )
117
+ . "\n\n" . '<a target="_blank" href="'.$this->pro_plugin_page_url.'" class="button-primary">' . __( 'Get Premium Features and Support', '' ) . '</a>',
118
+ );
119
+
120
+ return $premium_video_data;
121
+ }
122
+
123
+ public function plugin_premium_video_box( $echo = true ) {
124
+ $premium_video_data = apply_filters( $this->plugin_name . '_plugin_premium_video_data', $this->get_premium_video_data() );
125
+
126
+ $output = '<div id="a3_plugin_premium_video_container">';
127
+ $output .= '<div class="a3rev_panel_container">';
128
+ $output .= '<div class="a3rev_panel_box">';
129
+ $output .= '<div class="a3rev_panel_box_handle">';
130
+ $output .= '<h3 class="a3-plugin-ui-panel-box">'.$premium_video_data['box_title'].'</h3>';
131
+ $output .= '</div>';
132
+ $output .= '<div class="a3rev_panel_video_box">';
133
+ $output .= $this->plugin_premium_video();
134
+ $output .= $this->plugin_premium_video_text();
135
+ $output .= '</div>';
136
+ $output .= '</div>';
137
+ $output .= '</div>';
138
+ $output .= '</div>';
139
+
140
+ $output = apply_filters( $this->plugin_name . '_plugin_premium_video', $output );
141
+
142
+ if ( $echo )
143
+ echo $output;
144
+ else
145
+ return $output;
146
+ }
147
+
148
+ public function plugin_premium_video( $echo = false ) {
149
+ $premium_video_data = apply_filters( $this->plugin_name . '_plugin_premium_video_data', $this->get_premium_video_data() );
150
+
151
+ wp_enqueue_style('thickbox');
152
+ wp_enqueue_script('thickbox');
153
+
154
+ $output = '<div class="a3rev_panel_box_left_inside">';
155
+ $output .= '<h2>' . $premium_video_data['left_title'] . '</h2>';
156
+ $output .= '<a class="a3-plugin-premium-image thickbox" title="'.esc_attr( $premium_video_data['left_title'] ).'" href="'.esc_url( add_query_arg( array( 'TB_iframe' => 'true', 'width' => 640, 'height' => 360 ), $premium_video_data['video_url'] ) ).'">';
157
+ $output .= '<img src="'.esc_url( $premium_video_data['image_url'] ).'" />';
158
+ $output .= '<div class="a3-plugin-premium-video-play"></div>';
159
+ $output .= '</a>';
160
+ $output .= wpautop( $premium_video_data['left_text'] );
161
+ $output .= '</div>';
162
+
163
+ if ( $echo )
164
+ echo $output;
165
+ else
166
+ return $output;
167
+ }
168
+
169
+ public function plugin_premium_video_text( $echo = false ) {
170
+ $premium_video_data = apply_filters( $this->plugin_name . '_plugin_premium_video_data', $this->get_premium_video_data() );
171
+
172
+ $output = '';
173
+ if ( '' != trim( $premium_video_data['right_text'] ) ) {
174
+ $output .= '<div class="a3rev_panel_box_separate"></div>';
175
+ $output .= '<div class="a3rev_panel_box_right_inside">';
176
+ $output .= '<h2>' . $premium_video_data['right_title'] . '</h2>';
177
+ $output .= wpautop( $premium_video_data['right_text'] );
178
+ $output .= '</div>';
179
+ }
180
+
181
+ if ( $echo )
182
+ echo $output;
183
+ else
184
+ return $output;
185
+ }
186
+
187
  public function plugin_extension_boxes( $echo = false ) {
188
 
189
  /**
admin/assets/css/a3_admin_metabox.css CHANGED
@@ -111,7 +111,7 @@ ul.a3-metabox-data-tabs li.active a {
111
  .a3-metabox-panel table.form-table td *,
112
  .a3-metabox-panel table.form-table td,
113
  .a3-metabox-panel * {
114
- font-size: 12px;
115
  }
116
 
117
  .a3-metabox-wrapper .toolbar {
@@ -153,7 +153,7 @@ ul.a3-metabox-data-tabs li.active a {
153
  border-top-right-radius: 3px
154
  }
155
  .a3-metabox-wrapper .a3-metabox-item .handlediv:before {
156
- line-height: .5!important;
157
  }
158
  .a3-metabox-wrapper .a3-metabox-item.closed {
159
  -moz-border-radius: 3px;
@@ -165,13 +165,16 @@ ul.a3-metabox-data-tabs li.active a {
165
  }
166
  .a3-metabox-wrapper .a3-metabox-item h3 {
167
  margin: 0!important;
168
- padding: 6px 6px 6px 0 !important;
169
  font-size: 1em!important;
170
  overflow: hidden;
171
  zoom: 1;
172
  cursor: pointer;
173
  position: relative;
174
  }
 
 
 
175
  .a3-metabox-wrapper .a3-metabox-item.open h3 {
176
  cursor: ne-resize;
177
  }
@@ -182,12 +185,13 @@ ul.a3-metabox-data-tabs li.active a {
182
  float: right;
183
  }
184
  .a3-metabox-wrapper .a3-metabox-item h3 strong {
185
- font-weight: 400;
186
- line-height: 24px;
187
  }
188
  .a3-metabox-wrapper .a3-metabox-item h3 .handlediv {
189
  background-position: 6px 5px!important;
190
  height: 24px;
 
191
  position: absolute;
192
  z-index: 1000;
193
  right: 0;
@@ -216,7 +220,7 @@ ul.a3-metabox-data-tabs li.active a {
216
  }
217
  .a3-metabox-wrapper .a3-metabox-item table td {
218
  text-align: left;
219
- padding: 6px;
220
  vertical-align: top;
221
  border: 0
222
  }
@@ -274,4 +278,4 @@ ul.a3-metabox-data-tabs li.active a {
274
  .a3-metabox-wrapper, .a3-metabox-options-panel {
275
  width: 98%;
276
  }
277
- }
111
  .a3-metabox-panel table.form-table td *,
112
  .a3-metabox-panel table.form-table td,
113
  .a3-metabox-panel * {
114
+ font-size: 13px;
115
  }
116
 
117
  .a3-metabox-wrapper .toolbar {
153
  border-top-right-radius: 3px
154
  }
155
  .a3-metabox-wrapper .a3-metabox-item .handlediv:before {
156
+ line-height: 1!important;
157
  }
158
  .a3-metabox-wrapper .a3-metabox-item.closed {
159
  -moz-border-radius: 3px;
165
  }
166
  .a3-metabox-wrapper .a3-metabox-item h3 {
167
  margin: 0!important;
168
+ padding: 10px 10px 10px 0 !important;
169
  font-size: 1em!important;
170
  overflow: hidden;
171
  zoom: 1;
172
  cursor: pointer;
173
  position: relative;
174
  }
175
+ .a3-metabox-wrapper .a3-metabox-item h3 span {
176
+ font-weight: 400;
177
+ }
178
  .a3-metabox-wrapper .a3-metabox-item.open h3 {
179
  cursor: ne-resize;
180
  }
185
  float: right;
186
  }
187
  .a3-metabox-wrapper .a3-metabox-item h3 strong {
188
+ line-height: 1;
189
+ margin-left: 10px;
190
  }
191
  .a3-metabox-wrapper .a3-metabox-item h3 .handlediv {
192
  background-position: 6px 5px!important;
193
  height: 24px;
194
+ width: 24px;
195
  position: absolute;
196
  z-index: 1000;
197
  right: 0;
220
  }
221
  .a3-metabox-wrapper .a3-metabox-item table td {
222
  text-align: left;
223
+ padding: 10px;
224
  vertical-align: top;
225
  border: 0
226
  }
278
  .a3-metabox-wrapper, .a3-metabox-options-panel {
279
  width: 98%;
280
  }
281
+ }
admin/assets/css/admin-ui-style.css CHANGED
@@ -302,6 +302,9 @@
302
  text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.6);
303
  }
304
 
 
 
 
305
  /* Box Shadow Control */
306
  .a3rev_panel_container .a3rev-ui-box_shadow-h_shadow { width:80px; }
307
  .a3rev_panel_container .a3rev-ui-box_shadow-v_shadow { width:80px; }
@@ -588,6 +591,62 @@
588
  /* View Doc button */
589
  .a3-view-docs-button { background-color: #FFFFE0 !important; border: 1px solid #E6DB55 !important; display: inline-block !important; font-weight: normal !important; margin: 5px 10px 0 !important; text-shadow: none !important; }
590
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
591
 
592
  /* Style for yellow box about Pro or Ultimate version */
593
  #a3_plugin_panel_container { position:relative; margin-top:10px; float: left; width: 100%; }
@@ -597,6 +656,7 @@
597
  #a3_plugin_panel_extensions img { width:auto; max-width:100%; }
598
  .pro_feature_top_message { font-size:11px; text-align:center; margin:10px 0; }
599
  .pro_feature_fields { position: relative; border:2px solid #E6DB55;-webkit-border-radius:10px;-moz-border-radius:10px;-o-border-radius:10px; border-radius: 10px; }
 
600
 
601
  /* Style for Blue message box */
602
  .a3rev_blue_message_box {
@@ -736,6 +796,23 @@
736
  }
737
  }
738
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
739
  @media screen and ( max-width: 480px ) {
740
  .a3rev_panel_container .a3rev-ui-slide-container-start {
741
  margin-top:5px;
@@ -746,4 +823,9 @@
746
  .a3rev_panel_container .chosen-container-single {
747
  max-width: 300px !important;
748
  }
 
 
 
 
 
749
  }
302
  text-shadow: 0px 0px 2px rgba(0, 0, 0, 0.6);
303
  }
304
 
305
+ /* Background Color Control */
306
+ .a3rev_panel_container .a3rev-ui-bg_color-enable-container { margin-top:10px; }
307
+
308
  /* Box Shadow Control */
309
  .a3rev_panel_container .a3rev-ui-box_shadow-h_shadow { width:80px; }
310
  .a3rev_panel_container .a3rev-ui-box_shadow-v_shadow { width:80px; }
591
  /* View Doc button */
592
  .a3-view-docs-button { background-color: #FFFFE0 !important; border: 1px solid #E6DB55 !important; display: inline-block !important; font-weight: normal !important; margin: 5px 10px 0 !important; text-shadow: none !important; }
593
 
594
+ /* Style for Premium Video Box */
595
+ #a3_plugin_premium_video_container { margin-top: 10px; }
596
+ #a3_plugin_premium_video_container .a3rev_panel_box { margin-bottom: 0px; }
597
+ #a3_plugin_premium_video_container .a3-plugin-ui-panel-box { color: #006799; cursor: default; }
598
+ #a3_plugin_premium_video_container .a3-plugin-ui-panel-box::before {
599
+ color: #006799;
600
+ content: "f";
601
+ }
602
+ #a3_plugin_premium_video_container .a3rev_panel_video_box {
603
+ border-top: 1px solid #eee;
604
+ overflow: hidden;
605
+ padding: 0;
606
+ position: relative;
607
+ }
608
+ #a3_plugin_premium_video_container .a3rev_panel_box_left_inside,
609
+ #a3_plugin_premium_video_container .a3rev_panel_box_right_inside {
610
+ width: calc( 50% - 1px );
611
+ padding: 12px 12px 30px 12px;
612
+ box-sizing: border-box;
613
+ float: left;
614
+ }
615
+ #a3_plugin_premium_video_container .a3rev_panel_box_separate {
616
+ width: 1px;
617
+ height: 100%;
618
+ background-color: #eee;
619
+ position: absolute;
620
+ top: 0;
621
+ left: 50%;
622
+ margin-left: -2px;
623
+ }
624
+ #a3_plugin_premium_video_container .a3-plugin-premium-image {
625
+ position: relative;
626
+ float: left;
627
+ width: 50%;
628
+ margin-right: 15px;
629
+ }
630
+ #a3_plugin_premium_video_container .a3-plugin-premium-image img {
631
+ height: auto;
632
+ width: 100%;
633
+ float: left;
634
+ }
635
+ #a3_plugin_premium_video_container .a3-plugin-premium-video-play {
636
+ position: absolute;
637
+ top: 0;
638
+ left: 0;
639
+ width: 100%;
640
+ height: 100%;
641
+ background-image: url('../images/play_video.png');
642
+ background-repeat: no-repeat;
643
+ background-position: center center;
644
+ background-size: 80px auto;
645
+ background-color: rgba(0, 0, 0, 0.2);
646
+ }
647
+ #a3_plugin_premium_video_container .a3-plugin-video-play:hover {
648
+ background-color: rgba(0, 0, 0, 0.6);
649
+ }
650
 
651
  /* Style for yellow box about Pro or Ultimate version */
652
  #a3_plugin_panel_container { position:relative; margin-top:10px; float: left; width: 100%; }
656
  #a3_plugin_panel_extensions img { width:auto; max-width:100%; }
657
  .pro_feature_top_message { font-size:11px; text-align:center; margin:10px 0; }
658
  .pro_feature_fields { position: relative; border:2px solid #E6DB55;-webkit-border-radius:10px;-moz-border-radius:10px;-o-border-radius:10px; border-radius: 10px; }
659
+ .pro_feature_hidden { display: none !important; }
660
 
661
  /* Style for Blue message box */
662
  .a3rev_blue_message_box {
796
  }
797
  }
798
 
799
+ @media screen and ( max-width: 600px ) {
800
+ #a3_plugin_premium_video_container .a3rev_panel_box_left_inside,
801
+ #a3_plugin_premium_video_container .a3rev_panel_box_right_inside {
802
+ width: 100%;
803
+ float: left;
804
+ }
805
+ #a3_plugin_premium_video_container .a3rev_panel_box_separate {
806
+ width: 100%;
807
+ height: 1px;
808
+ position: relative;
809
+ margin-left: 0;
810
+ float: left;
811
+ left: auto;
812
+ top: auto;
813
+ }
814
+ }
815
+
816
  @media screen and ( max-width: 480px ) {
817
  .a3rev_panel_container .a3rev-ui-slide-container-start {
818
  margin-top:5px;
823
  .a3rev_panel_container .chosen-container-single {
824
  max-width: 300px !important;
825
  }
826
+ #a3_plugin_premium_video_container .a3-plugin-premium-image {
827
+ width: 100%;
828
+ margin-right: 0px;
829
+ margin-bottom: 10px;
830
+ }
831
  }
admin/assets/css/admin-ui-style.min.css CHANGED
@@ -84,6 +84,7 @@
84
  .a3rev_panel_container .a3rev-ui-border_corner-px{float:left;margin-right:10px}
85
  .a3rev_panel_container .forminp-border_corner .settings-apply-preview{border:1px solid #515151}
86
  .a3rev_panel_container .forminp-border_corner .iPhoneCheckContainer .iPhoneCheckLabelOff,.a3rev_panel_container .forminp-border_corner .iOSCheckContainer .iOSCheckLabelOff{background:#569aef;background:-moz-linear-gradient(top,#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);background:-webkit-gradient(linear,0 0,0 100%,color-stop(20%,#468be0),color-stop(50%,#569aef),color-stop(52%,#6aa7f6),color-stop(100%,#82b3f5));background:-webkit-linear-gradient(top,#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);background:-o-linear-gradient(top,#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);background:-ms-linear-gradient(top,#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);background:linear-gradient(#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#468be0',endColorstr='#82b3f5',GradientType=0);box-shadow:0 1px 2px 0 rgba(0,0,0,0.5) inset,0 1px 0 0 rgba(250,250,250,0.5);-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,0.5) inset,0 1px 0 0 rgba(250,250,250,0.5);border:1px solid #666;border-radius:5px;-webkit-border-radius:5px 5px 5px 5px;-moz-border-radius:5px;color:#FFF;text-shadow:0 0 2px rgba(0,0,0,0.6)}
 
87
  .a3rev_panel_container .a3rev-ui-box_shadow-h_shadow{width:80px}
88
  .a3rev_panel_container .a3rev-ui-box_shadow-v_shadow{width:80px}
89
  .a3rev_panel_container .a3rev-ui-box_shadow-blur{width:80px}
@@ -118,6 +119,17 @@
118
  .subsubsub{white-space:normal}
119
  .subsubsub li{white-space:nowrap}
120
  .a3-view-docs-button{background-color:#FFFFE0!important;border:1px solid #E6DB55!important;display:inline-block!important;font-weight:400!important;margin:5px 10px 0!important;text-shadow:none!important}
 
 
 
 
 
 
 
 
 
 
 
121
  #a3_plugin_panel_container{position:relative;margin-top:10px;float:left;width:100%}
122
  #a3_plugin_panel_fields{padding-right:280px}
123
  #a3_plugin_panel_upgrade_area{float:right;padding-left:20px;width:260px;margin-top:10px}
@@ -125,6 +137,7 @@
125
  #a3_plugin_panel_extensions img{width:auto;max-width:100%}
126
  .pro_feature_top_message{font-size:11px;text-align:center;margin:10px 0}
127
  .pro_feature_fields{position:relative;border:2px solid #E6DB55;-webkit-border-radius:10px;-moz-border-radius:10px;-o-border-radius:10px;border-radius:10px}
 
128
  .a3rev_blue_message_box{margin:0!important;background-color:#F0F8FF;border-color:#CEE1EF;padding:5px 10px;border-radius:3px 3px 3px 3px;-webkit-border-radius:3px 3px 3px 3px;-moz-border-radius:3px;border-style:solid;border-width:1px}
129
  .a3rev_blue_message_box a{color:red}
130
  .a3rev_panel_container .chosen-container{margin-bottom:5px;margin-right:2px}
@@ -158,8 +171,13 @@
158
  .a3rev_blue_message_box_container{width:100%!important}
159
  .a3-plugin-ui-help-icon{margin-right:0}
160
  }
 
 
 
 
161
  @media screen and ( max-width: 480px ) {
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
  }
84
  .a3rev_panel_container .a3rev-ui-border_corner-px{float:left;margin-right:10px}
85
  .a3rev_panel_container .forminp-border_corner .settings-apply-preview{border:1px solid #515151}
86
  .a3rev_panel_container .forminp-border_corner .iPhoneCheckContainer .iPhoneCheckLabelOff,.a3rev_panel_container .forminp-border_corner .iOSCheckContainer .iOSCheckLabelOff{background:#569aef;background:-moz-linear-gradient(top,#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);background:-webkit-gradient(linear,0 0,0 100%,color-stop(20%,#468be0),color-stop(50%,#569aef),color-stop(52%,#6aa7f6),color-stop(100%,#82b3f5));background:-webkit-linear-gradient(top,#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);background:-o-linear-gradient(top,#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);background:-ms-linear-gradient(top,#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);background:linear-gradient(#468be0 20%,#569aef 50%,#6aa7f6 52%,#82b3f5 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#468be0',endColorstr='#82b3f5',GradientType=0);box-shadow:0 1px 2px 0 rgba(0,0,0,0.5) inset,0 1px 0 0 rgba(250,250,250,0.5);-webkit-box-shadow:0 1px 2px 0 rgba(0,0,0,0.5) inset,0 1px 0 0 rgba(250,250,250,0.5);border:1px solid #666;border-radius:5px;-webkit-border-radius:5px 5px 5px 5px;-moz-border-radius:5px;color:#FFF;text-shadow:0 0 2px rgba(0,0,0,0.6)}
87
+ .a3rev_panel_container .a3rev-ui-bg_color-enable-container{margin-top:10px}
88
  .a3rev_panel_container .a3rev-ui-box_shadow-h_shadow{width:80px}
89
  .a3rev_panel_container .a3rev-ui-box_shadow-v_shadow{width:80px}
90
  .a3rev_panel_container .a3rev-ui-box_shadow-blur{width:80px}
119
  .subsubsub{white-space:normal}
120
  .subsubsub li{white-space:nowrap}
121
  .a3-view-docs-button{background-color:#FFFFE0!important;border:1px solid #E6DB55!important;display:inline-block!important;font-weight:400!important;margin:5px 10px 0!important;text-shadow:none!important}
122
+ #a3_plugin_premium_video_container{margin-top:10px}
123
+ #a3_plugin_premium_video_container .a3rev_panel_box{margin-bottom:0}
124
+ #a3_plugin_premium_video_container .a3-plugin-ui-panel-box{color:#006799;cursor:default}
125
+ #a3_plugin_premium_video_container .a3-plugin-ui-panel-box::before{color:#006799;content:"f"}
126
+ #a3_plugin_premium_video_container .a3rev_panel_video_box{border-top:1px solid #eee;overflow:hidden;padding:0;position:relative}
127
+ #a3_plugin_premium_video_container .a3rev_panel_box_left_inside,#a3_plugin_premium_video_container .a3rev_panel_box_right_inside{width:calc(50% - 1px);padding:12px 12px 30px 12px;box-sizing:border-box;float:left}
128
+ #a3_plugin_premium_video_container .a3rev_panel_box_separate{width:1px;height:100%;background-color:#eee;position:absolute;top:0;left:50%;margin-left:-2px}
129
+ #a3_plugin_premium_video_container .a3-plugin-premium-image{position:relative;float:left;width:50%;margin-right:15px}
130
+ #a3_plugin_premium_video_container .a3-plugin-premium-image img{height:auto;width:100%;float:left}
131
+ #a3_plugin_premium_video_container .a3-plugin-premium-video-play{position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(../images/play_video.png);background-repeat:no-repeat;background-position:center center;background-size:80px auto;background-color:rgba(0,0,0,0.2)}
132
+ #a3_plugin_premium_video_container .a3-plugin-video-play:hover{background-color:rgba(0,0,0,0.6)}
133
  #a3_plugin_panel_container{position:relative;margin-top:10px;float:left;width:100%}
134
  #a3_plugin_panel_fields{padding-right:280px}
135
  #a3_plugin_panel_upgrade_area{float:right;padding-left:20px;width:260px;margin-top:10px}
137
  #a3_plugin_panel_extensions img{width:auto;max-width:100%}
138
  .pro_feature_top_message{font-size:11px;text-align:center;margin:10px 0}
139
  .pro_feature_fields{position:relative;border:2px solid #E6DB55;-webkit-border-radius:10px;-moz-border-radius:10px;-o-border-radius:10px;border-radius:10px}
140
+ .pro_feature_hidden{display:none!important}
141
  .a3rev_blue_message_box{margin:0!important;background-color:#F0F8FF;border-color:#CEE1EF;padding:5px 10px;border-radius:3px 3px 3px 3px;-webkit-border-radius:3px 3px 3px 3px;-moz-border-radius:3px;border-style:solid;border-width:1px}
142
  .a3rev_blue_message_box a{color:red}
143
  .a3rev_panel_container .chosen-container{margin-bottom:5px;margin-right:2px}
171
  .a3rev_blue_message_box_container{width:100%!important}
172
  .a3-plugin-ui-help-icon{margin-right:0}
173
  }
174
+ @media screen and ( max-width: 600px ) {
175
+ #a3_plugin_premium_video_container .a3rev_panel_box_left_inside,#a3_plugin_premium_video_container .a3rev_panel_box_right_inside{width:100%;float:left}
176
+ #a3_plugin_premium_video_container .a3rev_panel_box_separate{width:100%;height:1px;position:relative;margin-left:0;float:left;left:auto;top:auto}
177
+ }
178
  @media screen and ( max-width: 480px ) {
179
  .a3rev_panel_container .a3rev-ui-slide-container-start{margin-top:5px}
180
  .a3_subsubsub_section .subsubsub{text-align:left}
181
  .a3rev_panel_container .chosen-container-single{max-width:300px!important}
182
+ #a3_plugin_premium_video_container .a3-plugin-premium-image{width:100%;margin-right:0;margin-bottom:10px}
183
  }
admin/assets/images/play_video.png ADDED
Binary file
admin/assets/js/admin-ui-script.js CHANGED
@@ -52,6 +52,22 @@
52
  });
53
  });
54
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
55
  /* Apply OnOff Checbox */
56
  $('.a3rev_panel_container input.a3rev-ui-onoff_checkbox').each(function(i){
57
  var checked_label = 'ON';
52
  });
53
  });
54
 
55
+ /* Apply Background Color */
56
+ $('.a3rev_panel_container input.a3rev-ui-bg_color-enable').each(function(i){
57
+ if ( $(this).is(':checked') ) {
58
+ $(this).parent('.forminp-bg_color').find('.a3rev-ui-bg_color-enable-container').css( {'visibility': 'visible', 'height' : 'auto', 'overflow' : 'inherit'} );
59
+ } else {
60
+ $(this).parent('.forminp-bg_color').find('.a3rev-ui-bg_color-enable-container').css( {'visibility': 'hidden', 'height' : '0px', 'overflow' : 'hidden'} );
61
+ }
62
+ $(this).on( "a3rev-ui-onoff_checkbox-switch", function( event, value, status ) {
63
+ if ( status == 'true') {
64
+ $(this).parents('.forminp-bg_color').find('.a3rev-ui-bg_color-enable-container').hide().css( {'visibility': 'visible', 'height' : 'auto', 'overflow' : 'inherit'} ).slideDown();
65
+ } else {
66
+ $(this).parents('.forminp-bg_color').find('.a3rev-ui-bg_color-enable-container').show().css( {'visibility': 'hidden', 'height' : '0px', 'overflow' : 'hidden'} ).slideUp();
67
+ }
68
+ });
69
+ });
70
+
71
  /* Apply OnOff Checbox */
72
  $('.a3rev_panel_container input.a3rev-ui-onoff_checkbox').each(function(i){
73
  var checked_label = 'ON';
admin/includes/uploader/class-uploader.php CHANGED
@@ -79,7 +79,7 @@ class A3_Lazy_Load_Uploader extends A3_Lazy_Load_Admin_UI
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 );
@@ -90,8 +90,14 @@ class A3_Lazy_Load_Uploader extends A3_Lazy_Load_Admin_UI
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;' ).'">';
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 = '', $strip_methods = true ) {
83
  $output = '';
84
 
85
  if ( trim( $value ) == '' ) $value = trim( $default_value );
90
  $attachment_id_name_attribute = $name_attribute.'_attachment_id';
91
  }
92
 
93
+ if ( $strip_methods === false ) {
94
+ $strip_methods = 0;
95
+ } else {
96
+ $strip_methods = 1;
97
+ }
98
+
99
  $output .= '<input type="hidden" name="'.$attachment_id_name_attribute.'" id="'.$id_attribute.'_attachment_id" value="'.$attachment_id.'" class=" a3_upload_attachment_id" />';
100
+ $output .= '<input data-strip-methods="'.$strip_methods.'" type="text" name="'.$name_attribute.'" id="'.$id_attribute.'" value="'.esc_attr( $value ).'" class="'.$id_attribute. ' ' .$class.' a3_upload" style="'.$css.'" rel="'.$field_name.'" /> ';
101
  $output .= '<input id="upload_'.$id_attribute.'" class="a3rev-ui-upload-button a3_upload_button button" type="button" value="'.__( 'Upload', 'a3_lazy_load' ).'" /> '.$description;
102
 
103
  $output .= '<div style="clear:both;"></div><div class="a3_screenshot" id="'.$id_attribute.'_image" style="'.( ( $value == '' ) ? 'display:none;' : 'display:block;' ).'">';
admin/includes/uploader/uploader-script.js CHANGED
@@ -47,10 +47,12 @@ a3Uploader = {
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',
@@ -86,7 +88,12 @@ a3Uploader = {
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');
47
  }, wp.media.controller.Library.prototype.defaults )
48
  });
49
 
50
+ /*
51
  if ( file_frame ) {
52
  file_frame.open();
53
  return;
54
  }
55
+ */
56
 
57
  file_frame = wp.media.frames.file_frame = wp.media({
58
  title: 'Select Image',
88
  html = '<a href="'+attachment.url+'" target="_blank" rel="a3_external">View File</a>';
89
  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>';
90
  }
91
+ var strip_methods = $( '#' + formfield).data('strip-methods');
92
+ if ( strip_methods === 0 ) {
93
+ $( '#' + formfield).val(attachment.url).trigger('change');
94
+ } else {
95
+ $( '#' + formfield).val(attachment.url.replace(/http:|https:/, '' )).trigger('change');
96
+ }
97
  $( '#' + formfield + '_attachment_id').val(attachment.id);
98
  $( '#' + formfield).siblings( '.a3_screenshot').slideDown().html(btnContent);
99
  $('.media-modal-close').trigger('click');
admin/less/sass.php CHANGED
@@ -23,7 +23,7 @@ class A3_Lazy_Load_Less
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(), A3_LAZY_VERSION );
27
  }
28
  }
29
 
@@ -31,6 +31,7 @@ class A3_Lazy_Load_Less
31
  {
32
  $sass = $this->sass_content_data();
33
  $this->plugin_compile_less_mincss( $sass );
 
34
  }
35
  public function custom_filesystem_method( $method = '') {
36
  return 'direct';
@@ -149,6 +150,32 @@ class A3_Lazy_Load_Less
149
 
150
  return $sass;
151
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
152
  }
153
  global $a3_lazy_load_less;
154
  $a3_lazy_load_less = new A3_Lazy_Load_Less();
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(), $this->get_css_file_version() );
27
  }
28
  }
29
 
31
  {
32
  $sass = $this->sass_content_data();
33
  $this->plugin_compile_less_mincss( $sass );
34
+ $this->set_css_file_version();
35
  }
36
  public function custom_filesystem_method( $method = '') {
37
  return 'direct';
150
 
151
  return $sass;
152
  }
153
+
154
+ public function set_css_file_version( $css_file_name = '' ) {
155
+ if ( trim( $css_file_name ) == '' ) {
156
+ $css_file_name = $this->css_file_name;
157
+ }
158
+
159
+ if ( $css_file_name == '' ) {
160
+ return false;
161
+ }
162
+
163
+ update_option( $css_file_name . '_style_version', time() );
164
+ }
165
+
166
+ public function get_css_file_version( $css_file_name = '' ) {
167
+ if ( trim( $css_file_name ) == '' ) {
168
+ $css_file_name = $this->css_file_name;
169
+ }
170
+
171
+ if ( $css_file_name == '' ) {
172
+ return false;
173
+ }
174
+
175
+ $version_number = get_option( $css_file_name . '_style_version', time() );
176
+
177
+ return $version_number;
178
+ }
179
  }
180
  global $a3_lazy_load_less;
181
  $a3_lazy_load_less = new A3_Lazy_Load_Less();
assets/images/video.jpg ADDED
Binary file
classes/class-a3-lazy-load.php CHANGED
@@ -2,6 +2,7 @@
2
  class A3_Lazy_Load
3
  {
4
  const version = A3_LAZY_VERSION;
 
5
  protected $_placeholder_url;
6
  protected $_skip_images_classes;
7
  protected $_skip_videos_classes;
@@ -48,7 +49,7 @@ 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
  $this->_placeholder_url = A3_LAZY_LOAD_IMAGES_URL . '/lazy_placeholder.gif';
53
 
54
  // Apply for Images
@@ -407,7 +408,7 @@ class A3_Lazy_Load
407
  $i++;
408
  // replace the src and add the data-src attribute
409
  $replaceHTML = '';
410
- $replaceHTML = preg_replace( '/iframe(.*?)src=/is', 'iframe$1src="' . $this->_placeholder_url . '" data-lazy-type="iframe" data-src=', $imgHTML );
411
 
412
  // add the lazy class to the img element
413
  if ( preg_match( '/class=["\']/i', $replaceHTML ) ) {
@@ -526,5 +527,20 @@ class A3_Lazy_Load
526
  }
527
  }
528
 
529
- add_action( 'wp', create_function('', 'if ( ! is_feed() ) { A3_Lazy_Load::_instance(); }'), 10, 0 );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
530
  ?>
2
  class A3_Lazy_Load
3
  {
4
  const version = A3_LAZY_VERSION;
5
+ protected $iframe_placeholder_url;
6
  protected $_placeholder_url;
7
  protected $_skip_images_classes;
8
  protected $_skip_videos_classes;
49
 
50
  add_filter( 'a3_lazy_load_html', array( $this, 'filter_html' ), 10, 2 );
51
 
52
+ $this->iframe_placeholder_url = 'data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7';
53
  $this->_placeholder_url = A3_LAZY_LOAD_IMAGES_URL . '/lazy_placeholder.gif';
54
 
55
  // Apply for Images
408
  $i++;
409
  // replace the src and add the data-src attribute
410
  $replaceHTML = '';
411
+ $replaceHTML = preg_replace( '/iframe(.*?)src=/is', 'iframe$1src="' . $this->iframe_placeholder_url . '" data-lazy-type="iframe" data-src=', $imgHTML );
412
 
413
  // add the lazy class to the img element
414
  if ( preg_match( '/class=["\']/i', $replaceHTML ) ) {
527
  }
528
  }
529
 
530
+ add_action( 'wp', 'a3_lazy_load_instance', 10, 0 );
531
+ function a3_lazy_load_instance() {
532
+ $allow_instance = true;
533
+
534
+ if ( is_feed() ) {
535
+ $allow_instance = false;
536
+ }
537
+
538
+ if ( function_exists( 'is_amp_endpoint' ) && is_amp_endpoint() ) {
539
+ $allow_instance = false;
540
+ }
541
+
542
+ if ( $allow_instance ) {
543
+ A3_Lazy_Load::_instance();
544
+ }
545
+ }
546
  ?>
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-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"
@@ -91,9 +91,9 @@ msgstr ""
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,9 +111,9 @@ msgstr ""
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,150 +131,150 @@ msgstr ""
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,22 +283,51 @@ msgstr ""
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 "
@@ -306,7 +335,7 @@ msgid ""
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> "
@@ -314,11 +343,11 @@ msgid ""
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
 
2
  msgstr ""
3
  "Project-Id-Version: a3 Lazy Load\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2016-03-01 15:57+0700\n"
6
+ "PO-Revision-Date: 2016-03-01 15:57+0700\n"
7
  "Last-Translator: Nguyen Cong Tuan <mr.nguyencongtuan@gmail.com>\n"
8
  "Language-Team: a3rev\n"
9
  "Language: en\n"
91
  msgid "Outset"
92
  msgstr ""
93
 
94
+ #: admin/admin-interface.php:1552 admin/admin-interface.php:1638
95
+ #: admin/admin-interface.php:1738 admin/admin-interface.php:1886
96
+ #: admin/admin-interface.php:1976 admin/admin-interface.php:2005
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:1553 admin/admin-interface.php:1639
115
+ #: admin/admin-interface.php:1739 admin/admin-interface.php:1887
116
+ #: admin/admin-interface.php:1977 admin/admin-interface.php:2006
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:1558
135
  msgid "Google Fonts API"
136
  msgstr ""
137
 
138
+ #: admin/admin-interface.php:1570
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:1574
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:1591
152
  msgid "Google Fonts API Key"
153
  msgstr ""
154
 
155
+ #: admin/admin-interface.php:1594
156
  msgid "Your Google API Key is valid and automatic font updates are enabled."
157
  msgstr ""
158
 
159
+ #: admin/admin-interface.php:1595
160
  msgid "Please enter a valid Google API Key."
161
  msgstr ""
162
 
163
+ #: admin/admin-interface.php:1614
164
  msgid "Check New Version"
165
  msgstr ""
166
 
167
+ #: admin/admin-interface.php:1625
168
  msgid "Check Now"
169
  msgstr ""
170
 
171
+ #: admin/admin-interface.php:1644
172
  msgid "Open Box Display"
173
  msgstr ""
174
 
175
+ #: admin/admin-interface.php:1657
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:2041
182
  msgid "Width"
183
  msgstr ""
184
 
185
+ #: admin/admin-interface.php:2043
186
  msgid "Height"
187
  msgstr ""
188
 
189
+ #: admin/admin-interface.php:2045
190
  msgid "Hard Crop"
191
  msgstr ""
192
 
193
+ #: admin/admin-interface.php:2118
194
  msgid "-- Default Fonts --"
195
  msgstr ""
196
 
197
+ #: admin/admin-interface.php:2129
198
  msgid "-- Google Fonts --"
199
  msgstr ""
200
 
201
+ #: admin/admin-interface.php:2170
202
  msgid "Preview your customized typography settings"
203
  msgstr ""
204
 
205
+ #: admin/admin-interface.php:2279 admin/admin-interface.php:2513
206
  msgid "Preview your customized border settings"
207
  msgstr ""
208
 
209
+ #: admin/admin-interface.php:2288 admin/admin-interface.php:2504
210
  msgid "Rounded"
211
  msgstr ""
212
 
213
+ #: admin/admin-interface.php:2289 admin/admin-interface.php:2505
214
  msgid "Square"
215
  msgstr ""
216
 
217
+ #: admin/admin-interface.php:2299 admin/admin-interface.php:2518
218
  msgid "Top Left Corner"
219
  msgstr ""
220
 
221
+ #: admin/admin-interface.php:2319 admin/admin-interface.php:2538
222
  msgid "Top Right Corner"
223
  msgstr ""
224
 
225
+ #: admin/admin-interface.php:2339 admin/admin-interface.php:2558
226
  msgid "Bottom Right Corner"
227
  msgstr ""
228
 
229
+ #: admin/admin-interface.php:2359 admin/admin-interface.php:2578
230
  msgid "Bottom Left Corner"
231
  msgstr ""
232
 
233
+ #: admin/admin-interface.php:2446
234
  msgid "Preview your customized border styles settings"
235
  msgstr ""
236
 
237
+ #: admin/admin-interface.php:2629
238
  msgid "YES"
239
  msgstr ""
240
 
241
+ #: admin/admin-interface.php:2630
242
  msgid "NO"
243
  msgstr ""
244
 
245
+ #: admin/admin-interface.php:2644
246
  msgid "Horizontal Shadow"
247
  msgstr ""
248
 
249
+ #: admin/admin-interface.php:2662
250
  msgid "Vertical Shadow"
251
  msgstr ""
252
 
253
+ #: admin/admin-interface.php:2680
254
  msgid "Blur Distance"
255
  msgstr ""
256
 
257
+ #: admin/admin-interface.php:2698
258
  msgid "Spread Size"
259
  msgstr ""
260
 
261
+ #: admin/admin-interface.php:2716
262
  msgid "INNER"
263
  msgstr ""
264
 
265
+ #: admin/admin-interface.php:2717
266
  msgid "OUTER"
267
  msgstr ""
268
 
269
+ #: admin/admin-interface.php:2735
270
  msgid "Preview your customized box shadow settings"
271
  msgstr ""
272
 
273
+ #: admin/admin-interface.php:3003
274
  msgid "Save changes"
275
  msgstr ""
276
 
277
+ #: admin/admin-interface.php:3004
278
  msgid "Reset Settings"
279
  msgstr ""
280
 
283
  msgid "a3 Lazy Load"
284
  msgstr ""
285
 
286
+ #: admin/admin-ui.php:109 admin/admin-ui.php:112
287
+ msgid "Premium Version Enhanced Features"
288
+ msgstr ""
289
+
290
+ #: admin/admin-ui.php:113
291
+ msgid "WooCommerce Dynamic Gallery Premium"
292
+ msgstr ""
293
+
294
+ #: admin/admin-ui.php:114
295
+ msgid ""
296
+ "Quick Video showing the main (not all) enhanced features that are built into "
297
+ "the WooCommerce Dynamic Gallery Premium version"
298
+ msgstr ""
299
+
300
+ #: admin/admin-ui.php:115
301
+ msgid "Developer Support and Premium Features"
302
+ msgstr ""
303
+
304
+ #: admin/admin-ui.php:116
305
+ msgid ""
306
+ "Limited Time Offer. Purchase the Premium Version Lifetime License. That is a "
307
+ "Lifetime of maintenance updates, feature upgrades and developer support for "
308
+ "a once only fee. Offer ending soon."
309
+ msgstr ""
310
+
311
+ #: admin/admin-ui.php:117
312
+ msgid "Get Premium Features and Support"
313
+ msgstr ""
314
+
315
+ #: admin/admin-ui.php:264
316
  #, php-format
317
  msgid ""
318
  "Advanced Settings - Upgrade to the <a href=\"%s\" target=\"_blank\">%s "
319
  "License</a> to activate these settings."
320
  msgstr ""
321
 
322
+ #: admin/admin-ui.php:267
323
  msgid "Pro Version"
324
  msgstr ""
325
 
326
+ #: admin/admin-ui.php:317 admin/admin-ui.php:336
327
  msgid "You should check now to see if have any new version is available"
328
  msgstr ""
329
 
330
+ #: admin/admin-ui.php:319
331
  #, php-format
332
  msgid ""
333
  "Connection Failure! Please try again. If this issue persists please create a "
335
  "forum</a>."
336
  msgstr ""
337
 
338
+ #: admin/admin-ui.php:327
339
  #, php-format
340
  msgid ""
341
  "There is a new version <span class=\"a3rev-ui-new-plugin-version\">%s</span> "
343
  "direct from <a href=\"%s\" target=\"_blank\">My Account</a> on a3rev.com"
344
  msgstr ""
345
 
346
+ #: admin/includes/uploader/class-uploader.php:101
347
  msgid "Upload"
348
  msgstr ""
349
 
350
+ #: admin/includes/uploader/class-uploader.php:121
351
  msgid "View File"
352
  msgstr ""
353
 
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-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"
@@ -91,9 +91,9 @@ msgstr ""
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,9 +111,9 @@ msgstr ""
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,150 +131,150 @@ msgstr ""
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,22 +283,51 @@ msgstr ""
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 "
@@ -306,7 +335,7 @@ msgid ""
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> "
@@ -314,11 +343,11 @@ msgid ""
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
 
2
  msgstr ""
3
  "Project-Id-Version: a3 Lazy Load\n"
4
  "Report-Msgid-Bugs-To: \n"
5
+ "POT-Creation-Date: 2016-03-01 15:57+0700\n"
6
+ "PO-Revision-Date: 2016-03-01 15:58+0700\n"
7
  "Last-Translator: Nguyen Cong Tuan <mr.nguyencongtuan@gmail.com>\n"
8
  "Language-Team: a3rev\n"
9
  "Language: en\n"
91
  msgid "Outset"
92
  msgstr ""
93
 
94
+ #: admin/admin-interface.php:1552 admin/admin-interface.php:1638
95
+ #: admin/admin-interface.php:1738 admin/admin-interface.php:1886
96
+ #: admin/admin-interface.php:1976 admin/admin-interface.php:2005
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:1553 admin/admin-interface.php:1639
115
+ #: admin/admin-interface.php:1739 admin/admin-interface.php:1887
116
+ #: admin/admin-interface.php:1977 admin/admin-interface.php:2006
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:1558
135
  msgid "Google Fonts API"
136
  msgstr ""
137
 
138
+ #: admin/admin-interface.php:1570
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:1574
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:1591
152
  msgid "Google Fonts API Key"
153
  msgstr ""
154
 
155
+ #: admin/admin-interface.php:1594
156
  msgid "Your Google API Key is valid and automatic font updates are enabled."
157
  msgstr ""
158
 
159
+ #: admin/admin-interface.php:1595
160
  msgid "Please enter a valid Google API Key."
161
  msgstr ""
162
 
163
+ #: admin/admin-interface.php:1614
164
  msgid "Check New Version"
165
  msgstr ""
166
 
167
+ #: admin/admin-interface.php:1625
168
  msgid "Check Now"
169
  msgstr ""
170
 
171
+ #: admin/admin-interface.php:1644
172
  msgid "Open Box Display"
173
  msgstr ""
174
 
175
+ #: admin/admin-interface.php:1657
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:2041
182
  msgid "Width"
183
  msgstr ""
184
 
185
+ #: admin/admin-interface.php:2043
186
  msgid "Height"
187
  msgstr ""
188
 
189
+ #: admin/admin-interface.php:2045
190
  msgid "Hard Crop"
191
  msgstr ""
192
 
193
+ #: admin/admin-interface.php:2118
194
  msgid "-- Default Fonts --"
195
  msgstr ""
196
 
197
+ #: admin/admin-interface.php:2129
198
  msgid "-- Google Fonts --"
199
  msgstr ""
200
 
201
+ #: admin/admin-interface.php:2170
202
  msgid "Preview your customized typography settings"
203
  msgstr ""
204
 
205
+ #: admin/admin-interface.php:2279 admin/admin-interface.php:2513
206
  msgid "Preview your customized border settings"
207
  msgstr ""
208
 
209
+ #: admin/admin-interface.php:2288 admin/admin-interface.php:2504
210
  msgid "Rounded"
211
  msgstr ""
212
 
213
+ #: admin/admin-interface.php:2289 admin/admin-interface.php:2505
214
  msgid "Square"
215
  msgstr ""
216
 
217
+ #: admin/admin-interface.php:2299 admin/admin-interface.php:2518
218
  msgid "Top Left Corner"
219
  msgstr ""
220
 
221
+ #: admin/admin-interface.php:2319 admin/admin-interface.php:2538
222
  msgid "Top Right Corner"
223
  msgstr ""
224
 
225
+ #: admin/admin-interface.php:2339 admin/admin-interface.php:2558
226
  msgid "Bottom Right Corner"
227
  msgstr ""
228
 
229
+ #: admin/admin-interface.php:2359 admin/admin-interface.php:2578
230
  msgid "Bottom Left Corner"
231
  msgstr ""
232
 
233
+ #: admin/admin-interface.php:2446
234
  msgid "Preview your customized border styles settings"
235
  msgstr ""
236
 
237
+ #: admin/admin-interface.php:2629
238
  msgid "YES"
239
  msgstr ""
240
 
241
+ #: admin/admin-interface.php:2630
242
  msgid "NO"
243
  msgstr ""
244
 
245
+ #: admin/admin-interface.php:2644
246
  msgid "Horizontal Shadow"
247
  msgstr ""
248
 
249
+ #: admin/admin-interface.php:2662
250
  msgid "Vertical Shadow"
251
  msgstr ""
252
 
253
+ #: admin/admin-interface.php:2680
254
  msgid "Blur Distance"
255
  msgstr ""
256
 
257
+ #: admin/admin-interface.php:2698
258
  msgid "Spread Size"
259
  msgstr ""
260
 
261
+ #: admin/admin-interface.php:2716
262
  msgid "INNER"
263
  msgstr ""
264
 
265
+ #: admin/admin-interface.php:2717
266
  msgid "OUTER"
267
  msgstr ""
268
 
269
+ #: admin/admin-interface.php:2735
270
  msgid "Preview your customized box shadow settings"
271
  msgstr ""
272
 
273
+ #: admin/admin-interface.php:3003
274
  msgid "Save changes"
275
  msgstr ""
276
 
277
+ #: admin/admin-interface.php:3004
278
  msgid "Reset Settings"
279
  msgstr ""
280
 
283
  msgid "a3 Lazy Load"
284
  msgstr ""
285
 
286
+ #: admin/admin-ui.php:109 admin/admin-ui.php:112
287
+ msgid "Premium Version Enhanced Features"
288
+ msgstr ""
289
+
290
+ #: admin/admin-ui.php:113
291
+ msgid "WooCommerce Dynamic Gallery Premium"
292
+ msgstr ""
293
+
294
+ #: admin/admin-ui.php:114
295
+ msgid ""
296
+ "Quick Video showing the main (not all) enhanced features that are built into "
297
+ "the WooCommerce Dynamic Gallery Premium version"
298
+ msgstr ""
299
+
300
+ #: admin/admin-ui.php:115
301
+ msgid "Developer Support and Premium Features"
302
+ msgstr ""
303
+
304
+ #: admin/admin-ui.php:116
305
+ msgid ""
306
+ "Limited Time Offer. Purchase the Premium Version Lifetime License. That is a "
307
+ "Lifetime of maintenance updates, feature upgrades and developer support for "
308
+ "a once only fee. Offer ending soon."
309
+ msgstr ""
310
+
311
+ #: admin/admin-ui.php:117
312
+ msgid "Get Premium Features and Support"
313
+ msgstr ""
314
+
315
+ #: admin/admin-ui.php:264
316
  #, php-format
317
  msgid ""
318
  "Advanced Settings - Upgrade to the <a href=\"%s\" target=\"_blank\">%s "
319
  "License</a> to activate these settings."
320
  msgstr ""
321
 
322
+ #: admin/admin-ui.php:267
323
  msgid "Pro Version"
324
  msgstr ""
325
 
326
+ #: admin/admin-ui.php:317 admin/admin-ui.php:336
327
  msgid "You should check now to see if have any new version is available"
328
  msgstr ""
329
 
330
+ #: admin/admin-ui.php:319
331
  #, php-format
332
  msgid ""
333
  "Connection Failure! Please try again. If this issue persists please create a "
335
  "forum</a>."
336
  msgstr ""
337
 
338
+ #: admin/admin-ui.php:327
339
  #, php-format
340
  msgid ""
341
  "There is a new version <span class=\"a3rev-ui-new-plugin-version\">%s</span> "
343
  "direct from <a href=\"%s\" target=\"_blank\">My Account</a> on a3rev.com"
344
  msgstr ""
345
 
346
+ #: admin/includes/uploader/class-uploader.php:101
347
  msgid "Upload"
348
  msgstr ""
349
 
350
+ #: admin/includes/uploader/class-uploader.php:121
351
  msgid "View File"
352
  msgstr ""
353
 
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.4.1
7
- Stable tag: 1.6.0
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -55,6 +55,12 @@ a3 Lazy Load has built in support for content that is added by iframe from any s
55
  * Fully compatible with WordPress 4.4 new embed post on any site feature
56
  * Makes embed post load much faster
57
 
 
 
 
 
 
 
58
  = Lazy Load Effects =
59
 
60
  a3 Lazy Load gives you the option to lazy load images with a FADE IN or SPINNER effect.
@@ -149,6 +155,19 @@ Automatic installation is the easiest option as WordPress handles the file trans
149
 
150
  == Changelog ==
151
 
 
 
 
 
 
 
 
 
 
 
 
 
 
152
  = 1.6.0 - 2016/01/22 =
153
  * Feature - Add support for Lazy loading images, video or iframe inside content that is loaded by AJAX
154
  * Tweak - Full support for loading Product Thumbnails within the WooCommerce cart widget
@@ -257,6 +276,9 @@ Automatic installation is the easiest option as WordPress handles the file trans
257
 
258
  == Upgrade Notice ==
259
 
 
 
 
260
  = 1.6.0 =
261
  Feature Upgrade. 1 New Feature. Now support Lazy Loading elements within content that is loaded by AJAX plus full compat with WordPress v4.4.1 and WooCommerce v2.5 - be sure to clear caches, CDNs etc
262
 
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.2
7
+ Stable tag: 1.7.0
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
55
  * Fully compatible with WordPress 4.4 new embed post on any site feature
56
  * Makes embed post load much faster
57
 
58
+ = WordPress Accelerated Mobile Pages (AMP) =
59
+
60
+ * Built in auto support for WordPress AMP plugin
61
+ * There are no setting options for exclude /amp - Lazy Load is just never applied to the /amp endpoint
62
+ * When the url is loaded in browser without /amp Lazy Load is applied
63
+
64
  = Lazy Load Effects =
65
 
66
  a3 Lazy Load gives you the option to lazy load images with a FADE IN or SPINNER effect.
155
 
156
  == Changelog ==
157
 
158
+ = 1.7.0 - 2016/03/01 =
159
+ * Feature - Full compatibility with AMP plugin. No settings for it just hardcoded that Lazy Load is not applied for any url appended with /amp endpoint. Lazy load is applied to the url without the endpoint
160
+ * Feature - Define new 'Background Color' type on plugin framework with ON | OFF switch to disable background or enable it
161
+ * Feature - Define new function - hextorgb() - for convert hex color to rgb color on plugin framework
162
+ * Feature - Define new function - generate_background_color_css() - for export background style code on plugin framework that is used to make custom style
163
+ * Tweak - Saved the time number into database for one time customize style and Save change on the Plugin Settings
164
+ * Tweak - Replace version number by time number for dynamic style file are generated by Sass to solve the issue get cache file on CDN server
165
+ * Tweak - Define new 'strip_methods' argument for Uploader type, allow strip http/https or no
166
+ * Tweak - Upgraded to the latest version of a3 plugin framework
167
+ * Tweak - Tested for full compatibility with WordPress version 4.4.2
168
+ * Tweak - Tested for full compatibility with WooCommerce version 2.5.2
169
+ * Fix - Define new placeholder image data for iframe. Microsoft browsers smartscreen filter was blocking the .gif placeholder loading inside iframes and throwing an unsafe website message
170
+
171
  = 1.6.0 - 2016/01/22 =
172
  * Feature - Add support for Lazy loading images, video or iframe inside content that is loaded by AJAX
173
  * Tweak - Full support for loading Product Thumbnails within the WooCommerce cart widget
276
 
277
  == Upgrade Notice ==
278
 
279
+ = 1.7.0 =
280
+ Feature Upgrade. Full compatibility with WordPress AMP. No settings for it - just auto. 3 other features, 3 code tweaks and 1 major Microsoft Browser bug fix
281
+
282
  = 1.6.0 =
283
  Feature Upgrade. 1 New Feature. Now support Lazy Loading elements within content that is loaded by AJAX plus full compat with WordPress v4.4.1 and WooCommerce v2.5 - be sure to clear caches, CDNs etc
284