//-----------------------------------------------------------------------------//
function createCookie(name, value, days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name + "=" + value + expires + "; path=/";
}
//-----------------------------------------------------------------------------//
function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}
//-----------------------------------------------------------------------------//
function eraseCookie(name)
{
	createCookie(name,"",-1);
}
//-----------------------------------------------------------------------------//
function ModProfile(someElement)
{
	if (someElement.options[someElement.selectedIndex].value != "")
	{
		document.modprofile.Profile_ID.value = someElement.options[someElement.selectedIndex].value;
		document.modprofile.submit();
	}
}
//-----------------------------------------------------------------------------//
function getElement(psID) 
{ 
	if(document.all) 
   		return document.all[psID]; 
	else
		return document.getElementById(psID); 
} 
//-----------------------------------------------------------------------------//
function ValField(someObject, stringAlert)
{
	//if (ControlExists(someObject))
	//{
		if(someObject.value == "")
		 {
		 	alert(stringAlert + " cannot be empty.");
			someObject.select();
			someObject.focus();
		 	return false;
		 }
		 return true;
	// }
	// alert("Object Does not exist");
	// return false;
}
//-----------------------------------------------------------------------------//
function ValMatch(someObject1, someObject2, stringAlert)
{
	//if (ControlExists(someObject))
	//{
		if(someObject1.value != someObject2.value)
		 {
		 	alert(stringAlert + " don't match please re-enter them.");
			someObject1.select();
			someObject1.focus();
		 	return false;
		 }
		 return true;
	// }
	// alert("Object Does not exist");
	// return false;
}
//-----------------------------------------------------------------------------//
function ValDontMatch(someObject1, someObject2, stringAlert, stringAlert2)
{
	if(someObject1.value == someObject2.value)
	 {
	 	alert(stringAlert + " cannot be the same as " + stringAlert2 + ".");
		someObject1.select();
		someObject1.focus();
	 	return false;
	 }
	 return true;
}
//-----------------------------------------------------------------------------//
function ValExclude(someObject, stringObject, Exclude, stringExclude)
{
	if(someObject.value.search(Exclude) != -1)
	 {
	 	alert(stringObject + " cannot contain the following \"" + stringExclude + "\".");
		someObject.select();
	 	return false;
	 }
	 return true;
}
//-----------------------------------------------------------------------------//
function ValDate(someObjectDay, someObjectMonth, someObjectYear)
{
	var Day = someObjectDay.selectedIndex;
	var Month = someObjectMonth.selectedIndex;
	var Year = someObjectYear.selectedIndex;
	var DaysOfTheMonth = new Array(13);
	var value;

	if ((someObjectDay.options[Day].value != "") && (someObjectMonth.options[Month].value != ""))
	{
		Day = parseInt(someObjectDay.options[Day].value, 10);
		Month = parseInt(someObjectMonth.options[Month].value, 10);
		Year = parseInt(someObjectYear.options[Year].value, 10);
			  
		var LeapYear = false;
		var Query1 = ((Year % 400) == 0)? true : false;
		var Query2 = (((Year % 4) == 0) && ((Year % 100) != 0))? true : false;
		LeapYear = (Query1 || Query2)? true : false;
	
		for (i = 0; i < 13; i++) 
		{
			if (i == 0) 
				value = -1;
			// 30 days hath September, April June and November
			else if ((i == 4) || (i == 6) || (i == 9) || (i == 11)) 
				value = 30;
			// All the rest have 31 except for February with 28 days clear and 29 every Leap Year. 
			else if (i == 2) 
				value = (LeapYear)? 29 : 28;
			else 
				value = 31;
			   
			DaysOfTheMonth[i] = value; 
		}			
		
		var MonthName = someObjectMonth.options[Month].text;
		var Message = ""
		
		Message = MonthName + " has a maximum of " + DaysOfTheMonth[Month] + " days.";
		if ((Month == 2) && (LeapYear)) 
			Message += " " + Year + " is a Leap Year.";
		
		if (Day > DaysOfTheMonth[Month]) 
		{
			alert(Message);
			someObjectDay.focus();
			return false;
		}
		else
			return true;
	}
	else
		return true;
}
//-----------------------------------------------------------------------------//
function ValSelect(someObject, stringAlert)
{
	//if (ControlExists(someObject))
	//{
		if(someObject.value == "")
		 {
		 	alert(stringAlert + " cannot be empty.");
			someObject.focus();
		 	return false;
		 }
		 return true;
	// }
	// alert("Object Does not exist");
	// return false;
}
//-----------------------------------------------------------------------------//
function ValChecker(someObject, stringAlert)
{
	//if (ControlExists(someObject))
	//{
		if(someObject.checked == false)
		 {
		 	alert(stringAlert + " cannot be empty.");
			someObject.focus();
		 	return false;
		 }
		 return true;
	// }
	// alert("Object Does not exist");
	// return false;
}
//-----------------------------------------------------------------------------//
function ValFieldLen(someObject, stringAlert, someLength)
{
	//if (ControlExists(someObject))
	//{
		if (someObject.value.length > someLength) 
		{
			alert(stringAlert + ' cannot be more than ' + someLength + ' characters.\n You are currently ' + (someObject.value.length - someLength) + ' characters over that limit');
			someObject.select();
			someObject.focus();
			return false;
		}
		return true;
	//}
}
//-----------------------------------------------------------------------------//
function ValFieldMinLen(someObject, stringAlert, someLength)
{
	if (someObject.value.length < someLength) 
	{
		alert(stringAlert + ' must be at least ' + someLength + ' characters.\n You are currently ' + (someObject.value.length - someLength) + ' characters.');
		someObject.select();
		someObject.focus();
		return false;
	}
	return true;
}
//-----------------------------------------------------------------------------//
function ValEmail(someObject, stringAlert)
{
	//if (ControlExists(someObject))
	//{
		if (someObject.value != "") 
		{
			var exclude=/[^@\-\.\w]|^[_@\.\-]|[\._\-]{2}|[@\.]{2}|(@)[^@]*\1/;
			var check=/@[\w\-]+\./;
			var checkend=/\.[a-zA-Z]{2,4}$/;  
	
			if(((someObject.value.search(exclude) != -1) || (someObject.value.search(check)) == -1) || (someObject.value.search(checkend) == -1))
			{              
				alert(stringAlert + " is an incorrect email address!");  
				someObject.select();
			someObject.focus();
				return false;    
			}
			return true;		    
		}
	//}
}
//-----------------------------------------------------------------------------//
function ValNumbers(someObject, stringAlert)
{
	var reValidDigits = /[\d]+/;
	//var reKeyboardChars = /[\x00\x03\x08\x0D\x16\x18\x1A]/;
	
	if (someObject.value != "" && someObject.value != " ") 
	{
		if (!reValidDigits.test(someObject.value)) 
		{
			alert(stringAlert + " can only contain numbers!");  
			someObject.select();
			someObject.focus();
			return false;  
		}
		else
			return true;
	}
	else
		return true;	
}
//-----------------------------------------------------------------------------//
function statusbarText(message)
{
	window.setTimeout('window.status="' + message + '"', 1);
	return true;
} 
//-----------------------------------------------------------------------------//
function MemberProfile(memberid)
{
	document.modprofile.Profile_ID.value = memberid;
	document.modprofile.submit();
}
//-----------------------------------------------------------------------------//
function censor(textObject, censorObject) 
{
	var forbid = censorObject.value;
	var strUserText = textObject.value;
	var strCensorWordCount = wordcount(forbid);
	var strTextWordCount = wordcount(strUserText);
	var REG_EXP = /[a-z|A-Z]/;
	var strTemp;
			
	strUserText = " " + strUserText + " ";
	orig = strUserText;

	//strUserText = strUserText.toLowerCase();
	for (var i=0; i < strCensorWordCount; i++)
	{  
	 	intSpacePos = forbid.indexOf(" ");
	 	var strBadWord = forbid.substring(0, intSpacePos);
	 	intBadWordLength = strBadWord.length;
		
	 	forbid = forbid.substring(intSpacePos + 1, forbid.length);
		pos = 1;
		intTempWordCount = 0;
		strTemp = strUserText.toLowerCase();
		
	 	while ((strTemp.indexOf(strBadWord, pos - 1) > -1) && (intTempWordCount <= strTextWordCount))
		{
			pos = strTemp.indexOf(strBadWord, pos - 1);
        	if (REG_EXP.test(strTemp.charAt(pos + intBadWordLength)) != true)
			{
			   	strStartText = strUserText.substring(0, pos);
				strSpaceBefore = strUserText.charAt(pos - 1);
				if (REG_EXP.test(strSpaceBefore) != true)
				{	
					strCensoredText = "";
				   	for (var m=0; m < intBadWordLength; m++)
					{
						strCensoredText = strCensoredText + "*";
					}
				   	strEndText = strUserText.substring((pos + intBadWordLength), strUserText.length);
				   	strUserText = strStartText + strCensoredText + strEndText;
					orig = strUserText;
				}
			}
			intTempWordCount = intTempWordCount + 1;
			pos = pos + intBadWordLength;
		}
	}
	textObject.value = trim(orig);
}
//-----------------------------------------------------------------------------//
function wordcount(string) 
{
  var a = string.split(/\s+/g); // split the bad word stream into an array of words
  return a.length;
}
//-----------------------------------------------------------------------------//
function trim(str)
{
  return( (""+str).replace(/^\s*([\s\S]*\S+)\s*$|^\s*$/,'$1') );
}
//-----------------------------------------------------------------------------//
function buttonSelect(urlstring)
{
	if (urlstring.toLowerCase( ) == "help.asp")
		document.Nav_Button.LoginByPass.value = 'true';
	
	if (urlstring.toLowerCase( ) == "register.asp")
		document.Nav_Button.LoginByPass.value = 'true';
		
	if (navigator.appName == 'Netscape' || document.all)
		document.Nav_Button.action = urlstring;

	else
		return false;

	//alert("All Good");
	document.Nav_Button.submit();
}
//-----------------------------------------------------------------------------//
function sendSelect(urlstring)
{
	if (navigator.appName == 'Netscape' || document.all)
	{
   		document.Email_Send.action = urlstring;
	}
	else
	{
		return false;
	}
	//alert("All Good");
	document.Email_Send.submit();
}
//-----------------------------------------------------------------------------//



