1 var swsource = "https://www.milar.es/blog/pwa-sw.js"; 2 3 function PWAforwpreadCookie(name) { 4 var nameEQ = name + "="; 5 var ca = document.cookie.split(";"); 6 for(var i=0;i < ca.length;i++) { 7 var c = ca[i]; 8 while (c.charAt(0)==" ") c = c.substring(1,c.length); 9 if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); 10 } 11 return null; 12 } 13 if("serviceWorker" in navigator) { 14 window.addEventListener('load', function() { 15 navigator.serviceWorker.register(swsource, {scope: 'https://www.milar.es/blog/'}).then(function(reg){ 16 console.log('Congratulations!!Service Worker Registered ServiceWorker scope: ', reg.scope); 17 18 }).catch(function(err) { 19 console.log('ServiceWorker registration failed: ', err); 20 }); 21 22 var deferredPrompt; 23 window.addEventListener('beforeinstallprompt', (e) => { 24 25 deferredPrompt = e; 26 27 if(deferredPrompt != null || deferredPrompt != undefined){ 28 29 var a2hsviashortcode = document.getElementsByClassName("pwaforwp-add-via-class"); 30 if(a2hsviashortcode !== null){ 31 for (var i = 0; i < a2hsviashortcode.length; i++) { 32 a2hsviashortcode[i].style.display="inline-block"; 33 } 34 } 35 36 var a2hsviashortcode = document.getElementsByClassName("pwaforwp-sticky-banner"); 37 var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent); 38 if(a2hsviashortcode !== null && checkbarClosedOrNot() && (typeof pwa_cta_assets !== 'undefined') && (pwa_cta_assets.a2h_sticky_on_desktop_cta==1 || isMobile)){ 39 for (var i = 0; i < a2hsviashortcode.length; i++) { 40 a2hsviashortcode[i].style.display="flex"; 41 } 42 } 43 44 45 46 } 47 48 }); 49 function checkbarClosedOrNot(){ 50 var closedTime = PWAforwpreadCookie("pwaforwp_prompt_close"); 51 if(closedTime){ 52 var today = new Date(); 53 var closedTime = new Date(closedTime); 54 var diffMs = (today-closedTime); 55 var diffMins = Math.round(((diffMs % 86400000) % 3600000) / 60000); /* minutes*/ 56 if(diffMs){/*diffMins<4*/ 57 return false; 58 } 59 } 60 return true; 61 } 62 63 /* Safari 3.0+ "[object HTMLElementConstructor]" */ 64 var isSafari = /constructor/i.test(window.HTMLElement) || (function (p) { return p.toString() === "[object SafariRemoteNotification]"; })(!window['safari'] || (typeof safari !== 'undefined' && safari.pushNotification)); 65 if( isSafari ){ 66 var a2hsviashortcode = document.getElementsByClassName("pwaforwp-add-via-class"); 67 if(a2hsviashortcode !== null){ 68 for (var i = 0; i < a2hsviashortcode.length; i++) { 69 a2hsviashortcode[i].style.display="inline-block"; 70 } 71 } 72 73 var a2hsviashortcode = document.getElementsByClassName("pwaforwp-sticky-banner"); 74 var isMobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent); 75 if(a2hsviashortcode !== null && checkbarClosedOrNot() && (typeof pwa_cta_assets !== 'undefined') && (pwa_cta_assets.a2h_
75sticky_on_desktop_cta==1 || isMobile) ){ 76 for (var i = 0; i < a2hsviashortcode.length; i++) { 77 a2hsviashortcode[i].style.display="flex"; 78 } 79 } 80 } 81 82 83 var a2hsviashortcode = document.getElementsByClassName("pwaforwp-add-via-class"); 84 if(a2hsviashortcode !== null){ 85 for (var i = 0; i < a2hsviashortcode.length; i++) { 86 a2hsviashortcode[i].addEventListener("click", addToHome); 87 } 88 } 89 90 window.addEventListener('appinstalled', (evt) => { 91 92 var a2hsviashortcode = document.getElementsByClassName("pwaforwp-add-via-class"); 93 if(a2hsviashortcode !== null){ 94 for (var i = 0; i < a2hsviashortcode.length; i++) { 95 a2hsviashortcode[i].style.display="none"; 96 } 97 } 98 99 var a2hsviashortcode = document.getElementsByClassName("pwaforwp-sticky-banner"); 100 if(a2hsviashortcode !== null){ 101 for (var i = 0; i < a2hsviashortcode.length; i++) { 102 a2hsviashortcode[i].style.display="none"; 103 } 104 } 105 var addtohomeBtn = document.getElementById("pwaforwp-add-to-home-click"); 106 if(addtohomeBtn !==null){ 107 addtohomeBtn.style.display="none"; 108 } 109 }); 110 111 function addToHome(){ 112 if(!deferredPrompt){return ;} 113 deferredPrompt.prompt(); 114 deferredPrompt.userChoice 115 .then((choiceResult) => { 116 if (choiceResult.outcome === "accepted") { 117 118 document.getElementById("pwaforwp-add-to-home-click").style.display = "none"; 119 120 var a2hsviashortcode = document.getElementsByClassName("pwaforwp-add-via-class"); 121 if(a2hsviashortcode !== null){ 122 for (var i = 0; i < a2hsviashortcode.length; i++) { 123 a2hsviashortcode[i].style.display="none"; 124 } 125 } 126 127 var a2hsviashortcode = document.getElementsByClassName("pwaforwp-sticky-banner"); 128 if(a2hsviashortcode !== null){ 129 for (var i = 0; i < a2hsviashortcode.length; i++) { 130 a2hsviashortcode[i].style.display="none"; 131 } 132 } 133 134 console.log("User accepted the prompt"); 135 136 } else { 137 console.log("User dismissed the prompt"); 138 } 139 deferredPrompt = null; 140 }); 141 142 } 143 window.addEventListener("offline", pwaforwpOnNetworkChange); 144 function pwaforwpOnNetworkChange(event) { 145 if (!navigator.onLine) { 146 var a2hsdesk = document.getElementById("pwaforwp-add-to-home-click"); 147 if(a2hsdesk !== null){ 148 a2hsdesk.style.display = "none"; 149 } 150 var html = '<style class="pwa-offmsgwrcss">.pwa-offmsgwr{background: #323232;color: #f1f1f1;
150display: table;position: fixed;box-sizing: border-box;box-shadow: 0 2px 4px 0 #000;bottom: 0;left: 0;width: 100%;font-size: 14px;padding: 0;transition: transform .15s cubic-bezier(.17,.67,.39,.95);transform: translateY(200%);z-index: 1000;will-change: transform;}.pwa-offmsgwr table{margin:0px}.pwa-offmsgwr.active{transform: translateY(0);}.pwa-offmsgwr .tdcl{padding: 15px;}.pwa-offmsgwr .span{display: table-cell;vertical-align: middle;}</style><div class="pwa-offmsgwr active"><table width="100%"><tbody><tr><td class="tdcl"><span>You are currently offline</span></td></tr><tr></tr></tbody></table></div>'; 151 if(document.getElementsByClassName('pwa-offmsgwrcss').length==0){ 152 document.body.innerHTML += html; 153 } 154 setTimeout(function(){ 155 if(document.getElementsByClassName('pwa-offmsgwrcss').length){ document.getElementsByClassName('pwa-offmsgwrcss')[0].remove(); } 156 if(document.getElementsByClassName('pwa-offmsgwr').length){ document.getElementsByClassName('pwa-offmsgwr')[0].remove();} 157 }, 3000); 158 159 }else{ 160 if(document.getElementsByClassName('pwa-offmsgwrcss').length){document.getElementsByClassName('pwa-offmsgwrcss')[0].remove(); document.getElementsByClassName('pwa-offmsgwr')[0].remove();} 161 } 162 } 163 if( window.matchMedia('(display-mode: standalone)').matches ){ 164 var appContent = document.getElementsByClassName('pwaforwp-app-contents'); 165 for(var i=0; i<appContent.length; i++){ 166 appContent[i].style.display = 'block'; 167 } 168 } 169 }); 170 }
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.