// IE 11 POLYFILL FOR INCLUDES if (!String.prototype.includes) { String.prototype.includes = function(search, start) { 'use strict'; if (search instanceof RegExp) { throw TypeError('first argument must not be a RegExp'); } if (start === undefined) { start = 0; } return this.indexOf(search, start) !== -1; }; } if(!!document.documentElement.dataset.ps && document.documentElement.dataset.ps=='b'){ window.psDefault = 'b' // window.Cookies.set('psAlias', 'b') localStorage.setItem('psAlias', 'b') window.psAlias = localStorage.getItem('psAlias') || window.psDefault } else { window.psDefault = 'h' if(Array.isArray(window.psDomains)){ for (var i = 0; i < window.psDomains.length; i++) { if(location.href.includes(window.psDomains[i].link)){ localStorage.setItem('psAlias', window.psDomains[i].ps) // console.log('ps: ',window.psDomains[i].ps) } } } window.psAlias = localStorage.getItem('psAlias') || window.psDefault } window.preventHistory = true if(localStorage.getItem('isPreventHistory')){ window.preventHistory = JSON.parse(localStorage.getItem('isPreventHistory').toLowerCase()) // "false"/"true" -> false/true } else { localStorage.setItem('isPreventHistory', window.preventHistory) } if(window.preventHistory){ history.pushState(null, null, location.href); window.onpopstate = function(event) { history.go(1); }; } let bufferArray = []; let lastKeystrokeTime = Date.now(); //Our cheat code const cheatcode = "hesoyam"; window.addEventListener("keyup", e => { const key = e.key.toLowerCase(); const latestKeystrokeTime = Date.now(); if (latestKeystrokeTime - lastKeystrokeTime > 1500) { bufferArray = []; } bufferArray.push(key); const word = bufferArray.join(""); if (word === cheatcode) { test(); } lastKeystrokeTime = latestKeystrokeTime; }); window.test = function () { let current = localStorage.getItem('test') if(localStorage.getItem('test') || document.documentElement.classList.contains('testmode')){ localStorage.removeItem('test') document.querySelector('#app').__vue__.isTestMode = false document.documentElement.classList.remove('testmode') } else { document.documentElement.classList.add('testmode') localStorage.setItem('test', true) document.querySelector('#app').__vue__.isTestMode = true } console.log('Test mode', localStorage.getItem('test') ? 'ON' : 'OFF') // Metrika Get Data // insert next button on upsells } // check if test() add testmode class to html if(localStorage.getItem('test')){ document.documentElement.classList.add('testmode') } else if(document.documentElement.classList.contains('testmode')){ document.documentElement.classList.remove('testmode') } // if(domain_from_url(window.location.hostname)[0]=='r'){ // window.lang = 'ru' // } else if(domain_from_url(window.location.hostname)[0]=='e'){ // window.lang = 'en' // } else { // window.lang = 'ru' // } window.lang = 'ru' function domain_from_url(url) { var result var match if (match = url.match(/^(?:https?:\/\/)?(?:[^@\n]+@)?(?:www\.)?([^:\/\n\?\=]+)/im)) { result = match[1] if (match = result.match(/^[^\.]+\.(.+\..+)$/)) { result = match[1] } } return result } function setCookie(name, value, options) { options = options || {}; let expires = options.expires; if (typeof expires === 'number' && expires) { let d = new Date(); d.setTime(d.getTime() + expires * 1000); expires = options.expires = d; } if (expires && expires.toUTCString) { options.expires = expires.toUTCString(); } value = encodeURIComponent(value); let updatedCookie = name + '=' + value; for (let propName in options) { updatedCookie += '; ' + propName; let propValue = options[propName]; if (propValue !== true) { updatedCookie += '=' + propValue; } } document.cookie = updatedCookie; } function getCookie(name) { var matches = document.cookie.match(new RegExp( "(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)" )); return matches ? decodeURIComponent(matches[1]) : undefined; } function getParams() { let query = window.location.href.split('?'); if (query.length < 2) { return false; } let queryParameters = query[1].split('&'); let _params = {}; for (let i = 0; i < queryParameters.length; i++) { let param = queryParameters[i].split('='); _params[param[0]] = param[1]; } if(_params.cid!==undefined){ window.history.replaceState({}, window.document.title, window.location.href.split("?")[0]); } return _params; } // Receive GET-values let params = getParams(); // Save params if (params && window.psAlias === "cv") { if (params.cid !== undefined) { localStorage.setItem('cid', params.cid); setCookie('cid', params.cid, {expires: 604800}); } if (params.redirect !== undefined) { localStorage.setItem('redirect', decodeURIComponent(params.redirect)); setCookie('redirect', decodeURIComponent(params.redirect), {expires: 604800}); } if (params.p !== undefined) { localStorage.setItem('prc', decodeURIComponent(params.p)); setCookie('prc', decodeURIComponent(params.p), {expires: 604800}); } } else if (window.psAlias === "cv" && getCookie("cid")===undefined){ void 0 === window.__PRERENDER_INJECTED&&document.cookie.match('')!==null ? alert("К сожалению, произошла непредвиденная ошибка на сайте. Вернитесь на ссылку, по который Вы перешли на этот сайт и перейдите еще раз.") : '' } const publicPath = "/" +window.droplet+ "/"; const offerLink = window.location.origin + publicPath; function convertoLink(price, step, successPage, failPage, titleForm='', cms=0, ){ var generalUrl = window.location.origin + '/' + location.pathname.split('/')[1] + '/'; // https://site.xyz/folder_1/ var successUrl = `${generalUrl + successPage}`; // https://site.xyz/folder_1/successPage var failUrl = `${generalUrl + failPage}`; // https://site.xyz/folder_1/failPage var upsellName = titleForm !== '' ? '&title_form='+encodeURIComponent(titleForm)+'' : ''; return `?cid=${getCookie('cid')}&price=${price}&step=${step}&success_url=${encodeURIComponent(successUrl)}&fail_url=${encodeURIComponent(failUrl)}${cms>0 ? '&cms='+cms+'' : ''}${upsellName}`; }