function Admin(){}


// verify info from login form (if username is email format, etc)
Admin.formCheckLogin = function(form)
{
	var username = form.elements["nfo[user_login]"].value;
	var pass = form.elements["nfo[user_password]"].value;

	if(username.length < 4)
	{
	        alert("Username must be 4-20 characters long.");
	        return false;
	}
	if(!username.match(/^[a-zA-Z\._\-0-9]{1,}@[a-z0-9\-_\.]{1,}\.[a-z]{2,}$/))
	{
		alert("Username is not an e-mail format.");
                return false;
	}

	if(pass.length < 4 || pass.length > 16)
	{
		alert("Password must be 4-16 characters long.");
		return false;
	}
	form.elements["nfo[hash_pass]"].value = hex_md5(pass);
	form.elements["nfo[user_password]"].value = "";

	return true;
}

Admin.capsDetect = function(e, document)
{
    if(!e)
	    e = window.event;

    if(!e)
	    return;

    //what (case sensitive in good browsers) key was pressed
    var theKey = e.which ? e.which : ( e.keyCode ? e.keyCode : ( e.charCode ? e.charCode : 0 ) );

    //was the shift key was pressed
    var theShift = e.shiftKey || ( e.modifiers && ( e.modifiers & 4 ) ); //bitWise AND

    //if upper case, check if shift is not pressed. if lower case, check if shift is pressed
    var div_name = document.getElementById('CapsLock');
    if (( theKey > 64 && theKey < 91 && !theShift ) || ( theKey > 96 && theKey < 123 && theShift ))
    {
    	    div_name.style.display = 'block';
    }
    else
    {
	    div_name.style.display = 'none';
    }
}



Admin.formCheckCreateAccount = function(form)
{
	var login = form.elements["nfo[user_login]"].value;
	var pass1 = form.elements["nfo[user_password]"].value;
	var pass2 = form.elements["nfo[user_password2]"].value;
	var fname = form.elements["nfo[user_fname]"].value;
	var lname = form.elements["nfo[user_lname]"].value;

	if(login.length < 4)
        {
		alert("Accont username is invalid (at least 4 chars).");
		return false;
	}
	if(!login.match(/^[a-zA-Z\._\-0-9]{1,}@[a-z0-9\-_\.]{1,}\.[a-z]{2,}$/))
	{
		alert("Username is not an e-mail format.");
		return false;
	}
	if(pass1.length < 4 || pass1.length > 16)
	{
		alert("Password must be 4-16 characters long.");
		return false;
	}
	if(pass1 != pass2)
	{
		alert("Password do not match.");
		return false;
	}
        if(fname.length < 1 || fname.length > 64)
        {
                alert("Please choose a valid first name.");
                return false;
        }
	if(lname.length < 1 || lname.length > 64)
	{
	        alert("Please choose a valid last name.");
	        return false;
	}

	form.elements["nfo[user_hash_pass1]"].value = hex_md5(pass1);
	form.elements["nfo[user_hash_pass2]"].value = hex_md5(pass2);
	form.elements["nfo[user_password]"].value = "";
	form.elements["nfo[user_password2]"].value = "";

	return true;
}

Admin.formCheckModifyPassword = function(form)
{
	var actual_pass = form.elements["nfo[user_actual_pass]"].value;
	var new_pass = form.elements["nfo[user_new_password]"].value;
	var new_pass2 = form.elements["nfo[user_new_password2]"].value;

	if(actual_pass.length < 4 || actual_pass.length > 16)
	{
	        alert("Actual password must be 4-16 characters long.");
	        return false;
	}

	if(new_pass.length < 4 || new_pass.length > 16)
	{
		alert("New password must be 4-16 characters long.");
		return false;
	}
	if(new_pass != new_pass2)
	{
	        alert("Passwords does not match.");
	        return false;
	}

	form.elements["nfo[user_actual_hash]"].value = hex_md5(actual_pass);
	form.elements["nfo[user_hash_pass1]"].value = hex_md5(new_pass);
        form.elements["nfo[user_hash_pass2]"].value = hex_md5(new_pass2);

	form.elements["nfo[user_actual_pass]"].value = "";
	form.elements["nfo[user_new_password]"].value = "";
	form.elements["nfo[user_new_password2]"].value = "";

	return true;
}


Admin.formCheckAdminModifyAccount = function(form)
{
        var status = form.elements["nfo[user_status]"].value;
        var status_actual = form.elements["nfo[user_status_actual]"].value;
        var message = form.elements["nfo[user_message]"].value;

        if(status != status_actual && message == "")
        {
		alert("Please write a message to user.");
		return false;
	}
	return true;
}

function displayTreeNode(evt) {
	var triggerEvent = (evt) ? evt : window.event;
	var triggerElement = (triggerEvent.target) ? triggerEvent.target : triggerEvent.srcElement;

	alert(triggerElement.parentNode.childNodes.length);

	for (var i = 0; i < triggerElement.parentNode.childNodes.length; i++) {
		if (triggerElement.parentNode.childNodes[i].style.display == 'block') {
			triggerElement.parentNode.childNodes[i].style.display = 'none';
		} else {
			triggerElement.parentNode.childNodes[i].style.display = 'block';
		}
	}

//	for (var i = 0; i < triggerElement.childNodes.length; i++) {
//		if (triggerElement.childNodes[i].style.display == 'block') {
//			triggerElement.childNodes[i].style.display = 'none';
//		} else {
//			triggerElement.childNodes[i].style.display = 'block'
//		}
//	}
}
