/**
 * Скрипты для форм регистрации
 */

// поля, на которые послана проверка
var signup_check_field = {};
function AjaxCheckField(link, form_name, form_field)
{
    // проверка на поле уже ушла
    if (signup_check_field[form_field])
        return false;

    var form = document.getElementById(form_name);
    var value = form[form_field].value;

    if (form_name == 'signup')
        var errors = signup_check(form, true);
    else
        var errors = signup_fast_check(form, true);

    if (errors[form_field])
    {
        var div = document.getElementById('form_check_'+form_field);
        div.innerHTML = errors[form_field];
        FieldChecked(form_name, form_field, false);
        return false;
    }
    else
    {
        signup_check_field[form_field] = true;

        new Ajax.Updater('form_check_'+form_field, link+form_name+'/',
                            {
                                method: 'post',
                                parameters: {value: value},
                                asynchronous:false,
                                evalScripts:true
                            });
    }
}

function FieldChecked(form_id, element_id, result)
{
    var form = document.getElementById(form_id);
    if (result)
    {
        form[element_id].className = 'text InputCheckedTrue';
        form[element_id].checked  = true;
    }
    else
    {
        form[element_id].className = 'text InputCheckedFalse';
        form[element_id].checked  = false;

    }
    signup_check_field[element_id] = false;
}

function FieldCheckedSubmit(form_id, element_id, result)
{
    var form = document.getElementById(form_id);
    if (result)
    {
        form[element_id].className = 'text InputCheckedTrue';
        form.submit();
    }
    else
    {
        form[element_id].className = 'text InputCheckedFalse';
    }
    signup_check_field[element_id] = false;
}

function AjaxCheckFromSubmit()
{
    var result = true;
    for (var i = 0; i < $('signup').elements.length; i++)
    {
        if ($('signup').elements[i].onblur)
        {
            alert(i);
            $('signup').elements[i].onblur();
            if ($('signup').elements[i].checked == false)
            {
                result = false;
            }
        }
    }
    
    return result;
}


function FiledValue(form_id, elemenet_id, value)
{
    var form = document.getElementById(form_id);
    form[elemenet_id].value = value;

    FieldChecked(form_id, elemenet_id, 1);
}

/**
* Получение регионов по id страны
*/
function getRegions(select)
{
    var country_id = select.value;
    //select_text = select.options[select.selectedIndex].text;
    new Ajax.Updater("td_region", "/profile/ajax/load/region/", {
            method: 'get',
            asynchronous: true,
            parameters: 'id=' + escape(country_id),
            evalScripts:true,
            onSuccess: function(transport) {
                document.getElementById('region_id').disabled = false;
                document.getElementById('city_id').options.length=0;
                document.getElementById('city_id').disabled = true;
                document.getElementById('district_id').options.length=0;
                document.getElementById('district_id').disabled = true;
                $('tr_district').hide();
            }
    });
}

function getCities(select)
{
    var region_id = select.value;
    new Ajax.Updater("td_city", "/profile/ajax/load/city/", {
            method: 'get',
            asynchronous: true,
            parameters: 'id=' + escape(region_id),
            evalScripts:true,
            onSuccess: function(transport) {
                document.getElementById('city_id').disabled = false;
                document.getElementById('district_id').options.length=0;
                document.getElementById('district_id').disabled = true;
                $('tr_district').hide();
            }
    });    
}

/**
* получение районов города
*/
function getDistricts(select)
{
    var city_id = select.value;
    new Ajax.Updater("td_district", "/profile/ajax/load/district/", {
            method: 'get',
            asynchronous: true,
            parameters: 'id=' + escape(city_id),
            evalScripts:true,
            onSuccess: function(transport) {
                document.getElementById('district_id').disabled = false;
            }
    });    
}

function resetPwdFormSync (radio)
{
    var turnOn;
    var trunOff;

    if (radio.checked && radio.value == "email" || !radio.checked && radio.value != "email")
    {
        turnOn  = $("reset_pwd_form_email");
        turnOff = $("reset_pwd_form_login");
    }
    else
    {
        turnOn  = $("reset_pwd_form_login");
        turnOff = $("reset_pwd_form_email");
    }

    turnOn.disabled     = false;
    turnOff.disabled    = true;
    turnOff.value       = "";
}
