function Login() {
	///
	this.isSending = false;
    ///
	this.initialize = function(){
		///this.cookie = new CJL_CookieUtil("session_cookie", 1440);
		///alert(this.cookie.getSubValue("email"));
    }
	this.showCreateAccount = function(){
		Modalbox.show("content/Account.html?" + Math.random(), {title: "Create Account", width: 500} );
	}
	this.showForgotPassword = function(){
		Modalbox.show("content/Password.html?" + Math.random(), {title: "Remind Password", width: 500} );
	}
	this.remindPassword = function(){
		var email = Functions.trim($("remind_email").value);
		if(email == ""){
			$("remind_password_error").innerHTML = "User id not valid";
			return;
		}
		$("remind_password_error").innerHTML = "Sending data";
		////
		if(this.isSending){
			return;
		}
		this.isSending = true;
		Modalbox.deactivate();
		////
		var ap = new AjaxPlace({clas: "LSAccount", func:"remindPassword", args:[email]});
		ap.folder = "admin/";
		var callback = function(transport){
			///
			this.isSending = false;
			Modalbox.activate();
			///
			var str = '<div style="height:200px;" align="center"><table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0"><tr><td align="center" valign="middle"><b>Password sent to your email address!</b><br/><a href="#" onclick="Modalbox.hide(); return false;">Press here</a> to close</td></tr></table></div>';
			Modalbox.show(str, {title: "Thank you!", width: 400});
			///
			/*var r = eval(transport.responseText);
			if(r == true){
				Modalbox.show('<div><br/>An email has been sent to you!<br/><br/></div>', {title: "Thank you!", width: 400});
			}*/
		}
		///callback.bind(this)();
		ap.call({ onSuccess:callback.bind(this) });
	}
	this.createAccount=function(){
		var email = Functions.trim($("new_email").value);
		var email2 = Functions.trim($("new_email2").value);
		var pass = Functions.trim($("new_password").value);
		var cpass = Functions.trim($("new_confirm_password").value);
		var name = Functions.trim($("new_name").value);
		var lastname = Functions.trim($("new_lastname").value);
		///
		if(!Functions.checkFields(email,email2, pass, name, lastname)){
			$("new_account_error").innerHTML = "Required fields are missing";
			return;
		}
		if(!Functions.checkMail(email)){
			$("new_account_error").innerHTML = "Email address not valid";
			return;
		}
		if(email != email2){
			$("new_account_error").innerHTML = "Email fields must be equal";
			return;
		}
		if(pass != cpass){
			$("new_account_error").innerHTML = "Password fields must be equal";
			return;
		}
		$("new_account_error").innerHTML = "Sending data";
		////
		if(this.isSending){
			return;
		}
		this.isSending = true;
		Modalbox.deactivate();
		////
		var ap = new AjaxPlace({clas: "LSAccount", func:"createAccount", args:[email, pass, name, lastname]});
		ap.folder = "admin/";
		var callback = function(transport){
			var r = eval(transport.responseText);
			if(r == true){
				var str = '<div style="height:200px;" align="center"><table width="100%" height="100%" border="0" cellspacing="0" cellpadding="0"><tr><td align="center" valign="middle"><b>Email sent. Please confirm your account!</b><br/><a href="#" onclick="Modalbox.hide(); return false;">Press here</a> to close</td></tr></table></div>';
				Modalbox.show(str, {title: "Thank you!", width: 400});
			}else{
				$("new_account_error").innerHTML = "User already exists";
			}
			this.isSending = false;
			Modalbox.activate();
		}
		ap.call({ onSuccess:callback.bind(this) });
	}
	this.login=function(){
		var email = Functions.trim($("login_email").value);
		var pass = Functions.trim($("login_password").value);
		if(!Functions.checkFields(email, pass)){
			$("login_error").innerHTML = "Required fields are missing";
			return;
		}
		
		if(this.isSending){
			return;
		}
		this.isSending = true;
		$("login_error").innerHTML = "Sending data";
		///
		var callback = function(r){
			this.isSending = false;
			if (r == false){
				$("login_error").innerHTML = "User or Password not valid";
			}else{
				App.loadSection(8);
				///this.cookie = setSubValue("email", email);
				///alert(this.cookie.cookieExists());
			}
		}
		App.user.loginCallServer(email, pass, callback.bind(this));
	}
}



