1/** mail subscription part */ 2var subscribe_button = document.querySelector("#footerMenu .brand-subscribe-column .subscribe_button"); 3 4subscribe_button.addEventListener('click', function(){ 5 var subscribing = document.querySelector(".subscribing"); 6 var thanks = document.querySelector(".thanks"); 7 8 subscribing.classList.add("active"); 9 10 let formData = new FormData(); 11 formData.append('email', document.getElementById("mail-subscribe-input").value); 12 fetch('/subscriber/send-email', { 13 method: 'POST', 14 body: formData 15 }) 16 .then(response => response.json()) 17 .then( data => { 18 console.log(data); 19 thanks.textContent = data.message; 20 if (data.code == 0) { 21 thanks.classList.add("invalid"); 22 } 23 thanks.classList.add("active"); 24 setTimeout(function(){ 25 thanks.classList.remove("active"); 26 thanks.classList.remove("invalid"); 27 subscribing.classList.remove("active"); 28 }, 5000); 29 }) 30 .catch(error => { 31 console.log(error); 32 thanks.textContent = "Failed! Please try other day."; 33 thanks.classList.add("invalid"); 34 thanks.classList.add("active"); 35 setTimeout(function(){ 36 thanks.classList.remove("active"); 37 subscribing.classList.remove("active"); 38 thanks.classList.remove("invalid"); 39 }, 5000); 40 }); 41 42}); 43/** end of mail subscription part */ 44 45/** for collapsing menus in footer */ 46let myLabels = document.querySelectorAll('.lbl-toggle'); 47 48Array.from(myLabels).forEach(label => { 49 label.addEventListener('keydown', e => { 50 // 32 === spacebar 51 // 13 === enter 52 if (e.which === 32 || e.which === 13) { 53 e.preventDefault(); 54 label.click(); 55 }; 56 }); 57}); 58/** end for keymapping for collapsing menus in footer */ 59document.querySelectorAll('a[href^="#"]').forEach(anchor => { 60 anchor.addEventListener('click', function (e) { 61 e.preventDefault(); 62 63 document.querySelector(this.getAttribute('href')).scrollIntoView({ 64 behavior: 'smooth' 65 }); 66 }); 67}); 68const tooltipTriggerList = document.querySelectorAll('[data-bs-toggle="tooltip"]'); 69const tooltipList = [...tooltipTriggerList].map(tooltipTriggerEl => new bootstrap.Tooltip(tooltipTriggerEl));
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.