var access = {

	isAuth: false,
	
	response: function(data) {
		access[(data.success ? 'success' : 'failed')](data);
	},
	
	login: function(user,pass,remember) {
		if(typeof(user) == "object")
			data = user;
		else
			data = {user:user,pass:pass,remember:remember};
		
		//Make sure they're both set before trying
		if ( data.user && data.pass ) 
			$.post("../operations/login.php",data,this.response,'json');
		else 
			alert('You must supply a login and password.');
	},
		
	register: function(user,pass,pass2,email,email2,fName,lName) {
		if(typeof(user) == "object")
			data = user;
		else
			data = {user:user,pass:pass,pass2:pass2,email:email,email2:email2,fName:fName,lName:lName};
		
		$.post("../operations/register.php",data,this.response,'json');
	},
	
	auth: function(user,pass,remember) {
		this.isAuth = true;
		
		if(typeof(user) == "object")
			data = user;
		else
			data = {user:user,pass:pass,remember:remember};
		
		//Make sure they're both set before trying
		if ( data.user && data.pass ) 
			$.post("../operations/login.php",data,this.response,'json');
	},
	
	forgot: function(email) {
		if(typeof(email) == "object")
			data = email;
		else
			data = {email:email};
		
		$.post("../operations/forgot.php",data,this.response,'json');
	},
	
	success: function(data) {
		if(!this.isAuth) {
			location.reload(true);
		}
		else {
			if($("#return-to").length > 0) {
				location.replace($("#return-to").val());
			}
			else location.reload(true);
		}
	},
	
	failed: function(data) {
		$("#login_response").html(data.reason);
	}
};