﻿// -------------------------------------------------------------
// DATING PROJECT
// AUTHOR: ThinkWeb
// -------------------------------------------------------------


// USERNAME FUNCTIONS
// -------------------------------------------------------------
function register_checkUsername(inner){
    var username = document.getElementById('username').value;
    var messageSpan = document.getElementById('status_username');
    messageSpan.innerHTML = "";
    var regex_username  = /^([a-zA-Z0-9_\-]{4,18})$/;

    if(username.length == 0){return false;}

    if(username.length < 4){
        messageSpan.innerHTML = 'Потребителското име е по-късо от 4 символа!';
        messageSpan.className = 'form_error';
        return false;
    }

    if(username.length > 20){
        messageSpan.innerHTML = 'Потребителското име е по-дълго от 18 символа!';
        messageSpan.className = 'form_error';
        return false;
    }

    if(!regex_username.test(username)){
        messageSpan.innerHTML = 'Потребителското име съдържа непозволени символи!';
        messageSpan.className = 'form_error';
        return false;
    }
    if(!inner){
        call('ajax/register.aspx?action=checkUsername&username='+username,'register_usernameResponse','');
        document.getElementById('loading_username').style.display= "inline";
    }
    else {
    	messageSpan.innerHTML = '';
        messageSpan.className = 'form_ok';
    }
    return true;
}

function register_usernameResponse(data){
    document.getElementById('loading_username').style.display= "none";
    var root = data.childNodes;
    var messageSpan = document.getElementById('status_username');
    for(i=0;i<root.length;i++){
        if(root[i].nodeName.toLowerCase()=='data'){
            for(j=0;j<root[i].childNodes.length;j++){
                if(root[i].childNodes[j].nodeName.toLowerCase()=='username_exists'){
                    var exists = root[i].childNodes[j].firstChild.nodeValue;
                    if(exists != "false"){
                        messageSpan.innerHTML = 'Потребителското име е заето!';
                        messageSpan.className = 'form_error';
                    }
                    else {
                        messageSpan.innerHTML = 'Потребителското име е свободно!';
                        messageSpan.className = 'form_ok';
                    }
                }
            }
        }
    }
}


// EMAIL FUNCTIONS
// -------------------------------------------------------------
function register_checkEmail(inner){
    var email = document.getElementById('email').value;
    var messageSpan = document.getElementById('status_email');
    messageSpan.innerHTML = "";
    var regex_email  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-\.])+)\.([a-zA-Z0-9]{2,6})+$/;

    if(!regex_email.test(email)){
        messageSpan.innerHTML = 'Въведете валиден e-mail адрес!';
        messageSpan.className = 'form_error';
        return;
    }
    if(!inner){
        call('ajax/register.aspx?action=checkEmail&email='+email,'register_emailResponse','');
        document.getElementById('loading_email').style.display= "inline";
    }
    else {
	    	messageSpan.innerHTML = '';
	        messageSpan.className = 'form_ok';
    }
    return true;
}

function register_emailResponse(data){
    document.getElementById('loading_email').style.display= "none";
    var root = data.childNodes;
    var messageSpan = document.getElementById('status_email');
    for(i=0;i<root.length;i++){
        if(root[i].nodeName.toLowerCase()=='data'){
            for(j=0;j<root[i].childNodes.length;j++){
                if(root[i].childNodes[j].nodeName.toLowerCase()=='email_exists'){
                    var exists = root[i].childNodes[j].firstChild.nodeValue;
                    if(exists != "false"){
                        messageSpan.innerHTML = 'E-mail адресът е вече използван от друг потребител!';
                        messageSpan.className = 'form_error';
                        return false;
                    }
                    else {
                        messageSpan.innerHTML = '';
                        messageSpan.className = 'form_ok';
                        return true;
                    }
                }
            }
        }
    }
}


// PASSWORD FUNCTION
// ----------------------------------------------------------------
function register_checkPassword(){
    var password = document.getElementById('password').value;
    var password_repeat = document.getElementById('password_repeat').value;
    var messageSpan = document.getElementById('status_password');
    messageSpan.innerHTML = "";
    var regex_password  = /^([a-zA-Z0-9_\-\.@!\*,]){6,18}$/;

    if(password.length == 0){return false;}

    if(password.length < 6){
        messageSpan.innerHTML = 'Паролата е по-къса от 6 символа!';
        messageSpan.className = 'form_error';
        return false;
    }

    if(password.length > 18){
        messageSpan.innerHTML = 'Паролата е по-дълга от 18 символа!';
        messageSpan.className = 'form_error';
        return false;
    }

    if(!regex_password.test(password)){
        messageSpan.innerHTML = 'Паролата съдържа непозволени символи!';
        messageSpan.className = 'form_error';
        return false;
    }

    if(password_repeat.length != 0 && password_repeat != password){
        messageSpan.innerHTML = 'Паролите не съвпадат!';
        messageSpan.className = 'form_error';
        return false;
    }

    if(password_repeat.length != 0){
        messageSpan.innerHTML = '';
        messageSpan.className = 'form_ok';
        return true;
    }
}