// jloadScriptAsync (Promise) ---------------------------- var jloadScriptAsync = function (d, s, id, src) { return new Promise((resolve, reject) => { try { var fjs = d.getElementsByTagName(s)[0]; const scriptEle = d.createElement(s); scriptEle.id=id; scriptEle.onload = function () { //solo quando script caricato: resolve(scriptEle); } scriptEle.onerror = function (ev) { reject(new Error(`jloadScriptAsync error for ${src}`)); } scriptEle.src = src; fjs.parentNode.insertBefore(scriptEle, fjs); //document.head.append(scriptEle); } catch (error) { reject("110 ➔ jloadScriptAsync "+error); // errore interno alla funzione } }); }; // fine jloadScriptAsync // waitForAWN Funzione che attende che un oggetto JavaScript AWN venga definito function waitForAWN(pollInterval = 100, timeout = 5000) { return new Promise((resolve, reject) => { const startTime = Date.now(); function checkAWN() { if (typeof AWN !== 'undefined' && AWN !== 'undefined') { resolve(AWN); // L'oggetto AWN è stato trovato, risolvi la Promise } else if (Date.now() - startTime >= timeout) { reject(new Error(`Timeout: Oggetto AWN non trovato entro ${timeout}ms`)); // Timeout raggiunto } else { setTimeout(checkAWN, pollInterval); // Prova di nuovo dopo l'intervallo di polling } } checkAWN(); // Inizia il polling }); } // fine waitForAWN //debugger; // waitForJQ (Promise) ---------------------------- // Funzione che attende che un oggetto JavaScript jQuery venga definito function waitForJQ(pollInterval = 100, timeout = 5000) { return new Promise((resolve, reject) => { const startTime = Date.now(); function checkJQ() { if (typeof jQuery !== 'undefined' && jQuery !== 'undefined') { resolve(jQuery); // L'oggetto jQuery è stato trovato, risolvi la Promise } else if (Date.now() - startTime >= timeout) { reject(new Error(`Timeout: Oggetto jQuery non trovato entro ${timeout}ms`)); // Timeout raggiunto } else { setTimeout(checkJQ, pollInterval); // Prova di nuovo dopo l'intervallo di polling } } checkJQ(); // Inizia il polling }); } // fine waitForJQ // waitForMP (Promise) ---------------------------- // Funzione che attende che un oggetto JavaScript jQuery.magnificPopup venga definito function waitForMP(pollInterval = 100, timeout = 5000) { return new Promise((resolve, reject) => { const startTime = Date.now(); function checkMP() { if (typeof jQuery.magnificPopup !== 'undefined' && jQuery.magnificPopup !== 'undefined') { resolve(jQuery.magnificPopup); // L'oggetto jQuery.magnificPopup è stato trovato, risolvi la Promise } else if (Date.now() - startTime >= timeout) { reject(new Error(`Timeout: Oggetto jQuery.magnificPopup non trovato entro ${timeout}ms`)); // Timeout raggiunto } else { setTimeout(checkMP, pollInterval); // Prova di nuovo dopo l'intervallo di polling } } checkMP(); // Inizia il polling }); } // fine waitForMP (async () => { var pfAWN; var runstep2modalgoskebi_aet_poli_44 = async function (d, s){ var anchordiv = document.getElementById("skebi_aet_poli_44"); if(typeof pfAWN == "undefined"){ pfAWN = new AWN({ position: "top-right", durations: { global: 5000, success: 3000, warning: 5000, alert: 0, info: 4000, tip: 2000 }, labels: { success: "SUCCESS", warning: "EMBEDDING WARNING!", alert: "EMBEDDING ERROR!", info: "INFO", tip: "" }, icons: { prefix: "" } }); }else{ } if(anchordiv){ if (!('model' in anchordiv.dataset)) { pfAWN.alert('target [ skebi_aet_poli_44 ] (div da elaborare) non ha attributo obbligatorio [ data-model ]!'); }else{ var m = anchordiv.getAttribute('data-model'); if (!('key' in anchordiv.dataset)) { pfAWN.alert('target [ skebi_aet_poli_44 ] (div da elaborare) non ha attributo obbligatorio [ data-key ]!'); }else{ var k = anchordiv.getAttribute('data-key'); if (!('ver' in anchordiv.dataset)) { pfAWN.alert( 'target [ skebi_aet_poli_44 ] (div da elaborare) non ha attributo obbligatorio [ data-ver ]!'); }else{ var v = anchordiv.getAttribute('data-ver'); if (!('host' in anchordiv.dataset)) { var h = window.location.hostname; }else{ var h = anchordiv.getAttribute('data-host'); } let hostnames = h.split('.'); h = hostnames[hostnames.length-2] + '.' + hostnames[hostnames.length-1]; var param_accettati = {'data-autocc':'^cc$','data-anamorfico':'^[a-z0-9_]{3,}$','data-bcolor':'^[A-F0-9]{6}$','data-icolor':'^[A-F0-9]{6}$','data-lang':'^[a-z]{2}$' }; var optional = {}; for (var att, i = 0, atts = anchordiv.attributes, n = atts.length; i < n; i++){ att = atts[i]; if(Object.keys(param_accettati).indexOf(att.nodeName) != -1){ var regex = new RegExp(Object.values(param_accettati)[Object.keys(param_accettati).indexOf(att.nodeName)]); if(!regex.test(att.nodeValue)) { // input non accettato pfAWN.warning('target [ skebi_aet_poli_44 ] (div da elaborare) ha attributo '+att.nodeName+' non conforme '+Object.values(param_accettati)[Object.keys(param_accettati).indexOf(att.nodeName)]+'!', { icons: { suffix: "' style='width: 36px; filter: invert(36%) sepia(85%) saturate(1988%) hue-rotate(20deg) brightness(94%) contrast(101%);' />" }} ); }else{ optional[ att.nodeName ] = att.nodeValue; } } } var dataString = Object.keys(optional).map(function(key) { return key + '=' + optional[key] }).join(' '); if (!('closeconfirm' in anchordiv.dataset)) { var closeconfirm = 'Sicuro di abbandonare il configuratore?'; }else{ var closeconfirm = anchordiv.getAttribute('data-closeconfirm'); } if (!('closepopup' in anchordiv.dataset)) { var closepopup = 'Exit'; }else{ var closepopup = anchordiv.getAttribute('data-closepopup'); } if ('ilist' in anchordiv.dataset) { if ('parentIFrame' in window) { window.parentIFrame.getPageInfo( (pageInfo) => {window.parentIFramewh = pageInfo['windowHeight'];} ); } } jQuery('#skebi_aet_poli_44').magnificPopup({ items: { src: jQuery('
' +'
' +'