// JavaScript Document

valid_form = true;
	
function ShowElement(elem){
    elem.style.visibility = 'visible';
}

function HideElement(elem){
    elem.style.visibility = 'hidden';
}

function GetElem(name){
    return document.getElementById(name);
}

function isEmptyDamnit(elem){
    if(elem.value.length == 0){
        return false;
    }
    else{
        return true;
    }
}
	
function isEmpty(elem){
    if(elem.value.length == 0){
        valid_form = false;
        ShowElement(document.getElementById(elem.id + '_err'));
        return false;
    }
    else{
        HideElement(document.getElementById(elem.id + '_err'));
        return true;
    }
}

function isChecked(name){
    return GetElem(name).checked;
}

function FilialValidate(){
        isValid = true;
        if (!isChecked('filial_yes') && !isChecked('filial_no'))
                isValid = false;

        return isValid;
}

function FilialFormValidate(sender){
    if (sender == 'yes'){
        GetElem('filial_no').checked = !GetElem('filial_yes').checked;
    }

    if (sender == 'no'){
        GetElem('filial_yes').checked = !GetElem('filial_no').checked;
    }

    if (!FilialValidate()){
        ShowElement(GetElem('filial_err'));
    }
    else{
        HideElement(GetElem('filial_err'));
    }
}

function SourceValidate(){
    isValid = true;
    if(!isChecked('source_internet') && !isChecked('source_folks') && !isChecked('source_phonebook')
            && !isChecked('source_market') && !isChecked('source_magazine') && !isChecked('source_exhibition')){
        isValid = false;
    }

    return isValid;
}

function SourceFormValidate(){
    if(!SourceValidate()){
        ShowElement(GetElem('source_err'));
    }
    else{
        HideElement(GetElem('source_err'));
    }
}

function ProfilValidate(){
    isValid = true;
    if(!isChecked('profil_shop') && !isChecked('profil_shopnetwork') && !isChecked('profil_partautoservice')
        && !isChecked('profil_uniautoservice') && !isChecked('profil_internetshop') && !isChecked('profil_tuning')
        && !isChecked('profil_opt') && !isEmptyDamnit(GetElem('profil_other'))){
        
        isValid = false;
    }

    return isValid;
}

function ProfilFormValidate(){
    if (!ProfilValidate()){
        ShowElement(GetElem('profil_err'));
    }
    else{
        HideElement(GetElem('profil_err'));
    }

}

function SpecValidate(){
    isValid = true;
    if (!isChecked('spec_car') && !isChecked('spec_truck')){
        isValid = false;
    }

    return isValid;
}

function SpecFormValidate(){
    if (!SpecValidate()){
        ShowElement(GetElem('spec_err'));
    }
    else{
        HideElement(GetElem('spec_err'));
    }
}

function HeadValidate(){
    isValid = true;
    if (!isChecked('head_otech') && !isChecked('head_evro') && !isChecked('head_japan')
        && !isChecked('head_usa') && !isChecked('head_korea')){
        isValid = false;
    }

    return isValid;
}

function HeadFormValidate(){
    if (!HeadValidate()){
        ShowElement(GetElem('head_err'));
    }
    else{
        HideElement(GetElem('head_err'));
    }
}

function RegisteredValidate(){
    isValid = true;
    if (!isChecked('registered_yes') && !isChecked('registered_no')){
        isValid = false;
    }
    return isValid;
}

function RegisteredFormValidate(sender){
    if (sender == 'yes'){
        GetElem('registered_no').checked = !GetElem('registered_yes').checked;
    }

    if (sender == 'no'){
        GetElem('registered_yes').checked = !GetElem('registered_no').checked;
    }
            
    if(!isChecked('registered_yes') && !isChecked('registered_no')){
        ShowElement(GetElem('registered_err'));
    }
    else{
        HideElement(GetElem('registered_err'));
    }
}

var firsterror;

function CheckElement(name){
    if (isEmpty(GetElem(name)) == false)
    {
        ShowElement(GetElem(name + '_err'));
        if (firsterror == null) firsterror = GetElem(name);
        return false;
    }
    else
    {
        HideElement(GetElem(name + '_err'));
        return true;
    }
}

function validate_validator()
{
    value = GetElem("validator_pic").value;
    text = GetElem("validator_input").value;

    arr = new Array("", "algae","lamps","steam","nouns","lyons", "fewer", "masts", "vance", "twigs", "blend");

    if (arr[value].toUpperCase() != text.toUpperCase())
        return false;
    else
        return true;
}

function validate_form()
{
    var isValid = true;
    firsterror = null;

    re = new RegExp("[А-Яа-я]");

    if (GetElem('fio').value.match(re) == null)
    {
        isValid = false;
        if (firsterror == null) firsterror = GetElem('fio');
        alert("ФИО должны содержать только русские буквы.");
        return false;
    }

    if (!validate_validator())
    {
        isValid = false;
        if (firsterror == null) firsterror = GetElem('validator_input');
        alert("Введенные символы не соответствуют символам на картинке");
        return false;
    }

    if (!CheckElement('org_name')) isValid = false;
    if (!CheckElement('fio')) isValid = false;
    //if (!CheckElement('position')) isValid = false;
    //if (!CheckElement('address')) isValid = false;
    //if (!CheckElement('city')) isValid = false;
    if (!CheckElement('email')) isValid = false;
    //if (!CheckElement('telfax')) isValid = false;
    //if (!CheckElement('www')) isValid = false;
    //if (!CheckElement('ur_address')) isValid = false;
    //if (!CheckElement('faq_address')) isValid = false;
    //if (!CheckElement('inn')) isValid = false;
    //if (!CheckElement('kpp')) isValid = false;
    //if (!CheckElement('rs')) isValid = false;
    //if (!CheckElement('bank')) isValid = false;
    //if (!CheckElement('ks')) isValid = false;
    //if (!CheckElement('bik')) isValid = false;
    //if (!CheckElement('okpo')) isValid = false;
    //if (!CheckElement('okonh')) isValid = false;
    //if (!CheckElement('okved')) isValid = false;

    /*if (!FilialValidate())
    {
            isValid = false;
            if (firsterror == null) firsterror = GetElem('filial_yes');
    }*/

    if (!SourceValidate())
    {
        isValid = false;
        if (firsterror == null) firsterror = GetElem('filial_yes');
    }

    if (!ProfilValidate())
    {
        isValid = false;
        if (firsterror == null) firsterror = GetElem('filial_yes');
    }

    if (!SpecValidate())
    {
        isValid = false;
        if (firsterror == null) firsterror = GetElem('filial_yes');
    }

    if (!HeadValidate())
    {
        isValid = false;
        if (firsterror == null) firsterror = GetElem('head_otech');
    }

    /*if (!RegisteredValidate())
    {
        isValid = false;
        if (firsterror == null) firsterror = GetElem('registered_yes');
    }*/

    return isValid;
}

function Proceed()
{
        if (validate_form())
        {
                return true;
        }

        firsterror.focus();
        window.scrollBy(0, -30);

        alert('Введите данные отмеченные *.');

        return false;
}
