/**
* Объект калькулятора
*/
Drupal.Calculator = new Object;
/**
*
*/
Drupal.Calculator.init = function(form) {
if (!$("body").hasClass("calculator")) {
return;
}
$.preloadImages(Drupal.settings.basePath + "sites/all/modules/arwm_calculator/images/window_setka_bg.jpg");
Drupal.Calculator.Switcher.init();
Drupal.Calculator.Selector.init();
Drupal.Calculator.Tooltip.init();
// Sliders
sliderProps = {
animate: true,
max: 120,
min: 50,
step: 10,
range: "min"
};
sliderProps.slide = function(event, ui) {
$("#section-horisontal-1-width").val(ui.value);
$(this).find(".value").html(ui.value);
Drupal.Calculator.calculate();
};
sliderProps.value = $("#section-horisontal-1-width").val();
$("#calculator-scrollbar-bottom-section-1").slider(sliderProps);
sliderProps.slide = function(event, ui) {
$("#section-horisontal-2-width").val(ui.value);
$(this).find(".value").html(ui.value);
Drupal.Calculator.calculate();
};
sliderProps.value = $("#section-horisontal-2-width").val();
$("#calculator-scrollbar-bottom-section-2").slider(sliderProps);
sliderProps.slide = function(event, ui) {
$("#section-horisontal-3-width").val(ui.value);
$(this).find(".value").html(ui.value);
Drupal.Calculator.calculate();
};
sliderProps.value = $("#section-horisontal-3-width").val();
$("#calculator-scrollbar-bottom-section-3").slider(sliderProps);
sliderProps.orientation = 'vertical';
sliderProps.min = 50;
sliderProps.max = 160;
sliderProps.step = 10;
sliderProps.slide = function(event, ui) {
$("#section-vertical-height").val(ui.value);
$(this).find(".value").html(ui.value);
Drupal.Calculator.calculate();
};
sliderProps.value = $("#section-vertical-height").val();
$("#calculator-scrollbar-left-section").slider(sliderProps);
$("#calculator-scrollbar-bottom-section-1 .ui-slider-handle,").html('
' + $("#section-horisontal-1-width").val() + '
');
$("#calculator-scrollbar-bottom-section-2 .ui-slider-handle,").html('' + $("#section-horisontal-2-width").val() + '
');
$("#calculator-scrollbar-bottom-section-3 .ui-slider-handle,").html('' + $("#section-horisontal-3-width").val() + '
');
$("#calculator-scrollbar-left-section .ui-slider-handle,").html('' + $("#section-vertical-height").val() + '
');
// Calculator hover
$("#calculator").hover(function(){
$("#calculator-scrollbar-left").animate({
left: '0'
}, 200);
$("#calculator-scrollbar-bottom").animate({
bottom: '0'
}, 200);
$(".window-outer").fadeIn(200);
}, function(){
$("#calculator-scrollbar-left").animate({
left: '-82px'
}, 200);
$("#calculator-scrollbar-bottom").animate({
bottom: '-82px'
}, 200);
$(".window-outer").fadeOut(200).hide();
});
// Set default value
Drupal.Calculator.calculate();
$("#calculator-selector-windows-2 a").click();
$("#content .block-webformblock .h2").wrapInner("").toggle(function(){
$("#content .block-webformblock .node").slideDown(200);
}, function(){
$("#content .block-webformblock .node").slideUp(200);
});
};
/**
*
*/
Drupal.Calculator.calculate = function(){
// Ширина/высота окна
$("#calculator-display .wrapper .c-c.section-1").width($("#section-horisontal-1-width").val() + "px");
$("#calculator-display .wrapper .c-c.section-2").width($("#section-horisontal-2-width").val() + "px");
$("#calculator-display .wrapper .c-c.section-3").width($("#section-horisontal-3-width").val() + "px");
$("#calculator-display .wrapper .c-c").height($("#section-vertical-height").val() + "px");
// Шторы
var dem = 270 - ($("#calculator-display").width() / 2);
if (dem < 100) {
dem = 100;
}
$("#calculator-curtain-left").css("left", dem + "px");
$("#calculator-curtain-right").css("right", dem + "px");
//
$("#calculator-display .c-c.section-1").removeClass("type-a type-b type-c").addClass("type-" + $("#section-horisontal-1-type").val());
$("#calculator-display .c-c.section-2").removeClass("type-a type-b type-c").addClass("type-" + $("#section-horisontal-2-type").val());
$("#calculator-display .c-c.section-3").removeClass("type-a type-b type-c").addClass("type-" + $("#section-horisontal-3-type").val());
// Setka
if ('true' == $("#section-horisontal-1-setka").val()) {
$("#calculator-display .c-c.section-1").addClass("setka");
} else {
$("#calculator-display .c-c.section-1").removeClass("setka");
}
if ('true' == $("#section-horisontal-2-setka").val()) {
$("#calculator-display .c-c.section-2").addClass("setka");
} else {
$("#calculator-display .c-c.section-2").removeClass("setka");
}
if ('true' == $("#section-horisontal-3-setka").val()) {
$("#calculator-display .c-c.section-3").addClass("setka");
} else {
$("#calculator-display .c-c.section-3").removeClass("setka");
}
if ($("#section-horisontal-1-type").val() == 'a') {
$("#calculator-display .section-1 .ruchka").fadeOut(200, function(){$(this).hide();});
} else {
$("#calculator-display .section-1 .ruchka").fadeIn(200, function(){$(this).show();});
}
if ($("#section-horisontal-2-type").val() == 'a') {
$("#calculator-display .section-2 .ruchka").fadeOut(200, function(){$(this).hide();});
} else {
$("#calculator-display .section-2 .ruchka").fadeIn(200, function(){$(this).show();});
}
if ($("#section-horisontal-3-type").val() == 'a') {
$("#calculator-window .section-3 .ruchka").fadeOut(200, function(){$(this).hide();});
} else {
$("#calculator-window .section-3 .ruchka").fadeIn(200, function(){$(this).show();});
}
/**
* 1 - окно
* 2 - балкон
*/
var type = $("#section-type").val();
// Расчет калькулятора
var E4 = 210; /* высота дверного проёма, от 1750 до 2500, шаг 50 */
var E8 = 200; /* ширина подоконника мм, от 200 до 700, шаг 50 */
var E6 = $("#section-vertical-height").val() * 10; /* общая высота окна, от 500 до 2100, шаг 100 */
var E9 = 200; /* ширина откосов (если нужны), от 200 до 700, шаг 50 */
var E10 = 150; /* ширина отлива мм, 150 (150) либо 200 (200) */
var E11 = 2; /* какой стеклопакет, два стекла (2) / три стекла (3) */
/* Створка 1 */
var E15 = $("#section-horisontal-1-width").val() * 10; /* ширина мм, от 500 до 1200, шаг 100 */
var E16 = Drupal.Calculator.typeProcessor($("#section-horisontal-1-type").val()); /* тип, глухая (1) / поворотная (2) / поворотно-откидная (3) */
var E17 = Drupal.Calculator.setkaProcessor($("#section-horisontal-1-setka").val()); /* моск сетка, да (1) / нет (2) */
var E18 = 0; /* гребёнка, да (1) / нет (2) */
var E19 = 0; /* микрощелевое проветривание, да (1) / нет (2) */
/* Створка 2 */
if (1 == type) {
var E22 = ($("#section-num").val() != 1) ? ($("#section-horisontal-2-width").val() * 10) : 0; /* ширина мм, от 500 до 1200, шаг 100 */
var E23 = Drupal.Calculator.typeProcessor($("#section-horisontal-2-type").val()); /* тип, глухая (1) / поворотная (2) / поворотно-откидная (3) */
var E24 = Drupal.Calculator.setkaProcessor($("#section-horisontal-2-setka").val()); /* моск сетка, да (1) / нет (2) */
var E25 = 0; /* гребёнка, да (1) / нет (2) */
var E26 = 0; /* микрощелевое проветривание, да (1) / нет (2) */
} else {
var E22 = ($("#section-num").val() == 3) ? ($("#section-horisontal-2-width").val() * 10) : 0; /* ширина мм, от 500 до 1200, шаг 100 */
var E23 = Drupal.Calculator.typeProcessor($("#section-horisontal-2-type").val()); /* тип, глухая (1) / поворотная (2) / поворотно-откидная (3) */
var E24 = Drupal.Calculator.setkaProcessor($("#section-horisontal-2-setka").val()); /* моск сетка, да (1) / нет (2) */
var E25 = 0; /* гребёнка, да (1) / нет (2) */
var E26 = 0; /* микрощелевое проветривание, да (1) / нет (2) */
}
/* Створка 3 */
if (1 == type) {
var E29 = ($("#section-num").val() == 3) ? ($("#section-horisontal-3-width").val() * 10) : 0; /* ширина мм, от 500 до 1200, шаг 100 */
var E30 = Drupal.Calculator.typeProcessor($("#section-horisontal-3-type").val()); /* тип, глухая (1) / поворотная (2) / поворотно-откидная (3) */
var E31 = Drupal.Calculator.setkaProcessor($("#section-horisontal-3-setka").val()); /* моск сетка, да (1) / нет (2) */
var E32 = 0; /* гребёнка, да (1) / нет (2) */
var E33 = 0; /* микрощелевое проветривание, да (1) / нет (2) */
} else {
var E29 = $("#section-horisontal-3-width").val() * 10; /* ширина мм, от 500 до 1200, шаг 100 */
var E30 = Drupal.Calculator.typeProcessor($("#section-horisontal-3-type").val()); /* тип, глухая (1) / поворотная (2) / поворотно-откидная (3) */
var E31 = 2; /* моск сетка, да (1) / нет (2) */
var E32 = 0; /* гребёнка, да (1) / нет (2) */
var E33 = 0; /* микрощелевое проветривание, да (1) / нет (2) */
}
var E7 = E15 + E22 + E29;
var E7 = E15 + E22 + E29;
var J5 = 26; /* Курс USD */
var K5 = 37.08 * 1.03; /* Курс EURO */
var J11 = 0;
var F6 = Drupal.Calculator.ceiling(E6, 100, 1) * ((E6 > 600) ? 1 : 0) + ((E6 < 601) ? 600 : 0);
var F8 = Drupal.Calculator.ceiling(E8, 50, 1);
var F9 = Drupal.Calculator.ceiling(E9, 50, 1);
var F10 = Drupal.Calculator.ceiling(E10, 50, 1);
var F11 = E11;
var F15 = Drupal.Calculator.ceiling(E15, 100, 1) / 100 * ((E15 < 600) ? 0 : 1) + ((E15 < 600) ? 600 : 0) / 100;
var F16 = E16;
var F17 = ((F16 == 1) ? 0 : 1) * ((E17 == 1) ? 1 : 0);
var F18 = ((F16 == 1) ? 0 : 1) * ((E18 == 1) ? 1 : 0);
var F19 = ((F16 == 3) ? 1 : 0) * ((E19 == 1) ? 1 : 0);
var F22 = Drupal.Calculator.ceiling(E22, 100, 1) / 100 * ((E22 < 600) ? 0 : 1) + ((E22 < 600) ? 600 : 0) / 100;
var F23 = E23;
var F24 = ((F23 == 1) ? 0 : 1) * ((E24 == 1) ? 1 : 0);
var F25 = ((F23 == 1) ? 0 : 1) * ((E25 == 1) ? 1 : 0);
var F26 = ((F23 == 3) ? 1 : 0) * ((E26 == 1) ? 1 : 0);
var F29 = Drupal.Calculator.ceiling(E29, 100, 1) / 100 * ((E29 < 600) ? 0 : 1) + ((E29 < 600) ? 600 : 0) / 100;
var F30 = E30;
var F31 = ((F30 == 1) ? 0 : 1) * ((E31 == 1) ? 1 : 0);
var F32 = ((F30 == 1) ? 0 : 1) * ((E32 == 1) ? 1 : 0);
var F33 = ((F30 == 3) ? 1 : 0) * ((E33 == 1) ? 1 : 0);
var H14 = (((F16 == 1) ? 1 : 0) * Drupal.Calculator.vlookup(F6, ('глухая' + (F15 - 4)))
+ ((F16 == 2) ? 1 : 0) * Drupal.Calculator.vlookup(F6, ('поворотная' + (F15 - 4)))
+ ((F16 == 3) ? 1 : 0) * Drupal.Calculator.vlookup(F6, ('поворотно-откидная' + (F15 - 4)))) * ((E15 == 0) ? 0 : 1);
var H21 = H14;
var H22 = (((F23 == 1) ? 1 : 0) * Drupal.Calculator.vlookup(F6, ('глухая' + (F22 - 4)))
+ ((F23 == 2) ? 1 : 0) * Drupal.Calculator.vlookup(F6, ('поворотная' + (F22 - 4)))
+ ((F23 == 3) ? 1 : 0) * Drupal.Calculator.vlookup(F6, ('поворотно-откидная' + (F22 - 4)))) * ((E22 == 0) ? 0 : 1);
var H28 = H22;
var H29 = (((F30 == 1) ? 1 : 0) * Drupal.Calculator.vlookup(F6, ('глухая' + (F29 - 4)))
+ ((F30 == 2) ? 1 : 0) * Drupal.Calculator.vlookup(F6, ('поворотная' + (F29 - 4)))
+ ((F30 == 3) ? 1 : 0) * Drupal.Calculator.vlookup(F6, ('поворотно-откидная' + (F29 - 4)))) * ((E29 == 0) ? 0 : 1);
var H35 = H29;
var H13 = H21 + H28 + H35;
var K9 = H13 * K5;
var K11 = K9 * J11;
var K13 = K9 - K11;
var K15 = K13 * 0.18;
var G6 = 0;
var G7 = 0;
var G8 = Drupal.Calculator.vlookup(F8, 'подоконники') * (E7 + 200) / 1000;
var G9 = Drupal.Calculator.vlookup(F9, 'откосы') * (E6 * 2 + E7 + 300) / 1000;
var G10 = Drupal.Calculator.vlookup(F10, 'отливы') * (100 + E7) / 1000;
var G11 = ((F11 == 3) ? 0 : (-5 * E6 * E7)) / 1000000;
var G17 = F17 * 30;
var G18 = F18 * 10;
var G19 = F19 * 10;
var G20 = 0;
var G21 = (G17 + G18 + G19 + G20) * ((E15 == 0) ? 0 : 1) * ((E16 == 1) ? 0 : 1);
var G24 = E6 * E22 * 30 / 1000000 * F24;
var G25 = F25 * 10;
var G26 = F26 * 10;
var G27 = 0;
var G28 = (G24 + G25 + G26 + G27) * ((E22 == 0) ? 0 : 1) * ((E23 == 1) ? 0 : 1);
var G31 = E6 * E29 * 30 / 1000000 * F31;
var G32 = F32 * 10;
var G33 = F33 * 10;
var G34 = 0;
var G35 = (G31 + G32 + G33 + G34) * ((E29 == 0) ? 0 : 1) * ((E30 == 1) ? 0 : 1);
var G13 = G6 + G7 + G8 + G9 + G10 + G11 + G21 + G28 + G35;
var K21 = G13 * J5;
var K17 = K15 + K13;
var K19 = K17 * 0.1;
var M23 = 0;
var K23 = K17 + K21 - K19;
var K28 = K23 + M23;
var K30 = K28 * (((K28 > 15000) ? 0.07 : 0) + ((K28 > 50000) ? 0.01 : 0) + ((K28 > 70000) ? 0.01 : 0));
var result = K28 - K30;
if (type == 2)
result += 1514;
var text = "\n======\n\n";
text += " Профиль: " + $("#edit-submitted-win-prof").val() + " руб.\n";
text += " Тип: " + (type == 1 ? "окно" : "балкон") + "\n";
text += " Количество секций: " + $("#section-num").val() + "\n";
text += " Высота: " + $("#section-vertical-height").val() + " см\n\n";
text += " Секция 1:\n";
text += " Ширина: " + $("#section-horisontal-1-width").val() + " см\n";
switch ($("#section-horisontal-1-type").val()) {
case "a":text += " Тип: глухое\n";break;
case "b":text += " Тип: поворотное\n";break;
case "c":text += " Тип: поворотно-откидное\n";break;
}
text += " Москитная сетка: " + ($("#section-horisontal-1-setka").val() == "true" ? "да" : "нет") + "\n\n";
if (type == 1) {
if ($("#section-num").val() != 1) {
text += " Секция 2:\n";
text += " Ширина: " + $("#section-horisontal-2-width").val() + " см\n";
switch ($("#section-horisontal-2-type").val()) {
case "a":text += " Тип: глухое\n";break;
case "b":text += " Тип: поворотное\n";break;
case "c":text += " Тип: поворотно-откидное\n";break;
}
text += " Москитная сетка: " + ($("#section-horisontal-2-setka").val() == "true" ? "да" : "нет") + "\n\n";
}
if ($("#section-num").val() == 3) {
text += " Секция 3:\n";
text += " Ширина: " + $("#section-horisontal-3-width").val() + " см\n";
switch ($("#section-horisontal-3-type").val()) {
case "a":text += " Тип: глухое\n";break;
case "b":text += " Тип: поворотное\n";break;
case "c":text += " Тип: поворотно-откидное\n";break;
}
text += " Москитная сетка: " + ($("#section-horisontal-3-setka").val() == "true" ? "да" : "нет") + "\n\n";
}
} else {
if ($("#section-num").val() == 3) {
text += " Секция 2:\n";
text += " Ширина: " + $("#section-horisontal-2-width").val() + " см\n";
switch ($("#section-horisontal-2-type").val()) {
case "a":text += " Тип: глухое\n";break;
case "b":text += " Тип: поворотное\n";break;
case "c":text += " Тип: поворотно-откидное\n";break;
}
text += " Москитная сетка: " + ($("#section-horisontal-2-setka").val() == "true" ? "да" : "нет") + "\n\n";
}
text += " Дверь:\n";
text += " Ширина: " + $("#section-horisontal-3-width").val() + " см\n";
}
text += "\n======\n";
$("#edit-submitted-calculation").val(text);
};
Drupal.Calculator.result = function(result) {
result = (result / 10).toFixed() * 10;
$("#calculator-price span").html(result);
return result;
};
Drupal.Calculator.vlookup = function(value, table) {
var result = null;
switch (table) {
case 'подоконники':
switch (value) {
case 100:case 150:result = 17;break;
case 200:result = 21;break;
case 250:result = 25;break;
case 300:result = 28;break;
case 350:result = 31;break;
case 400:result = 35;break;
case 450:result = 39;break;
case 500:result = 42;break;
case 550:result = 45;break;
case 600:result = 48;break;
case 650:result = 50;break;
case 700:result = 53;break;
default:alert("Error");
}
break;
case 'откосы':
switch (value) {
case 200:result = 22;break;
case 250:result = 23;break;
case 300:result = 25;break;
case 350:result = 28;break;
case 400:result = 30;break;
case 450:result = 32;break;
case 500:result = 34;break;
case 550:result = 35;break;
case 600:result = 36;break;
case 650:result = 38;break;
case 700:result = 40;break;
default:alert("Error");break;
}
break;
case 'отливы':
switch (value) {
case 150:result = 4.4;break;
case 200:result = 5.5;break;
default:alert("Error");break;
}
break;
case 'глухая2':
switch (value) {
case 600:result = 41;break;
case 700:result = 46;break;
case 800:result = 51;break;
case 900:result = 56;break;
case 1000:result = 61;break;
case 1100:result = 66;break;
case 1200:result = 71;break;
case 1300:result = 76;break;
case 1400:result = 82;break;
case 1500:result = 88;break;
case 1600:result = 96;break;
case 1700:result = 99;break;
case 1800:result = 105;break;
case 1900:result = 113;break;
case 2000:result = 121;break;
case 2100:result = 136;break;
default:alert("Error");break;
}
break;
case 'глухая3':
switch (value) {
case 600:result = 46;break;
case 700:result = 51;break;
case 800:result = 56;break;
case 900:result = 61;break;
case 1000:result = 66;break;
case 1100:result = 71;break;
case 1200:result = 76;break;
case 1300:result = 82;break;
case 1400:result = 88;break;
case 1500:result = 94;break;
case 1600:result = 102;break;
case 1700:result = 105;break;
case 1800:result = 111;break;
case 1900:result = 117;break;
case 2000:result = 123;break;
case 2100:result = 129;break;
default:alert("Error");break;
}
break;
case 'глухая4':
switch (value) {
case 600:result = 51;break;
case 700:result = 56;break;
case 800:result = 61;break;
case 900:result = 66;break;
case 1000:result = 71;break;
case 1100:result = 76;break;
case 1200:result = 82;break;
case 1300:result = 88;break;
case 1400:result = 94;break;
case 1500:result = 100;break;
case 1600:result = 108;break;
case 1700:result = 111;break;
case 1800:result = 117;break;
case 1900:result = 123;break;
case 2000:result = 129;break;
case 2100:result = 135;break;
default:alert("Error");break;
}
break;
case 'глухая5':
switch (value) {
case 600:result = 56;break;
case 700:result = 61;break;
case 800:result = 66;break;
case 900:result = 71;break;
case 1000:result = 76;break;
case 1100:result = 82;break;
case 1200:result = 88;break;
case 1300:result = 94;break;
case 1400:result = 100;break;
case 1500:result = 106;break;
case 1600:result = 114;break;
case 1700:result = 117;break;
case 1800:result = 123;break;
case 1900:result = 129;break;
case 2000:result = 135;break;
case 2100:result = 143;break;
default:alert("Error");break;
}
break;
case 'глухая6':
switch (value) {
case 600:result = 61;break;
case 700:result = 66;break;
case 800:result = 71;break;
case 900:result = 76;break;
case 1000:result = 82;break;
case 1100:result = 88;break;
case 1200:result = 94;break;
case 1300:result = 100;break;
case 1400:result = 106;break;
case 1500:result = 112;break;
case 1600:result = 120;break;
case 1700:result = 123;break;
case 1800:result = 129;break;
case 1900:result = 135;break;
case 2000:result = 143;break;
case 2100:result = 151;break;
default:alert("Error");break;
}
break;
case 'глухая7':
switch (value) {
case 600:result = 66;break;
case 700:result = 71;break;
case 800:result = 76;break;
case 900:result = 82;break;
case 1000:result = 88;break;
case 1100:result = 94;break;
case 1200:result = 100;break;
case 1300:result = 106;break;
case 1400:result = 112;break;
case 1500:result = 118;break;
case 1600:result = 126;break;
case 1700:result = 129;break;
case 1800:result = 135;break;
case 1900:result = 143;break;
case 2000:result = 151;break;
case 2100:result = 161;break;
default:alert("Error");break;
}
break;
case 'глухая8':
switch (value) {
case 600:result = 71;break;
case 700:result = 76;break;
case 800:result = 82;break;
case 900:result = 88;break;
case 1000:result = 94;break;
case 1100:result = 100;break;
case 1200:result = 106;break;
case 1300:result = 112;break;
case 1400:result = 118;break;
case 1500:result = 124;break;
case 1600:result = 132;break;
case 1700:result = 135;break;
case 1800:result = 143;break;
case 1900:result = 151;break;
case 2000:result = 159;break;
case 2100:result = 171;break;
default:alert("Error");break;
}
break;
case 'поворотная2':
switch (value) {
case 600:result = 78;break;
case 700:result = 85;break;
case 800:result = 92;break;
case 900:result = 99;break;
case 1000:result = 106;break;
case 1100:result = 113;break;
case 1200:result = 120;break;
case 1300:result = 127;break;
case 1400:result = 134;break;
case 1500:result = 141;break;
case 1600:result = 151;break;
case 1700:result = 157;break;
case 1800:result = 163;break;
case 1900:result = 171;break;
case 2000:result = 179;break;
case 2100:result = 187;break;
default:alert("Error");break;
}
break;
case 'поворотная3':
switch (value) {
case 600:result = 85;break;
case 700:result = 92;break;
case 800:result = 99;break;
case 900:result = 106;break;
case 1000:result = 113;break;
case 1100:result = 120;break;
case 1200:result = 127;break;
case 1300:result = 134;break;
case 1400:result = 141;break;
case 1500:result = 149;break;
case 1600:result = 159;break;
case 1700:result = 163;break;
case 1800:result = 169;break;
case 1900:result = 177;break;
case 2000:result = 185;break;
case 2100:result = 193;break;
default:alert("Error");break;
}
break;
case 'поворотная4':
switch (value) {
case 600:result = 92;break;
case 700:result = 99;break;
case 800:result = 106;break;
case 900:result = 113;break;
case 1000:result = 120;break;
case 1100:result = 127;break;
case 1200:result = 134;break;
case 1300:result = 141;break;
case 1400:result = 149;break;
case 1500:result = 159;break;
case 1600:result = 163;break;
case 1700:result = 159;break;
case 1800:result = 177;break;
case 1900:result = 185;break;
case 2000:result = 193;break;
case 2100:result = 201;break;
default:alert("Error");break;
}
break;
case 'поворотная5':
switch (value) {
case 600:result = 99;break;
case 700:result = 106;break;
case 800:result = 113;break;
case 900:result = 120;break;
case 1000:result = 127;break;
case 1100:result = 134;break;
case 1200:result = 141;break;
case 1300:result = 149;break;
case 1400:result = 159;break;
case 1500:result = 163;break;
case 1600:result = 169;break;
case 1700:result = 177;break;
case 1800:result = 185;break;
case 1900:result = 193;break;
case 2000:result = 201;break;
case 2100:result = 211;break;
default:alert("Error");break;
}
break;
case 'поворотная6':
switch (value) {
case 600:result = 106;break;
case 700:result = 113;break;
case 800:result = 120;break;
case 900:result = 127;break;
case 1000:result = 134;break;
case 1100:result = 141;break;
case 1200:result = 149;break;
case 1300:result = 159;break;
case 1400:result = 163;break;
case 1500:result = 169;break;
case 1600:result = 177;break;
case 1700:result = 185;break;
case 1800:result = 193;break;
case 1900:result = 201;break;
case 2000:result = 211;break;
case 2100:result = 221;break;
default:alert("Error");break;
}
break;
case 'поворотная7':
switch (value) {
case 600:result = 113;break;
case 700:result = 120;break;
case 800:result = 127;break;
case 900:result = 134;break;
case 1000:result = 141;break;
case 1100:result = 149;break;
case 1200:result = 159;break;
case 1300:result = 163;break;
case 1400:result = 169;break;
case 1500:result = 177;break;
case 1600:result = 185;break;
case 1700:result = 193;break;
case 1800:result = 201;break;
case 1900:result = 211;break;
case 2000:result = 221;break;
case 2100:result = 231;break;
default:alert("Error");break;
}
break;
case 'поворотная8':
switch (value) {
case 600:result = 120;break;
case 700:result = 127;break;
case 800:result = 134;break;
case 900:result = 141;break;
case 1000:result = 149;break;
case 1100:result = 159;break;
case 1200:result = 163;break;
case 1300:result = 169;break;
case 1400:result = 177;break;
case 1500:result = 185;break;
case 1600:result = 193;break;
case 1700:result = 201;break;
case 1800:result = 211;break;
case 1900:result = 221;break;
case 2000:result = 231;break;
case 2100:result = 246;break;
default:alert("Error");break;
}
break;
case 'поворотно-откидная2':
switch (value) {
case 600:result = 109;break;
case 700:result = 99;break;
case 800:result = 106;break;
case 900:result = 116;break;
case 1000:result = 126;break;
case 1100:result = 131;break;
case 1200:result = 137;break;
case 1300:result = 143;break;
case 1400:result = 149;break;
case 1500:result = 155;break;
case 1600:result = 163;break;
case 1700:result = 173;break;
case 1800:result = 183;break;
case 1900:result = 193;break;
case 2000:result = 203;break;
case 2100:result = 215;break;
default:alert("Error");break;
}
break;
case 'поворотно-откидная3':
switch (value) {
case 600:result = 99;break;
case 700:result = 101;break;
case 800:result = 108;break;
case 900:result = 114;break;
case 1000:result = 122;break;
case 1100:result = 130;break;
case 1200:result = 136;break;
case 1300:result = 142;break;
case 1400:result = 148;break;
case 1500:result = 154;break;
case 1600:result = 162;break;
case 1700:result = 175;break;
case 1800:result = 185;break;
case 1900:result = 195;break;
case 2000:result = 205;break;
case 2100:result = 217;break;
default:alert("Error");break;
}
break;
case 'поворотно-откидная4':
switch (value) {
case 600:result = 106;break;
case 700:result = 108;break;
case 800:result = 114;break;
case 900:result = 122;break;
case 1000:result = 130;break;
case 1100:result = 136;break;
case 1200:result = 142;break;
case 1300:result = 148;break;
case 1400:result = 154;break;
case 1500:result = 162;break;
case 1600:result = 170;break;
case 1700:result = 183;break;
case 1800:result = 193;break;
case 1900:result = 203;break;
case 2000:result = 213;break;
case 2100:result = 227;break;
default:alert("Error");break;
}
break;
case 'поворотно-откидная5':
switch (value) {
case 600:result = 116;break;
case 700:result = 114;break;
case 800:result = 122;break;
case 900:result = 130;break;
case 1000:result = 136;break;
case 1100:result = 142;break;
case 1200:result = 148;break;
case 1300:result = 154;break;
case 1400:result = 162;break;
case 1500:result = 170;break;
case 1600:result = 178;break;
case 1700:result = 191;break;
case 1800:result = 201;break;
case 1900:result = 211;break;
case 2000:result = 221;break;
case 2100:result = 237;break;
default:alert("Error");break;
}
break;
case 'поворотно-откидная6':
switch (value) {
case 600:result = 126;break;
case 700:result = 122;break;
case 800:result = 130;break;
case 900:result = 136;break;
case 1000:result = 142;break;
case 1100:result = 148;break;
case 1200:result = 154;break;
case 1300:result = 162;break;
case 1400:result = 170;break;
case 1500:result = 178;break;
case 1600:result = 186;break;
case 1700:result = 199;break;
case 1800:result = 209;break;
case 1900:result = 219;break;
case 2000:result = 229;break;
case 2100:result = 247;break;
default:alert("Error");break;
}
break;
case 'поворотно-откидная7':
switch (value) {
case 600:result = 131;break;
case 700:result = 130;break;
case 800:result = 136;break;
case 900:result = 142;break;
case 1000:result = 148;break;
case 1100:result = 154;break;
case 1200:result = 162;break;
case 1300:result = 170;break;
case 1400:result = 178;break;
case 1500:result = 186;break;
case 1600:result = 194;break;
case 1700:result = 207;break;
case 1800:result = 217;break;
case 1900:result = 227;break;
case 2000:result = 237;break;
case 2100:result = 257;break;
default:alert("Error");break;
}
break;
case 'поворотно-откидная8':
switch (value) {
case 600:result = 137;break;
case 700:result = 136;break;
case 800:result = 142;break;
case 900:result = 148;break;
case 1000:result = 154;break;
case 1100:result = 162;break;
case 1200:result = 170;break;
case 1300:result = 178;break;
case 1400:result = 186;break;
case 1500:result = 194;break;
case 1600:result = 202;break;
case 1700:result = 215;break;
case 1800:result = 225;break;
case 1900:result = 235;break;
case 2000:result = 245;break;
case 2100:result = 267;break;
default:alert("Error");break;
}
break;
case 'дверь1':
switch (value) {
case 1800:result = 165;break;
case 1850:result = 168;break;
case 1900:result = 172;break;
case 1950:result = 177;break;
case 2000:result = 181;break;
case 2050:result = 186;break;
case 2100:result = 190;break;
case 2150:result = 194;break;
case 2200:result = 197;break;
case 2250:result = 200;break;
case 2300:result = 203;break;
case 2350:result = 206;break;
case 2400:result = 209;break;
case 2450:result = 213;break;
case 2500:result = 217;break;
default:alert("Error");break;
}
break;
case 'дверь2':
switch (value) {
case 1800:result = 175;break;
case 1850:result = 179;break;
case 1900:result = 182;break;
case 1950:result = 186;break;
case 2000:result = 191;break;
case 2050:result = 196;break;
case 2100:result = 200;break;
case 2150:result = 204;break;
case 2200:result = 207;break;
case 2250:result = 210;break;
case 2300:result = 213;break;
case 2350:result = 216;break;
case 2400:result = 219;break;
case 2450:result = 223;break;
case 2500:result = 227;break;
default:alert("Error");break;
}
break;
case 'дверь3':
switch (value) {
case 1800:result = 181;break;
case 1850:result = 185;break;
case 1900:result = 188;break;
case 1950:result = 192;break;
case 2000:result = 197;break;
case 2050:result = 202;break;
case 2100:result = 206;break;
case 2150:result = 210;break;
case 2200:result = 213;break;
case 2250:result = 216;break;
case 2300:result = 219;break;
case 2350:result = 222;break;
case 2400:result = 225;break;
case 2450:result = 229;break;
case 2500:result = 234;break;
default:alert("Error");break;
}
break;
case 'дверь4':
switch (value) {
case 1800:result = 187;break;
case 1850:result = 194;break;
case 1900:result = 197;break;
case 1950:result = 201;break;
case 2000:result = 206;break;
case 2050:result = 210;break;
case 2100:result = 214;break;
case 2150:result = 218;break;
case 2200:result = 221;break;
case 2250:result = 224;break;
case 2300:result = 227;break;
case 2350:result = 230;break;
case 2400:result = 233;break;
case 2450:result = 237;break;
case 2500:result = 242;break;
default:alert("Error");break;
}
break;
case 'дверь5':
switch (value) {
case 1800:result = 194;break;
case 1850:result = 198;break;
case 1900:result = 201;break;
case 1950:result = 205;break;
case 2000:result = 210;break;
case 2050:result = 215;break;
case 2100:result = 219;break;
case 2150:result = 223;break;
case 2200:result = 226;break;
case 2250:result = 229;break;
case 2300:result = 232;break;
case 2350:result = 235;break;
case 2400:result = 238;break;
case 2450:result = 242;break;
case 2500:result = 247;break;
default:alert("Error");break;
}
break;
case 'дверь6':
switch (value) {
case 1800:result = 200;break;
case 1850:result = 204;break;
case 1900:result = 207;break;
case 1950:result = 211;break;
case 2000:result = 216;break;
case 2050:result = 221;break;
case 2100:result = 225;break;
case 2150:result = 229;break;
case 2200:result = 232;break;
case 2250:result = 235;break;
case 2300:result = 238;break;
case 2350:result = 241;break;
case 2400:result = 244;break;
case 2450:result = 248;break;
case 2500:result = 253;break;
default:alert("Error");break;
}
break;
case 'дверь7':
switch (value) {
case 1800:result = 223;break;
case 1850:result = 227;break;
case 1900:result = 230;break;
case 1950:result = 234;break;
case 2000:result = 239;break;
case 2050:result = 244;break;
case 2100:result = 248;break;
case 2150:result = 252;break;
case 2200:result = 255;break;
case 2250:result = 258;break;
case 2300:result = 261;break;
case 2350:result = 264;break;
case 2400:result = 267;break;
case 2450:result = 271;break;
case 2500:result = 276;break;
default:alert("Error");break;
}
break;
case 'дверь8':
switch (value) {
case 1800:result = 229;break;
case 1850:result = 233;break;
case 1900:result = 236;break;
case 1950:result = 240;break;
case 2000:result = 245;break;
case 2050:result = 251;break;
case 2100:result = 255;break;
case 2150:result = 259;break;
case 2200:result = 262;break;
case 2250:result = 265;break;
case 2300:result = 268;break;
case 2350:result = 271;break;
case 2400:result = 274;break;
case 2450:result = 278;break;
case 2500:result = 283;break;
default:alert("Error");break;
}
break;
case 'дверь9':
switch (value) {
case 1800:result = 235;break;
case 1850:result = 239;break;
case 1900:result = 242;break;
case 1950:result = 246;break;
case 2000:result = 251;break;
case 2050:result = 256;break;
case 2100:result = 260;break;
case 2150:result = 264;break;
case 2200:result = 267;break;
case 2250:result = 270;break;
case 2300:result = 273;break;
case 2350:result = 276;break;
case 2400:result = 279;break;
case 2450:result = 283;break;
case 2500:result = 291;break;
default:alert("Error");break;
}
break;
case 'дверь10':
switch (value) {
case 1800:result = 240;break;
case 1850:result = 244;break;
case 1900:result = 247;break;
case 1950:result = 251;break;
case 2000:result = 256;break;
case 2050:result = 261;break;
case 2100:result = 265;break;
case 2150:result = 269;break;
case 2200:result = 272;break;
case 2250:result = 275;break;
case 2300:result = 278;break;
case 2350:result = 281;break;
case 2400:result = 284;break;
case 2450:result = 288;break;
case 2500:result = 296;break;
default:alert("Error");break;
}
break;
case 'дверь11':
switch (value) {
case 1800:result = 246;break;
case 1850:result = 250;break;
case 1900:result = 253;break;
case 1950:result = 257;break;
case 2000:result = 262;break;
case 2050:result = 267;break;
case 2100:result = 271;break;
case 2150:result = 275;break;
case 2200:result = 278;break;
case 2250:result = 278;break;
case 2300:result = 281;break;
case 2350:result = 284;break;
case 2400:result = 287;break;
case 2450:result = 290;break;
case 2500:result = 294;break;
default:alert("Error");break;
}
break;
case 'дверь12':
switch (value) {
case 1800:result = 252;break;
case 1850:result = 256;break;
case 1900:result = 259;break;
case 1950:result = 263;break;
case 2000:result = 268;break;
case 2050:result = 273;break;
case 2100:result = 277;break;
case 2150:result = 281;break;
case 2200:result = 284;break;
case 2250:result = 287;break;
case 2300:result = 291;break;
case 2350:result = 294;break;
case 2400:result = 297;break;
case 2450:result = 301;break;
case 2500:result = 311;break;
default:alert("Error");break;
}
break;
case 'дверь13':
switch (value) {
case 1800:result = 258;break;
case 1850:result = 262;break;
case 1900:result = 265;break;
case 1950:result = 269;break;
case 2000:result = 274;break;
case 2050:result = 249;break;
case 2100:result = 283;break;
case 2150:result = 287;break;
case 2200:result = 290;break;
case 2250:result = 293;break;
case 2300:result = 296;break;
case 2350:result = 299;break;
case 2400:result = 302;break;
case 2450:result = 306;break;
case 2500:result = 321;break;
default:alert("Error");break;
}
break;
case 'дверь14':
switch (value) {
case 1800:result = 264;break;
case 1850:result = 268;break;
case 1900:result = 271;break;
case 1950:result = 275;break;
case 2000:result = 280;break;
case 2050:result = 285;break;
case 2100:result = 289;break;
case 2150:result = 293;break;
case 2200:result = 296;break;
case 2250:result = 299;break;
case 2300:result = 302;break;
case 2350:result = 305;break;
case 2400:result = 308;break;
case 2450:result = 312;break;
case 2500:result = 327;break;
default:alert("Error");break;
}
break;
default:
alert(table);
}
if (result == 0) {
alert("Error");
}
return result;
};
Drupal.Calculator.ceiling = function(value, precision, type) {
return value;
};
Drupal.Calculator.typeProcessor = function(type) {
switch (type) {
case 'a':
return 1;
break;
case 'b':
return 2;
break;
case 'c':
return 3;
break;
default:
alert("Error");
break;
}
};
Drupal.Calculator.setkaProcessor = function(value) {
switch (value) {
case 'true':
return 1;
break;
case 'false':
return 2;
break;
default:
console.log("Drupal.Calculator.setkaProcessor error");
break;
}
};
/**
* Calculator Switcher
*/
Drupal.Calculator.Switcher = new Object;
Drupal.Calculator.Switcher.value = null;
/**
*
*/
Drupal.Calculator.Switcher.init = function() {
//var html = 'окна';
//$(".calculator h1").html($(".calculator h1").html() + ' на ' + html);
//this.value = $(".calculator h1 a.active").attr("href");
this.value = '#windows';
//$(".calculator h1 a.active").click(this.open);
//$("#calculator-switcher a").click(this.go);
$("#calculator-selector-windows-1 a").click(function(){
Drupal.Calculator.Switcher.setType('#windows');
$("#calculator-window .wrapper .section-1").show();
$("#calculator-window .wrapper .section-2").hide();
$("#calculator-window .wrapper .section-3").hide();
$("#calculator-scrollbar-bottom-list").removeClass("columns-2 columns-3").addClass("columns-1");
$("#calculator-scrollbar-bottom-section-1").parent().show();
$("#calculator-scrollbar-bottom-section-2").parent().hide();
$("#calculator-scrollbar-bottom-section-3").parent().hide();
$("#section-num").val(1);
Drupal.Calculator.calculate();
});
$("#calculator-selector-windows-2 a").click(function(){
Drupal.Calculator.Switcher.setType('#windows');
$("#calculator-window .wrapper .section-1").show();
$("#calculator-window .wrapper .section-2").show();
$("#calculator-window .wrapper .section-3").hide();
$("#calculator-scrollbar-bottom-list").removeClass("columns-1 columns-3").addClass("columns-2");
$("#calculator-scrollbar-bottom-section-1").parent().show();
$("#calculator-scrollbar-bottom-section-2").parent().show();
$("#calculator-scrollbar-bottom-section-3").parent().hide();
$("#section-num").val(2);
Drupal.Calculator.calculate();
});
$("#calculator-selector-windows-3 a").click(function(){
Drupal.Calculator.Switcher.setType('#windows');
$("#calculator-window .wrapper .section-1").show();
$("#calculator-window .wrapper .section-2").show();
$("#calculator-window .wrapper .section-3").show();
$("#calculator-scrollbar-bottom-list").removeClass("columns-1 columns-2").addClass("columns-3");
$("#calculator-scrollbar-bottom-section-1").parent().show();
$("#calculator-scrollbar-bottom-section-2").parent().show();
$("#calculator-scrollbar-bottom-section-3").parent().show();
$("#section-num").val(3);
Drupal.Calculator.calculate();
});
$("#calculator-selector-balcony-2 a").click(function(){
Drupal.Calculator.Switcher.setType('#balcony');
$("#calculator-balcon .wrapper .section-1").show();
$("#calculator-balcon .wrapper .section-2").hide();
$("#calculator-balcon .wrapper .section-3").show();
$("#calculator-scrollbar-bottom-list").removeClass("columns-1 columns-3").addClass("columns-2");
$("#calculator-scrollbar-bottom-section-1").parent().show();
$("#calculator-scrollbar-bottom-section-2").parent().hide();
$("#calculator-scrollbar-bottom-section-3").parent().show();
$("#section-num").val(2);
Drupal.Calculator.calculate();
});
$("#calculator-selector-balcony-3 a").click(function(){
Drupal.Calculator.Switcher.setType('#balcony');
$("#calculator-balcon .wrapper .section-1").show();
$("#calculator-balcon .wrapper .section-2").show();
$("#calculator-balcon .wrapper .section-3").show();
$("#calculator-scrollbar-bottom-list").removeClass("columns-1 columns-2").addClass("columns-3");
$("#calculator-scrollbar-bottom-section-1").parent().show();
$("#calculator-scrollbar-bottom-section-2").parent().show();
$("#calculator-scrollbar-bottom-section-3").parent().show();
$("#section-num").val(3);
Drupal.Calculator.calculate();
});
$("#calculator-selector li a").click(function(){
$("#calculator-selector li").removeClass("active");
$(this).parent().addClass("active");
return false;
});
};
/**
* Okna или balkony
*/
Drupal.Calculator.Switcher.setType = function(type) {
this.hash = type;
this.go();
}
/**
*
*/
Drupal.Calculator.Switcher.open = function() {
$("#calculator-switcher").css("display", "block");
$(document).bind("keypress.calculatorSwitcher", function(event){
if (27 == event.keyCode) {
Drupal.Calculator.Switcher.close();
}
});
$(document).bind("click.calculatorSwitcher", function(event){
target = $(event.target);
if (target.is("#calculator-switcher-outer") || target.parents("#calculator-switcher-outer").length) {
return;
} else {
Drupal.Calculator.Switcher.close();
}
});
return false;
};
/**
*
*/
Drupal.Calculator.Switcher.go = function() {
var value = this.hash;
if (Drupal.Calculator.Switcher.value != value) {
//alert(value+' != '+Drupal.Calculator.Switcher.value);
Drupal.Calculator.Switcher.value = value;
if ("#balcony" == value) {
$("#section-type").val(2);
if ($.browser.msie) {
$("#calculator-switcher").animate({
top: '-1.5em'
}, "fast", Drupal.Calculator.Switcher.close);
} else {
$("#calculator-switcher").animate({
top: '-1.1em'
}, "fast", Drupal.Calculator.Switcher.close);
}
$("#calculator-window").hide();
$("#calculator-balcon").show();
//$("#calculator-selector-balcony").show();
//$("#calculator-selector-windows").hide();
$("#calculator-selector-balcony-2 a").click();
$("#calculator-sofa").fadeOut(200);
} else {
$("#section-type").val(1);
$("#calculator-switcher").animate({
top: '0'
}, "fast", Drupal.Calculator.Switcher.close);
$("#calculator-window").show();
$("#calculator-balcon").hide();
//$("#calculator-selector-balcony").hide();
//$("#calculator-selector-windows").show();
$("#calculator-selector-windows-2 a").click();
$("#calculator-sofa").fadeIn(200);
}
//$(".calculator h1 a.active span").html(
// $(this).find("span").html()
//);
} else {
Drupal.Calculator.Switcher.close();
}
Drupal.Calculator.Switcher.value = value;
Drupal.Calculator.Selector.go();
return true;
};
Drupal.Calculator.Switcher.close = function() {
//$("#calculator-switcher").fadeOut();
//$(document).unbind(".calculatorSwitcher");
return true;
};
Drupal.Calculator.Tooltip = new Object;
Drupal.Calculator.Tooltip.init = function() {
$(".window-wrapper").hover(Drupal.Calculator.Tooltip.open, Drupal.Calculator.Tooltip.close);
};
Drupal.Calculator.Tooltip.open = function() {
$("#window-type-tooltip").remove();
$(this).append('');
if ('a' == $("#section-horisontal-" + Drupal.Calculator.Tooltip.getSection() + "-type").val()) {
$("#window-type-tooltip-setka").attr("disabled", "disabled").attr("checked", "");
} else {
if ('true' == $("#section-horisontal-" + Drupal.Calculator.Tooltip.getSection() + "-setka").val()) {
$("#window-type-tooltip-setka").attr("checked", "checked");
} else {
$("#window-type-tooltip-setka").attr("checked", "");
}
}
$("#window-type-tooltip-type-" + $("#section-horisontal-" + Drupal.Calculator.Tooltip.getSection() + "-type").val()).addClass("active");
// Window type
$("#window-type-tooltip-type-a i").click(function(){
$("#window-type-tooltip-setka").attr("disabled", "disabled").attr("checked", "");
$("#section-horisontal-" + Drupal.Calculator.Tooltip.getSection() + "-setka").val("false");
$("#window-type-tooltip li").removeClass("active");
$(this).parent().parent().addClass("active");
$("#section-horisontal-" + Drupal.Calculator.Tooltip.getSection() + "-type").val("a");
Drupal.Calculator.calculate();
});
$("#window-type-tooltip-type-b i").click(function(){
$("#window-type-tooltip-setka").attr("disabled", "");
$("#window-type-tooltip li").removeClass("active");
$(this).parent().parent().addClass("active");
$("#section-horisontal-" + Drupal.Calculator.Tooltip.getSection() + "-type").val("b");
Drupal.Calculator.calculate();
});
$("#window-type-tooltip-type-c i").click(function(){
$("#window-type-tooltip-setka").attr("disabled", "");
$("#window-type-tooltip li").removeClass("active");
$(this).parent().parent().addClass("active");
$("#section-horisontal-" + Drupal.Calculator.Tooltip.getSection() + "-type").val("c");
Drupal.Calculator.calculate();
});
// Setka
$("#window-type-tooltip-setka").change(function(){
$("#section-horisontal-" + Drupal.Calculator.Tooltip.getSection() + "-setka").val($(this).attr("checked"));
Drupal.Calculator.calculate();
});
};
Drupal.Calculator.Tooltip.close = function(object) {
$("#window-type-tooltip").fadeOut(200, function() {
$("#window-type-tooltip").remove();
});
Drupal.Calculator.Tooltip.init();
};
Drupal.Calculator.Tooltip.getSection = function(object) {
var elem = $("#window-type-tooltip").parent().parent().parent();
if ($(elem).hasClass("section-1")) {
return 1;
} else if ($(elem).hasClass("section-2")) {
return 2;
} else if ($(elem).hasClass("section-3")) {
return 3;
}
};
Drupal.Calculator.Selector = new Object;
Drupal.Calculator.Selector.value = null;
Drupal.Calculator.Selector.init = function() {
};
Drupal.Calculator.Selector.go = function() {
var value = Drupal.Calculator.Switcher.value;
};
Drupal.behaviors.Calculator = Drupal.Calculator.init;
/*
playback timings (ms):
LoadShardBlock: 350.684 (3)
esindex: 0.007
captures_list: 375.278
CDXLines.iter: 10.684 (3)
PetaboxLoader3.datanode: 51.622 (4)
exclusion.robots: 0.241
exclusion.robots.policy: 0.231
RedisCDXSource: 0.622
PetaboxLoader3.resolve: 386.536 (3)
load_resource: 101.727
*/