function validate(CompCode, OrderBy, Email, TitleNum, County, Remember, Boros, Page, Confirm, Date1, Date2, Date3) 
{
	var CRLF = unescape("%0D%0A"); //CRLF

	// validate sales tax
	var str = "";
	var tblSalesTx = document.getElementById('tblSalesTax1');
	if(tblSalesTx != null){
		var delim = ";"
		var hdnSalesTx = document.getElementById('hdnSalesTax');
		hdnSalesTx.value = "";
		//var blanket = document.getElementById('txtBlanketCert').value
		//if(blanket != null) 
		//	str =  "Blanket Resale Cert: " + blanket + "~\n";
		for(i=1;i<tblSalesTx.rows.length;i++){
			var r = tblSalesTx.rows[i];
			str += r.cells[0].innerText + delim;
			str += (r.cells[1].getElementsByTagName('input')[0].checked ? "Y":"N") + delim;
			str += (r.cells[2].getElementsByTagName('input')[0].checked ? "Y":"N") + delim + "~\n";
			//str += r.cells[3].getElementsByTagName("input")[0].value + "~\n";
		}
		//alert(str);
		hdnSalesTx.value = str;
		//return false;
	}

	if(CompCode.value=='' || OrderBy.value=='' || Email.value=='' || TitleNum.value=='' || County.value==''){
		alert('Required Field Missing:' + CRLF + CRLF + '- Company Code' + CRLF + '- Ordered By' + CRLF + '- Email Address' + CRLF + '- Title Number' + CRLF + '- County');
		if(County.value=='') { County.focus(); }
		if(TitleNum.value=='') { TitleNum.focus(); }
		if(Email.value=='') { Email.focus(); }
		if(OrderBy.value=='') { OrderBy.focus(); }
		if(CompCode.value=='') { CompCode.focus(); }
		return false;
	} 
	else {
		if(!Email.value.match(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/)){
			// Custom Email Expression Validation: (/^\w+([\.\-]\w+)*\@\w+([\-\.]\w+)*\.[a-z]{2,4}$/i)
			// Cusomt Email Expression Validation: (/^[\w-]+@[\w-]+\.(com|net|org|edu|mil|gov|co.uk|co.im)$/)
			alert("Invalid Email Address: " + CRLF + CRLF + Email.value);
			Email.focus(); 
			return false;	
		}
		else {		
			if(Remember.checked){
				setcookie("remember","True");
				setcookie("compcode",CompCode.value);
				setcookie("orderedby",OrderBy.value);
				setcookie("email",Email.value.split(';').join('||'));
				setcookie("confirm",Confirm.checked);
				if(Page=='1') {setcookie("5boros",Boros.checked);}
			}
			else {
				delcookie("remember","F");
				delcookie("compcode","F");
				delcookie("orderedby","F");
				delcookie("email","F");
				delcookie("confirm","F");
				delcookie("5boros","F");
			}
			if(Date1.value!='') {
				if (isDate(Date1.value,Page)==false){
					Date1.focus();
					return false;
				}
			}
			if(Date2.value!='') {
				if (isDate(Date2.value,Page)==false){
					Date2.focus();
					return false;
				}
			}
			if(Date3.value!='') {
				if (isDate(Date3.value,Page)==false){
					Date3.focus();
					return false;
				}
			}
			return true;
		}
	}
}
function replace(string,text,by) 
{
    var strLength = string.length, txtLength = text.length;
    if ((strLength == 0) || (txtLength == 0)) return string;

    var i = string.indexOf(text);
    if ((!i) && (text != string.substring(0,txtLength))) return string;
    if (i == -1) return string;

    var newstr = string.substring(0,i) + by;

    if (i+txtLength < strLength)
        newstr += replace(string.substring(i+txtLength,strLength),text,by);

    return newstr;
}
function performsearch(type) {
	var blog = document.getElementById('txtValidLog'); 
	var sloc = document.getElementById('txtLocation');
	if(blog.value=='True' || sloc.value=='sds')
	{
		if(document.all){
			var k=event.keyCode;
		}
		else{
			var k=event.which;
		}
		if(k==13){
			switch(type) {
				case 1:strtsearch(document.getElementById('lstCounty'), document.getElementById('txtStreetNumber'), document.getElementById('txtStreetName'),document.getElementById('txtDistrict')); break; 
				case 2:detailsearch(document.getElementById('lstCounty'), document.getElementById('txtDistrict'), document.getElementById('txtSection'), document.getElementById('txtBlock'), document.getElementById('txtLot')); break; 
				case 3:ownersearch(document.getElementById('lstCounty'), document.getElementById('txtOwner'),document.getElementById('txtDistrict')); break; 
				case 4:acctsearch(document.getElementById('lstCounty'), document.getElementById('txtAccountNumber'),document.getElementById('txtDistrict')); break;
				default: alert('No search performed'); break;
			}
		}
	}
}
function strtsearch(County, StreetNumber, StreetName, District) 
{
	if (requiredfields(County)==false){
		return false;
	}
	else {
		if(StreetName.value=='') {
			alert('Street Name is blank');
			StreetName.focus();
			return false;
		}
		else {
			openpage(County, 'searchaddress.aspx?type=s&c=' + County.value + '&s=' + StreetNumber.value + '|||' + StreetName.value + '&d=' + District.value + '&p=0');
			return true;
		}
	}
}
function ownersearch(County, Owner, District) 
{
	if (requiredfields(County)==false){
		return false;
	}
	else {
		if(Owner.value=='') {
			alert('Owner is blank');
			Owner.focus();
			return false;
		}
		else {
			openpage(County, 'searchaddress.aspx?type=o&c=' + County.value + '&o=' + Owner.value + '&d=' + District.value + '&p=0');
			return true;
		}
	}
}
function acctsearch(County, Account, District) 
{
	if (requiredfields(County)==false){
		return false;
	}
	else {
		var ctycode = County.value.substring(0,2);
		if(ctycode=='BX' || ctycode=='KG' || ctycode=='MA' || ctycode=='QN' || ctycode=='RI' || ctycode=='SU' || ctycode=='NS'){
			alert('This search is not available for this county.');
			return false;
		}
		if(Account.value=='') {
			alert('Account No. is blank');
			Account.focus();
			return false;
		}
		else {
			openpage(County, 'searchaddress.aspx?type=a&c=' + County.value + '&a=' + Account.value + '&d=' + District.value + '&p=0');
			return true;
		}
	}
}
function detailsearch(County, District, Section, Block, Lot) 
{
	if (requiredfields(County)==false){
		return false;
	}
	else {
		if(Section.value=='') {
			alert('Section is blank');
			Section.focus();
			return false;
		}
		if(Block.value=='') {
			alert('Block is blank');
			Block.focus();
			return false;
		}
		if(Lot.value=='') {
			alert('Lot is blank');
			Lot.focus();
			return false;
		}
		openpage(County, 'searchaddress.aspx?type=d&c=' + County.value + '&d=' + District.value + '&s=' + Section.value + '&b=' + Block.value + '&l=' + Lot.value + '&v=&p=0');
		return true;
	}
}
function requiredfields(County)
{
	if(County.value==''){
		alert('County is blank');
		County.focus();
		return false;
	}
	else {
	//	var ctycode = County.value.substring(0,2);
	//	if(ctycode=='BX' || ctycode=='KG' || ctycode=='MA' || ctycode=='QN' || ctycode=='RI' || ctycode !='SU'){
	//		return true;
	//	}
	//	else {
	//		if(document.getElementById('lstCityTown').value=='') {
	//			alert('Town is blank');
	//			document.getElementById('lstCityTown').focus();
	//			return false;
	//		}
	//		else {
	//			return true;
	//		}
	//	}		
		return true;
	}
}
function openpage(county, link) 
{
	var twn;
	var ctycode = county.value.substring(0,2);
	if(ctycode=='BX' || ctycode=='KG' || ctycode=='MA' || ctycode=='QN' || ctycode=='RI'){
		twn='&t=';
	}
	else {
		twn='&t=' + document.getElementById('lstCityTown').value;		
	}
	setcookie('repeat',link + twn);
	window.open(link + twn, 'CustomPopUp', 'width=750, height=300, menubar=no, resizable=no, scrollbars=yes');
}
function repeatsearch() 
{
	var link = getcookie('repeat');
	if(link!=0) {
		window.open(getcookie('repeat'), 'CustomPopUp', 'width=750, height=300, menubar=no, resizable=no, scrollbars=yes');
	}
}
function setcookie(name, value) 
{
	var expireDate = new Date;
	expireDate.setMonth(expireDate.getYear()+100);
	document.cookie = name + "=" + escape(value) + "; expires=" + expireDate.toGMTString();
} 
function getcookie(name) 
{
    var dcookie = document.cookie; 
    var cname = name + "=";
    var clen = dcookie.length;
    var cbegin = 0;
        while (cbegin < clen) {
			var vbegin = cbegin + cname.length;
            if (dcookie.substring(cbegin, vbegin) == cname) 
            { 
				var vend = dcookie.indexOf (";", vbegin);
                if (vend == -1) vend = clen;
				return unescape(dcookie.substring(vbegin, vend));
            }
			cbegin = dcookie.indexOf(" ", cbegin) + 1;
            if (cbegin == 0) break;
        }
    return 0;
}
function delcookie(name,all) {
	var expireDate = new Date();
	expireDate.setDate(expireDate.getDate()-1);
	if(all=='F')
	{
		document.cookie = name + "=;expires=" + expireDate.toGMTString();
	}
	else {
		thisCookie = document.cookie.split("; ");	                        
	    for (i=0; i<thisCookie.length; i++) {
	    	var cookieName = thisCookie[i].split("=")[0];
	    	document.cookie = cookieName + "=;expires=" + expireDate.toGMTString();
	    }
	}
}
//if (document.layers || document.all) document.onkeypress = defaultbutton;
//function defaultbutton(e)
//{
	//The ASCII code for the enter press is 13
