﻿// JScript File

//============================================
//=       ...::: STYLE BLOCK :::...          =
//============================================

var div_orderform = null;
var window_message = null;

function formvisibl()
{
    if(!div_orderform)
    {
        div_orderform = document.getElementById("_ctl0_div_form");
        CheckLang();
        GetDates();
        clearAll();
        Init_window_message();
    }
    if(window_message.style.visibility != "visible") div_orderform.style.visibility = "visible";
}

function formhidden()
{
    if(!div_orderform)
    {
        div_orderform = document.getElementById("_ctl0_div_form");
    }
    div_orderform.style.visibility = "hidden";
}

// --------------------- WINDOW MESSAGE ------------------
function Init_window_message()
{
    window_message = document.getElementById("window_message");
    window_message.p = document.getElementById("p_message");
    window_message.btn_ok = document.getElementById("_ctl0_btn_ok");
    window_message.btn_close = document.getElementById("_ctl0_btn_close");
    window_message.btn_again = document.getElementById("_ctl0_btn_again");
    
    window_message.btn_ok.style.visibility = "hidden";
    window_message.btn_close.style.visibility = "hidden";
    window_message.btn_again.style.visibility = "hidden";
}

function window_message_Open(text)
{
    if(!window_message) Init_window_message();
    window_message.p.innerHTML = text;
    window_message.style.visibility = "visible";
}

function window_message_Close()
{
    if(!window_message) Init_window_message();
    window_message.style.visibility = "hidden";
    window_message.btn_ok.style.visibility = "hidden";
    window_message.btn_close.style.visibility = "hidden";
    window_message.btn_again.style.visibility = "hidden";
    window_message.p.className = "mestext";
}

function window_message_Error(exception)
{
    window_message.btn_ok.style.visibility = "visible";
    window_message.btn_close.style.visibility = "hidden";
    window_message.btn_again.style.visibility = "hidden";
    formhidden();
    window_message_Open(exception);
}

function Confirm_message()
{
    window_message_Close();
    formvisibl();
}

function OrderAccept()
{
    var mes = "Ваш заказ принят. С Вами свяжутся в ближайшее время.";
    if (lang == "en") mes = "Your order is accepted. We will contact You shortly.";
    
    formhidden();               //закрываем форму
    window_message.btn_ok.style.visibility = "hidden";
    window_message.btn_close.style.visibility = "visible";
    window_message.btn_again.style.visibility = "visible";
    window_message_Open(mes);   //сообщение
    clearAll();                 //чистим форму
}

function OrderError(sError)
{
   window_message.btn_ok.style.visibility = "visible";
   window_message.btn_close.style.visibility = "hidden";
   window_message.btn_again.style.visibility = "hidden";
   window_message.p.className = "mestext merror";
   window_message_Open(sError);
}

function Order_again()
{
    window_message_Close();
    formvisibl();
}
//------------------------------------------------------


function mover(a)
{
    a.style.textDecoration = "none";
}
function mout(a)
{
    a.style.textDecoration = "underline";
}

//===========================================
//=       ...::: AJAX BLOCK :::...          =
//===========================================

var req_send = null;
var req_dates = null;
var lang = "";

function CheckLang()
{
    var sp = document.getElementById("_ctl0_sp_lang");
    if(sp) if(sp.innerHTML == "en")
           {
                var div = document.getElementById("_ctl0_div_form");
                if(div)
                {
                    div.className = "form eng";
                }
                lang = "en";
           }
}

function send(inf)
{
    req_send = getRequest();
    req_send.onreadystatechange = stateChange_send;
    req_send.open("POST", "empty.aspx", true);
    req_send.setRequestHeader("Content-Type", "text/html");
    req_send.send(inf);
}
function getRequest()
{
    var xreq = null;
    if(window.XMLHttpRequest)
    {
        xreq = new XMLHttpRequest;
    }
    else if(typeof ActiveXObject != "undefined")
    {
        xreq = new ActiveXObject("Microsoft.XMLHTTP");
    }
    return xreq;
}
function stateChange_send()
{
    if(req_send.readyState == 4)
    {
        if(req_send.responseText.length == 0)
        {
            OrderAccept();
        }
        else
        {
            OrderError(req_send.responseText);
        }
    }
}

//===========================================

function order()
{
    var email       = document.getElementById("inpt_email").value;
    var code       = document.getElementById("inpt_code").value;
    var phone       = document.getElementById("inpt_phone").value;
    var slct_action = document.getElementById("slct_action");
    var slct_date   = document.getElementById("slct_date");
    var actionInd   = slct_action.selectedIndex;
    var dateInd     = slct_date.selectedIndex;
    var count       = document.getElementById("inpt_count").value;
    var price       = document.getElementById("inpt_price").value;
    if(code.replace(/ /g, "") != "" && phone.replace(/ /g, "") != "" && actionInd != 0 && dateInd != 0 && count.replace(/ /g, "") != "" && price.replace(/ /g, "") != "")
    {
        var name    = document.getElementById("inpt_name").value;
        var text    = document.getElementById("ta_text").value;
        
        var nal = document.getElementById("rb_nal").checked;
        var payType = null;
        if(nal) payType = "1";
        else payType = "0";
    
        var info    = name + "*&*" + email + "*&*" + code + "*&*" + phone + "*&*" + slct_action.options[actionInd].value + "*&*" + slct_date.options[dateInd].value + "*&*" + count + "*&*" + price + "*&*" + payType + "*&*" + text;
        
        //вешаем ожидение
        formhidden();
        if(lang == "") window_message_Open("<br/>Подождите ...");
        else window_message_Open("<br/>Wait ...");
        
        //отправляем запрос на заказ
        send(info);
    }
    else
    {
        var mes = "Поля, помеченные звёздочкой, необходимо заполнить!!!";
        if(lang == "en") mes = "The fields marked asterisk necessary to fill!!!";
        //показываем сообщение
        window_message_Error(mes);
    }
}
function clearAll()
{
    document.getElementById("inpt_name").value = "";
    document.getElementById("inpt_email").value = "";
    document.getElementById("inpt_code").value = "";
    document.getElementById("inpt_phone").value = "";
    document.getElementById("inpt_count").value = "";
    document.getElementById("inpt_price").value = "";
    document.getElementById("rb_nal").checked = "checked";
    document.getElementById("rb_beznal").checked = "";
    document.getElementById("ta_text").value = "";
    var slct = document.getElementById("slct_action");
    slct.selectedIndex = 0;
    loadDates(slct);
}

//------------------- FOR DATES ----------------------
var arrOfDates = new Array();

function GetDates()
{
    var div_dates = document.getElementById("div_dates");
    if(div_dates) arrOfDates = div_dates.innerHTML.split("***");
}
function loadDates(slct)
{
    var slct_date = document.getElementById("slct_date");
    while(slct_date.length > 1) slct_date.remove(1);
            
    if(slct.selectedIndex != 0) PushDates(slct.selectedIndex, slct_date)
}
function PushDates(index, slct_date)
{
    var arr = arrOfDates[index - 1].split("@");
    for(var i = 0; i < arr.length; i++)
    {
        var o = new Option(arr[i].split(",")[1], arr[i].split(",")[0], false, false);
        slct_date.options[slct_date.options.length] = o;
    }
}


// --------------- Интерактив тётак -----------------
function Smile(id)
{
    var div = document.getElementById(id);
    if(div) div.style.visibility = "visible";
}
function NotSmile(id)
{
    var div = document.getElementById(id);
    if(div) div.style.visibility = "hidden";
}