/* Заявки → аналитика: метки рекламы, визит Метрики и форма. Ставится один раз в общий шаблон сайта sendvichpanel.ru (перед
).
Заявка подписывается ключом сайта (HMAC-SHA256); без подписи она попадает в карантин и не участвует в цене рекламы. */
(function(){var H='https://34-116-201-108.sslip.io/api/leads/web',S='sendvichpanel.ru',KEY='a982270486cc01c985d60261e21005ef1b1a72354d66ecf6',K='zv_utm',P='zv_pending',d=document,w=window;
function q(n){var m=location.search.match(new RegExp('[?&]'+n+'=([^&]*)'));return m?decodeURIComponent(m[1].replace(/\+/g,' ')):''}
function ck(n){var m=d.cookie.match(new RegExp('(?:^|; )'+n+'=([^;]*)'));return m?m[1]:''}
var u={};try{u=JSON.parse(localStorage.getItem(K)||'{}')}catch(e){}
var f=['utm_source','utm_medium','utm_campaign','utm_term','utm_content','yclid'],nw=false;
f.forEach(function(n){var v=q(n);if(v){if(!nw){u={};nw=true}u[n]=v}});
if(nw||!u.page){u.page=location.href;u.referrer=d.referrer;u.t=Date.now()}
if(!u.referrer&&d.referrer&&d.referrer.indexOf(location.host)<0)u.referrer=d.referrer;
try{localStorage.setItem(K,JSON.stringify(u))}catch(e){}
function hex(b){return Array.prototype.map.call(new Uint8Array(b),function(x){return('0'+x.toString(16)).slice(-2)}).join('')}
function post(p){var go=function(s){var body=JSON.stringify({site:S,p:p,s:s});
try{if(!(navigator.sendBeacon&&navigator.sendBeacon(H,new Blob([body],{type:'text/plain'}))))fetch(H,{method:'POST',body:body,mode:'no-cors',keepalive:true})}catch(e){}
try{localStorage.removeItem(P)}catch(e){}};
try{var c=w.crypto&&w.crypto.subtle,en=new TextEncoder();c.importKey('raw',en.encode(KEY),{name:'HMAC',hash:'SHA-256'},false,['sign'])
.then(function(k){return c.sign('HMAC',k,en.encode(p))}).then(function(b){go(hex(b))},function(){go('')})}catch(e){go('')}}
try{var pend=localStorage.getItem(P);if(pend)post(pend)}catch(e){}
function send(form){var o={site:S||location.host,sid:(u.t||'')+'',kind:'заявка с сайта',page:u.page||location.href,referrer:u.referrer||'',text:'',
client_id:ck('_ym_uid'),visit_at:u.t||'',sent_at:Date.now()};
f.forEach(function(n){o[n]=u[n]||''});
var els=form.querySelectorAll('input,textarea,select');for(var i=0;i