AMP for WP – Accelerated Mobile Pages - Version 1.0.73

Version Description

(23rd December 2020) = * Fixed: Javascript issues after update to WordPress 5.6 #4867 * Fixed: '-' symbol is not appearing on post title #4866 * Fixed: GDPR strings are not getting translated in WPML #4874 * Fixed: AMP Browser caching policy updated #4876 * Fixed: Validation Errors when WP Daddy Builder Pro is active #4879 * Fixed: Vuukle comments box appearing twice in AMP #4878 * Fixed: Validation error when 'area' tag is added in post content #4882 * Fixed: Validation error "Custom JS is not allowed" with ALL in one SEO pro #4883

Download this release

Release Info

Developer mohammed_kaludi
Plugin Icon 128x128 AMP for WP – Accelerated Mobile Pages
Version 1.0.73
Comparing to
See all releases

Code changes from version 1.0.72 to 1.0.73

README.md CHANGED
@@ -4,7 +4,7 @@ Tags: AMP, accelerated mobile pages, mobile, amp project, google amp, amp wp, go
4
  Donate link: https://www.paypal.me/Kaludi/25
5
  Requires at least: 3.0
6
  Tested up to: 5.6
7
- Stable tag: 1.0.72
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -193,6 +193,16 @@ Device testing done through [BrowserStack](https://www.browserstack.com)
193
 
194
  == Changelog ==
195
 
 
 
 
 
 
 
 
 
 
 
196
  = 1.0.72 (17th December 2020) =
197
  * Improvement: Added i2Pros and cons plugin compatibility #4837
198
  * Improvement: Added WP-PageNavi plugin compatibility #4831
4
  Donate link: https://www.paypal.me/Kaludi/25
5
  Requires at least: 3.0
6
  Tested up to: 5.6
7
+ Stable tag: 1.0.73
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
193
 
194
  == Changelog ==
195
 
196
+ = 1.0.73 (23rd December 2020) =
197
+ * Fixed: Javascript issues after update to WordPress 5.6 #4867
198
+ * Fixed: '-' symbol is not appearing on post title #4866
199
+ * Fixed: GDPR strings are not getting translated in WPML #4874
200
+ * Fixed: AMP Browser caching policy updated #4876
201
+ * Fixed: Validation Errors when WP Daddy Builder Pro is active #4879
202
+ * Fixed: Vuukle comments box appearing twice in AMP #4878
203
+ * Fixed: Validation error when 'area' tag is added in post content #4882
204
+ * Fixed: Validation error "Custom JS is not allowed" with ALL in one SEO pro #4883
205
+
206
  = 1.0.72 (17th December 2020) =
207
  * Improvement: Added i2Pros and cons plugin compatibility #4837
208
  * Improvement: Added WP-PageNavi plugin compatibility #4831
accelerated-moblie-pages.php CHANGED
@@ -3,7 +3,7 @@
3
  Plugin Name: Accelerated Mobile Pages
4
  Plugin URI: https://wordpress.org/plugins/accelerated-mobile-pages/
5
  Description: AMP for WP - Accelerated Mobile Pages for WordPress
6
- Version: 1.0.72
7
  Author: Ahmed Kaludi, Mohammed Kaludi
8
  Author URI: https://ampforwp.com/
9
  Donate link: https://www.paypal.me/Kaludi/25
@@ -20,7 +20,7 @@ define('AMPFORWP_PLUGIN_DIR_URI', plugin_dir_url(__FILE__));
20
  define('AMPFORWP_DISQUS_URL',plugin_dir_url(__FILE__).'includes/disqus.html');
21
  define('AMPFORWP_IMAGE_DIR',plugin_dir_url(__FILE__).'images');
22
  define('AMPFORWP_MAIN_PLUGIN_DIR', plugin_dir_path( __DIR__ ) );
23
- define('AMPFORWP_VERSION','1.0.72');
24
  define('AMPFORWP_EXTENSION_DIR',plugin_dir_path(__FILE__).'includes/options/extensions');
25
  if(!defined('AMPFROWP_HOST_NAME')){
26
  $urlinfo = get_bloginfo('url');
@@ -693,6 +693,12 @@ function ampforwp_bundle_core_amp_files(){
693
  remove_action( 'plugins_loaded', 'jnews_amp' );
694
  remove_filter( 'amp_content_sanitizers', 'jnews_amp_content_sanitize');
695
  }
 
 
 
 
 
 
696
  }
697
  add_action('plugins_loaded','ampforwp_bundle_core_amp_files', 8);
698
 
3
  Plugin Name: Accelerated Mobile Pages
4
  Plugin URI: https://wordpress.org/plugins/accelerated-mobile-pages/
5
  Description: AMP for WP - Accelerated Mobile Pages for WordPress
6
+ Version: 1.0.73
7
  Author: Ahmed Kaludi, Mohammed Kaludi
8
  Author URI: https://ampforwp.com/
9
  Donate link: https://www.paypal.me/Kaludi/25
20
  define('AMPFORWP_DISQUS_URL',plugin_dir_url(__FILE__).'includes/disqus.html');
21
  define('AMPFORWP_IMAGE_DIR',plugin_dir_url(__FILE__).'images');
22
  define('AMPFORWP_MAIN_PLUGIN_DIR', plugin_dir_path( __DIR__ ) );
23
+ define('AMPFORWP_VERSION','1.0.73');
24
  define('AMPFORWP_EXTENSION_DIR',plugin_dir_path(__FILE__).'includes/options/extensions');
25
  if(!defined('AMPFROWP_HOST_NAME')){
26
  $urlinfo = get_bloginfo('url');
693
  remove_action( 'plugins_loaded', 'jnews_amp' );
694
  remove_filter( 'amp_content_sanitizers', 'jnews_amp_content_sanitize');
695
  }
696
+ if (function_exists('wpda_hb_pro__plugins_loaded')) {
697
+ $url_path = trim(parse_url(add_query_arg(array()), PHP_URL_PATH),'/' );
698
+ if( function_exists('ampforwp_is_amp_inURL') && ampforwp_is_amp_inURL($url_path)) {
699
+ remove_action('plugins_loaded', 'wpda_hb_pro__plugins_loaded');
700
+ }
701
+ }
702
  }
