Стены
Окна и двери (вычет площади)
Цоколь
Проёмы, выступы (вычет площади)
Отправить расчёт консультанту
Заполните форму - менеджер свяжется с вами и подготовит итоговую смету
';return'
'+s.t+'
';}
var INS={eps50:{id:"eps50",name:"ПСБ-С-35 (50 мм)",type:"eps",thickness:50,price:220,unit:"м2"},eps100:{id:"eps100",name:"ПСБ-С-35 (100 мм)",type:"eps",thickness:100,price:380,unit:"м2"},eps150:{id:"eps150",name:"ПСБ-С-35 (150 мм)",type:"eps",thickness:150,price:520,unit:"м2"},eps200:{id:"eps200",name:"ПСБ-С-35 (200 мм)",type:"eps",thickness:200,price:690,unit:"м2"},rw50:{id:"rw50",name:"Rockwool ФЛ (50)",type:"rw",thickness:50,price:350,unit:"м2"},rw100:{id:"rw100",name:"Rockwool ФЛ (100)",type:"rw",thickness:100,price:540,unit:"м2"},rw150:{id:"rw150",name:"Rockwool ФЛ (150)",type:"rw",thickness:150,price:720,unit:"м2"},rw200:{id:"rw200",name:"Rockwool ФЛ (200)",type:"rw",thickness:200,price:920,unit:"м2"},xps50:{id:"xps50",name:"Пеноплэкс Ф (50)",type:"xps",thickness:50,price:440,unit:"м2"},xps100:{id:"xps100",name:"Пеноплэкс Ф (100)",type:"xps",thickness:100,price:840,unit:"м2"},xps150:{id:"xps150",name:"Пеноплэкс Ф (150)",type:"xps",thickness:150,price:1220,unit:"м2"}};
var PL={koroed:{label:"Штукатурка Ceresit CT 174 Корोед",f:[{v:"koroed_1.5",l:"1.5 мм",p:620,c:.11,u:"меш"},{v:"koroed_2.0",l:"2 мм",p:650,c:.14,u:"меш"},{v:"koroed_3.0",l:"3 мм",p:610,c:.18,u:"меш"}]},kameshkovaya:{label:"Штукатурка Ceresit CT 175 Камешковая",f:[{v:"kam_1.5",l:"1.5 мм",p:700,c:.12,u:"меш"},{v:"kam_2.0",l:"2 мм",p:730,c:.16,u:"меш"},{v:"kam_3.0",l:"3 мм",p:710,c:.22,u:"меш"},{v:"kam_4.0",l:"4 мм",p:690,c:.28,u:"меш"}]}};
var PT={paint_ct42:{name:"Краска Ceresit CT 42 Силиконовая",full:"Ceresit CT 42 сил., 15 л",price:3990,unit:"ведро",cons:.02,feat:"Водоотталкивающая, до 3.5 м2/л"},paint_ct44:{name:"Краска Ceresit CT 44 Акриловая",full:"Ceresit CT 44 акрил., 15 л",price:2890,unit:"ведро",cons:.025,feat:"Экономичная, до 3.0 м2/л"},paint_ct48:{name:"Краска Ceresit CT 48 Минеральная",full:"Ceresit CT 48 мин., 25 кг",price:1650,unit:"меш",cons:.08,feat:"Для минеральных оснований, до 4.0 м2/кг"}};
var CL=[{n:"WHITE",h:"#ffffff"},{n:"FLORES 1",h:"#E5E2DB"},{n:"FLORES 3",h:"#DDD1AE"},{n:"FLORES 5",h:"#C3AF73"},{n:"FLORES 6",h:"#A89867"},{n:"CEYLON 2",h:"#EAE9C4"},{n:"CEYLON 4",h:"#C0BA7F"},{n:"CEYLON 6",h:"#93944B"},{n:"BORNEO 2",h:"#D3DC8E"},{n:"BORNEO 4",h:"#B0C585"},{n:"BORNEO 6",h:"#8EB290"},{n:"SUMATRA 3",h:"#ABBF96"},{n:"SUMATRA 5",h:"#708C5C"},{n:"SUMATRA 6",h:"#637C51"},{n:"CELEBES 2",h:"#AAC1AF"},{n:"CELEBES 4",h:"#849F87"},{n:"CELEBES 6",h:"#60755F"},{n:"OREGON 2",h:"#ACD1BB"},{n:"OREGON 4",h:"#87BBA0"},{n:"OREGON 6",h:"#6BA686"},{n:"TASMANIA 2",h:"#A2C2B6"},{n:"TASMANIA 4",h:"#82A597"},{n:"TASMANIA 6",h:"#4C6F63"},{n:"JAVA 2",h:"#CDD4C8"},{n:"JAVA 4",h:"#AEBAA2"},{n:"JAVA 6",h:"#8B9570"},{n:"TUNDRA 3",h:"#C2C1A5"},{n:"TUNDRA 5",h:"#B0AC99"},{n:"TUNDRA 6",h:"#A19D8A"},{n:"TOSKANA 3",h:"#B5B69B"},{n:"TOSKANA 5",h:"#C9CBC2"},{n:"TOSKANA 6",h:"#ABADA5"},{n:"MONTANA 3",h:"#C2D4C1"},{n:"MONTANA 5",h:"#A2BEB3"},{n:"MONTANA 6",h:"#8DA18E"},{n:"SIBERIA 2",h:"#D2D1CB"},{n:"SIBERIA 4",h:"#B0AF9F"},{n:"SIBERIA 6",h:"#8C8F8A"},{n:"ETNA 2",h:"#C9C3BB"},{n:"ETNA 4",h:"#A59C95"},{n:"ETNA 6",h:"#777270"},{n:"NEBRASKA 2",h:"#C8C7C4"},{n:"NEBRASKA 4",h:"#949392"},{n:"NEBRASKA 6",h:"#666565"},{n:"VIRGINIA 2",h:"#CBD3D0"},{n:"VIRGINIA 4",h:"#AFBBBB"},{n:"VIRGINIA 6",h:"#8E9894"},{n:"BARBADOS 2",h:"#EBC6A8"},{n:"BARBADOS 4",h:"#EEB086"},{n:"BARBADOS 6",h:"#EE9D71"},{n:"FLORIDA 2",h:"#F3E2C4"},{n:"FLORIDA 4",h:"#F8D49C"},{n:"FLORIDA 6",h:"#FEBB70"},{n:"GOA 3",h:"#DEBB97"},{n:"GOA 5",h:"#C99765"},{n:"GOA 6",h:"#AB7244"},{n:"PHUKET 3",h:"#E7CDB2"},{n:"PHUKET 5",h:"#E6AE6C"},{n:"PHUKET 6",h:"#E59F57"},{n:"KALAHARI 3",h:"#FEDBA9"},{n:"KALAHARI 5",h:"#EFAF63"},{n:"KALAHARI 6",h:"#D68745"},{n:"GOBI 3",h:"#F9E4B1"},{n:"GOBI 5",h:"#FFD484"},{n:"GOBI 6",h:"#FFCD6E"},{n:"DAKOTA 3",h:"#F3E4A3"},{n:"DAKOTA 5",h:"#E9C082"},{n:"DAKOTA 6",h:"#E2B386"},{n:"CRETE 3",h:"#EBD9AD"},{n:"CRETE 5",h:"#DEC886"},{n:"CRETE 6",h:"#D7BC6C"},{n:"CORSICA 2",h:"#CAC2BD"},{n:"CORSICA 4",h:"#B7A295"},{n:"CORSICA 6",h:"#978276"},{n:"MAJORCA 3",h:"#C1B4A4"},{n:"MAJORCA 5",h:"#A99581"},{n:"MAJORCA 6",h:"#A18A73"},{n:"IBIZA 3",h:"#C8A889"},{n:"IBIZA 5",h:"#A28366"},{n:"IBIZA 6",h:"#9F846B"},{n:"SCOTLAND 3",h:"#B89C9F"},{n:"SCOTLAND 5",h:"#926369"},{n:"SCOTLAND 6",h:"#854F56"},{n:"CAPADOCCIA 3",h:"#BC8C8F"},{n:"CAPADOCCIA 5",h:"#B67173"},{n:"CAPADOCCIA 6",h:"#B15F62"},{n:"MEXICO 3",h:"#BF807C"},{n:"MEXICO 5",h:"#B95B5A"},{n:"MEXICO 6",h:"#984946"},{n:"UTAH 3",h:"#E2A193"},{n:"UTAH 5",h:"#D47B6B"},{n:"UTAH 6",h:"#C76958"},{n:"ATACAMA 3",h:"#D3988E"},{n:"ATACAMA 5",h:"#B66D62"},{n:"ATACAMA 6",h:"#AD6156"},{n:"INDIANA 3",h:"#EEAF97"},{n:"INDIANA 5",h:"#EE8C71"},{n:"INDIANA 6",h:"#D07660"},{n:"ADRIATIC 2",h:"#BCD5DA"},{n:"ADRIATIC 4",h:"#95C5D0"},{n:"ADRIATIC 6",h:"#71B1BC"},{n:"TAHITI 3",h:"#6FA7B1"},{n:"TAHITI 5",h:"#44717D"},{n:"TAHITI 6",h:"#2C5E69"},{n:"OCEANIA 3",h:"#9BC8D5"},{n:"OCEANIA 5",h:"#7FBFD4"},{n:"OCEANIA 6",h:"#6AB3C9"},{n:"PACIFIC 3",h:"#C6D6E6"},{n:"PACIFIC 5",h:"#83ADD0"},{n:"PACIFIC 6",h:"#5F98CB"},{n:"SAMOA 3",h:"#92AFC6"},{n:"SAMOA 5",h:"#55728E"},{n:"SAMOA 6",h:"#446783"},{n:"HAWAII 3",h:"#91A9BF"},{n:"HAWAII 5",h:"#5C7491"},{n:"HAWAII 6",h:"#3F5A71"},{n:"ARCTIC 3",h:"#BBC3CE"},{n:"ARCTIC 5",h:"#A1AAB7"},{n:"ARCTIC 6",h:"#8993A0"},{n:"ANTARCTICA 3",h:"#D6D7D7"},{n:"ANTARCTICA 5",h:"#D0D2D4"},{n:"ANTARCTICA 6",h:"#CDD2D5"}];
var wO=[],pO=[],oC=0,wM=[],pM=[],uQ={},wC="",pC="",lG=0;
var $wF=document.getElementById("wallFinish"),$wI=document.getElementById("wallInsulation"),$wA=document.getElementById("wallArea"),$wFO=document.getElementById("wallFinishOptions"),$wS=document.getElementById("wallSummary"),$wB=document.getElementById("addWallOpening");
var $pF=document.getElementById("plinthFinish"),$pI=document.getElementById("plinthInsulation"),$pA=document.getElementById("plinthArea"),$pFO=document.getElementById("plinthFinishOptions"),$pS=document.getElementById("plinthSummary"),$pB=document.getElementById("addPlinthOpening");
var $est=document.getElementById("estimateContainer");
function fmt(n){return n.toLocaleString("ru-RU")}
function ru(v){return Math.max(1,Math.ceil(v*10)/10)}
function gh(n){for(var i=0;i
Фракция"+d.label+"
"+bP(px);c.innerHTML=h;bB(c,px);var fe=document.getElementById(px+"Fraction");if(fe)fe.addEventListener("change",calc)}if(v.indexOf("paint_")===0){var p=PT[v];c.innerHTML=""+p.name+"
"+p.feat+"
"+bP(px);bB(c,px)}}
function bP(px){var h="Палитра Ceresit ColorSystem
";CL.forEach(function(c){h+="
"});h+="
Выберите оттенок
";h+="
Колеровка рассчитывается индивидуально.
";return h}
function bB(c,px){setTimeout(function(){var dots=c.querySelectorAll(".hp-calc__color-dot"),ne=document.getElementById(px+"ColorName");dots.forEach(function(el){el.addEventListener("click",function(){dots.forEach(function(d){d.classList.remove("hp-calc__color-dot--active")});el.classList.add("hp-calc__color-dot--active");if(ne)ne.innerHTML=""+el.dataset.name;if(px==="wall")wC=el.dataset.name;else pC=el.dataset.name;uEC()})})},10)}
function uEC(){document.querySelectorAll(".hp-calc__color-tag--wall").forEach(function(el){el.innerHTML=wC?"Цвет стен: "+wC+"":""});document.querySelectorAll(".hp-calc__color-tag--plinth").forEach(function(el){el.innerHTML=pC?"Цвет цоколя: "+pC+"":""})}
$wF.addEventListener("change",function(){rFO($wFO,$wF,true);calc()});
$pF.addEventListener("change",function(){rFO($pFO,$pF,false);calc()});
function aO(a,s,ai){a.push({id:++oC,name:"",area:0});rO(a,s,ai);calc()}
function rOx(a,s,ai,id){var i=a.findIndex(function(o){return o.id===id});if(i!==-1)a.splice(i,1);rO(a,s,ai);calc()}
function uOx(a,s,ai,id,f,v){var o=a.find(function(o){return o.id===id});if(o){if(f==="area")o.area=parseFloat(v)||0;else o.name=v}uS(s,ai,a);calc()}
function rO(arr,se,ai){var list=se.previousElementSibling.previousElementSibling;list.innerHTML="";arr.forEach(function(o){var r=document.createElement("div");r.className="hp-calc__opening-row";r.innerHTML="";list.appendChild(r)});list.querySelectorAll("input").forEach(function(i){i.addEventListener("input",function(){uOx(arr,se,ai,parseInt(this.dataset.id),this.dataset.field,this.value)})});list.querySelectorAll(".hp-calc__remove-btn").forEach(function(b){b.addEventListener("click",function(){rOx(arr,se,ai,parseInt(this.dataset.id))})});uS(se,ai,arr)}
function uS(el,ai,a){var t=parseFloat(ai.value)||0,d=a.reduce(function(s,o){return s+(o.area||0)},0),n=Math.max(0,t-d);el.innerHTML="Всего: "+t.toFixed(1)+" м2 · Вычет: "+d.toFixed(1)+" м2 · К утеплению: "+n.toFixed(1)+" м2"}
$wB.addEventListener("click",function(){aO(wO,$wS,$wA)});
$pB.addEventListener("click",function(){aO(pO,$pS,$pA)});
function gNA(gi,a){return Math.max(0,(parseFloat(gi.value)||0)-a.reduce(function(s,o){return s+(o.area||0)},0))}
function bML(sec,iId,fId,ar){var ins=INS[iId];if(!ins||ar<=0)return[];var iE=ins.type==="eps"||ins.type==="xps",gN=iE?"Клей Ceresit CT 83 (25 кг)":"Клей Ceresit CT 85 (25 кг)",gC=iE?.22:.28,gP=iE?450:490,dL=ins.thickness+80;var iP=(fId==="koroed"||fId==="kameshkovaya"),iK=iP?(fId==="koroed"?"koroed":"kam"):"paint",fN,fP,fU,fC;if(iP){var pd=PL[fId],fs=document.getElementById(sec+"Fraction"),fv=fs?fs.value:pd.f[1].v,fr=pd.f.find(function(f){return f.v===fv})||pd.f[1];fN=pd.label+" "+fr.l;fP=fr.p;fU=fr.u;fC=fr.c}else{var p=PT[fId];fN=p.full;fP=p.price;fU=p.unit;fC=p.cons}var items=[{id:sec+"_ins",name:ins.name,qty:ru(ar*1.05),unit:"м2",price:ins.price,iK:ins.type==="rw"?"insRw":(ins.type==="xps"?"insXps":"insEps")},{id:sec+"_gi",name:gN,qty:ru(ar*gC*1.05),unit:"меш",price:gP,iK:"glue"},{id:sec+"_mesh",name:"Стеклосетка 5x5 мм",qty:ru(ar*1.1),unit:"м2",price:75,iK:"mesh"},{id:sec+"_gm",name:"Клей-арм. CT 85 (25 кг)",qty:ru(ar*.22*1.05),unit:"меш",price:490,iK:"glue"},{id:sec+"_prim",name:"Грунт Ceresit CT 17 (10 л)",qty:ru(ar*.02),unit:"кан.",price:590,iK:"primer"},{id:sec+"_fin",name:fN,qty:ru(ar*fC*1.05),unit:fU,price:fP,iK:iK},{id:sec+"_dow",name:"Дюбель тарел. "+dL+" мм",qty:Math.ceil(ar*6),unit:"шт",price:10,iK:"dowel"},{id:sec+"_crn",name:"Уголок армирующий 2 м",qty:Math.max(1,Math.ceil(ar/12)),unit:"шт",price:155,iK:"corner"}];if(sec==="plinth"){items.push({id:"pl_sp",name:"Профиль старт. цок. 2 м",qty:Math.max(1,Math.ceil(ar/4)),unit:"шт",price:135,iK:"start"});items.push({id:"pl_de",name:"Капельник цок. 2 м",qty:Math.max(1,Math.ceil(ar/6)),unit:"шт",price:195,iK:"drip"})}if(sec==="wall"){var wc=wO.filter(function(o){return(o.name||"").toLowerCase().indexOf("окн")!==-1}).length;if(!wc)wc=Math.max(2,Math.ceil(ar/30));items.push({id:"wl_de",name:"Капельник оконный 2 м",qty:wc*2,unit:"шт",price:165,iK:"drip"})}return items}
function calc(){var wa=gNA($wA,wO),pa=gNA($pA,pO);wM=bML("wall",$wI.value,$wF.value,wa);pM=bML("plinth",$pI.value,$pF.value,pa);wM.concat(pM).forEach(function(m){if(uQ[m.id]!==undefined)m.qty=uQ[m.id];m.total=Math.round(m.qty*m.price)});rE(wa,pa)}
function rE(wa,pa){var ws=wM.reduce(function(s,m){return s+m.total},0),ps=pM.reduce(function(s,m){return s+m.total},0),g=ws+ps;lG=g;var h="";if(wM.length)h+=rS("wall","Стены",wa,wM,ws);if(pM.length)h+=rS("plinth","Цоколь",pa,pM,ps);h+="Общий итог"+fmt(g)+" руб
";$est.innerHTML=h;$est.querySelectorAll(".hp-calc__qty-btn").forEach(function(b){b.addEventListener("click",function(){var mid=this.dataset.mid,a=this.dataset.act,m=wM.concat(pM).find(function(x){return x.id===mid});if(!m)return;if(a==="plus")m.qty=Math.round((m.qty+1)*10)/10;else if(a==="minus"&&m.qty>1)m.qty=Math.round((m.qty-1)*10)/10;m.total=Math.round(m.qty*m.price);uQ[mid]=m.qty;rE(wa,pa)})});uEC();uEF()}
function rS(s,t,a,m,su){var ip=s==="plinth",ct=ip?pC:wC;var h="";m.forEach(function(x){h+="
"+imgHTML(x.iK)+"
"+x.name+"
"+fmt(x.price)+" руб / "+x.unit+"
"+x.qty+" "+x.unit+"
"+fmt(x.total)+" руб
"});h+="
";if(ct)h+="Цвет: "+ct+"";h+="
Итого по "+(ip?"цоколю":"стенам")+""+fmt(su)+" руб
";return h}
function uEF(){var l=["=== СТЕНЫ ==="];wM.forEach(function(m){l.push(m.name+" | "+m.qty+" "+m.unit+" | "+m.total+" руб")});l.push("Итого стены: "+wM.reduce(function(s,m){return s+m.total},0)+" руб");if(wC)l.push("Цвет стен: "+wC);l.push("","=== ЦОКОЛЬ ===");pM.forEach(function(m){l.push(m.name+" | "+m.qty+" "+m.unit+" | "+m.total+" руб")});l.push("Итого цоколь: "+pM.reduce(function(s,m){return s+m.total},0)+" руб");if(pC)l.push("Цвет цоколя: "+pC);l.push("","ОБЩИЙ ИТОГ: "+lG.toLocaleString("ru-RU")+" руб");var f=document.getElementById("hpCalcEstimateData");if(f)f.value=l.join("\n")}
var fb=document.getElementById("hpCalcFeedback");
if(fb)fb.addEventListener("submit",function(e){e.preventDefault();if(window.tildaForm){window.tildaForm.hideErrors(fb);var err=window.tildaForm.validate(fb);if(window.tildaForm.showErrors(fb,err))return;window.tildaForm.send(fb,fb.querySelector("[type=submit]"),2,"")}else{alert("Смета отправлена!")}});
[$wF,$wI,$wA].forEach(function(e){e.addEventListener("change",calc);e.addEventListener("input",calc)});
[$pF,$pI,$pA].forEach(function(e){e.addEventListener("change",calc);e.addEventListener("input",calc)});
rFO($wFO,$wF,true);rFO($pFO,$pF,false);calc();
})();