// javascript functions 

	function genBanner()
		{
			csBanners=new Array();
			csBanners[0] = "<img src='Images/miniban1.jpg' class='banner'>";
			csBanners[1] = "<img src='Images/miniban2.jpg' class='banner'>";
			csBanners[2] = "<img src='Images/miniban3.jpg' class='banner'>";
			csBanners[3] = "<img src='Images/miniban4.jpg' class='banner'>";
			csBanners[4] = "<img src='Images/miniban5.jpg' class='banner'>";
			//randomize
			var now=new Date();
			var secs=now.getSeconds();
			var rawRandom = Math.random(secs);
			var randomNum = Math.round(rawRandom * (csBanners.length));
			if (randomNum == csBanners.length)(randomNum = 0)
			// assign
			var banner=csBanners[randomNum];	
			return banner;
		}

	function getkey(e)
		{
  			if (window.event)
    		return window.event.keyCode;
  			if (e)
    		return e.which;
  		return null;
		}

	function handleinput(e)
		{
  			if (getkey(e) == 13) 
    		{
    			document.forms[0].submit(); 
    			return false;
    		}
  			return true;
		}
		
	function chgDiv(the_div,the_change)
		{
  			var the_style = getStyleObject(the_div);
			if (the_style != false)
  			{
    			the_style.display = the_change;
  			}
		}

	function hideAll()
		{
			chgDiv("location","none");
			chgDiv("area_code","none");
			chgDiv("reset","none");
			chgDiv("emptyloc", "none");
			chgDiv("emptyac", "none");
			chgDiv("nonum", "none");
		}
	
	function getStyleObject(objectId) 
		{
  			if (document.getElementById && document.getElementById(objectId)) 
			{
    			return document.getElementById(objectId).style;
  			} 
			else if (document.all && document.all(objectId)) 
			{
    			return document.all(objectId).style;
  			} 
			else
			{
    			return false;
  			}
		}

	function validate()
		{
			radioOpt = -1;
			for (i = document.sales.loc.length - 1; i > -1; i--)
			{
				if (document.sales.loc[i].checked)
				{radioOpt = i;}
			}
			if (radioOpt == -1)
			{
				chgDiv("emptyloc","block");
				return false;
			}
			if (document.sales.loc[radioOpt].value == "noa")
			{
				if (document.sales.ac.value == "")
				{
					chgDiv("nonum","none");
					chgDiv("emptyac","block");
					return false;
				}
				else if (parseInt(document.sales.ac.value) != document.sales.ac.value)
				{
					chgDiv("emptyac","none");
					chgDiv("nonum","block");
					return false;
				}
				else
				{
					return true;
				}
			}
			return true;
		}

	function getData(name)	
		{
			var url = window.location.href;
			// find passed values
			var passed = url.split("?");  
			if (passed.length == 0)
			{
				return "";
			}
			var parts = passed[1];
			// separate passed values
			var values = parts.split("&");
			var data = "";
			for (i = 0; i  < values.length ; i++)
			{
				// split data and name
				var value = values[i].split("=");
				if (value[0] == name)
				{
					data = value[1];
					break;
				}
			}
			data = unescape(data);
			return data;
		}

	function genQuote()
		{
			csQuotes=new Array();
			csQuotes[0] = "Tom, thanks for all your support … appreciate your help and you always have a 	‘great’ attitude.  I honestly believe that my success at Advantage has to do with how well we work together.<br><br><b>Advantage Sales & Marketing</b>";
			csQuotes[1] = "Charlie Bendler and Mike Ullrich have gone above and beyond what is expected, even though expectations for these two are very high.  They put the value in VAN.<br><br><b>CSXT</b>";
			csQuotes[2] = "I would like to take a moment to thank you and your Kleinschmidt team for all the effort put forth in making the Logistics Activity website a reality.<br><br><b>Mead Westvaco</b>";
			csQuotes[3] = "If I haven’t told you lately, Kleinschmidt is awesome!  Thank you so much for your quick response.<br><br><b>Weyerhaeuser</b>";
			csQuotes[4] = "Thank you for the top-notch assistance we have received the last several months from your technical services personnel.  They are quite unique relative to other VAN technical service employees in that they are all 1) technically proficient and 2) very willing to help their customer!<br><br><b>Harris Bank</b>";
			csQuotes[5] = "Thank you again for over 10 years of impressive service and unparalleled customer support. You company takes the work out of EDI.<br><br><b>Advantage Food Marketing</b>";
			//randomize
			var now=new Date();
			var secs=now.getSeconds();
			var rawRandom = Math.random(secs);
			var randomNum = Math.round(rawRandom * (csQuotes.length));
			if (randomNum == csQuotes.length)(randomNum = 0)
			// assign
			var quote=csQuotes[randomNum];	
			return quote;
		}

	function hideAllReps()
		{
			chgDiv("myrep","none");
			chgDiv("bobl","none");
			chgDiv("donp","none");
			chgDiv("kevin","none");
			chgDiv("alice","none");
			chgDiv("ralph","none");
			chgDiv("brian","none");
			chgDiv("int","none");
			chgDiv("not","none")
		}

	function showRep(location,salesrep)
		{
			if ( location == "noa" || location == "int")
			{
				var theRep = salesrep.toLowerCase();
				hideAllReps();
				chgDiv(theRep, "block");
				chgDiv("myrep","block");
				return theRep;
			}
			else
			{
			chgDiv("not","block");
			}
		}
		
	function loadValues()
		{
			document.hide.loc.value = getData("loc");
			document.hide.ac.value = getData("ac");
		}

	function findRep(acode)
		{
			switch(acode)
			{
				case "201" : return "BOBL"; break;
				case "202" : return "BOBL"; break;
				case "203" : return "BOBL"; break;
				case "204" : return "RALPH"; break;
				case "205" : return "DONP"; break;
				case "206" : return "RALPH"; break;
				case "207" : return "BOBL"; break;
				case "208" : return "RALPH"; break;
				case "209" : return "RALPH"; break;
				case "210" : return "RALPH"; break;
				case "212" : return "BOBL"; break;
				case "213" : return "RALPH"; break;
				case "214" : return "ALICE"; break;
				case "215" : return "BOBL"; break;
				case "216" : return "KEVIN"; break;
				case "217" : return "ALICE"; break;
				case "218" : return "ALICE"; break;
				case "219" : return "ALICE"; break;
				case "224" : return "ALICE"; break;
				case "225" : return "DONP"; break;
				case "228" : return "DONP"; break;
				case "229" : return "DONP"; break;
				case "231" : return "KEVIN"; break;
				case "239" : return "DONP"; break;
				case "240" : return "BOBL"; break;
				case "242" : return "DONP"; break;
				case "246" : return "DONP"; break;
				case "248" : return "KEVIN"; break;
				case "250" : return "RALPH"; break;
				case "251" : return "DONP"; break;
				case "252" : return "DONP"; break;
				case "253" : return "RALPH"; break;
				case "254" : return "RALPH"; break;
				case "256" : return "DONP"; break;
				case "260" : return "ALICE"; break;
				case "262" : return "ALICE"; break;
				case "265" : return "DONP"; break;
				case "267" : return "BOBL"; break;
				case "268" : return "DONP"; break;
				case "269" : return "KEVIN"; break;
				case "270" : return "KEVIN"; break;
				case "276" : return "BOBL"; break;
				case "281" : return "ALICE"; break;
				case "284" : return "DONP"; break;
				case "289" : return "KEVIN"; break;
				case "301" : return "BOBL"; break;
				case "302" : return "BOBL"; break;
				case "303" : return "KEVIN"; break;
				case "304" : return "KEVIN"; break;
				case "305" : return "DONP"; break;
				case "306" : return "RALPH"; break;
				case "307" : return "RALPH"; break;
				case "308" : return "ALICE"; break;
				case "309" : return "ALICE"; break;
				case "310" : return "RALPH"; break;
				case "312" : return "ALICE"; break;
				case "313" : return "KEVIN"; break;
				case "314" : return "ALICE"; break;
				case "315" : return "BOBL"; break;
				case "316" : return "ALICE"; break;
				case "317" : return "KEVIN"; break;
				case "318" : return "DONP"; break;
				case "319" : return "ALICE"; break;
				case "320" : return "ALICE"; break;
				case "321" : return "DONP"; break;
				case "323" : return "RALPH"; break;
				case "325" : return "RALPH"; break;
				case "330" : return "KEVIN"; break;
				case "331" : return "ALICE"; break;
				case "334" : return "DONP"; break;
				case "336" : return "DONP"; break;
				case "337" : return "DONP"; break;
				case "339" : return "BOBL"; break;
				case "340" : return "DONP"; break;
				case "345" : return "DONP"; break;
				case "347" : return "BOBL"; break;
				case "351" : return "BOBL"; break;
				case "352" : return "DONP"; break;
				case "360" : return "RALPH"; break;
				case "361" : return "RALPH"; break;
				case "386" : return "DONP"; break;
				case "401" : return "BOBL"; break;
				case "402" : return "ALICE"; break;
				case "403" : return "RALPH"; break;
				case "404" : return "DONP"; break;
				case "405" : return "DONP"; break;
				case "406" : return "RALPH"; break;
				case "407" : return "DONP"; break;
				case "408" : return "RALPH"; break;
				case "409" : return "ALICE"; break;
				case "410" : return "BOBL"; break;
				case "412" : return "KEVIN"; break;
				case "413" : return "BOBL"; break;
				case "414" : return "ALICE"; break;
				case "415" : return "RALPH"; break;
				case "416" : return "KEVIN"; break;
				case "417" : return "ALICE"; break;
				case "418" : return "RALPH"; break;
				case "419" : return "KEVIN"; break;
				case "423" : return "DONP"; break;
				case "425" : return "RALPH"; break;
				case "430" : return "ALICE"; break;
				case "432" : return "RALPH"; break;
				case "434" : return "BOBL"; break;
				case "435" : return "RALPH"; break;
				case "440" : return "KEVIN"; break;
				case "441" : return "DONP"; break;
				case "443" : return "BOBL"; break;
				case "450" : return "RALPH"; break;
				case "464" : return "ALICE"; break;
				case "469" : return "ALICE"; break;
				case "470" : return "DONP"; break;
				case "473" : return "DONP"; break;
				case "478" : return "DONP"; break;
				case "479" : return "DONP"; break;
				case "480" : return "RALPH"; break;
				case "484" : return "BOBL"; break;
				case "501" : return "DONP"; break;
				case "502" : return "KEVIN"; break;
				case "503" : return "RALPH"; break;
				case "504" : return "DONP"; break;
				case "505" : return "RALPH"; break;
				case "506" : return "BOBL"; break;
				case "507" : return "ALICE"; break;
				case "508" : return "BOBL"; break;
				case "509" : return "RALPH"; break;
				case "510" : return "RALPH"; break;
				case "512" : return "RALPH"; break;
				case "513" : return "KEVIN"; break;
				case "514" : return "RALPH"; break;
				case "515" : return "ALICE"; break;
				case "516" : return "BOBL"; break;
				case "517" : return "KEVIN"; break;
				case "518" : return "BOBL"; break;
				case "519" : return "KEVIN"; break;
				case "520" : return "RALPH"; break;
				case "530" : return "RALPH"; break;
				case "540" : return "BOBL"; break;
				case "541" : return "RALPH"; break;
				case "559" : return "RALPH"; break;
				case "561" : return "DONP"; break;
				case "562" : return "RALPH"; break;
				case "563" : return "ALICE"; break;
				case "567" : return "KEVIN"; break;
				case "570" : return "BOBL"; break;
				case "573" : return "ALICE"; break;
				case "574" : return "ALICE"; break;
				case "580" : return "DONP"; break;
				case "581" : return "DONP"; break;
				case "585" : return "KEVIN"; break;
				case "586" : return "KEVIN"; break;
				case "601" : return "DONP"; break;
				case "602" : return "RALPH"; break;
				case "603" : return "BOBL"; break;
				case "604" : return "RALPH"; break;
				case "605" : return "RALPH"; break;
				case "606" : return "KEVIN"; break;
				case "607" : return "BOBL"; break;
				case "608" : return "ALICE"; break;
				case "609" : return "BOBL"; break;
				case "610" : return "BOBL"; break;
				case "612" : return "ALICE"; break;
				case "613" : return "KEVIN"; break;
				case "614" : return "KEVIN"; break;
				case "615" : return "KEVIN"; break;
				case "616" : return "KEVIN"; break;
				case "617" : return "BOBL"; break;
				case "618" : return "ALICE"; break;
				case "619" : return "RALPH"; break;
				case "620" : return "ALICE"; break;
				case "623" : return "RALPH"; break;
				case "626" : return "RALPH"; break;
				case "630" : return "ALICE"; break;
				case "631" : return "BOBL"; break;
				case "636" : return "ALICE"; break;
				case "641" : return "ALICE"; break;
				case "646" : return "BOBL"; break;
				case "647" : return "KEVIN"; break;
				case "650" : return "RALPH"; break;
				case "651" : return "ALICE"; break;
				case "660" : return "ALICE"; break;
				case "661" : return "RALPH"; break;
				case "662" : return "DONP"; break;
				case "664" : return "DONP"; break;
				case "678" : return "DONP"; break;
				case "682" : return "ALICE"; break;
				case "701" : return "RALPH"; break;
				case "702" : return "RALPH"; break;
				case "703" : return "BOBL"; break;
				case "704" : return "DONP"; break;
				case "705" : return "KEVIN"; break;
				case "706" : return "DONP"; break;
				case "707" : return "RALPH"; break;
				case "708" : return "ALICE"; break;
				case "709" : return "BOBL"; break;
				case "712" : return "ALICE"; break;
				case "713" : return "ALICE"; break;
				case "714" : return "RALPH"; break;
				case "715" : return "ALICE"; break;
				case "716" : return "KEVIN"; break;
				case "717" : return "BOBL"; break;
				case "718" : return "BOBL"; break;
				case "719" : return "KEVIN"; break;
				case "720" : return "KEVIN"; break;
				case "724" : return "KEVIN"; break;
				case "727" : return "DONP"; break;
				case "731" : return "KEVIN"; break;
				case "732" : return "BOBL"; break;
				case "734" : return "KEVIN"; break;
				case "740" : return "KEVIN"; break;
				case "754" : return "DONP"; break;
				case "757" : return "BOBL"; break;
				case "758" : return "DONP"; break;
				case "760" : return "RALPH"; break;
				case "763" : return "ALICE"; break;
				case "765" : return "KEVIN"; break;
				case "767" : return "DONP"; break;
				case "770" : return "DONP"; break;
				case "772" : return "DONP"; break;
				case "773" : return "ALICE"; break;
				case "774" : return "BOBL"; break;
				case "775" : return "RALPH"; break;
				case "778" : return "RALPH"; break;
				case "779" : return "ALICE"; break;
				case "780" : return "RALPH"; break;
				case "781" : return "BOBL"; break;
				case "784" : return "DONP"; break;
				case "785" : return "ALICE"; break;
				case "786" : return "DONP"; break;
				case "787" : return "DONP"; break;
				case "801" : return "RALPH"; break;
				case "802" : return "BOBL"; break;
				case "803" : return "DONP"; break;
				case "804" : return "BOBL"; break;
				case "805" : return "RALPH"; break;
				case "806" : return "RALPH"; break;
				case "807" : return "KEVIN"; break;
				case "808" : return "RALPH"; break;
				case "809" : return "DONP"; break;
				case "810" : return "KEVIN"; break;
				case "812" : return "KEVIN"; break;
				case "813" : return "DONP"; break;
				case "814" : return "KEVIN"; break;
				case "815" : return "ALICE"; break;
				case "816" : return "ALICE"; break;
				case "817" : return "ALICE"; break;
				case "818" : return "RALPH"; break;
				case "819" : return "RALPH"; break;
				case "828" : return "DONP"; break;
				case "830" : return "RALPH"; break;
				case "831" : return "RALPH"; break;
				case "832" : return "ALICE"; break;
				case "843" : return "DONP"; break;
				case "845" : return "BOBL"; break;
				case "847" : return "ALICE"; break;
				case "848" : return "BOBL"; break;
				case "850" : return "DONP"; break;
				case "856" : return "BOBL"; break;
				case "857" : return "BOBL"; break;
				case "858" : return "RALPH"; break;
				case "859" : return "KEVIN"; break;
				case "860" : return "BOBL"; break;
				case "862" : return "BOBL"; break;
				case "863" : return "DONP"; break;
				case "864" : return "DONP"; break;
				case "865" : return "DONP"; break;
				case "868" : return "DONP"; break;
				case "869" : return "DONP"; break;
				case "870" : return "DONP"; break;
				case "876" : return "DONP"; break;
				case "878" : return "KEVIN"; break;
				case "901" : return "KEVIN"; break;
				case "902" : return "BOBL"; break;
				case "903" : return "ALICE"; break;
				case "904" : return "DONP"; break;
				case "905" : return "KEVIN"; break;
				case "906" : return "KEVIN"; break;
				case "907" : return "RALPH"; break;
				case "908" : return "BOBL"; break;
				case "909" : return "RALPH"; break;
				case "910" : return "DONP"; break;
				case "912" : return "DONP"; break;
				case "913" : return "ALICE"; break;
				case "914" : return "BOBL"; break;
				case "915" : return "RALPH"; break;
				case "916" : return "RALPH"; break;
				case "917" : return "BOBL"; break;
				case "918" : return "DONP"; break;
				case "919" : return "DONP"; break;
				case "920" : return "ALICE"; break;
				case "925" : return "RALPH"; break;
				case "928" : return "RALPH"; break;
				case "931" : return "KEVIN"; break;
				case "936" : return "ALICE"; break;
				case "937" : return "KEVIN"; break;
				case "939" : return "DONP"; break;
				case "940" : return "RALPH"; break;
				case "941" : return "DONP"; break;
				case "947" : return "KEVIN"; break;
				case "949" : return "RALPH"; break;
				case "951" : return "RALPH"; break;
				case "952" : return "ALICE"; break;
				case "954" : return "DONP"; break;
				case "956" : return "RALPH"; break;
				case "970" : return "KEVIN"; break;
				case "971" : return "RALPH"; break;
				case "972" : return "ALICE"; break;
				case "973" : return "BOBL"; break;
				case "978" : return "BOBL"; break;
				case "979" : return "RALPH"; break;
				case "980" : return "DONP"; break;
				case "": return "INT"; break;
				default : return "INT"; break;
			}
		}
		
	function emailme(group)
		{
			if ( group == "ssupport")
			{
				document.forms[0].action="mailto:Terry@Kleinschmidt.com,RonK@kleinschmidt.com,DougA@kleinschmidt.com";
			}
			else
			{
				document.forms[0].action="mailto:Terry@Kleinschmidt.co";
			}
			window.location.reload();
		}
	
	function hideAllPartner()
		{
			chgDiv("bn", "none");
			chgDiv("ba", "none");
			chgDiv("bc", "none");
			chgDiv("bs", "none");
			chgDiv("bz", "none");
			chgDiv("cn", "none");
			chgDiv("ce", "none");
			chgDiv("cp", "none");
			chgDiv("cf", "none");
			chgDiv("id", "none");
			chgDiv("qual", "none");
		}

	function validatePartner()
		{
		var counter = 0;		
		hideAllPartner();	
		if (document.partner.businessName.value == "")
			{chgDiv("bn","block"); counter = counter + 1;}
		if (document.partner.businessAddress1.value == "")
			{chgDiv("ba","block"); counter = counter + 1;}
		if (document.partner.businessCity.value == "")
			{chgDiv("bc","block"); counter = counter + 1 ;}
		if (document.partner.businessState.value == "")
			{chgDiv("bs","block"); counter = counter + 1 ;}
		if (document.partner.businessZipCode.value == "")
			{chgDiv("bz","block"); counter = counter + 1 ;}
		if (document.partner.contact1Name.value == "")
			{chgDiv("cn","block"); counter = counter + 1 ;}
		if (document.partner.contact1Email.value == "")
			{chgDiv("ce","block"); counter = counter + 1 ;}
		if (document.partner.contact1Phone.value == "")
			{chgDiv("cp","block"); counter = counter + 1 ;}
		if (document.partner.contact1Fax.value == "")
			{chgDiv("cf","block"); counter = counter + 1 ;}
		if (document.partner.ID1.value == "")
			{chgDiv("id","block"); counter = counter + 1 ;}
		if (document.partner.qual1.value == "")
			{chgDiv("qual","block"); counter = counter + 1 ;}
		if (counter > 0)
			{return false;}
		else
			return true;
		}

	function hideAllDemo()
		{
			chgDiv("co", "none");
			chgDiv("na", "none");
			chgDiv("em", "none");
			chgDiv("ph", "none");
			chgDiv("mm", "none");
			chgDiv("dd", "none");
			chgDiv("yy", "none");
			chgDiv("tm", "none");
			chgDiv("zn", "none");
		}

	function validateDemo()
		{
		var counter = 0;		
		var str = document.demo.email.value;
		var emadd = str.toLowerCase();
		hideAllDemo();
		
		if (document.demo.company.value == "")
			{chgDiv("co","block"); counter = counter + 1;}
		if (document.demo.name.value == "")
			{chgDiv("na","block"); counter = counter + 1;}
		if (! emailCheck(emadd))
			{chgDiv("em","block"); counter = counter + 1 ;}
		if (document.demo.phone.value == "")
			{chgDiv("ph","block"); counter = counter + 1 ;}
		if (document.demo.month.value == "")
			{chgDiv("mm","block"); counter = counter + 1 ;}
		if (document.demo.day.value == "")
			{chgDiv("dd","block"); counter = counter + 1 ;}
		if (document.demo.year.value == "")
			{chgDiv("yy","block"); counter = counter + 1 ;}
		if (document.demo.time.value == "")
			{chgDiv("tm","block"); counter = counter + 1 ;}
		if (document.demo.zone.value == "")
			{chgDiv("zn","block"); counter = counter + 1 ;}
		if (counter > 0)
			{return false;}
		else
			return true;
		}

	function hideAllLogon()
		{
			chgDiv("typ", "none");
			chgDiv("org", "none");
			chgDiv("add", "none");
			chgDiv("cit", "none");
			chgDiv("sta", "none");
			chgDiv("zip", "none");
			chgDiv("con", "none");
			chgDiv("ema", "none");
			chgDiv("pho", "none");
		}

	function validateLogon()
		{
		var counter = 0;		
		var str = document.logon.email.value;
		var emaddy = str.toLowerCase();
		hideAllLogon();
		
		if (document.logon.type.value == "")
			{chgDiv("typ","block"); counter = counter + 1;}
		if (document.logon.org.value == "")
			{chgDiv("org","block"); counter = counter + 1;}
		if (document.logon.address1.value == "")
			{chgDiv("add","block"); counter = counter + 1;}
		if (document.logon.city.value == "")
			{chgDiv("cit","block"); counter = counter + 1 ;}
		if (document.logon.state.value == "")
			{chgDiv("sta","block"); counter = counter + 1 ;}
		if (document.logon.zip.value == "")
			{chgDiv("zip","block"); counter = counter + 1 ;}
		if (document.logon.contact.value == "")
			{chgDiv("con","block"); counter = counter + 1 ;}
		if (! emailCheck(emaddy))
			{chgDiv("ema","block"); counter = counter + 1 ;}
		if (document.logon.phone.value == "")
			{chgDiv("pho","block"); counter = counter + 1 ;}
		if (counter > 0)
			{return false;}
		else
			return true;
		}

	function emailCheck(emailStr) 
		{  
			/* Check 2 or 3 letter country or TLD.  1 = check, 0 = don't. */
			var checkTLD=1;

			/*TLDs an e-mail address must end with. */
			var knownDomsPat=/^(arpa|root|aero|biz|cat|com|coop|edu|gov|info|int|jobs|mil|mobi|museum|name|net|org|pro|travel)$/;
			var emailPat=/^(.+)@(.+)$/;
			var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
			var validChars="\[^\\s" + specialChars + "\]";
			var quotedUser="(\"[^\"]*\")";
			var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
			var atom=validChars + '+';
			var word="(" + atom + "|" + quotedUser + ")";
			var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
			var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");

			/* Check basic pattern */
			var matchArray=emailStr.match(emailPat);
			if (matchArray==null) { return false;}

			var user=matchArray[1];
			var domain=matchArray[2];

			/* Check if valid ASCII characters (0 to 127) */
			for (i=0; i<user.length; i++) 
				{if (user.charCodeAt(i)>127) {return false;}}
			for (i=0; i<domain.length; i++) 
				{if (domain.charCodeAt(i)>127) {return false;}}

			/* Check if "user" is valid */
			if (user.match(userPat)==null) {return false;}
			
			/* Check if valid IP */
			var IPArray=domain.match(ipDomainPat);
			if (IPArray!=null) 
				{for (var i=1;i<=4;i++) 
				{if (IPArray[i]>255) {return false;}}
				return true;}

			/* Check if domain is valid */
			var atomPat=new RegExp("^" + atom + "$");
			var domArr=domain.split(".");
			var len=domArr.length;
			for (i=0;i<len;i++) 
				{if (domArr[i].search(atomPat)==-1) {return false;}}

			/* Check for TLD or country */
			if (checkTLD && domArr[domArr.length-1].length!=2 && 
			    domArr[domArr.length-1].search(knownDomsPat)==-1) 
				{return false;}

           	/* Check host name */
		   	if (len<2) {return false;}

		 	/* It's valid */
			return true;
		}
		
	function loadFilterValues()
		{
			document.request.loc.value = getData("location");
			document.request.emailaddr.value = getData("email");
		}

	function chkArea()
		{
			if (document.request.loc.value == "NOA")
			{
				chgDiv("statediv", "block");
				chgDiv("regiondiv", "none");
			}
			else
			{
				chgDiv("statediv", "none");
				chgDiv("regiondiv", "block");
			}
		}		

	function hideFilter()
		{
			chgDiv("region", "none");
			chgDiv("addy", "none");
		}

	function validateFilter()
		{
		var counter = 0;
		var emailAdd = document.filter.email.value.toLowerCase()
		hideFilter();	
		if (document.filter.location.value == "")
			{chgDiv("region","block"); counter = counter + 1;}
		if (! emailCheck(emailAdd))
			{chgDiv("addy","block"); counter = counter + 1;}
		if (counter > 0)
			{return false;}
		else
			return true;
		}

// 