703
  add_action('plugins_loaded','ampforwp_bundle_core_amp_files', 8);
704
 
changelog.txt CHANGED
@@ -1,5 +1,15 @@
1
  == Changelog ==
2
 
 
 
 
 
 
 
 
 
 
 
3
  = 1.0.72 (17th December 2020) =
4
  * Improvement: Added i2Pros and cons plugin compatibility #4837
5
  * Improvement: Added WP-PageNavi plugin compatibility #4831
1
  == Changelog ==
2
 
3
+ = 1.0.73 (23rd December 2020) =
4
+ * Fixed: Javascript issues after update to WordPress 5.6 #4867
5
+ * Fixed: '-' symbol is not appearing on post title #4866
6
+ * Fixed: GDPR strings are not getting translated in WPML #4874
7
+ * Fixed: AMP Browser caching policy updated #4876
8
+ * Fixed: Validation Errors when WP Daddy Builder Pro is active #4879
9
+ * Fixed: Vuukle comments box appearing twice in AMP #4878
10
+ * Fixed: Validation error when 'area' tag is added in post content #4882
11
+ * Fixed: Validation error "Custom JS is not allowed" with ALL in one SEO pro #4883
12
+
13
  = 1.0.72 (17th December 2020) =
14
  * Improvement: Added i2Pros and cons plugin compatibility #4837
15
  * Improvement: Added WP-PageNavi plugin compatibility #4831
