1jQuery(document).ready(function($){ 2 //add tag from meta box 3 $('body').on('click','.add-new-hreflang-tag',function() { 4 $('#validate-hreflang').hide(); 5 var $div = $('div[id^="hreflang-"]:last'); 6 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) +1; 7 var $klon = $div.clone(true).prop('id', 'hreflang-'+num ).appendTo('.href-container'); 8 $('#hreflang-'+(num-1)+' button').remove(); 9 }); 10 // remove tag from meta box 11 $('body').on('click','.remove-new-hreflang-tag',function() { 12 $('#validate-hreflang').hide(); 13 var $div = $('div[id^="hreflang-"]:last'); 14 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) -1; 15 var $klon = $div.remove(); 16 $('<button class="add-new-hreflang-tag"><span class="dashicons dashicons-plus"></span></button> <button class="remove-new-hreflang-tag"><span class="dashicons dashicons-minus"></span></button>').clone(true).appendTo('#hreflang-'+num); 17 }); 18 $('body').on('click','.add-new-cat-hreflang-tag',function() { 19 var $div = $('div[id^="hreflang-cat-"]:last'); 20 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) +1; 21 var $klon = $div.clone(true).prop('id', 'hreflang-cat-'+num ).appendTo('.href-container-cat'); 22 $('#hreflang-'+(num-1)+' button').remove(); 23 }); 24 $('body').on('click','.remove-new-cat-hreflang-tag',function() { 25 var $div = $('div[id^="hreflang-cat-"]:last'); 26 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) -1; 27 var $klon = $div.remove(); 28 $('<button class="add-new-cat-hreflang-tag"><span class="dashicons dashicons-plus"></span></button> <button class="remove-new-cat-hreflang-tag"><span class="dashicons dashicons-minus"></span></button>').clone(true).appendTo('#hreflang-cat-'+num); 29 }); 30 $('body').on('click','.add-new-cat-edit-hreflang-tag',function() { 31 var $div = $('div[id^="hreflang-cat-edit-"]:last'); 32 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) +1; 33 var $klon = $div.clone(true).prop('id', 'hreflang-cat-edit-'+num ).appendTo('.term-hreflang-data'); 34 $('#hreflang-cat-edit-'+(num-1)+' button').remove(); 35 }); 36 $('body').on('click','.remove-new-cat-edit-hreflang-tag',function() { 37 var $div = $('div[id^="hreflang-cat-edit-"]:last'); 38 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) -1; 39 var $klon = $div.remove(); 40 $('<button class="add-new-cat-edit-hreflang-tag"><span class="dashicons dashicons-plus"></span></button> <button class="remove-new-cat-edit-hreflang-tag"><span class="dashicons dashicons-minus"></span></button>').clone(true).appendTo('#hreflang-cat-edit-'+num); 41 }); 42 $('#generate_tags').click(function() { 43 html = ''; 44 $('.href-lang').each(function() { 45 if ($(this).children('.hreflang-region').val() != '') { 46 html += '<link rel="alternative" href="'+$(this).children('.hreflang-href').val()+'" hreflang="'+$(this).children('.hreflang-lang').val()+'-'+$(this).children('.hreflang-region').val()+'">\n'; 47 } 48 else { 49 html += '<link rel="alternative" href="'+$(this).children('.hreflang-href').val()+'" hreflang="'+$(this).children('.hreflang-lang').val()+'">\n'; 50 } 51 }); 52 $('#hreflang-html').css('display','block').val(html).height( $('#hreflang-html')[0].scrollHeight ); 53 }); 54 $('body').on('click','.add-new-gen-hreflang-tag',function() { 55 var $div = $('div[id^="hreflang-gen-"]:last'); 56 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) +1; 57 var $klon = $div.clone(true).prop('id', 'hreflang-gen-'+num ).appendTo('.href-container-gen'); 58 $('#hreflang-gen-'+(num-1)+' button').remove(); 59 }); 60 $('body').on('click','.remove-new-gen-hreflang-tag',function() { 61 var $div = $('div[id^="hreflang-gen-"]:last'); 62 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) -1; 63 var $klon = $div.remove(); 64 $('<button class="add-new-gen-hreflang-tag"><span class="dashicons dashicons-plus"></span></button> <button class="remove-new-gen-hreflang-tag"><span class="dashicons dashicons-minus"></span></button>').clone(true).appendTo('#hreflang-gen-'+num); 65 }); 66 $('body').on('click','.add-new-blog-hreflang-tag',function(e) { 67 e.preventDefault; 68 var $div = $('div[id^="hreflang-blog-"]:last'); 69 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) +1; 70 var $klon = $div.clone(true).prop('id', 'hreflang-blog-'+num ).appendTo('.href-container-blog'); 71 $('#hreflang-gen-'+(num-1)+' button').remove(); 72 }); 73 $('body').on('click','.remove-new-blog-hreflang-tag',function(e) { 74 e.preventDefault; 75 var $div = $('div[id^="hreflang-blog-"]:last'); 76 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) -1; 77 var $klon = $div.remove(); 78 $('<button class="add-new-blog-hreflang-tag" onClick="return false;"><span class="dashicons dashicons-plus"></span></button> <button class="remove-new-blog-hreflang-tag" onClick="return false;"><span class="dashicons dashicons-minus"></span></button>').clone(true).appendTo('#hreflang-blog-'+num); 79 }); 80 $('body').on('click','.add-new-shop-hreflang-tag',function(e) { 81 e.preventDefault; 82 var $div = $('div[id^="hreflang-shop-"]:last'); 83 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) +1; 84 var $klon = $div.clone(true).prop('id', 'hreflang-shop-'+num ).appendTo('.href-container-shop'); 85 $('#hreflang-gen-'+(num-1)+' button').remove(); 86 }); 87 $('body').on('click','.remove-new-shop-hreflang-tag',function(e) { 88 e.preventDefault; 89 var $div = $('div[id^="hreflang-shop-"]:last'); 90 var num = parseInt( $div.prop("id").match(/\d+/g), 10 ) -1; 91 var $klon = $div.remove(); 92 $('<button class="add-new-shop-hreflang-tag" onClick="return false;"><span class="dashicons dashicons-plus"></span></button> <button class="remove-new-shop-hreflang-tag" onClick="return false;"><span class="dashicons dashicons-minus"></span></button>').clone(true).appendTo('#hreflang-shop-'+num); 93 }); 94 $('#validate-hreflang').click(function() { 95 $(this).text('Please wait...'); 96 $('.validation-response-holder').each(function() { 97 $(this).css({'width':'40px','display':'inline-block','height':'18px'}).html('<span class="spinner is-active"></span>') 98 }); 99 id = $(this).attr('data-id'); 100 $.ajax({ 101 type:'POST', 102 data:{ 103 action:'validate_hreflang_tags', 104 post_id: id 105 }, 106 url: ajaxurl, 107 success: function(data) { 108 $('#validate-hreflang').text('Validate'); 109 var count = 1; 110 max_count = Object.keys(data).length; 111 $.each(data, function(index, value) { 112 if (value.result == 'success' && value.validate == 'pass') { 113 if (count == max_count) { 114 html = '<button class="add-new-hreflang-tag"><span class="dashicons dashicons-plus"></span></button> <button class="remove-new-hreflang-tag"><span class="dashicons dashicons-minus"></span></button> <span class="dashicons dashicons-yes" style="color:green"></span>'; 115 } 116 else { 117 html = '<span class="dashicons dashicons-yes" style="color:green"></span>'; 118 } 119 } 120 else if (value.result == 'success' && value.validate == 'fail') { 121 if (count == max_count) { 122 html = '<button class="add-new-hreflang-tag"><span class="dashicons dashicons-plus"></span></button> <button class="remove-new-hreflang-tag"><span class="dashicons dashicons-minus"></span></button> <span class="dashicons dashicons-no" style="color:red"></span> <span style="color:red">'+value.message+'</span>'; 123 } 124 else { 125 html = '<span class="dashicons dashicons-no" style="color:red"></span> <span style="color:red">'+value.message+'</span>'; 126 } 127 } 128 $('#'+index).css({'width':'auto','display':'inline-block','height':'auto'}).html(html); 129 console.log(count+':'+max_count); 130 count++; 131 }); 132 } 133 }); 134 }); 135 $('input#hreflang_pro_show_admin_bar').change(function(){ 136 this.value = (Number(this.checked)); 137 }); 138})
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.