function loadcookies(formobj,prevpage,saveprevpage)
{
	//reads cookies that are associated with the form fields and puts the value into the fields
	//stores the page the user came from in a hidden field called URLSource
	if ( saveprevpage )
		formobj.URLSource.value=prevpage;
	if (formobj.reqFirstName)
		formobj.reqFirstName.value=readCookie("FirstName");
	if (formobj.reqLastName)
		formobj.reqLastName.value=readCookie("LastName");
	if (formobj.reqCompany)
		formobj.reqCompany.value=readCookie("Company");
	if (formobj.JobTitle)
		formobj.JobTitle.value=readCookie("JobTitle");
	if (formobj.reqEmail)
		formobj.reqEmail.value=readCookie("Email");
	if (formobj.Address)
		formobj.Address.value=readCookie("Address");
	if (formobj.reqAddress)
		formobj.reqAddress.value=readCookie("Address");
	if (formobj.City)
		formobj.City.value=readCookie("City");
	if (formobj.reqCity)
		formobj.reqCity.value=readCookie("City");
	if (formobj.State)
		formobj.State.value=readCookie("State");
	if (formobj.reqState)
		formobj.reqState.value=readCookie("State");
	if (formobj.Zip)
		formobj.Zip.value=readCookie("Zip");
	if (formobj.reqZip)
		formobj.reqZip.value=readCookie("Zip");
	if (formobj.Country)
 		formobj.Country.value=readCookie("Country");
	if (formobj.reqPhone)
		formobj.reqPhone.value=readCookie("Phone");
	if (formobj.Fax)
		formobj.Fax.value=readCookie("Fax");
}

function validatedemoform(formname)
{
	//validates that at least one demo was selected
	var validated = false;

	var pass = false;

	var form_collection = eval( "document.forms." + formname );
	for ( c=0; c<form_collection.length; c++ )
	{
		if ( form_collection[c].checked )
		{
			pass = true;
			break;
		}
	}

	if ( !pass )
	{
		alert("Please select at least one item.");
		validated = false;
	}
	else
		validated = true;
		
	return (validated);
}

function validatecsbform(which, stremail)
{
	var validated = false;
	if ( checkcsbrequired(which) && checkemail(stremail) )
		validated = true;
		
	return (validated);
}

function checkcsbrequired(which)
{
	//validates that the required fields on a form are filled in
	var pass=true;
	var blnchecked=false;
	if (document.images)
	{
		for (i=0;i<which.length;i++)
		{
			var tempobj=which.elements[i];
			if (tempobj.name.substring(0,3)=="req")
			{
				if (((tempobj.type=="text"||tempobj.type=="textarea")&&tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&tempobj.selectedIndex==-1))
				{
					pass=false;
					break;
				}
				if ((tempobj.name == "reqRegType"))
				{
 					if (tempobj.checked)
					{
						blnchecked=true;
					}
				}
			}
		}
	}
	if (!blnchecked)
		pass=false;
		
	if (!pass)
	{
		alert("One or more of the required elements are not completed. Please complete them, then submit again!");
		return false;
	}
	else
		return true;
}

function validateform(which, stremail)
{
	var validated = false;
	if ( checkrequired(which) && checkemail(stremail) )
		validated = true;
		
	return (validated);
}

function checkrequired(which)
{
	//validates that the required fields on a form are filled in
	var pass=true;
	if (document.images)
	{
		for (i=0;i<which.length;i++)
		{
			var tempobj=which.elements[i];
			if (tempobj.name.substring(0,3)=="req")
			{
				if (((tempobj.type=="text"||tempobj.type=="textarea")&&tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&tempobj.selectedIndex==-1))
				{
					pass=false;
					break;
				}
			}
		}
	}
	if (!pass)
	{
		alert("One or more of the required elements are not completed. Please complete them, then submit again!");
		return false;
	}
	else
		return true;
}

function checkemail(stremail)
{
	//validates that the email address is in a valid format
	var testresults;
	if (document.layers||document.getElementById||document.all)
	{
		var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
		if (filter.test(stremail))
			testresults=true;
		else
		{
			alert("Please input a valid email address!");
			testresults=false;
		}
	}
	else
		testresults = true;
		
	return (testresults);
}



function readCookie(name)
{
  var cookieValue = "";
  var search = name + "=";
  if(document.cookie.length > 0)
  { 
    offset = document.cookie.indexOf(search);
    if (offset != -1)
    { 
      offset += search.length;
      end = document.cookie.indexOf(";", offset);
      if (end == -1) end = document.cookie.length;
      cookieValue = unescape(document.cookie.substring(offset, end))
    }
  }
  return cookieValue;
}
// Example:
// writeCookie("myCookie", "my name", 24);
// Stores the string "my name" in the cookie "myCookie" which expires after 24 hours.
function writeCookie(name, value, hours)
{
  var expire = "";
  if(hours != null)
  {
    expire = new Date((new Date()).getTime() + hours * 3600000);
    expire = "; expires=" + expire.toGMTString();
  }
  document.cookie = name + "=" + escape(value) + expire;
}


function printPage()
{
    if (window.print != null) 
        window.print(); 
    else 
        alert("Unfortunately, your browser does not support this shortcut.\nPlease select Print from the File menu."); 
}
