var Login = {
	init: function() {
		$("copyright-link").observe("click", function() {
			if($("copyright-notice").visible()) {
				$("copyright-notice").blindUp({ duration: 0.2 });
			} else {
				$("copyright-notice").blindDown({ duration: 0.4 });
			}
		});
		$("copyright-close").observe("click", function(e) {
			$("copyright-notice").blindUp({ duration: 0.2 });
		});
		
		if (Requirements.hasCompatibleBrowser()) {
			$("login-box").appear({ duration: 0.8, afterFinish: function() { $("username").focus() } });
			$("login-box").down("form").observe("submit", Login.submit);
		} else {
			$("login-box").update(Language["Application.browserVersionMessage"]);
			$("login-box").appear({ duration: 0.8 });
		}
	},
	submit: function(e) {
		e.stop();
		if(!$F("username").strip()) {
			return Message.error(Language["Login.missingUsername"]);
		}
		if(!$F("password").strip()) {
			return Message.error(Language["Login.missingPassword"]);
		}
		var form = $("login-box").down("form");
		form.request({ onComplete: Login.done, onException: Message.ajaxException });
		/*form.disable();
		Control.disable($("login-box").down("button"));*/
		Message.loading(Language["Login.loggingIn"]);
		return true;
	},
	done: function(r) {
		var result = r.responseJSON;
		if(result.success) {
			Message.loading(Language["Login.welcome"] + result.name);
			window.location = result.url;
		} else {
			Message.error(Language["Login.loginError"]);
			/*var form = $("login-box").down("form");
			form.enable();
			Control.enable($("login-box").down("button"));*/
		}
	}
};
document.observe("dom:loaded", Login.init);

