<!--

// ------------------------------------------------------------
// Handle Page initialization
// ------------------------------------------------------------
function OnLoad()
{
	// Set focus to userId field (default)
	document.getElementById('userId').focus();
	
	// Set focus to first empty field 
	return (SelectIfEmpty('userId')		||
			SelectIfEmpty('password')	||
			SelectIfEmpty('domain')		||
			SelectIfEmpty('server'))
}

	function SelectIfEmpty(strId)
	{
		var element = document.getElementById(strId);
		if (!element)	return false;

		if (element.value.length < 1)
		{
			element.focus();
			return true;
		}
		else
			return false;
	}


// ------------------------------------------------------------
// Handle Form buttons
// ------------------------------------------------------------

function formClear()
{
//	document.forms[0].reset();

	elementClear(document.getElementById('userId'));
	elementClear(document.getElementById('password'));
	elementClear(document.getElementById('domain'));
	elementClear(document.getElementById('server'));

	document.getElementById('userId').focus();
}

	function elementClear(element)
	{
		if (!element)					return;
		if (element.type == 'hidden')	return;
		element.value	= '';
	}
		
function formSubmit()
{
	var frmForm = document.forms[0];

	// make sure all fields filled in
	if (!MustHaveValue(frmForm.userId,	 'User Id'))	return;
//	if (!MustHaveValue(frmForm.password, 'Password'))	return;
//	if (!MustHaveValue(frmForm.domain,	 'Domain'))		return;
	if (!MustHaveValue(frmForm.server,	 'Server'))		return;

	// Hide the form and show the "Logging In..." message
	// (but only for IE - Netscape can't handle this)
	if (document.all)
	{
		document.getElementById('divForm').style.display		= 'none';
		document.getElementById('divLoggingIn').style.display	= '';

		// Hide any error messages that might be displayed
		document.getElementById('divMessage').style.display	= 'none';
	}
	else
	{
		// Netscape doesn't work if you hide the form (i.e. set display to 'none')
		// so just show the message below the form
		document.getElementById('divMessage').innerHTML	= '<BR><CENTER><B>Logging in to MediaBin Server</B></CENTER>';
	}

	// Save user entries
	WriteCookies();

	var objDate = new Date;
	frmForm.timezone.value = objDate.getTimezoneOffset();
	frmForm.submit();
}

// Ensure that the supplied field has some data
function MustHaveValue(txtField, strName)
{
	if (!txtField)						return true;
	if (txtField.value.length < 1)
	{
		alert('Please enter a value for the ' + strName + ' field.');
		txtField.focus();
		return false;
	}
	return true;
}



// ------------------------------------------------------------
// This function is used to fix Mac specific date problem.
// ------------------------------------------------------------
function FixCookieDate(date) 
{
	var base = new Date(0);
	var skew = base.getTime();	// dawn of (Unix) time - should be 0
	if (skew > 0)				// Except on the Mac - ahead of its time
		date.setTime (date.getTime() - skew);
}

// ------------------------------------------------------------
// This function is used to write the UserName, DomainName, 
// and ServerName to a cookie.
// ------------------------------------------------------------
function WriteCookies() 
{
	var strValue;
	var expires = new Date();

	FixCookieDate(expires);
	expires.setTime(expires.getTime() + (14*24*60*60*1000));		// expire in 14 days

	var frmForm = document.forms[0];

	SaveValue('UserName',   frmForm.userId, expires);
	SaveValue('DomainName', frmForm.domain, expires);
	SaveValue('ServerName', frmForm.server, expires);
}

	function SaveValue(strCookieName, txtField, dteExpires)
	{
		if (!txtField)	return;
		setCookie(strCookieName, txtField.value, dteExpires);
	}

// ------------------------------------------------------------
// Handles the user hitting the ENTER key to submit the form
// ------------------------------------------------------------
function HandleKeyPress(e)
{
	if (e)
		if ((e.keyCode == 13) || (e.keyCode == 3))
		{
			if (g_blnClear)
				formClear();
			else
				formSubmit();
			return true;
		}
}

// -->

