function signup() {
	email = document.signupform.email.value
	if (email == "") {
		$("verification").update("<br />" + LANG_ENTER_EMAIL);
		$("email").className="red";
		return false;
	}
	$("email").className = "";
	username = document.signupform.username.value
	if (username == "") {
		$("verification").update("<br />" + LANG_ENTER_USERNAME);
		$("username").className="red";
		return false;
	}
	if (username.length < 3) {
		$("verification").update("<br/>" + LANG_USERNAME_SHORT);
		$("username").className="red";
		return false;
	}
	if (username.length > 24) {
		$("verification").update("<br/>" + LANG_USERNAME_LONG);
		$("username").className="red";
		return false;
	}
	$("username").className = "";
	password1 = document.signupform.password1.value
	if (password1 == "") {
		$("verification").update("<br />" + LANG_ENTER_PASSWORD);
		$("password1").className="red";
		return false;
	}
	if (password1.length < 6) {
		$("verification").update("<br />" + LANG_PASSWORD_SHORT);
		$("password1").className="red";
		return false;
	}
	$("password1").className = "";
	password2 = document.signupform.password2.value
	if (password2 == "") {
		$("verification").update("<br />" + LANG_PASSWORD_TWICE);
		$("password2").className="red";
		return false;
	}
	if ($F("password1") != $F("password2")) {
		$("verification").update("<br />" + LANG_PASSWORD_DIFFER);
		$("password1").className="red";
		$("password2").className="red";
		return false;	
	}
	$("password2").className = "";
	var sexevalue = "";
	for (i=0; i<document.signupform.sexe.length; i++) {
		if (document.signupform.sexe[i].checked==true)
			sexevalue=document.signupform.sexe[i].value;
	}
	if (sexevalue == "") {
		$("verification").update("<br />" + LANG_ENTER_GENDER);
		return false;
	}
	var year = document.signupform.year.value 
	if (year == "2009") {
		$("verification").update("<br />" + LANG_INVALID_BIRTHDAY);
		return false;
	}
	new Ajax.Request("?ajax=1", {
		 parameters: {
			 callback: "SignupForm::js_signup",
			 email: $F("email"),
			 password: $F("password1"),
			 username: $F("username"),
			 sexe: sexevalue,
			 day: $F("day"), month: $F("month"), year: $F("year")
		 },
		 onSuccess: function(xhr) {
			 if (xhr.responseText == "ok") {
				 window.location = "?page=success";
			 }
			 else {
				var parts = xhr.responseText.split(":", 2);
				if (parts.length == 1) {
		 			$("verification").update("<br/>" + parts[0]);
				}
				else {
					if ($(parts[0]))
						$(parts[0]).className = "red";
		 			$("verification").update("<br/>" + parts[1]);
				}
			 }
		 }
    	});
	return false;
}

function login() {
	email = $F("email");
	if (email == "") {
		$("verification").update("<br />" + LANG_ENTER_EMAIL);
		$("email").className="red";
		return false;
	}
	password1 = $F("password1");
	if (password1 == "") {
		$("verification").update("<br />" + LANG_ENTER_PASSWORD);
		$("password1").className="red";
		return false;
	}
	new Ajax.Request("?ajax=1", {
					 parameters: {
						 callback: "LoginForm::js_login",
						 email: $F("email"),
						 password: $F("password1")
					 },
					 onSuccess: function(xhr) {
						 if (xhr.responseText.substring(0,2) == "ok") {
							 window.location = xhr.responseText.substring(3);
						 }
						else if (xhr.responseText == "username") {
							window.location = "?page=username";
						}
						else if (xhr.responseText == "activation") {
							 $("verification").update("<br />" + LANG_ACCOUNT_NOT_ACTIVATED);
						}
						 else {
							 $("verification").update("<br />" + LANG_PASSWORD_INCORRECT);
						 }
					 }
				 }
		);
	return false;
}

function logout() {
	new Ajax.Request("?ajax=1", {
					 parameters: {
						 callback: "LoginForm::js_logout"
					 },
					 onSuccess: function(xhr) {
					 	window.location = "?page=home";
					 }
	});
	return false;
}

/*function forgotpassword() {
	email = $F("email");
	if (email == "") {
		$("verification").update("<br />The email address you supplied is either invalid or unknown.");
		$("email").className="red";
		return false;
	}
	new Ajax.Request("?ajax=1", {
					 parameters: {
						 callback: "ChangeForm::js_forgotpassword"
					 },
					 onSuccess: function(xhr) {
					 	$("verification").update("<br />Please follow the instructions that has been send to your email address.");
					 }
	});
	return false;
}*/

function newCookie(name,value,days) {
 if (days) {
   var date = new Date();
   date.setTime(date.getTime()+(days*24*60*60*1000));
   var expires = "; expires="+date.toGMTString();
 }
 else
   var expires = "";
 document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name) {
   var nameSG = name + "=";
   var nuller = '';
  if (document.cookie.indexOf(nameSG) == -1)
    return nuller;

   var ca = document.cookie.split(';');
  for(var i=0; i<ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0)==' ') c = c.substring(1,c.length);
  if (c.indexOf(nameSG) == 0) return c.substring(nameSG.length,c.length); }
    return null; }

function delCookies() {
  eraseCookie("Email");
  eraseCookie("Password");
  eraseCookie("Remember");
}
function eraseCookie(name) {
  newCookie(name,"",0); 
}

function toMem(a) {
    newCookie('Email', $F("email"), 365);
    newCookie('Password', $F("password1"), 365);
    newCookie('Remember', "checked", 365);
}

function remCookie() {
	if ($("email"))
		$("email").value = readCookie("Email");
	if ($("password1"))
		$("password1").value = readCookie("Password");
	if ($("remember"))
		$("remember").checked = readCookie("Remember");
}

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

addLoadEvent(function() {
  remCookie();
});

function register_username() {
	new Ajax.Request("?ajax=1", {
		parameters: {
			callback: "UsernameRequired::js_username",
			username: $F("username")
		}, 
		onSuccess: function(xhr) {
			rsp = xhr.responseText;
			if (rsp == "ok")
				window.location = "?page=success";
			else
				$("verification").innerHTML = "<br/>" +rsp;
		}
	});
	return false;
}
