function error(id,message){
    $(id+"_error").html(message);
    $(id).addClass("reg_error");
}

function unError(id){
    $(id+"_error").html("");
    $(id).removeClass("reg_error");    
}

function checkFullname(blur){
    var v_tmp=$("#fullname").val();
    
    v_tmp = v_tmp.replace(/^\s+|\s+$/g, '').replace(/\s+/g, ' ');
    
    if (blur && (v_tmp.length < 3 || v_tmp.length > 25))
    {
        error('#fullname','Недопустимое количество символов');
        return false;
    }
    
    var decceptPattern = /[^a-zA-Zа-яА-ЯёЁ\d\-\_\ ]/;
    
    if (decceptPattern.test(v_tmp))
    {
        error('#fullname','Присутствуют недопустимые символы');
        return false;
    }
    
    var latinPattern = /[a-zA-Z]/;
    var russPattern = /[а-яА-ЯёЁ]/;
    
    if (latinPattern.test(v_tmp) && russPattern.test(v_tmp))
    {
        error('#fullname','Одновременно присутствуют латинские и русские буквы');
        return false;
    }
    
    unError("#fullname");
    return true;
}
function checkPassword(blur){
    var v_tmp=$("#password").val();
    if (blur){
        if (v_tmp.length<3){
            error("#password","Недопустимое количество символов");
            $("#repassword").attr("disabled","disabled");
            return false;
          
       //     alert(v_password.length); 
        }else{
            $("#repassword").attr("disabled","");         
            unError("#password");
            return true;
        }         
    }else{
        if (v_tmp.length>3){
            $("#repassword").attr("disabled","");        
            unError("#password");
        }else{
            $("#repassword").attr("disabled","disabled");
        
        }        
    }

      
}

function checkRePassword(blur){
    var v_repassword=$("#repassword").val();
    var v_password=$("#password").val();
    if (blur){
        if (v_password.length!=v_repassword.length){
            error("#repassword","Длины паролей не совпадают");
            return false
        }else{
            if (v_password!=v_repassword){
                error("#repassword","Пароли несовпадают");
                return false
            }else{   
                unError("#repassword");
                return true;
            }
        }        
    }else{

        if (v_repassword.length>v_password.length){
            error("#repassword","Длина больше исходного пароля");
        }else{
            unError("#repassword");
        }
        if (v_password.length==v_repassword.length){
            if (v_password!=v_repassword){
                error("#repassword","Пароли не совпадают");
            }    
        }                  
    }
}

function checkMail(blur){
    var v_tmp=$("#mail").val();
    var reg = /\w+@\w+.\w/     
    if (blur){
        if (v_tmp.length==''){
            error("#mail","Нужно ввести почтовый ящик");
            return false;
          
       //     alert(v_password.length); 
        }else{
            if (!reg.exec(v_tmp)) {
                error('#mail','Проверьте e-mail - он некорректен.'); 
                return false; 
            }else{       
                unError("#mail");
                return true;
            }
        }         
    }   
}

function checkKey(blur){
    var v_tmp=$("#key").val();
    if (blur){
        if (v_tmp.length>4 && v_tmp.length < 7){
            unError("#key");
            return true;            
        }else{
            error("#key","Недопустимое количество символов");
            return false;
        }        
    }else{
        if (v_tmp.length>5 || v_tmp.length < 6){
            unError("#key");
        }
        if (v_tmp.length>6){
            error("#key","Недопустимое количество символов");
        }
    }    
}

var send = false;

function rf_submit(){
    
    var fn=checkFullname(true);
    var pwd=checkPassword(true);
    var repwd=checkRePassword(true);
    var mail=checkMail(true);
    var key=checkKey(true);
    var tmp = fn && pwd && repwd && mail && key;
    if (send && tmp) return true;
    if (tmp){
        $("#r_submit").attr("disabled","disabled").val("проверка данных..");
        $.post("http://www.povarenok.ru/register/check/",
          { fullname: $("#fullname").val(), mail: $("#mail").val() },
          function(data){
            $("#r_submit").attr("disabled","").val("Зарегистрировать");
            if (data=="0") {
               send=true;
               $("#register").submit();
            }
            if (data=="1"){
                error("#fullname","Такое имя уже кто-то занял, попробуйте другое");
                $("#fullname").focus();
                return false;
            }
            if (data=="2"){
                error("#mail","E-mail уже существует на сайте, попробуйте другой");
                $("#mail").focus();
                return false;
            }            
          }
        );
        return false;
    }else {
        return false;
    }
}
