/*
***********************************************************
Form Functions 
***********************************************************
*/

function validRequired(formField,fieldLabel)
{
	var result = true;
	
	if (trim(formField.value) == "")
	{
		alert('Please enter a value for the "' + fieldLabel +'" field.');
		formField.focus();
		result = false;
	}
	
	return result;
}


/*
***********************************************************
Date Functions 
***********************************************************
*/

function validDate(myDate)
{

	if (myDate =='')
	{	
		return false 
	}

	var myArray=myDate.split("/")
	if (validateMonth(myArray[0])) 
	{
		if (validateDate(myArray[1])) 
		{
			if (validateYear(myArray[2])) 
			{
					return true;
			}
		}
	}
	return false;
}

function validateMonth(month) 
{

	if (isEmpty(month)) 
	{
		return false;
	} 
	if (isNaN(month)) 
		{
			return false;
		} 
	if (month>12)
		{
			return false;
		} 
		
	if (month<0)
		{
			return false;
		} 	
	return true;
}

function validateDate(day) {
	
	if (isEmpty(day)) 
	{
		return false;
	} 
	if (isNaN(day)) 
		{
			return false;
		} 
	if (day>31)
		{
			return false;
		} 
		
	if (day<0)
		{
			return false;
		} 	
	
	return true;
}

function validateYear(year) 
{	
	if (isEmpty(year)) 
	{
		return false;
	}
	if (isNaN(year)) 
		{
			return false;
		}
	
	if (year<1900)
		{
			return false;
		} 						

	if (year>2078)
		{
			return false;
		} 							
	return true;
}


/*
***********************************************************
Email Functions 
***********************************************************
*/

function validEmailAddress(email)
{
		invalidChars = " /:,;~"
		if (email == "") 
		{
			return (false);
		}
		for (i=0; i<invalidChars.length; i++) 
		{
			badChar = invalidChars.charAt(i)
			if (email.indexOf(badChar,0) != -1) 
			{
				return (false);
			}
		}
		atPos = email.indexOf("@",1)
		if (atPos == -1) 
		{
			return (false);
		}
		if (email.indexOf("@",atPos+1) != -1) 
		{
			return (false);
		}
		periodPos = email.indexOf(".",atPos)
		if (periodPos == -1) 
		{
			return (false);
		}
		if (periodPos+3 > email.length)	
		{
			return (false);
		}
			
		return (true);
}

/*
***********************************************************
Number Functions 
***********************************************************
*/
function validDecimalNum(myNumber)
{

	var num=parseInt(myNumber);
	if (isNaN(num) || num < 0) 
	{
		return (false);
	}
	else
	{
		return (true);
	}
}

function allDigits(str)
{
	return inValidCharSet(str,"0123456789");
}

function inValidCharSet(str,charset)
{
	var result = true;

	// Note: doesn't use regular expressions to avoid early Mac browser bugs	
	for (var i=0;i<str.length;i++)
		if (charset.indexOf(str.substr(i,1))<0)
		{
			result = false;
			break;
		}
	
	return result;
}

function validNum(myNumber)
{
	if (!allDigits(myNumber))
	{
		return (false);
	}
	else
	{
		return (true);
	}
}


/*
***********************************************************
String Functions 
***********************************************************
*/

function isEmpty(inputStr) 
{
	if (inputStr == "" || inputStr == null) 
	{
		return true;
	}
	return false;
}

function trim(inputStr)
{
	return ltrim(rtrim(inputStr));
}

function ltrim(inputStr)
{
	var result;

	result = inputStr;
	while (('' + result.charAt(0))==' ')
		result = result.substring(1, result.length);
	return (result);
}

function rtrim(inputStr)
{
	var result;
	
	result = inputStr;
	while (('' + result.charAt(result.length - 1))==' ')
		result = result.substring(0 , result.length - 1);
	return (result);
}


/*
***********************************************************
Window/File Functions 
***********************************************************
*/

function newWin(url) 
{
	windowName = "Popup";
	set = "";
	set += "toolbar=0,";
	set += "location=0,";
	set += "directories=0,";
	set += "status=0,";
	set += "menubar=0,";
	set += "scrollbars=1,";
	set += "resizable=1,";
	set += "width=550,";
	set += "height=550";
	win = window.open(url, windowName , set); 
}

function newWinSize(url,w,h) 
{
	windowName = "Popup";
	set = "";
	set += "toolbar=0,";
	set += "location=0,";
	set += "directories=0,";
	set += "status=0,";
	set += "menubar=0,";
	set += "scrollbars=0,";
	set += "resizable=1,";
	set += "width=" + w + ",";
	set += "height=" + h;
	win = window.open(url, windowName , set); 
}

function newWinSize2(url,w,h) 
{
	windowName = "Popup2";
	set = "";
	set += "toolbar=0,";
	set += "location=0,";
	set += "directories=0,";
	set += "status=0,";
	set += "menubar=0,";
	set += "scrollbars=0,";
	set += "resizable=1,";
	set += "width=" + w + ",";
	set += "height=" + h;
	win = window.open(url, windowName , set); 
}


function popSite(url) 
{  
	newWinSize(url,750,550);
}

function checkFileExtension(fileName)
{
	var fn = new String(fileName);
	
	var ext = fn.substring(fn.length-4,fn.length);
	ext = ext.toLowerCase();
	
	if ((ext == ".gif".toString()) || (ext == ".jpg".toString()))
	{
		return (true);
	}
	else
	{
		return (false);
	}
}
