// simplePreload

function simplePreload(){ 
  var args = simplePreload.arguments;
  document.imageArray = new Array(args.length);

  for(var i=0; i<args.length; i++)
  {
    document.imageArray[i] = new Image;
    document.imageArray[i].src = args[i];
 }
}

function buttOver(button){
	
	var bType = button.search("admin");
	if(bType == -1){
		var backimage = "url(images/horizon_over.jpg)";
	}else{
		var backimage = "url(images/admin_over.jpg)";
	};
	
	document.getElementById(button).style.background = backimage;
}
function buttOut(button){
	var bType = button.search("admin");
	if(bType == -1){
		var backimage = "url(images/horizon_out.jpg)";
	}else{
		var backimage = "url(images/admin_out.jpg)";
	};
	if((sPage != button) || (button == "homebutt")){
	document.getElementById(button).style.background = backimage;
	};
}

function preLightButton(sPage){
var bType = sPage.search("admin");
	if(bType == -1){
		var backimage = "url(images/horizon_over.jpg)";
	}else{
		var backimage = "url(images/admin_over.jpg)";
	};
	
   if(sPage != "homebutt"){
   //var backimage = "url(images/horizon_over.jpg)";
     document.getElementById(sPage).style.background = backimage;
   };
}

function makeLogin(){
	var username = document.memberinfo.lastname.value;
	username = username.toLowerCase();	
	var phone = document.memberinfo.phone.value;
	var phonelength = phone.length-4;
	var password = username.substring(0,2) + phone.substring(phonelength);
	document.memberinfo.usename.value = username;
	document.memberinfo.pasword.value = password;
	document.memberinfo.cleaance.selectedIndex = 1;
	document.memberinfo.usename.disabled = false;
	document.memberinfo.pasword.disabled = false;
	document.memberinfo.cleaance.disabled = false;
	document.memberinfo.updatelogin.value = "yes";
	
}

function checkMemberForm(){
formObj = document.memberinfo;
var formOK = true;

if((formObj.updatelogin.value == "yes") && (formObj.pasword.value == "")){	//form trying to update login with blank password...
window.alert("Password field cannot be blank.");
formOK = false;
return false;
}

if(formObj.firstname.value == ""){
window.alert("You must enter a first name.");
formObj.firstname.focus();
formOK = false;
return false;
}
if(formObj.lastname.value == ""){
window.alert("You must enter a last name.");
formObj.lastname.focus();
formOK = false;
return false;
}
if(formObj.address.value == ""){
window.alert("You must enter an address.");
formObj.address.focus();
formOK = false;
return false;
}

     apos=formObj.email.value.indexOf("@");
dotpos=formObj.email.value.lastIndexOf(".");
if ((apos<1||dotpos-apos<2)&&(formObj.email.value!="")){
	    window.alert("The email address is not valid.");
		formObj.email.focus();
		formOK = false;
		return false;
	 } 
 
if (checkInternationalPhone(formObj.phone.value)==false && (formObj.phone.value != "")){
		window.alert("Please Enter a Valid Phone Number");
		formObj.phone.focus();
		formOK = false;
		return false;
	}
	

if(formOK)	{
	formObj.submit();
}else{
	return false;
}

}


// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 7;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

//-------------------------------------------------------------------
function badCharTest($testtext){
	if($testtext.indexOf("{") >0 || $testtext.indexOf("}") > 0){
		return false;
	}
	if($testtext.indexOf("(") >0 || $testtext.indexOf(")") > 0){
		return false;
	}	
	return true;
}


function checkChangeLoginForm(){
formObj = document.memberoptions;
var formOK = true;

if((!badCharTest(formObj.usename.value))||(!badCharTest(formObj.pasword1.value))||(!badCharTest(formObj.pasword2.value))){
	window.alert("{ } ( ) Brackets are not allowed.");
	formOK = false;
	return false;
}

if(formObj.pasword1.value != formObj.pasword2.value){	//new passwords don't match
window.alert("New password was not re-entered identically.  Please try again.");
formObj.pasword1.focus();
formOK = false;
return false;
}

if(formObj.usename.value == ""){	//username is blank, so fail...
window.alert("The Username cannot be blank.");
formObj.usename.focus();
formOK = false;
return false;
}
if(formObj.pasword1.value == ""){	//password is blank, so fail...
window.alert("The Password cannot be blank.");
formObj.pasword1.focus();
formOK = false;
return false;
}
var testString = formObj.pasword1.value;
if(testString.length < 5){	//password is less than 5 chars long, so fail...
window.alert("The Password must be at least 5 characters long.");
formObj.pasword1.focus();
formOK = false;
return false;
}

if(formOK)	{
	formObj.submit();
}else{
	return false;
}

}

//-----------------------------------------------------------------
function noCurlyBracketsTest($testtext){
	if($testtext.indexOf("{") >0 || $testtext.indexOf("}") > 0){
		return false;
	}
	return true;
}

function checkBulletinForm(){
formObj = document.bulletinform;
var formOK = true;

$brackettest = formObj.subject.value+formObj.content.value;
if(!noCurlyBracketsTest($brackettest)){	//bad chars, fail...
	window.alert("Curly brackets are not allowed in any fields.");
	formOK = false;
	return false;
}

var yearfield = document.getElementById("year");
var choice = yearfield.options.selectedIndex;
var year = yearfield.options[choice].text;

var monthfield = document.getElementById("month");
var choice = monthfield.options.selectedIndex;
var month = monthfield.options[choice].text;

var dayfield = document.getElementById("day");
var choice = dayfield.options.selectedIndex;
var day = dayfield.options[choice].text;

var aDaysInMonth = new Array(0,31,29,31,30,31,30,31,31,30,31,30,31);
if(day > aDaysInMonth[month]){
	window.alert("The date is invalid.");
	formOK = false;
	return false;
}

//window.alert("Got to the end of testing...");
if(formOK)	{
	formObj.date.value=year+"-"+month+"-"+day;
	formObj.submit();
	return true;
}else{
	return false;
}

}
//------------------------------------------------------
function checkMinutesForm(){
formObj = document.minutesform;
var formOK = true;

$brackettest = formObj.title.value+formObj.content.value;
if(!noCurlyBracketsTest($brackettest)){	//bad chars, fail...
	window.alert("Curly brackets are not allowed in any fields.");
	formOK = false;
	return false;
}

var yearfield = document.getElementById("year");
var choice = yearfield.options.selectedIndex;
var year = yearfield.options[choice].text;

var monthfield = document.getElementById("month");
var choice = monthfield.options.selectedIndex;
var month = monthfield.options[choice].text;

var dayfield = document.getElementById("day");
var choice = dayfield.options.selectedIndex;
var day = dayfield.options[choice].text;

var aDaysInMonth = new Array(0,31,29,31,30,31,30,31,31,30,31,30,31);
if(day > aDaysInMonth[month]){
	window.alert("The date is invalid.");
	formOK = false;
	return false;
}

//window.alert("Got to the end of testing...");
if(formOK)	{
	formObj.date.value=year+"-"+month+"-"+day;
	formObj.submit();
	return true;
}else{
	return false;
}

}
//------------------------------------------------------
