//====================================================================================
//================================== INPUT FUNCTIONS =================================
//====================================================================================
function trimString (str)
{
  str = this != window? this : str;
  return str.replace(/^\s+/g, '').replace(/\s+$/g, '');
}

function textareaLimit(limit,obj,frm){
	var orgText;
	var fixText;
	var fieldLen = new Number();

	limit = limit - 1;
	orgText = eval('document.' + frm + '.' + obj + '.value');
	fieldLen = orgText.length;

	if (fieldLen > limit) {
		fixText = orgText.substring(0,limit);
		eval('document.' + frm + '.' + obj + '.value = fixText');
	}
}


//====================================================================================
//===================================== IMAGE SWAPS ==================================
//====================================================================================
function MM_findObj(n, d) { //v3.0
	var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
	d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
	if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document); return x;
}


function MM_swapImage() { //v3.0
	var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
	if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


function MM_swapImgRestore() { //v3.0
	var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}



function MM_preloadImages() { //v3.0
	var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
	var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
	if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}


//====================================================================================
//===================================== FORM CHECKS ==================================
//====================================================================================
function checkFrmPHMyAccount()
{
	var okToSend;
	var errorMsg;

	okToSend = true;
	errorMsg = "";
	errorMsg = errorMsg + "The following fields are required:\n";
	errorMsg = errorMsg + "----------------------------------\n";

	if (trimString(document.frmPHMyAccount.phMYA_login.value) == "")
	{
		document.frmPHMyAccount.phMYA_login.className = "planHubError";
		errorMsg = errorMsg + "Login\n";
		okToSend = false;
	}
	else
	{
		document.frmPHMyAccount.phMYA_login.className = "planHubInput";
	}

	if (trimString(document.frmPHMyAccount.phMYA_pass.value) == "")
	{
		document.frmPHMyAccount.phMYA_pass.className = "planHubError";
		errorMsg = errorMsg + "Password\n";
		okToSend = false;
	}
	else
	{
		document.frmPHMyAccount.phMYA_pass.className = "planHubInput";
	}

	if (okToSend == false) {
		alert(errorMsg);
	}

	return okToSend;
}

function checkFrmPHGuestAccess()
{
	var okToSend;
	var errorMsg;

	okToSend = true;
	errorMsg = "";
	errorMsg = errorMsg + "The following fields are required:\n";
	errorMsg = errorMsg + "----------------------------------\n";

	if (trimString(document.frmPHGuestAccess.passport.value) == "")
	{
		document.frmPHGuestAccess.passport.className = "planHubError";
		document.frmPHGuestAccess.passport.focus();
		errorMsg = errorMsg + "Passport\n";
		okToSend = false;
	}
	else
	{
		document.frmPHGuestAccess.passport.className = "planHubInput";
	}

	if (okToSend == false) {
		alert(errorMsg);
	}

	return okToSend;
}

function checkFrmContactUs()
{
	var x = document.frmContactUs.email.value;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;

	var okToSend;
	var errorMsg;

	okToSend = true;
	errorMsg = "";
	errorMsg = errorMsg + "The following fields are required:\n";
	errorMsg = errorMsg + "----------------------------------\n";

	if (trimString(document.frmContactUs.name.value) == "")
	{
		document.frmContactUs.name.className = "boxMaxError";
		errorMsg = errorMsg + "Name\n";
		okToSend = false;
	}
	else
	{
		document.frmContactUs.name.className = "boxMaxInput";
	}

	if (filter.test(x)) {
		document.frmContactUs.email.className = "boxMaxInput";
	} else {
		document.frmContactUs.email.className = "boxMaxError";
		document.frmContactUs.email.focus();
		errorMsg = errorMsg + "Please enter valid e-mail address.";
		okToSend = false;
	}

	if (trimString(document.frmContactUs.phone.value) == "")
	{
		document.frmContactUs.phone.className = "boxMaxError";
		errorMsg = errorMsg + "Phone Number\n";
		okToSend = false;
	}
	else
	{
		document.frmContactUs.phone.className = "boxMaxInput";
	}

	if (trimString(document.frmContactUs.comments.value) == "")
	{
		document.frmContactUs.comments.className = "boxMaxError";
		errorMsg = errorMsg + "Comment/Question\n";
		okToSend = false;
	}
	else
	{
		document.frmContactUs.comments.className = "boxMaxInput";
	}


	if (okToSend == false) {
		alert(errorMsg);
	}

	return okToSend;
}
