﻿function VerifyField(id, type)
{
    var result = false;
    var input = $G.Get.ById(id);
    switch(type)
    {
        case 0:
            result = (input.value != "" ? true : false);
        break;
    }
    return result;
}

function VerifyForm(ids)
{
    var result = true;
    var msg = "";
    for(var i = 0; i < ids.length; i++)
    {
        var input = $G.Get.ById(ids[i].field);
        if (VerifyField(ids[i].field, 0) == false)
        {
            result = false;
            $G.SetStyle("border-color", "#CC0000", input);
        }
        else
        {
            $G.SetStyle("border-color", "#666666", input);
        }
    }
    if (result == false)
        SysAlert("Не заполнены некоторые обязательные поля.");
    else
    {
        for(var i = 0; i < ids.length; i++)
        {
            var input = $G.Get.ById(ids[i].field);
            if (CheckFormat(ids[i].field) == false)
            {
                result = false;
                $G.SetStyle("border-color", "#CC0000", input);
                msg = "Поле '" + ids[i].name + "' имеет неправильный формат.";
                SysAlert(msg);
                break;
            }
            else
                $G.SetStyle("border-color", "#666666", input);
        }
    }
    return result;
}

function CheckFormat(id)
{
    var result = true;
    var input = $G.Get.ById(id);
    switch(id)
    {
        case "mail":
            if (input.value.indexOf("@") == -1 || input.value.indexOf(".") == -1)
                result = false;
        break;
    }
    return result;
}

function GetSumm()
{
    var result = 0;
    var items = document.getElementsByTagName("input");
    for(var i = 0; i < items.length; i++)
    {
        if (items[i].type == "checkbox")
        {
            if (items[i].checked)
            {
                var index = items[i].id.indexOf("chb_");
                if (index > -1)
                {
                    var pid = "val_" + items[i].id.substring(4, (items[i].id.length - 0));  
                    
                    var s = 0;
                    try
                    {
                        s = parseFloat($G.Get.ById(pid).innerHTML)
                    }
                    catch(err)
                    {
                        s = -1;
                    }
                    if (s > 0)
                    {
                        result += s;                
                    }
                }
            }
        }
    }
    return result;
}

function SetTotal()
{
    var summ = GetSumm();
    $G.Get.ById("val_total").innerHTML = summ.toString() + "&nbsp;руб.";
    $G.Get.ById("val_total_1").innerHTML = summ.toString() + "&nbsp;руб.";
}
