(function () { var scripts = document.querySelectorAll("script[data-delfin]"); var resizer_script = document.createElement('script'); resizer_script.src = "/media/export/frame.js" document.head.appendChild(resizer_script); var frame_ids = []; scripts.forEach( (script) => { var container = document.createElement('div'); var frame_id = script.dataset.delfin; script.removeAttribute('data-delfin'); var xhr = new XMLHttpRequest(); xhr.open('GET', 'https://new.allkurort.su/delfin-api/export_frames/' + frame_id + '/settings'); xhr.send(); var frame = document.createElement('iframe'); frame.id = "bf" + parseInt(Math.random() * 100000000); frame.scrolling = "yes"; frame.allowTransparency = "true"; frame.style = "border:0; width: 100%;"; container.appendChild(frame); var link = document.createElement('link'); link.rel = "stylesheet"; link.href = "/media/export/frame.css" container.appendChild(link); var bigframe = document.createElement('iframe'); bigframe.id = "bf-b" + parseInt(Math.random() * 100000000); bigframe.scrolling = "yes"; bigframe.allowTransparency = "true"; bigframe.style = "border:0; width: 100%; height: 0"; var cnt = document.createElement('div') cnt.style="font-size: 0" cnt.appendChild(bigframe) document.body.appendChild(cnt); script.parentNode.insertBefore(container, script); xhr.onload = function() { var frame_settings = {} try { frame_settings = JSON.parse(xhr.response) } catch(e) { console.log('Error parsing') console.log(xhr.status) console.log(xhr.response) } var url = frame_settings.url + '' var frame_url = "https://new.allkurort.su/export" + url + ( url.includes('?') ? '&' : '?') +'frame_id=' + frame_id; frame.src = frame_url; frame_ids.push(frame.id); var resize = function() { iFrameResize({ checkOrigin:false, heightCalculationMethod: 'lowestElement', onMessage: function (data) { switch(data.message.msg) { case 'close': { cnt.className = ''; cnt.style='display: none' bigframe.src='about:blank' } case 'scrollTop': { bigframe.parentNode.scrollTo(0, 0) cnt.scrollIntoView(true) } } } }, bigframe) iFrameResize({ checkOrigin:false, heightCalculationMethod: 'lowestElement', onMessage: function (data) { switch(data.message.msg) { case 'go': { cnt.className = 'delfin-frame_expand'; var url = data.message.url cnt.style='display: block' bigframe.src = 'https://new.allkurort.su' + url + (url.includes('?') ? '&' : '?') + 'popup=true&frame_id=' + frame_id; } case 'order': { if (data.message.show_order) { data.iframe.parentNode.className = "delfin-frame_expand"; } else { data.iframe.parentNode.className = ""; } } case 'scrollTop': { data.iframe.parentNode.scrollTo(0, 0) data.iframe.parentNode.scrollIntoView(true) } } } }, document.getElementById(frame.id)); } if (!window.iFrameResize) { resizer_script.addEventListener('load', function () { resize() }); } else { resize() } } }) })()