function CSystem()
{
	this.api = new CAPI(this);
	
	this.login = function(form)
	{
		//$("#test").effect("shake", { times: 3 }, 200);
		
		this.api.post("login", JSON.stringify({"username":form.username.value, "password":SHA1(form.password.value)}));
		
		var e = mE("login-form");
		var p = e.es[0].getSize();
		e.es[0].style.height = p.y+"px";
		mE("login-form-content").hide();
		mE("login-form-loading").show();
		
		return false;
	};
	
	this.signup = function(form)
	{
		//$("#signup-form").effect("shake", { times: 3 }, 200);
		
		this.api.post("signup", JSON.stringify({"email":form.email.value}));
		
		var e = mE("signup-form");
		var p = e.es[0].getSize();
		e.es[0].style.height = p.y+"px";
		mE("signup-form-content").hide();
		mE("signup-form-loading").show();
		
		return false;
	};
	
	this.showSignup = function()
	{
		mE("signup-form-message").hide();
		mE("signup-form-content").show();
	};
	
	this.requestCallback = function(self, type, data)
	{
		switch(type)
		{
			case "login":
				mE("login-form-loading").hide();
				mE("login-form-message").content("Login failed.");
				Cufon.replace('div#login-form-message', { textShadow: '1px 1px #666' });
				mE("login-form-message").show();
				break;
				
			case "signup":
				mE("signup-form-loading").hide();
				if(data.status == "OK")
					mE("signup-form-message").content("Your E-Mail was saved.");
				else
					mE("signup-form-message").content("Invalid E-Mail, please try again.<br /><a href=\"javascript:sys.showSignup()\">Click here to continue...</a>");

				Cufon.replace('div#signup-form-message', { textShadow: '1px 1px #666' });
				mE("signup-form-message").show();
				break;
		}
	};
}

var sys = new CSystem();
var debug = false;

