var acctname, jalotkey, racckey;

function raccLogin(which) {
	if ($('#loginacct')[0].value.length == 0) {
		$('#loginacct')[0].focus();
		return false;
	}
	if ($('#loginpass')[0].value.length == 0) {
		$('#loginpass')[0].focus();
		return false;
	}
	$('#loginbuttons').hide();
	$('#loginmsg').removeClass("error").html("Logging in...").fadeIn("slow");
	$.ajax({ type: "POST", data:{
			loginname: $('#loginacct')[0].value,
			loginpassword: $('#loginpass')[0].value,
			logindbname: "jalot,raccleaf,pagewiz" }, success: raccLoginSuccess,
			error: raccLoginError, url: "/raccxml.cgi?db=vark" });
}

function raccLoginError(req, errtype, ex) {
	// TODO: server could be down
	$('#loginmsg').addClass("error");
	if (ex) 
		$('#loginmsg').html(
			"Internal error (" + errtype + "): " + ex.toString()).fadeIn();
	else
		$('#loginmsg').html(
			"Internal error (" + errtype + ")").fadeIn();
	$('#loginbuttons').slideDown();
}

function raccLoginSuccess(req) {
	if ($(req).find("error").length > 0) {
		$('#loginmsg').addClass("error").html(
				$(req).find("error/message").text().substr(4));
		$('#loginbuttons').slideDown();
		return false;
	}
	if ($(req).find("username").length == 0) {
		$('#loginmsg').addClass("error").html("Unknown user");
		$('#loginbuttons').slideDown();
		return false;
	}
	$('#loginpass')[0].value = "";
	// Set acounts and cookies
	$('#login').slideUp();
}
