// JavaScript Document
$( document ).ready( function()
{
	// Kill Current Event
	$( '#jq_initiate_login_btn' ).click(
		function()
		{
			// Kill Propogation
			return false;
		} );
	
	// Login Lightbox
	$( '#jq_lightbox_login' ).jqm( { trigger : '#jq_initiate_login_btn' } );
	
	// Submit Form
	$( '#login_form' ).submit(
		function()
		{
			// Success Function
			var loginSuccess =
				function( data )
				{
					// Analyze data
					if( data.substr(0, 1) == '1' )
					{
						// Redirect
						window.location.href = data.substr( 2, data.length );
					}
					else
					{
						// Show error
						$.prompt( data.substr( 2, data.length ), { buttons: { Ok: true } } );
						
						// Show Buttons
						$( '.btn_1', '#jq_lightbox_login' ).show();
						// Hide Loading Bar
						$( '.jq_loading_bar', '#jq_lightbox_login' ).hide();
					}
				}
				
			// Options
			var login_options = { success : loginSuccess, url : 'http://' + location.host + "/" + $( this ).attr( 'action' ) };
			
			try
			{
				// Hide Buttons
				$( '.btn_1', '#jq_lightbox_login' ).hide();
				$( '.btn_clear', '#jq_lightbox_login' ).hide();
				// Show Loading Bar
				$( '.jq_loading_bar', '#jq_lightbox_login' ).show();
				// Submit with new ajax url
				$( this ).ajaxSubmit( login_options );
			}
			catch( err )
			{
				// Show Loading Bar
				$( '.jq_loading_bar', '#jq_lightbox_login' ).hide();
				$( '.jqmClose' ).click();
				// Alert Error
				alert( "Error Submitting via Ajax\n" + err );	
			}
			
			// Return False
			return false;
		} );

	// Event Handler: jq_login_btn
	$( '#jq_submit_login_btn' ).click(
		function()
		{
			// Validate Form
			if( validateLoginForm() )
			{
				$( '#login_form' ).submit();
			}
			
			// Always return false
			return false;
		} );
	
	// Event Handler: jq_cancel_login_btn
	$( '#jq_cancel_login_btn' ).click(
		function()
		{
			// Clear login form
			clearLoginForm();
			
			// default return
			return false;
		} );
		
	// Validate Login Form
	var validateLoginForm =
		function()
		{
			var valid = true;
			
			// Email Validation
			if( $( '#login_username' ).val() == '' )
			{
				$( '#login_username' ).parent().next().removeClass( 'jq_hide' );
				valid = false;
			}
			else
				$( '#login_username' ).parent().next().addClass( 'jq_hide' );	// Remove Error
			
			// Password Validation
			if( $( '#login_password' ).val() == '' )
			{
				$( '#login_password' ).parent().next().removeClass( 'jq_hide' );
				valid = false;
			}
			else
				$( '#login_password' ).parent().next().addClass( 'jq_hide' );	// Remove Error
			
			// Return
			return valid;
		}
		
	// Clear Login Form
	var clearLoginForm = 
		function()
		{
			// Remove Warnings
			$( '#login_username' ).parent().next().addClass( 'jq_hide' );
			$( '#login_password' ).parent().next().addClass( 'jq_hide' );
			
			// Clear values
			$( '#login_username' ).val( '' );
			$( '#login_password' ).val( '' );
		}
		
	// Load Lightbox Automatically
	if( typeof load_login_lightbox_auto != 'undefined' )
	{
		$( '#jq_lightbox_login' ).jqmShow();
	}
} );
