/* Include this to have the login popup appear on a page */
$.ui.dialog.defaults.bgiframe = true;

function loadLogin(){
	
	$("#newlogin").dialog(
			{
				title: 'Login', 
				autoOpen:false,
				position: [100,100],
				resizable: false,
				modal:true,
				buttons: {
					"Login": function(){ 
						$("#loginmessage").text("");
						checkLogin();
					},
					"Reset" : function () { displayReset(); },
					"New Account": function() { top.location.href="/register"; }
			}
		}
	);
	
	$("#resetlogin").dialog(
			{
				title: 'Reset Password',
				autoOpen: false,
				position: [150,150],
				resizable:false,
				modal:true,
				buttons: {
					"Reset My Password": function () { submitReset(); },
					"?" : function () { alert("If for some reason you are unable to use this form, email helpme@darkpoetry.com."); }
				}
			}
	);

}

function openLogin(){
	//$("#newlogin").css("display", "all");
	$("#newlogin").dialog("open");
}

// Uses jquery + ajax to see if login worked or not.
function checkLogin(){

    $.post("/login/check",
    	{ user: $("#login_user").val(), pass: $("#login_pass").val(), perma: $("#perma:checked").val() },
    	function(xml) {
    		// a bug exists in IE6 whereby it thinks there's no status text...  skip this check with that one.
//    		if (jQuery.browser.msie && jQuery.browser.version.substr(0,1) == "6") {  
//    			var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");  
//    			xmlDoc.loadXML(xml);  
//    			xml = xmlDoc;  
//    		}  
	    	if(! $("status",xml).text()){
	    		$("#loginmessage").text("Unable to contact login server, please try again.");
	    		return;
	    	}
	    	$("#loginmessage").text($("message",xml).text());
	    	
	    	if($("status",xml).text() == "OK"){ 
	    		$(this).dialog("close"); 
	    		if($("redirect",xml).text() != "")
	    			top.location.href=$("redirect",xml).text();
    			else
    				window.location.reload(false);
	    	}
    	}
    	// IE6 needs the response to be called "text" for some reason
       // ,(jQuery.browser.msie && jQuery.browser.version.substr(0,1) == "6") ? "text" : "xml"
     );
    
/*	if (jQuery.browser.msie && jQuery.browser.version.substr(0,1) == "6") {  
		alert("You are using an unsupported web browser: Internet Explorer 6."+
				"Use the free Firefox browser instead to avoid errors and problems on this site.");
		top.location.href=$("#login_redirect").val();
		
	} */ 
}

function displayReset(){
	
	if(! $("#login_user").val()){
		$("#loginmessage").html("Please first enter your username to use password reset."+
			"<br/><br/>If you don't know your username, email helpme"+"@"+
			"darkpoetry.com");
		return;
	}
	$("#resetlogin").dialog('option','title', $("#login_user").val() + "'s Password Reset");

	$("#resetmessage").html("Choose a new password.  An authorization request will be sent to the email address you signed up with.");
	$("#reset_user").val($("#login_user").val());
	$("#newlogin").dialog("close");
	$("#resetlogin").dialog("open");
}

function submitReset(){
	
	if($("#reset_pass").val() != $("#reset_pass2").val()){
		$("#resetmessage").text("Your passwords don't match, please try again.");
		$("#reset_pass").val("");
		$("#reset_pass2").val("");
		$("#reset_pass").focus();
		return;
	}
	
	$.post("/login/reset",{ user: $("#reset_user").val(), pass: $("#reset_pass").val() },
	    	function(xml) {
		    	
		    	if($("status",xml).text() != "OK"){
		    		$("#resetlogin").dialog('option','title', $("status",xml).text());
		    		$("#resetmessage").html($("message",xml).text());
		    		return;
		    	}

		    	$("#resetlogin").dialog("close");
		    	alert($("message",xml).text());
	    	}
	    );
}