function load_login_items(){
	if (top.location.href.indexOf('logout') > -1){
		top.location='/accounts/';
	} else {
		$("#user_top_nav").load('/accounts/user_top_nav/');
		if ($("#start_discussion_form").length){
			$("#start_discussion_form").load('_start_discussion_form');
		}
		if ($("#comment_form").length){
			$("#comment_form").load('../../../_comment_form');
		}
		if ($("#listing_comment_form").length){
			$("#listing_comment_form").load('../../../../discuss/_listing_comment_form');
		}
	}
}
function showLogin(){
	centerPopup('Login');
	loadPopup('Login');
	return false;
}
$(document).ready(function(){
	$("#login_btn").click(function(){
		showLogin();
		return false;
	});
	
	$("#register_btn").click(function(){
		centerPopup('Register');
		loadPopup('Register');
		return false;
	});
	
	$("#forgot_pw_lnk").click(function(){
		centerPopup('ForgotPw');
		$("#popupLogin").hide();
		$("#forgot_pw_email_error").html('');
		$("#forgot_pw_btn").show();
		$("#popupForgotPw").show();
		$("#popupForgotPw :input:visible:enabled:first").focus();
		current_popup = 'ForgotPw'
		return false;
	});
	$("#show_login_from_register_lnk").click(function(){
		centerPopup('Login');
		$("#popupRegister").hide();
		$("#popupLogin").show();
		$("#popupLogin :input:visible:enabled:first").focus();
		current_popup = 'Login';
		return false;
	});
	$("#show_register_from_login_lnk").click(function(){
		centerPopup('Register');
		$("#popupLogin").hide();
		$("#popupRegister").show();
		$("#popupRegister :input:visible:enabled:first").focus();
		current_popup = 'Register';
		return false;
	});
	$("#show_login_from_forgot_pw_done_lnk").click(function(){
		centerPopup('Login');
		$("#popupForgotPwDone").hide();
		$("#popupLogin").show();
		$("#popupLogin :input:visible:enabled:first").focus();
		current_popup = 'Login';
		return false;
	});
	$("#popup_login_form").submit(function(){
		var validate = true;
		var email = $("#login_email").val();
		var password = $("#login_password").val();
		if (!validateLength(email) | !validateLength(password)){
			$("#login_error").html('enter both email &amp; password');
			validate=false;
		} else {
			if (!validateEmail(email)){
				$("#login_error").html('invalid email address');
				validate=false;
			} else {
				$("#login_error").html('&nbsp;');
			}
		}
		if (validate){
			$("#wait").fadeIn('fast');
			$.post('/accounts/json/login/', {email:email,password:password}, function(data){
				if (data.authenticated){
					load_login_items();
					disablePopup();
				} else {
					$("#login_error").html('no account found with those credentials');
				}
			},"json");
			$("#wait").fadeOut('fast');
		}
		return false;
	});
	$("#popup_register_form").submit(function(){
		var validate = true;
		var firstname = $("#register_firstname").val();
		var lastname = $("#register_lastname").val();
		var email = $("#register_email").val();
		var password = $("#register_password").val();
		var password2 = $("#register_password2").val();
		if (!validateLength(firstname)){
			$("#register_firstname_error").html('* required field');
			validate=false;
		} else {
			$("#register_firstname_error").html('');
		}
		if (!validateEmail(email)){
			$("#register_email_error").html('* invalid email address');
			validate=false;
		} else {
			$("#register_email_error").html('');
		}
		if (password != password2) {
			$("#register_password_error").html('* passwords do not match');
			validate=false;
		} else {
			$("#register_password_error").html('');
			//validate len
			if (!validateLength(password)){
				$("#register_password_error").html('* required field');
				validate=false;
			} else {
				$("#register_password_error").html('');
			}
			if (!validateLength(password2)){
				$("#register_password2_error").html('* required field');
				validate=false;
			} else {
				$("#register_password2_error").html('');
			}
		}
		if (validate){
			//ajax
			$("#wait").fadeIn('fast');
			$.post('/accounts/json/register/', {first_name:firstname, last_name:lastname, email:email, password1:password, password2:password2}, function(data){
				if (data.created) {
					top.location="/accounts/register/complete";
				} else {
					if (data.email_taken) {
						$("#register_email_error").html('* email address is already taken');
					}
				}
			}, "json");
			$("#wait").fadeOut('fast');
		}
		return false;
	});
	$("#popup_forgot_pw_form").submit(function(){
		var email = $("#forgot_pw_email").val();
		if (validateEmail(email)){
			$("#forgot_pw_btn").hide();
			$("#wait").fadeIn('fast');
			$.post('/accounts/json/forgot_password/', { email: email }, function(data){
				if (data.sent){
					centerPopup('ForgotPwDone');
					$("#popupForgotPw").hide();
					$("#popupForgotPwDone").show();
					current_popup = 'ForgotPwDone';
				} else {
					$("#forgot_pw_btn").show();
					if (!data.email_exists){
						$("#forgot_pw_email_error").html('* no account with that email address found');
					}
				}
			}, "json");
			$("#wait").fadeOut('fast');
		} else {
			$("#forgot_pw_email_error").html('* invalid email address');
		}
		return false;
	});
});