1 var swsource = "https://fresh-trip.ru/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://fresh-trip.ru/'}).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 } 151 } 152 }); 153 }
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.