//Обновляет капчу при нажатии на соответствующую кнопку
function regen()
{
    var buttonRe = new Image();
    buttonRe.src = "/image.html";
    document.getElementById("antispam").src = buttonRe.src + '?' + (new Date()).getTime();
}
//Отчищает поле от текста. Вызывается в форме логирования при наведении фокуса на поле.
function input_clear(obj,text_clr)
{
    if (obj.value == text_clr)
    {
        obj.value = "";
    }
}
//Проверка заполнения формы логирования. Исключает ситуации с пустыми и заполненными стандартно полями
function sendquicklogin(obj)
{
    if (obj.login.value == "Login..." || obj.login.value == "" || obj.login.value == " " || obj.pass.value == "Password..." || obj.pass.value == "" || obj.pass.value == " ")
    {
        return false;
    }
}
//Прячет поля, необходимые для заполнения при выбранном - "Предложения по добавлению\изменению канала(ов)"
function changesubject(obj)
{
     if (obj.value != "1")
     {
         document.getElementById('channel_block').style.display = "none";
     }
     else
     {
         document.getElementById('channel_block').style.display = "block";
     }
}
//Изменение цвета поля и текста красным. Используется в alertviewer (см ниже)
function changecolor_elalert(obj)
{
//    obj.style.color = "#9c2626";
    obj.style.borderColor = "#9c2626";
}
//Изменение цвета поля и текста с красного на стандартный. Используется в alertclear (см ниже)
function clearcolor_elalert(obj)
{
//    obj.style.color = "#141e35";
    obj.style.borderColor = "#647185";
}
//Если произошла ошибка..
function alertviewer(name_element, text)
{
    h2_element = document.getElementById("span_err_"+name_element);
    input_element = document.getElementById("input_"+name_element);
    changecolor_elalert(h2_element);
    changecolor_elalert(input_element);
    h2_element.innerHTML = text;
}
//Если ошибка исправленна...
function alertclear(name_element)
{
    h2_element = document.getElementById("span_err_"+name_element);
    input_element = document.getElementById("input_"+name_element);
    clearcolor_elalert(h2_element);
    clearcolor_elalert(input_element);
    h2_element.innerHTML = "";
}
//Проверка на пустоту обязательного поля
function inputisnull(input, text)
{
    if (input.value.length == 0)
    {
        alertviewer(input.name, text)
        return true;
    }
    else
    {
        alertclear(input.name);
    }
    return false;
}
//Проверка полей формы перед отправкой
function checkform()
{
    form = document.msg;
    var error = "";
    //Проверка поля code на пустоту
    if (inputisnull(form.code, errormess))  error = 'code';

    //Проверка поля description на пустоту
    if (inputisnull(form.description, errormess))  error = 'description';

    //если выбрано - "Предложения по добавлению\изменению канала(ов)"
    if (form.subject.value == "1")
    {
        // необходимо его обязательные поля также проверить
        if (inputisnull(form.url_site, errormess))
        {
            error = 'url_site';
        }
    }

    //Проверка поля name на пустоту
    if (inputisnull(form.name, errormess))  error = 'name';

    //Проверка поля email на пустоту
    if (inputisnull(form.email, errormess))
    {
        error = 'email';
    }
    else
    {
    //Если поле email не пустое , то также необходимо проверить на соответстие шаблону мыла
        if (!check_mail(form.email.value))
        {

            alertviewer(form.email.name, errormess_email_wrong);
            error = 'email';
        }
        else
        {
            alertclear(form.email.name);
        }
    }

    if (error.length != 0)
    {
        //alert(document.getElementById('message'));
        if (document.getElementById('message') != null)
        {
            document.getElementById('message').className = 'notdisplayed';
        }
        document.getElementById('input_'+error).focus();
        return false;
    }
    return true;
}
//Проверка еmail по шаблону
function check_mail(mail){
    aft_dog = nxt_dog = dom = AtSignValid = DotValid = 0;
    for (i = 0;  i < mail.length;  i++){
        if (mail.charAt(i) == "@")
            AtSignValid ++;
        else if (mail.charAt(i) == "." && AtSignValid == 1)
        {
            DotValid ++;
            dom = 0;
        }
        else if (AtSignValid == 0)
            aft_dog ++;
        else if ((AtSignValid == 1) && (DotValid == 0))
            nxt_dog ++;
        else if ((DotValid > 0) && (AtSignValid == 1))
            dom ++;
    }
    if((AtSignValid == 1) && (DotValid > 0) && (aft_dog > 0) && (nxt_dog > 0) && (dom>1) && (dom<7)) return true
    else return false
}