//	if ((document.layers && e.which == 13) || (document.all && window.event.keyCode == 13))
	//IE will recognize window.event.keyCode & Netscape will recognize e.which as the names for the keypress.
//	{
//		document.getElementById('btnValidate').focus();
//	}
//}
function runcheckbox(type)
{
	if(document.getElementById('txtName1').value=='') {
		document.getElementById('chk' + type + '1').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '1').checked) {
		document.getElementById('chk' + type + '1').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '1').checked=1;
		}
	}
	
	if(document.getElementById('txtName2').value=='') {
		document.getElementById('chk' + type + '2').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '2').checked) {
		document.getElementById('chk' + type + '2').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '2').checked=1;
		}
	}
	
	if(document.getElementById('txtName3').value=='') {
		document.getElementById('chk' + type + '3').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '3').checked) {
		document.getElementById('chk' + type + '3').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '3').checked=1;
		}
	}
	
	if(document.getElementById('txtName4').value=='') {
		document.getElementById('chk' + type + '4').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '4').checked) {
		document.getElementById('chk' + type + '4').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '4').checked=1;
		}
	}
	
	if(document.getElementById('txtName5').value=='') {
		document.getElementById('chk' + type + '5').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '5').checked) {
		document.getElementById('chk' + type + '5').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '5').checked=1;
		}
	}
	
	if(document.getElementById('txtName6').value=='') {
		document.getElementById('chk' + type + '6').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '6').checked) {
		document.getElementById('chk' + type + '6').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '6').checked=1;
		}
	}
	
	if(document.getElementById('txtName7').value=='') {
		document.getElementById('chk' + type + '7').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '7').checked) {
		document.getElementById('chk' + type + '7').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '7').checked=1;
		}
	}
	
	if(document.getElementById('txtName8').value=='') {
		document.getElementById('chk' + type + '8').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '8').checked) {
		document.getElementById('chk' + type + '8').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '8').checked=1;
		}
	}
	
	if(document.getElementById('txtName9').value=='') {
		document.getElementById('chk' + type + '9').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '9').checked) {
		document.getElementById('chk' + type + '9').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '9').checked=1;
		}
	}
	
	if(document.getElementById('txtName10').value=='') {
		document.getElementById('chk' + type + '10').checked = 0;
	}
	else {
		if(document.getElementById('chk' + type + '10').checked) {
		document.getElementById('chk' + type + '10').checked = 0;
		}
		else {
			document.getElementById('chk' + type + '10').checked=1;
		}
	}
	UpdateSalesTax2(type);
}
