
function VerifyForm(theform)
   {
   var x = 0 
   var msg
   var current = "";
   var obj 
   var errMsg = "The following required fields are incomplete:\n";
   var currentValue
   var isError = false;
   var options = false;
   var checked = new Array(theform.elements.length)
	  while(obj=theform.elements[x])
      {
	   //alert(obj.name) //debugging - alerts name of each field in form
		currentValue = ""
		msg = new String(obj.name)
		//alert(theform.elements[x].name + ' disabled? ' + theform.elements[x].disabled)
	 	if(theform.elements[x].disabled != true){ //allows for skipping validation on disabled fields
				var names = msg.split("-") //split to get name of form element
				
				if (names.length > 1)
				{
				   msg = new String(names[0]) 
				   var values=msg.split("_") 
				  
				  
					   if (values.length > 1)
					   {
						 if (values[0] == "t")
							currentValue = obj.value;
						 if (values[0] == "r"){
						 var j = 0;
						 var radErr = true;
							while (radObj = theform[names[1]][j])
							{
								if (radObj.checked)
								{
									currentValue = radObj.value
								}
							j++;
							}
						 } 
						 if (values[0] == "p")
							currentValue = obj.options[obj.options.selectedIndex].value;
						 if (values[1]=="blank")
						 {
							if(currentValue=="")
							{

							   errMsg += values[2] + "\n"; 
							   isError = true  

							}
						 }
						 if (values[1]=="index")
						 {
							if(obj.options.selectedIndex == 0)
							{

							   errMsg += values[2] + "\n"; 
							   isError = true  

							}
						 }
						 if (values[1] == "date")
						 {
							 if (!(Date.parse(currentValue)))
							 {

							   errMsg += values[2] + "\n"; 
							   isError = true  
                                                  
							 }
							 else
							 {
								var newDate = new Date(Date.parse(currentValue))
		//                        obj.value = newDate.getMonth() + "/" + newDate.getDate() + "/" + newDate.getYear();
							 }
						 }  
		
						 if (values[1] == "email")
						 {
							var re = /[\S]+@[\S]+\.[\S]+/
							var str = new String(currentValue)
							if(!str.match(re)){

							   errMsg += values[2] + "\n"; 
							   isError = true  

							}
						 }
						 if (values[1] == "int")
						 {
							 if (!parseInt(currentValue))
							 {

							   errMsg += values[2] + "\n"; 
							   isError = true  

							 }
						 }
						 
					  }
			 }
			 else
			 {
				if (theform.elements[x].name=="totalMonths")
				{
				   if(obj.options[obj.selectedIndex].value=="nopull")
				   { 
					 errMsg += obj.name + "\n" + "R"
					 isError = true;                                                        
				   }
				}
			 
			 }  

    	}//end if (disabled)
				
		   obj = null  
		   x++

	}//end while
   if (isError)
   {
       alert(errMsg)
       return false;
   }
   else
   { 
     x=0
     while(obj=theform.elements[x])
     {
         msg = new String(theform.elements[x].name)
         var names = msg.split("-")
         if (names.length > 1)
         {
			 if (names.length == 2){

   			     obj.name = names[1];
             
			 }
		 }
         x++;
     } 
     return true
   }
}

function checkURL(url){
	if (url.value == "")
	{
		return false;
	}
	var newUrl = new String(url.value)
	/*  strip http://www.  */
	var re = /^http:\/\//i;
	newUrl = newUrl.replace(re,"");
	re = /^www\./i;
	newUrl = new String(newUrl.replace(re,""));
    
    /*  full url regular expression */
	re = /\.\S+/;
	if (newUrl.match(re))
    {
		newUrl = new String("http://www." + newUrl);
		url.value = newUrl
    }else{
		alert("Please make sure your website is in \'http://www.yourpage.com\' format.");
		url.focus();
	}
}

function VerifyThenSubmit(theform)
{
   if (VerifyForm(theform))
   {
	   theform.submit()
   }
}




function changeField(field,value)//field is full form object location eg document.formname.elements[elementname]
{
field.value=value;
}	





//Reads a cookie with a specified name
function ReadCookie(cookieName) { var theCookie=""+document.cookie; var ind=theCookie.indexOf(cookieName); if (ind==-1 || cookieName=="") return ""; var ind1=theCookie.indexOf(';',ind); if (ind1==-1) ind1=theCookie.length; return unescape(theCookie.substring(ind+cookieName.length+1,ind1)); } 
//Writes a cookie with a specified name
function SetCookie(cookieName,cookieValue,nDays) {
 var today = new Date();
 var expire = new Date();
 if (nDays==null || nDays==0) nDays=1;
 expire.setTime(today.getTime() + 3600000*24*nDays);
 document.cookie = cookieName+"="+escape(cookieValue)
                 + ";expires="+expire.toGMTString();
}
