console.log('Referer:', 'https://res-online.ch/wbePlus/incubator.js.php?hotelID=3234&username=WBEPlus&password=jDkZuzZN&ver=1.0.0');window.wbeOptions = {"saveURL":"https:\/\/yieldagent.ch\/service\/api\/extern\/reservation\/wbePlus2.php","checkoutURL":"https:\/\/wbech1.res-online.net\/api\/payment\/checkout\/checkout.php","paymentURL":"https:\/\/wbech1.res-online.net\/api\/payment\/checkout\/externalPayment.php","confirmationURL":"https:\/\/wbech1.res-online.net\/api\/payment\/checkout\/confirmation.php","imgURL":"https:\/\/wbech1.res-online.net\/wbePlus\/img\/","lang":false,"hashChange":true};var fileInfo = '{"runtime":{"name":"..\/WBEv4\/overlay\/runtime.js","time":1713269930},"polyfills":{"name":"..\/WBEv4\/overlay\/polyfills.js","time":1713269930},"main":{"name":"..\/WBEv4\/overlay\/main.js","time":1713269930},"scripts":{"name":"..\/WBEv4\/overlay\/scripts.js","time":1713269930}}' var wbe_login = { hotelid: '3234', user: 'WBEPlus', pass: 'jDkZuzZN', host: 'wbech1.res-online.net/api/wbe/' } var wbe_type = 'overlay'; var wbe_piwikID = '-1'; // Quickstarter and Remote Settings /** * * Angular requires an existing element so if an element does not exist we create it */ var wbe_loaded = false; if(typeof wbe_blockscript == "undefined"){ var wbe_blockscript = false; }else{ wbe_blockscript = true; } if(wbe_blockscript == false){ document.onreadystatechange = function() { if (document.readyState === 'complete' && !wbe_loaded) { wbeDocReady(); } }; setTimeout(function(){ if(!wbe_loaded){ console.log("Doc not Ready, timeout"); wbeDocReady(); } }, 2000); if(!wbe_loaded){ preloadedScripts(); } } var wbe_main = typeof wbe_main === "boolean" ? wbe_main : false; var wbe_quickstarter = typeof wbe_quickstarter === "boolean" ? wbe_quickstarter : false; var wbe_remote = typeof wbe_remote === "boolean" ? wbe_remote : false; var wbe_elements = typeof wbe_elements === "boolean" ? wbe_elements : false; function wbeDocReady() { if(!document.body){ return; } if(document.querySelector('.wbe-quickstarter-container') && document.querySelector('.wbe-quickstarter-container').dataset.dummy != "true"){ wbe_quickstarter = true; }else{ var elemQuick = document.createElement('div'); elemQuick.className = 'wbe-quickstarter-container'; elemQuick.dataset.dummy = true; elemQuick.style['display'] = 'none'; wbe_quickstarter = false; document.body.appendChild(elemQuick); } if(document.querySelectorAll('*[class^="wbe_"]').length > 0){ wbe_elements = true; }else if(wbe_quickstarter == false){ var elemQuick = document.createElement('div'); elemQuick.className = 'wbe-quickstarter-container'; elemQuick.style['display'] = 'none'; document.body.appendChild(elemQuick); } if(document.querySelector('.wbe-remote-container') && document.querySelector('.wbe-remote-container').dataset.dummy != "true"){ wbe_remote = true; }else{ var elemRemote = document.createElement('div'); elemRemote.className = 'wbe-remote-container'; elemRemote.dataset.dummy = true; elemRemote.style['display'] = 'none'; wbe_remote = false; document.body.appendChild(elemRemote); } if(document.querySelector('#wbe_container') && document.querySelector('#wbe_container').dataset.dummy != "true"){ wbe_main = true; }else{ var elemMain = document.createElement('div'); elemMain.id = 'wbe_container'; elemMain.dataset.dummy = true; document.body.appendChild(elemMain); if(wbe_type == "overlay"){ wbe_main = true; }else{ elemMain.style['display'] = 'none'; wbe_main = false; } } // If none of wrappers available, it is probably a Custom Quickstarter, so let's load it //if(!wbe_main && !wbe_quickstarter && !wbe_elements && !wbe_remote){ // var elemQuick = document.createElement('div'); // elemQuick.className = 'wbe-quickstarter-container'; // elemQuick.style['display'] = 'none'; // document.body.appendChild(elemQuick); // wbe_quickstarter = true; //} afterScripts(); wbe_loaded = true; } function loadJavascript(name, url){ var NewScript=document.createElement('script'); NewScript.src= url; NewScript.async = false; var mainNode = document.getElementsByTagName('head')[0]; mainNode.appendChild(NewScript); } function loadCSS(url, type){ if(typeof type == "undefined"){ type = 'text/css'; } var NewCSS=document.createElement('link'); NewCSS.src= url; NewCSS.rel = 'stylesheet'; NewCSS.type = type NewCSS.href = url; if (navigator.appName != 'Microsoft Internet Explorer') { NewCSS.dataset.eqcss = true; } NewCSS.media = 'all'; var mainNode = document.getElementsByTagName('head')[0]; mainNode.appendChild(NewCSS); } function preloadedScripts(){ loadJavascript( 'dist', 'https://wbech1.res-online.net/WBEv4/overlay/runtime_1713269930.js'); loadJavascript( 'dist', 'https://wbech1.res-online.net/WBEv4/overlay/polyfills_1713269930.js'); } function afterScripts(){ loadJavascript( 'dist', 'https://wbech1.res-online.net/WBEv4/overlay/scripts_1713269930.js'); loadJavascript( 'dist', 'https://wbech1.res-online.net/WBEv4/overlay/main_1713269930.js'); } function loadCSSFiles(wbe_type){ loadCSS( 'https://wbech1.res-online.net/WBEv4/overlay/styles.css'); //loadCSS( 'https://fonts.googleapis.com/icon?family=Material+Icons'); if(wbe_type !== 'plaza' && wbe_type !== 'checkout'){ loadCSS( 'https://wbech1.res-online.net/wbePlus/css/angular/'+wbe_type+'.css.php?hotelID=3234'); }else if(wbe_type == 'checkout'){ loadCSS( 'https://wbech1.res-online.net/wbePlus/css/angular/step.css.php?hotelID=3234'); }else{ loadCSS( 'https://wbech1.res-online.net/wbePlus/css/angular/'+wbe_type+'.css'); loadCSS( 'https://wbech1.res-online.net/wbePlus/css/angular/plaza/custom.css'); } } // FOR SPAs Listen to page switch function listenToJSPageSwitch(){ var targetNode = document.body; var cachedURL = ""; // Options for the observer (which mutations to observe) var config = { attributes: true, childList: false, subtree: false }; // Callback function to execute when mutations are observed var callback = function(mutationsList, observer) { if(cachedURL !== window.location.href){ reloadWBE(); } cachedURL = window.location.href; }; // Create an observer instance linked to the callback function var observer = new MutationObserver(callback); // Start observing the target node for configured mutations observer.observe(targetNode, config); } // If site changes view with javascript it may happen that the wbe is not loaded, this can be fixed with this funtion function reloadWBE() { // Remove current Dummies document.querySelectorAll('[data-dummy="true"]').forEach(function (element) { element.remove(); }); wbeDocReady(); preloadedScripts(); afterScripts(); loadCSSFiles(wbe_type); } loadCSSFiles(wbe_type);