components/gdpr/gdpr.php CHANGED
@@ -57,28 +57,28 @@ function amp_gdpr_output(){
57
  <div class="gdpr_x" role="button" tabindex="0" on="tap:ampforwpConsent.dismiss">X</div>
58
  <div class="gdpr-l">
59
  <div class="gdpr_t">
60
- <h3><?php echo esc_attr($headline); ?></h3>
61
- <p><?php echo esc_attr($user_data); ?></p>
62
  </div><?php if(isset($redux_builder_amp['amp-gdpr-compliance-select-privacy-page']) && $redux_builder_amp['amp-gdpr-compliance-select-privacy-page']){?>
63
  <div class="gdpr_fmi">
64
- <span><?php echo esc_attr($more_info); ?></span>
65
- <a class="gdpr_fmi pri_page_link" href=<?php echo esc_attr($privacy_page); ?> target="_blank"><?php echo esc_attr($privacy_button_text); ?></a>
66
  </div><?php } ?>
67
  </div>
68
  <div id="gdpr_yn" class="gdpr_yn">
69
  <div class="gdpr-btns">
70
  <form class="acp" action-xhr="<?php echo esc_url($form_url); ?>" method="post" target="_top">
71
- <button type="submit" on="tap:ampforwpConsent.accept" class="btn gdpr_y btn"><?php echo esc_attr($accept); ?></button>
72
  </form>
73
  <form class="rej" action-xhr="<?php echo esc_url($form_url); ?>" method="post" target="_top">
74
- <button type="submit" on="tap:ampforwpConsent.reject" class="btn gdpr_n"><?php echo esc_attr($reject); ?></button>
75
  </form>
76
  </div>
77
  </div>
78
  </div>
79
  </div>
80
  <div id="post-consent-ui">
81
- <a href="#" on="tap:ampforwpConsent.prompt()" class="btn"><?php echo esc_attr($settings); ?></a>
82
  </div>
83
  </amp-consent>
84
  <?php
57
  <div class="gdpr_x" role="button" tabindex="0" on="tap:ampforwpConsent.dismiss">X</div>
58
  <div class="gdpr-l">
59
  <div class="gdpr_t">
60
+ <h3><?php echo esc_html__($headline,'accelerated-mobile-pages'); ?></h3>
61
+ <p><?php echo esc_html__($user_data,'accelerated-mobile-pages'); ?></p>
62
  </div><?php if(isset($redux_builder_amp['amp-gdpr-compliance-select-privacy-page']) && $redux_builder_amp['amp-gdpr-compliance-select-privacy-page']){?>
63
  <div class="gdpr_fmi">
64
+ <span><?php echo esc_html__($more_info,'accelerated-mobile-pages'); ?></span>
65
+ <a class="gdpr_fmi pri_page_link" href="<?php echo esc_attr($privacy_page); ?>" target="_blank"><?php echo esc_html__($privacy_button_text,'accelerated-mobile-pages'); ?></a>
66
  </div><?php } ?>
67
  </div>
68
  <div id="gdpr_yn" class="gdpr_yn">
69
  <div class="gdpr-btns">
70
  <form class="acp" action-xhr="<?php echo esc_url($form_url); ?>" method="post" target="_top">
71
+ <button type="submit" on="tap:ampforwpConsent.accept" class="btn gdpr_y btn"><?php echo esc_html__($accept,'accelerated-mobile-pages'); ?></button>
72
  </form>
73
  <form class="rej" action-xhr="<?php echo esc_url($form_url); ?>" method="post" target="_top">
74
+ <button type="submit" on="tap:ampforwpConsent.reject" class="btn gdpr_n"><?php echo esc_html__($reject,'accelerated-mobile-pages'); ?></button>
75
  </form>
76
  </div>
77
  </div>
78
  </div>
79
  </div>
80
  <div id="post-consent-ui">
81
+ <a href="#" on="tap:ampforwpConsent.prompt()" class="btn"><?php echo esc_html__($settings,'accelerated-mobile-pages'); ?></a>
82
  </div>
83
  </amp-consent>
84
  <?php
includes/admin-script.js CHANGED
@@ -116,7 +116,7 @@ jQuery(function($) {
116
  $('.redux-container').each(function() {
117
  if (!$(this).hasClass('redux-no-sections')) {
118
  $(this).find('.display_header').append('<span class="search-wrapper"><input class="redux_field_search" name="" type="text" placeholder="Search the controls" style="display:none"/><span class="redux-amp-search-icon"><i class="dashicons-before dashicons-search"></i></span></span>');
119
- $('.redux-amp-search-icon').click(function(){
120
  $('.redux_field_search').toggle('slide');
121
  var val = $('.redux_field_search').val();
122
  var display = $('.redux_field_search').css('display');
@@ -218,7 +218,7 @@ jQuery(function($) {
218
  });
219
 
220
  });
221
- $(".redux_field_search").keypress(function (evt) {
222
  //Deterime where our character code is coming from within the event
223
  var charCode = evt.charCode || evt.keyCode;
224
  if (charCode == 13) { //Enter key's keycode
@@ -227,7 +227,7 @@ jQuery(function($) {
227
  });
228
  //option panel Section Division
229
  var optionSectionDevision = function(){
230
- $('.afw-accordion-header').click(function(){
231
  //Get Cookie Changes
232
  if ( $.cookie( "redux_current_section_customize" )){
233
  var allReduxTabs = JSON.parse($.cookie( "redux_current_section_customize" ));
@@ -306,7 +306,7 @@ jQuery(function($) {
306
  }
307
  });
308
 
309
- jQuery( '.redux-group-tab-link-a' ).click(function(){
310
  if(jQuery(this).parent('li').hasClass('otherSectionFields')){
311
  jQuery(this).parent('li.otherSectionFields').siblings('li.otherSectionFields').hide();
312
  if(!jQuery(this).parent('li').is(':visible')){
@@ -336,7 +336,7 @@ jQuery(function($) {
336
  $(this).parent('div.switch-options').find('.switch-text-off').show();
337
  }
338
  });
339
- switchText.siblings('label').click(function(){
340
  if ( $(this).siblings('input').attr('value') == 1 ) {
341
  $(this).parent().find('.switch-text-on').hide();
342
  $(this).parent().find('.switch-text-off').show();
@@ -677,7 +677,7 @@ var dataTabRequired = function(){
677
  });
678
  }
679
  var reduxOptionTab = function(){
680
- $('.redux-tab-selector').click(function(){
681
  var tabId = $(this).attr('data-tab');
682
  var tabRequired = $(this).attr('data-tab-required');
683
  $(this).parents().find('.custom-tab-container').hide();
@@ -706,7 +706,7 @@ var reduxOptionTab = function(){
706
  });//$(".amp-ls-solve") each closed
707
  }
708
  });
709
- $(".redux-ampforwp-ext-activate").click(function(){
710
  var currentThis = $(this);
711
  var plugin_id = currentThis.attr("id");
712
  var secure_nonce = currentThis.parents("li").attr('data-ext-secure');
@@ -772,7 +772,7 @@ function AMPforwpreadCookie(name) {
772
  return null;
773
  }
774
  function deactivatelicence(){
775
- $(".ampforwp-ext-refresh").click(function(){
776
  var currentThis = $(this);
777
  var plugin_id = currentThis.attr("id");
778
 
@@ -824,7 +824,7 @@ function deactivatelicence(){
824
 
825
  }
826
  });
827
- $(".redux-ampforwp-ext-deactivate").click(function(){
828
  var currentThis = $(this);
829
  var plugin_id = currentThis.attr("id");
830
  var secure_nonce = currentThis.parents("li").attr('data-ext-secure');
@@ -894,7 +894,7 @@ var helpSection = function(){
894
  helpSection();
895
 
896
  var redux_title_modify = function(){
897
- $( '.redux-group-tab-link-a' ).click(function(){
898
  var link = $( this );
899
  if ( link.parent().hasClass( 'empty_section' ) && link.parent().hasClass( 'hasSubSections' ) ) {
900
  var elements = $( this ).closest( 'ul' ).find( '.redux-group-tab-link-a' );
@@ -916,7 +916,7 @@ var redux_title_modify = function(){
916
  $('li.active .redux-group-tab-link-a').click();
917
  }
918
 
919
- $("#meta-checkbox").click(function(){
920
  ampforwp_check_custom_content_status($(this));
921
  });
922
  ampforwp_check_custom_content_status($("#meta-checkbox"));
@@ -952,7 +952,7 @@ var redux_title_modify = function(){
952
  });
953
 
954
  if($(".amp-preview-button").length>0){
955
- $(".amp-preview-button").click(function(){
956
  var srcLink = $("#amp-preview-iframe").attr('data-src');
957
  $("#amp-preview-iframe").html("<iframe src='"+srcLink+"'></iframe>");
958
  });
@@ -1108,7 +1108,7 @@ jQuery(document).ready(function($) {
1108
  $('#redux-footer-sticky').hide();
1109
  }
1110
  },10);
1111
- $(".redux-group-tab-link-li").click(function(){
1112
  var this_c_val = $(this).children('a').children('span.group_title').html();
1113
  if($(this).hasClass('ampforwp-new-ux') || $(this).hasClass('opt-go-premium')){
1114
  $('#redux-footer-sticky').hide();
@@ -1367,7 +1367,7 @@ jQuery(document).ready(function($) {
1367
  $(".ux-setup-icon").addClass("amp-ux-warning-okay");
1368
  }
1369
  }
1370
- $("#ampforwp-prem-upg-to").click(function(){
1371
  $(".redux-group-tab-link-a").each(function(){
1372
  var id = $(this).attr('data-key');
1373
  var thischildelem = $(this).children('.group_title').html();
@@ -1378,7 +1378,7 @@ jQuery(document).ready(function($) {
1378
  }
1379
  });
1380
  });
1381
- $("#ampforwp-goto-analytics").click(function(){
1382
  $(".redux-group-tab-link-a").each(function(){
1383
  var id = $(this).attr('data-key');
1384
  var thischildelem = $(this).children('.group_title').html();
@@ -1393,7 +1393,7 @@ jQuery(document).ready(function($) {
1393
  }
1394
  });
1395
  });
1396
- $("[data-href=ampforwp-ux-advertisement-section]").click(function(){
1397
  $(".redux-group-tab-link-a").each(function(){
1398
  var id = $(this).attr('data-key');
1399
  var thischildelem = $(this).children('.group_title').html();
@@ -1453,7 +1453,7 @@ jQuery(document).ready(function($) {
1453
  });
1454
 
1455
  // Homepage
1456
- $('input[id="amp-ux-homepage"]').click(function(){
1457
  if($(this).prop("checked") == true){
1458
  $('.amp-ux-frontpage').show();
1459
  $(this).attr('value', 1);
@@ -1470,7 +1470,7 @@ jQuery(document).ready(function($) {
1470
 
1471
  });
1472
  // Frontpage
1473
- $('input[id="amp-ux-frontpage"]').click(function(){
1474
  if($(this).prop("checked") == true){
1475
  // FrontPage
1476
  $("input[data-id=amp-frontpage-select-option]").prop('checked', true).trigger( 'change' );
@@ -1495,7 +1495,7 @@ jQuery(document).ready(function($) {
1495
  }
1496
  });
1497
  // Posts
1498
- $('#amp-ux-posts').click(function(){
1499
  if($(this).prop("checked") == true){
1500
  if($('input[id="amp-on-off-for-all-posts"]').val() != 1 ) {
1501
  $("input[data-id=amp-on-off-for-all-posts]").prop('checked', true).trigger( 'change' );
@@ -1508,7 +1508,7 @@ jQuery(document).ready(function($) {
1508
  }
1509
  });
1510
  // Pages
1511
- $('input[id="amp-ux-pages"]').click(function(){
1512
  if($(this).prop("checked") == true){
1513
  if($('input[id="amp-on-off-for-all-pages"]').val() != 1 ) {
1514
  $("input[data-id=amp-on-off-for-all-pages]").prop('checked', true).trigger( 'change' );
@@ -1521,7 +1521,7 @@ jQuery(document).ready(function($) {
1521
  }
1522
  });
1523
  // Archives
1524
- $('input[id="amp-ux-archives"]').click(function(){
1525
  if($(this).prop("checked") == true){
1526
  if($('input[id="ampforwp-archive-support"]').val() != 1 ) {
1527
  $("input[data-id=ampforwp-archive-support]").prop('checked', true).trigger( 'change' );
@@ -1544,7 +1544,7 @@ jQuery(document).ready(function($) {
1544
  }
1545
  });
1546
  // Design and Presentation Section
1547
- $('.media-amp-ux-opt-media' ).unbind().on(
1548
  'click', function( event ) {
1549
  redux.field_objects.media.addFile( event, $( this ).parents( 'div.amp-ux-opt-media-container:first' ) );
1550
  $('.media-button-select').on('click', function(){
@@ -1815,7 +1815,7 @@ jQuery(document).ready(function($) {
1815
  }
1816
  }
1817
  // Privacy Settings Section
1818
- $('input[id="amp-ux-notice-switch"]').click(function(){
1819
  if($(this).prop("checked") == true){
1820
  $(this).val(1);
1821
  if($('input[id="amp-enable-notifications"]').val() != 1 ) {
@@ -1840,7 +1840,7 @@ jQuery(document).ready(function($) {
1840
 
1841
  });
1842
 
1843
- $('input[id="amp-ux-gdpr-switch"]').click(function(){
1844
  if($(this).prop("checked") == true){
1845
  $(this).val(1);
1846
  if($('input[id="amp-gdpr-compliance-switch"]').val() != 1 ) {
@@ -1862,7 +1862,7 @@ jQuery(document).ready(function($) {
1862
  $(this).val(0);
1863
  }
1864
  });
1865
- $(".amp-ux-section-field").click(function(){
1866
  var track = $(this).attr('data-href');
1867
  localStorage.setItem('ampforwp_current_drawer_click',track);
1868
  });
@@ -1890,7 +1890,7 @@ function ampforwp_check_required(value,required){
1890
  $("[required="+required+"]").removeClass("hide");
1891
  }
1892
  }
1893
- $("#ampforwp-add-more-analytics").click(function(){
1894
  var analytics = $("#ampforwp-ux-analytics-more").val();
1895
 
1896
  if( analytics && $("[data-href="+analytics+"]").hasClass('hide')){
@@ -1911,7 +1911,7 @@ $("#ampforwp-add-more-analytics").click(function(){
1911
  }
1912
  });
1913
 
1914
- $('.ampforwp-ux-closable').click(function(){
1915
  $(this).parent('.ampforwp-ux-sub-section').addClass('hide');
1916
  var data_href = $(this).parent('.ampforwp-ux-sub-section').attr('data-href');
1917
  var checked = $('#redux_builder_amp-'+data_href).children('.switch-options').children('.ios7-switch').children('.switch-on-off').prop('checked');
@@ -2332,7 +2332,7 @@ function Drawer(drawerElem) {
2332
  }
2333
  amp_option_panel_view_func();
2334
 
2335
- $(".amp-opt-view").click(function(){
2336
  var thisid = $(this).attr('id');
2337
  amp_options_hide_show(thisid);
2338
  $(".ampforwp-option-panel-view-pop").remove();
@@ -2384,14 +2384,14 @@ function Drawer(drawerElem) {
2384
  $("body").css({'overflow':'auto'});
2385
  $("#1_section_group_li_a").click();
2386
  }
2387
- $("[data-href='ampforwp-ux-design-section']").click(function(){
2388
  if($("[name='redux_builder_amp[amp-design-selector]']").val() == '4'){
2389
  $('#ampforwp-easy-setup-global-color').show();
2390
  }else{
2391
  $('#ampforwp-easy-setup-global-color').hide();
2392
  }
2393
  });
2394
- $(".amp-opt-change").click(function(){
2395
  var thisid = $(this).attr('id');
2396
  $(".amp-opt-change").each(function(){
2397
  $(this).parent().removeClass('active');
@@ -2592,7 +2592,7 @@ $("#subscribe-newsletter-form").on('submit',function(e){
2592
  var checkBoxes = $(this).children('input:radio')
2593
  checkBoxes.prop("checked", "true");
2594
  });
2595
- $("#ampforwp-close-notice").click(function(){
2596
  var data = {
2597
  action: 'ampforwp_feedback_remove_notice',
2598
  };
116
  $('.redux-container').each(function() {
117
  if (!$(this).hasClass('redux-no-sections')) {
118
  $(this).find('.display_header').append('<span class="search-wrapper"><input class="redux_field_search" name="" type="text" placeholder="Search the controls" style="display:none"/><span class="redux-amp-search-icon"><i class="dashicons-before dashicons-search"></i></span></span>');
119
+ $('.redux-amp-search-icon').on("click", function(){
120
  $('.redux_field_search').toggle('slide');
121
  var val = $('.redux_field_search').val();
122
  var display = $('.redux_field_search').css('display');
218
  });
219
 
220
  });
221
+ $(".redux_field_search").on( "keypress", function (evt) {
222
  //Deterime where our character code is coming from within the event
223
  var charCode = evt.charCode || evt.keyCode;
224
  if (charCode == 13) { //Enter key's keycode
227
  });
228
  //option panel Section Division
229
  var optionSectionDevision = function(){
230
+ $('.afw-accordion-header').on("click", function(){
231
  //Get Cookie Changes
232
  if ( $.cookie( "redux_current_section_customize" )){
233
  var allReduxTabs = JSON.parse($.cookie( "redux_current_section_customize" ));
306
  }
307
  });
308
 
309
+ jQuery( '.redux-group-tab-link-a' ).on("click", function(){
310
  if(jQuery(this).parent('li').hasClass('otherSectionFields')){
311
  jQuery(this).parent('li.otherSectionFields').siblings('li.otherSectionFields').hide();
312
  if(!jQuery(this).parent('li').is(':visible')){
336
  $(this).parent('div.switch-options').find('.switch-text-off').show();
337
  }
338
  });
339
+ switchText.siblings('label').on("click", function(){
340
  if ( $(this).siblings('input').attr('value') == 1 ) {
341
  $(this).parent().find('.switch-text-on').hide();
342
  $(this).parent().find('.switch-text-off').show();
677
  });
678
  }
679
  var reduxOptionTab = function(){
680
+ $('.redux-tab-selector').on("click", function(){
681
  var tabId = $(this).attr('data-tab');
682
  var tabRequired = $(this).attr('data-tab-required');
683
  $(this).parents().find('.custom-tab-container').hide();
706
  });//$(".amp-ls-solve") each closed
707
  }
708
  });
709
+ $(".redux-ampforwp-ext-activate").on("click", function(){
710
  var currentThis = $(this);
711
  var plugin_id = currentThis.attr("id");
712
  var secure_nonce = currentThis.parents("li").attr('data-ext-secure');
772
  return null;
773
  }
774
  function deactivatelicence(){
775
+ $(".ampforwp-ext-refresh").on("click", function(){
776
  var currentThis = $(this);
777
  var plugin_id = currentThis.attr("id");
778
 
824
 
825
  }
826
  });
827
+ $(".redux-ampforwp-ext-deactivate").on("click", function(){
828
  var currentThis = $(this);
829
  var plugin_id = currentThis.attr("id");
830
  var secure_nonce = currentThis.parents("li").attr('data-ext-secure');
894
  helpSection();
895
 
896
  var redux_title_modify = function(){
897
+ $( '.redux-group-tab-link-a' ).on("click", function(){
898
  var link = $( this );
899
  if ( link.parent().hasClass( 'empty_section' ) && link.parent().hasClass( 'hasSubSections' ) ) {
900
  var elements = $( this ).closest( 'ul' ).find( '.redux-group-tab-link-a' );
916
  $('li.active .redux-group-tab-link-a').click();
917
  }
918
 
919
+ $("#meta-checkbox").on("click", function(){
920
  ampforwp_check_custom_content_status($(this));
921
  });
922
  ampforwp_check_custom_content_status($("#meta-checkbox"));
952
  });
953
 
954
  if($(".amp-preview-button").length>0){
955
+ $(".amp-preview-button").on("click", function(){
956
  var srcLink = $("#amp-preview-iframe").attr('data-src');
957
  $("#amp-preview-iframe").html("<iframe src='"+srcLink+"'></iframe>");
958
  });
1108
  $('#redux-footer-sticky').hide();
1109
  }
1110
  },10);
1111
+ $(".redux-group-tab-link-li").on("click", function(){
1112
  var this_c_val = $(this).children('a').children('span.group_title').html();
1113
  if($(this).hasClass('ampforwp-new-ux') || $(this).hasClass('opt-go-premium')){
1114
  $('#redux-footer-sticky').hide();
1367
  $(".ux-setup-icon").addClass("amp-ux-warning-okay");
1368
  }
1369
  }
1370
+ $("#ampforwp-prem-upg-to").on("click", function(){
1371
  $(".redux-group-tab-link-a").each(function(){
1372
  var id = $(this).attr('data-key');
1373
  var thischildelem = $(this).children('.group_title').html();
1378
  }
1379
  });
1380
  });
1381
+ $("#ampforwp-goto-analytics").on("click", function(){
1382
  $(".redux-group-tab-link-a").each(function(){
1383
  var id = $(this).attr('data-key');
1384
  var thischildelem = $(this).children('.group_title').html();
1393
  }
1394
  });
1395
  });
1396
+ $("[data-href=ampforwp-ux-advertisement-section]").on("click", function(){
1397
  $(".redux-group-tab-link-a").each(function(){
1398
  var id = $(this).attr('data-key');
1399
  var thischildelem = $(this).children('.group_title').html();
1453
  });
1454
 
1455
  // Homepage
1456
+ $('input[id="amp-ux-homepage"]').on("click", function(){
1457
  if($(this).prop("checked") == true){
1458
  $('.amp-ux-frontpage').show();
1459
  $(this).attr('value', 1);
1470
 
1471
  });
1472
  // Frontpage
1473
+ $('input[id="amp-ux-frontpage"]').on("click", function(){
1474
  if($(this).prop("checked") == true){
1475
  // FrontPage
1476
  $("input[data-id=amp-frontpage-select-option]").prop('checked', true).trigger( 'change' );
1495
  }
1496
  });
1497
  // Posts
1498
+ $('#amp-ux-posts').on("click", function(){
1499
  if($(this).prop("checked") == true){
1500
  if($('input[id="amp-on-off-for-all-posts"]').val() != 1 ) {
1501
  $("input[data-id=amp-on-off-for-all-posts]").prop('checked', true).trigger( 'change' );
1508
  }
1509
  });
1510
  // Pages
1511
+ $('input[id="amp-ux-pages"]').on("click", function(){
1512
  if($(this).prop("checked") == true){
1513
  if($('input[id="amp-on-off-for-all-pages"]').val() != 1 ) {
1514
  $("input[data-id=amp-on-off-for-all-pages]").prop('checked', true).trigger( 'change' );
1521
  }
1522
  });
1523
  // Archives
1524
+ $('input[id="amp-ux-archives"]').on("click", function(){
1525
  if($(this).prop("checked") == true){
1526
  if($('input[id="ampforwp-archive-support"]').val() != 1 ) {
1527
  $("input[data-id=ampforwp-archive-support]").prop('checked', true).trigger( 'change' );
1544
  }
1545
  });
1546
  // Design and Presentation Section
1547
+ $('.media-amp-ux-opt-media' ).off().on(
1548
  'click', function( event ) {
1549
  redux.field_objects.media.addFile( event, $( this ).parents( 'div.amp-ux-opt-media-container:first' ) );
1550
  $('.media-button-select').on('click', function(){
1815
  }
1816
  }
1817
  // Privacy Settings Section
1818
+ $('input[id="amp-ux-notice-switch"]').on("click", function(){
1819
  if($(this).prop("checked") == true){
1820
  $(this).val(1);
1821
  if($('input[id="amp-enable-notifications"]').val() != 1 ) {
1840
 
1841
  });
1842
 
1843
+ $('input[id="amp-ux-gdpr-switch"]').on("click", function(){
1844
  if($(this).prop("checked") == true){
1845
  $(this).val(1);
1846
  if($('input[id="amp-gdpr-compliance-switch"]').val() != 1 ) {
1862
  $(this).val(0);
1863
  }
1864
  });
1865
+ $(".amp-ux-section-field").on("click", function(){
1866
  var track = $(this).attr('data-href');
1867
  localStorage.setItem('ampforwp_current_drawer_click',track);
1868
  });
1890
  $("[required="+required+"]").removeClass("hide");
1891
  }
1892
  }
1893
+ $("#ampforwp-add-more-analytics").on("click", function(){
1894
  var analytics = $("#ampforwp-ux-analytics-more").val();
1895
 
1896
  if( analytics && $("[data-href="+analytics+"]").hasClass('hide')){
1911
  }
1912
  });
1913
 
1914
+ $('.ampforwp-ux-closable').on("click", function(){
1915
  $(this).parent('.ampforwp-ux-sub-section').addClass('hide');
1916
  var data_href = $(this).parent('.ampforwp-ux-sub-section').attr('data-href');
1917
  var checked = $('#redux_builder_amp-'+data_href).children('.switch-options').children('.ios7-switch').children('.switch-on-off').prop('checked');
2332
  }
2333
  amp_option_panel_view_func();
2334
 
2335
+ $(".amp-opt-view").on("click", function(){
2336
  var thisid = $(this).attr('id');
2337
  amp_options_hide_show(thisid);
2338
  $(".ampforwp-option-panel-view-pop").remove();
2384
  $("body").css({'overflow':'auto'});
2385
  $("#1_section_group_li_a").click();
2386
  }
2387
+ $("[data-href='ampforwp-ux-design-section']").on("click", function(){
2388
  if($("[name='redux_builder_amp[amp-design-selector]']").val() == '4'){
2389
  $('#ampforwp-easy-setup-global-color').show();
2390
  }else{
2391
  $('#ampforwp-easy-setup-global-color').hide();
2392
  }
2393
  });
2394
+ $(".amp-opt-change").on("click", function(){
2395
  var thisid = $(this).attr('id');
2396
  $(".amp-opt-change").each(function(){
2397
  $(this).parent().removeClass('active');
2592
  var checkBoxes = $(this).children('input:radio')
2593
  checkBoxes.prop("checked", "true");
2594
  });
2595
+ $("#ampforwp-close-notice").on("click", function(){
2596
  var data = {
2597
  action: 'ampforwp_feedback_remove_notice',
2598
  };
includes/features/functions.php CHANGED
@@ -230,6 +230,7 @@ function ampforwp_the_content_filter_full( $content_buffer ) {
230
  // xlink attribute causes Validatation Issues #1149
231
  $content_buffer = preg_replace('/xlink="href"/','',$content_buffer);
232
  $content_buffer = preg_replace('/!important/', '' , $content_buffer);
 
233
  // Compatibility with the footnotes plugin. #2447
234
  if(class_exists('MCI_Footnotes')){
235
  $footnote_collapse_link = '';
230
  // xlink attribute causes Validatation Issues #1149
231
  $content_buffer = preg_replace('/xlink="href"/','',$content_buffer);
232
  $content_buffer = preg_replace('/!important/', '' , $content_buffer);
233
+ $content_buffer = preg_replace('/<area(.*?)>/', '', $content_buffer);
234
  // Compatibility with the footnotes plugin. #2447
235
  if(class_exists('MCI_Footnotes')){
236
  $footnote_collapse_link = '';
includes/features/performance/performance-functions.php CHANGED
@@ -49,6 +49,9 @@ function ampforwp_minify_html_output($content_buffer){
49
  if (function_exists('aioseo_pro_just_activated') && preg_match('/<link rel="canonical" href="([^>]*)\/amp\/" \/>/', $content_buffer)) {
50
  $content_buffer = preg_replace('/<link rel="canonical" href="([^>]*)\/amp\/" \/>/','<link rel="canonical" href="$1/" />', $content_buffer);
51
  }
 
 
 
52
  global $redux_builder_amp;
53
  if(!$redux_builder_amp['ampforwp_cache_minimize_mode']){
54
  return $content_buffer;
@@ -211,6 +214,18 @@ function ampforwp_no_htaccess_notice(){
211
  echo wp_kses_post( $message );
212
  }
213
  function ampforwp_code_to_add_in_htaccess(){
 
 
 
 
 
 
 
 
 
 
 
 
214
  $htaccess_cntn = "\n";
215
  $htaccess_cntn .= '# AMPFORWPLBROWSERCSTART Browser Caching' . "\n";
216
  $htaccess_cntn .= '<IfModule mod_expires.c>' . "\n";
@@ -231,15 +246,15 @@ function ampforwp_code_to_add_in_htaccess(){
231
  $htaccess_cntn .= 'ExpiresByType image/jpeg "access 1 year"' . "\n";
232
  $htaccess_cntn .= 'ExpiresByType image/png "access 1 year"' . "\n";
233
  $htaccess_cntn .= 'ExpiresByType image/x-icon "access 1 year"' . "\n";
234
- $htaccess_cntn .= 'ExpiresByType text/css "access 3 month"' . "\n";
235
- $htaccess_cntn .= 'ExpiresByType text/javascript "access 3 month"' . "\n";
236
- $htaccess_cntn .= 'ExpiresByType text/html "access 3 month"' . "\n";
237
- $htaccess_cntn .= 'ExpiresByType application/javascript "access 3 month"' . "\n";
238
- $htaccess_cntn .= 'ExpiresByType application/x-javascript "access 3 month"' . "\n";
239
- $htaccess_cntn .= 'ExpiresByType application/xhtml-xml "access 3 month"' . "\n";
240
- $htaccess_cntn .= 'ExpiresByType application/pdf "access 3 month"' . "\n";
241
- $htaccess_cntn .= 'ExpiresByType application/x-shockwave-flash "access 3 month"' . "\n";
242
- $htaccess_cntn .= 'ExpiresDefault "access 3 month"' . "\n";
243
  $htaccess_cntn .= '</IfModule>' . "\n";
244
  $htaccess_cntn .= '# END Caching AMPFORWPLBROWSERCEND' . "\n";
245
  return $htaccess_cntn;
49
  if (function_exists('aioseo_pro_just_activated') && preg_match('/<link rel="canonical" href="([^>]*)\/amp\/" \/>/', $content_buffer)) {
50
  $content_buffer = preg_replace('/<link rel="canonical" href="([^>]*)\/amp\/" \/>/','<link rel="canonical" href="$1/" />', $content_buffer);
51
  }
52
+ if(preg_match('/<script(.*?)src="https:\/\/www.google-analytics.com\/analytics.js"><\/script>/', $content_buffer)){
53
+ $content_buffer = preg_replace('/<script(.*?)src="https:\/\/www.google-analytics.com\/analytics.js"><\/script>/', '', $content_buffer);
54
+ }
55
  global $redux_builder_amp;
56
  if(!$redux_builder_amp['ampforwp_cache_minimize_mode']){
57
  return $content_buffer;
214
  echo wp_kses_post( $message );
215
  }
216
  function ampforwp_code_to_add_in_htaccess(){
217
+ $expires = ampforwp_get_setting('ampforwp_leverage_browser_caching_expires');
218
+ if (empty($expires)) {
219
+ $expires = '3 month';
220
+ }
221
+ if ($expires == 90) {
222
+ $expires = '3 month';
223
+ }
224
+ else if ($expires == 1) {
225
+ $expires = '1 day';
226
+ }else{
227
+ $expires = $expires . ' days';
228
+ }
229
  $htaccess_cntn = "\n";
230
  $htaccess_cntn .= '# AMPFORWPLBROWSERCSTART Browser Caching' . "\n";
231
  $htaccess_cntn .= '<IfModule mod_expires.c>' . "\n";
246
  $htaccess_cntn .= 'ExpiresByType image/jpeg "access 1 year"' . "\n";
247
  $htaccess_cntn .= 'ExpiresByType image/png "access 1 year"' . "\n";
248
  $htaccess_cntn .= 'ExpiresByType image/x-icon "access 1 year"' . "\n";
249
+ $htaccess_cntn .= 'ExpiresByType text/css "access '.esc_html($expires).'"' . "\n";
250
+ $htaccess_cntn .= 'ExpiresByType text/javascript "access '.esc_html($expires).'"' . "\n";
251
+ $htaccess_cntn .= 'ExpiresByType text/html "access '.esc_html($expires).'"' . "\n";
252
+ $htaccess_cntn .= 'ExpiresByType application/javascript "access '.esc_html($expires).'"' . "\n";
253
+ $htaccess_cntn .= 'ExpiresByType application/x-javascript "access '.esc_html($expires).'"' . "\n";
254
+ $htaccess_cntn .= 'ExpiresByType application/xhtml-xml "access '.esc_html($expires).'"' . "\n";
255
+ $htaccess_cntn .= 'ExpiresByType application/pdf "access '.esc_html($expires).'"' . "\n";
256
+ $htaccess_cntn .= 'ExpiresByType application/x-shockwave-flash "access '.esc_html($expires).'"' . "\n";
257
+ $htaccess_cntn .= 'ExpiresDefault "access '.esc_html($expires).'"' . "\n";
258
  $htaccess_cntn .= '</IfModule>' . "\n";
259
  $htaccess_cntn .= '# END Caching AMPFORWPLBROWSERCEND' . "\n";
260
  return $htaccess_cntn;
includes/features/performance/performance-options.php CHANGED
@@ -74,6 +74,14 @@ if ( ! defined( 'ABSPATH' ) ) {
74
  'tooltip-subtitle' => esc_html__('Improve the Page Speed and Loading time with Leverage Browser Caching option', 'accelerated-mobile-pages'),
75
  'default' => 0
76
  ),
 
 
 
 
 
 
 
 
77
  array(
78
  'id' => 'ampforwp_css_tree_shaking',
79
  'type' => 'switch',
74
  'tooltip-subtitle' => esc_html__('Improve the Page Speed and Loading time with Leverage Browser Caching option', 'accelerated-mobile-pages'),
75
  'default' => 0
76
  ),
77
+ array(
78
+ 'id' => 'ampforwp_leverage_browser_caching_expires',
79
+ 'class' => 'child_opt child_opt_arrow',
80
+ 'type' => 'text',
81
+ 'default' => '90',
82
+ 'title' => esc_html__('Days to Expiration', 'accelerated-mobile-pages'),
83
+ 'required' => array('ampforwp_leverage_browser_caching_mode', '=' , '1'),
84
+ ),
85
  array(
86
  'id' => 'ampforwp_css_tree_shaking',
87
  'type' => 'switch',
includes/vendor/amp/includes/amp-post-template-actions.php CHANGED
@@ -6,8 +6,10 @@ if ( ! defined( 'ABSPATH' ) ) {
6
  // Callbacks for adding content to an AMP template
7
 
8
  function amp_post_template_add_title( $amp_template ) {
 
 
9
  ?>
10
- <title><?php echo esc_html( $amp_template->get( 'document_title' ) ); ?></title>
11
  <?php
12
  }
13
 
6
  // Callbacks for adding content to an AMP template
7
 
8
  function amp_post_template_add_title( $amp_template ) {
9
+ $title = $amp_template->get( 'document_title' );
10
+ $title = str_replace('&#8211;', '-', $title);
11
  ?>
12
+ <title><?php echo esc_html( $title ); ?></title>
13
  <?php
14
  }
15
 
readme.txt CHANGED
@@ -4,7 +4,7 @@ Tags: AMP, accelerated mobile pages, mobile, amp project, google amp, amp wp, go
4
  Donate link: https://www.paypal.me/Kaludi/25
5
  Requires at least: 3.0
6
  Tested up to: 5.6
7
- Stable tag: 1.0.72
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
@@ -190,6 +190,16 @@ You can contact us from [here](https://ampforwp.com/contact/)
190
 
191
  == Changelog ==
192
 
 
 
 
 
 
 
 
 
 
 
193
  = 1.0.72 (17th December 2020) =
194
  * Improvement: Added i2Pros and cons plugin compatibility #4837
195
  * Improvement: Added WP-PageNavi plugin compatibility #4831
4
  Donate link: https://www.paypal.me/Kaludi/25
5
  Requires at least: 3.0
6
  Tested up to: 5.6
7
+ Stable tag: 1.0.73
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
10
 
190
 
191
  == Changelog ==
192
 
193
+ = 1.0.73 (23rd December 2020) =
194
+ * Fixed: Javascript issues after update to WordPress 5.6 #4867
195
+ * Fixed: '-' symbol is not appearing on post title #4866
196
+ * Fixed: GDPR strings are not getting translated in WPML #4874
197
+ * Fixed: AMP Browser caching policy updated #4876
198
+ * Fixed: Validation Errors when WP Daddy Builder Pro is active #4879
199
+ * Fixed: Vuukle comments box appearing twice in AMP #4878
200
+ * Fixed: Validation error when 'area' tag is added in post content #4882
201
+ * Fixed: Validation error "Custom JS is not allowed" with ALL in one SEO pro #4883
202
+
203
  = 1.0.72 (17th December 2020) =
204
  * Improvement: Added i2Pros and cons plugin compatibility #4837
205
  * Improvement: Added WP-PageNavi plugin compatibility #4831
templates/features.php CHANGED
@@ -6560,7 +6560,7 @@ function ampforwp_get_comments_status(){
6560
  add_action('ampforwp_post_after_design_elements','ampforwp_vuukle_comments_support');
6561
  function ampforwp_vuukle_comments_support() {
6562
  global $redux_builder_amp;
6563
- if ( true == ampforwp_get_setting('ampforwp-vuukle-comments-support') && comments_open()) {
6564
  echo ampforwp_vuukle_comments_markup();
6565
  }
6566
  }
6560
  add_action('ampforwp_post_after_design_elements','ampforwp_vuukle_comments_support');
6561
  function ampforwp_vuukle_comments_support() {
6562
  global $redux_builder_amp;
6563
+ if ( true == ampforwp_get_setting('ampforwp-vuukle-comments-support') && comments_open() && ampforwp_get_setting('amp-design-selector') != 4) {
6564
  echo ampforwp_vuukle_comments_markup();
6565
  }
6566
  }