
//sets enter key to submit form
function IE(){
	if ((window.event && window.event.keyCode == 13)&&(event.srcElement.type != "")) {
		doSearch();
	}	
}
function NS(e){
	if ((e.which == 13)&&(e.target.type != "")){
		doSearch();
	}
}
if (document.all){
	document.onkeydown=IE;
}else{
	document.captureEvents(Event.ONKEYDOWN);
	document.onkeydown=NS;
}
//end sets
function advFrmInit(){
	buildForm();
	setDefaults();
	var prevSearch 	= getCookie("MH-advancedSearch");
	if (prevSearch != null){
	    loadPrevSearch(prevSearch);
		deleteCookie('MH-advancedSearch', '', '');
		checkSt();
		checkRating();
	}
	deleteCookie('MH-basicSearch', '', '');
	checkCity();
}
function setDefaults(){
	var formObj = document.qsearch;	
	formObj.ft.options[0].selected 	    = true;
	//formObj.tl.options[0].selected 		= true;
	formObj.pig.options[0].selected		= true;
	//formObj.rd.options[0].selected		= true;
	formObj.country.options[0].selected 		= true;
	formObj.aop.options[0].selected 		= true;
	formObj.ind.options[0].selected	 	= true;
	formObj.badmin.options[0].selected	 	= true;
	formObj.ny.options[0].selected 		= true;
	formObj.fs.options[0].selected	 	= true;
	formObj.mm.options[0].selected	 	= true;
	formObj.br.options[0].selected	 	= true;	
	formObj.rt.disabled = false;
}
function loadPrevSearch(args){
	var formObj		= document.qsearch;
	var arParams	= args.split("^");
	var val			= "";	
	for (a = 0; a < arParams.length; a++){
		val = arParams[a].split("=");
		val1 = unescape(val[1]);	
		if (val1 != ""){ 
			switch(val[0])
			{
				case "ft" : 
					formObj.ft.value = val1;
					buildForm();
					continue;
				case "fn" : 
					formObj.fn.value = val1;
					continue;
				case "ln" : 
					formObj.ln.value = val1;
					continue;
				//case "tl" : 
					//formObj.tl.value = val1;
					//continue;
				case "pi" : 
					prevSelected(val1, formObj.pig);
					continue;
				case "nm" : 
					formObj.nm.value = val1;
					continue;
				//case "AFF" : 
					//formObj.AFF.value = val1;
					//continue;
				case "ct" : 
					formObj.ct.value = val1;
					continue;
				//case "radSearch" : 
					//prevChecked(val1, formObj.radSearch);				
					//continue;
				//case "rd" : 
					//prevSelected(val1, formObj.rd);				
					//continue;
				case "cy" : 
					formObj.cy.value = val1;
					continue;
				case "st" : 
					prevSelected(val1, formObj.state);
					continue;
				case "cr" : 
					prevSelected(val1, formObj.country);
					continue;
				case "pa" : 
					prevSelected(val1, formObj.aop);
					continue;	
				case "lg" : 
					formObj.lg.value = val1;
					continue;	
				case "ig" : 
					prevSelected(val1, formObj.ind);
					continue;
				case "ba" : 
					prevSelected(val1, formObj.badmin);
					continue;
				case "ny" : 
					formObj.ny.value = val1;
					continue;
				case "co" : 
					formObj.co.value = val1;
					continue;
				case "ls" : 
					formObj.ls.value = val1;
					continue;
				case "pp" : 
					prevChecked(val1, formObj.pp2);				
					continue;
				//case "ipind" : 
					//prevChecked(val1, formObj.ipind);				
					//continue;
				case "dp" : 
					prevChecked(val1, formObj.dp2);				
					continue;
				case "fs" : 
					formObj.fs.value = val1;
					continue;
				//case "REV" : 
					//formObj.REV.value = val1;
					//continue;					
				case "kw" : 
					formObj.kw.value = val1;
					continue;
				case "rt" : 
					prevChecked(val1, formObj.rt2);				
					continue;
				case "mm" : 
					formObj.mm.value = val1;				
					continue;
				case "br" : 
					formObj.br.value = val1;		
					continue;
				default : 
					continue;
			}	
		}	
	}	
}
function prevChecked(val, obj){
	if((val=="Y")||(val=="10")){
		obj.checked = true;
	}else{
		obj.checked = false;		
	}
}
function prevSelected(val, obj){
	var str = val;
	var arstr	= str.split(" or ");
	obj[0].selected = false; //reset default
	for (x = 0; x < obj.length; x++){
		for (j = 0; j < arstr.length; j++){
			if (obj[x].value == arstr[j]){
				obj[x].selected = true;
			}
		}
	}	
}
var stateSel = "";
function selected(obj){
	var num = 0;
	arStates = new Array();
	for (v=0; v<obj.length; v++){		
		if (obj[v].selected){
			arStates[num] = obj[v].value;
			num++;
		}
	}
	stateSel = arStates;
}
function checkSelected(obj){
var count = 0;
	for (x = 0; x < obj.length; x++){
		if(obj[x].value != ""){
			for (j = 0; j < stateSel.length; j++){
				if (obj[x].value == stateSel[j]){
					obj[x].selected = true;
					count++;
					break;
				}
			}
		}
	}	
	if (count!=0){
		obj[0].selected = false;
	}
}
function checkRating(){

	var doc	= document.forms['qsearch'];
	var allowRated = true;
	var ctry = doc.country;
	for (i=0;i<ctry.length;i++){
		if (ctry[i].selected){
			val = ctry[i].value;
			if (!((val == 1)||(val == 2)||(val == 3)||(val == 4)||(val == 5)||(val == 202)||(val == ""))){
				allowRated = false;
				break;
			}
		}
	}
	if(!(allowRated)){
		doc.rt2.checked = false;
		doc.rt2.disabled = true;
	} else {
		doc.rt2.disabled = false;
	}
}
function checkCtry(obj){
	var obj1 = document.forms['qsearch'].state;	
	var val = "";
	if (!(obj[1].selected)){
		uncheckSP(obj1, us);
	}
	if (!(obj[2].selected)){
		uncheckSP(obj1, canada);
	}
	checkRating();
	checkCity();
}
function uncheckSP(obj, ar){
	obj[0].selected=false;
	for (i=0; i<obj.length; i++){
		for (j=0; j<ar.length; j++){
			if (obj[i].value == ar[j][0]){
				obj[i].selected = false;
			}
		}
	}
}
function checkCity(){
}
function validateRD(){
	var doc				= document.qsearch;
	var countryCount 	= 0;
	var stateCount		= 0;
	var totalCount		= 0;
	if (!(doc.country.options[1].selected)){
		return false;
	} else {
		for (i=0; i< doc.country.length; i++){
			if (doc.country.options[i].selected){
				countryCount++;
			}
			if (countryCount > 1){
				return false;
			}
		}
	}
	var obj = doc.state.options; 
	for(z=0; z< doc.state.length; z++){
		if (doc.state.options[z].selected){
			totalCount++;
			for(x=0; x< us.length; x++){
				if (doc.state.options[z].value == us[x][0]){
					stateCount++;
					if (stateCount > 1){
						return false;
					}
					break;
				}
			}
		}
	}
	if ((stateCount==0)||(totalCount-1>1)){
		return false;
	}	
	return true;
}
function buildForm(){
	var formObj		= document.qsearch;
	var form = document.qsearch.ft.value;
	//LABELS FOR NAME FIELD
	document.getElementById("divFirmLabel").style.display 		= "none";
	document.getElementById("divCompanyLabel").style.display 	= "none";
	document.getElementById("divSchoolLabel").style.display 	= "none";
	document.getElementById("divOrgLabel").style.display 		= "none";
	document.getElementById("divGovLabel").style.display 		= "none";
	document.getElementById("aop1").style.display 		        = "none";
	document.getElementById("aop2").style.display 		        = "none";
	switch(form)
	{
   		case "1" : // Lawyers
			document.getElementById("divFirmLabel").style.display 		= "block";
			document.getElementById("aop1").style.display 		        = "block";
			showForm("block", "none", "none", "block", "block", "block", "block", "block", "none", "block", "block", "block", "none", "block", "block", "block", "none", "block", "none", "block", "none");
			showState("false");
			formObj.fn.focus();
			break;
   		case "2" : // Law Firms
			document.getElementById("divFirmLabel").style.display 	= "block";
			document.getElementById("aop1").style.display 		        = "block";
			showForm("none", "none", "none", "block", "block", "block", "block", "block", "block", "block", "block", "block", "block", "none", "none", "block", "none", "none", "block", "none", "block");
       		showState("false");
			formObj.nm.focus();
			break;
		case "6" : // In-house Counsel		
			document.getElementById("divCompanyLabel").style.display 	= "block";	
			document.getElementById("aop2").style.display 		        = "block";
			showForm("block", "block", "none", "block", "block", "block", "block", "block", "none", "block", "block", "block", "none", "block", "block", "block", "none", "block", "none", "none", "none");
       		showState("false");
			formObj.fn.focus();
			break;			
   		case "3" : // Corporate Legal Departments
			document.getElementById("divCompanyLabel").style.display 		= "block";
			document.getElementById("aop1").style.display 		        = "block";
			showForm("none", "none", "none", "block", "block", "block", "block", "none", "none", "block", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none");
			showState("false");
			formObj.nm.focus();
			break;
		case "4" : // Government
			document.getElementById("divGovLabel").style.display 		= "block";
			document.getElementById("aop1").style.display 		        = "block";
			showForm("block", "none", "none", "block", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none");
       		showState("false");
			formObj.fn.focus();
			break;
		case "5" : // Law School Faculty Members
			document.getElementById("divSchoolLabel").style.display 	= "block";
			document.getElementById("aop1").style.display 		        = "block";
			showForm("block", "none", "none", "block", "block", "none", "none", "none", "none", "block", "none", "none", "none", "none", "none", "none", "block", "block", "none", "none", "none");
       		showState("true");
			formObj.fn.focus();
			break;
		case "7" : // Law Firm Practice/Industry Group Profiles
			document.getElementById("divFirmLabel").style.display 	= "block";
			document.getElementById("aop1").style.display 		        = "block";
			showForm("none", "none", "block", "block", "block", "block", "block", "none", "none", "block", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none");
       		showState("false");
			break;
   		default : // show no form
			showForm("none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none", "none");
			break;
	}	
}

var isMember = "true";
function showState(bool){
	var arPrevVal = "";
	for (var i=0; i<document.getElementById("state").length; i++){
		if (document.getElementById("state").options[i].selected){
			arPrevVal += document.getElementById("state").options[i].value + ",";
		}		
	}
	if (arPrevVal != ""){
		arPrevVal = arPrevVal.substring(0,arPrevVal.length-1);
	}
	if(bool == "true"){
		document.getElementById("sp1").style.display = "none";
		document.getElementById("sp2").style.display = "block";
		loadStates(document.getElementById("state"));
		isMember = "true";
		arPrevVal = arPrevVal.split(",");
		for (var i=0; i < arPrevVal.length; i++){
			for (var j=0; j< document.getElementById("state").length; j++){
				if ((document.getElementById("state").options[j].value == arPrevVal[i])&&(document.getElementById("state").options[j].value != "")){
					document.getElementById("state").options[0].selected = false;
					document.getElementById("state").options[j].selected = true;
				}
			}
		}
		//if (prevVal > 0 && prevVal < 56)
			//document.getElementById("state").value = prevVal;
		document.getElementById("divCtry").style.display = "none";
	}else if (isMember == "true"){
		document.getElementById("sp1").style.display = "block";
		document.getElementById("sp2").style.display = "none";
		loadAllStatesProvinces(document.getElementById("state"));
		isMember = "false";
		arPrevVal = arPrevVal.split(",");
		for (var i=0; i < arPrevVal.length; i++){
			for (var j=0; j< document.getElementById("state").length; j++){
				if ((document.getElementById("state").options[j].value == arPrevVal[i])&&(document.getElementById("state").options[j].value != "")){
					document.getElementById("state").options[0].selected = false;
					document.getElementById("state").options[j].selected = true;
				}
			}
		}
		document.getElementById("divCtry").style.display = "block";
	}	
}
function showForm(str1, str2, str3, str4, str5, str6, str7, str8, str9, str10, str11, str12, str13, str14, str15, str16, str17, str18, str19, str20, str21){

	document.getElementById("divName").style.display 			= str1;
	//document.getElementById("divTitle").style.display 			= str2;
	document.getElementById("divPraGroup").style.display 		= str3;
	document.getElementById("divFirm").style.display 			= str4;
	document.getElementById("divCity").style.display 			= str5;
	//document.getElementById("divRad").style.display 			= str6;
	document.getElementById("divCounty").style.display 			= str7;
	document.getElementById("divPeer").style.display 			= str8;	
	document.getElementById("divSearchProfiles").style.display 	= str9;
	document.getElementById("divCountry").style.display 		= str10;
	document.getElementById("divAOP").style.display 			= str11;
	document.getElementById("divIndAdm").style.display 			= str12;
	document.getElementById("divIndustryGroup").style.display 	= str13;
	document.getElementById("divBarAdm").style.display 			= str14;
	document.getElementById("divNumYears").style.display 		= str15;
	document.getElementById("divLanguage").style.display 		= str16;
	document.getElementById("divCourses").style.display 		= str17;
	document.getElementById("divSchool").style.display 			= str18;	
	document.getElementById("divFirmSize").style.display 		= str19;
	document.getElementById("divMemberships").style.display 	= str20;
	document.getElementById("divBarRegistry").style.display 	= str21;	
}
function doSearch(){ //TBD
	var formObj		= document.qsearch;
	replaceDiacriticals(formObj.fn);
	replaceDiacriticals(formObj.ln);
	replaceDiacriticals(formObj.nm);
	replaceDiacriticals(formObj.ct);
	replaceDiacriticals(formObj.kw);
	replaceDiacriticals(formObj.co);
	replaceDiacriticals(formObj.ls);
	replaceDiacriticals(formObj.cy);
	replaceDiacriticals(formObj.lg);

	var firstName 	= trimString(formObj.fn.value); // First Name
	if (!(checkWildCard(firstName))){
		return;
	}
	var lastName 	= trimString(formObj.ln.value); // Last Name
	if (!(checkWildCard(lastName))){
		return;
	}
	//var title		= formObj.tl.value; // Title
	var praIndGroup	= multiSelect(formObj.pig); // Practice/Industry Group
	formObj.pi.value = praIndGroup;
	var firmName 	= trimString(formObj.nm.value);//Firm/Org/School/Company Name
	if (!(checkWildCard(firmName))){
		return;
	}
	var city  		= trimString(formObj.ct.value); // City
	//var radius		= formObj.rd.value; // Radius
	var county		= trimString(formObj.cy.value); // County
	var sRated		= check(formObj.rt2); // Show only Peer Review Rated
	if (sRated == "Y"){
		formObj.rt.value = "Y";
	}
	var sPractice	= check(formObj.pp2); // Show Firms with Practice Group Profiles 
	if (sPractice == "Y"){
		formObj.pp.value = "Y";
	}
	var sDiversity	= check(formObj.dp2); // Show Firms with Diversity Profiles
	if (sDiversity == "Y"){
		formObj.dp.value = "Y";
	}
	var state		= multiSelect(formObj.state); // US State Canadian Province
    formObj.st.value = state;	
	var country		= multiSelect(formObj.country); // Country	
	formObj.cr.value = country;
	var aop			= multiSelect(formObj.aop); // Practice Areas
	formObj.pa.value = aop;
	var keywords	= trimString(formObj.kw.value); // Keywords
	var indGroup	= multiSelect(formObj.ind); // Industry Groups
	formObj.ig.value = indGroup;
	var bar			= multiSelect(formObj.badmin); // Bar Admissions
	formObj.ba.value = bar;
	var numYears	= formObj.ny.value; // Years in Practice
	var language	= trimString(formObj.lg.value); // Languages 
	var courses		= trimString(formObj.co.value); // Courses Taught
	var lawSchool	= trimString(formObj.ls.value); // Law School Attended
	var firmSize	= formObj.fs.value; // Firm Size
	var memberships	= formObj.mm.value; // Major Memberships
	var barRegister	= formObj.br.value; // Bar Registry Parctice area
	
	
	
	var form = formObj.ft.value;
	//build cookie values
	
	
	var cookieVals = "ft=" + form + "^fn=" + firstName + "^pi=" + praIndGroup + "^ln=" + lastName + "^nm=" + firmName + "^ct=" + city + "^st=" + state + "^cr=" + country + "^pa=" + aop + "^kw=" + keywords + "^rt=" + sRated + "^cy=" + county + "^pp=" + sPractice + "^dp=" + sDiversity + "^ig=" + indGroup + "^ba=" + bar + "^ny=" + numYears + "^lg=" + language + "^co=" + courses + "^ls=" + lawSchool + "^fs=" + firmSize + "^mm=" + memberships + "^br=" + barRegister;
	
	switch(form)
	{
   		case "1" : // Lawyers
			if ((firstName == "")&&(lastName == "")&&(firmName == "")&&(city == "")&&(county == "")&&(state == "")&&(country == "")&&(sRated=="")&&(aop == "")&&(keywords == "")&&(bar=="")&&(numYears == "")&&(language == "")&&(lawSchool == "")&&(memberships == "")){
				alert("You must first enter your search criteria before submitting this form.");
				return;
			}
			//alert("Your for Search for Lawyers used the following criteria:\r\n" + firstName + lastName + firmName + city + radius + county + state + country + sRated + aop + keywords + bar + numYears + language + lawSchool + memberships + "\r\nYour Search has been submited");
			break;
   		case "2" : // Law Firms
			if ((firmName == "")&&(city == "")&&(county == "")&&(state == "")&&(country == "")&&(sRated=="")&&(sPractice=="")&&(sDiversity=="")&&(aop == "")&&(keywords == "")&&(indGroup=="")&&(language == "")&&(firmSize == "")&&(barRegister == "")){
				alert("You must first enter your search criteria before submitting this form.");
				return;
			}
			//alert("Your for Search for Law Firms used the following criteria:\r\n" + firmName + city + radius + county + state + country + sRated + sPractice + sDiversity + aop + keywords + indGroup + language + firmSize + barRegister + "\r\nYour Search has been submited");
       		break;
		case "6" : // In-house Counsel	
			if ((firstName == "")&&(lastName == "")&&(firmName == "")&&(city == "")&&(county == "")&&(state == "")&&(country == "")&&(sRated=="")&&(aop == "")&&(keywords == "")&&(bar=="")&&(numYears == "")&&(language == "")&&(lawSchool == "")){
				alert("You must first enter your search criteria before submitting this form.");
				return;
			}
			//alert("Your for Search for In-house Counsel used the following criteria:\r\n" + firstName + lastName + title + firmName + city + radius + county + state + country + sRated + aop + keywords + bar + numYears + language + lawSchool + "\r\nYour Search has been submited");
       		break;			
   		case "3" : // Corporate Legal Departments
			if ((firmName == "")&&(city == "")&&(county == "")&&(state == "")&&(country == "")){
				alert("You must first enter your search criteria before submitting this form.");
				return;
			}
			//alert("Your for Search for Corporate Legal Departments used the following criteria:\r\n" + firmName + city + radius + county + state + country + "\r\nYour Search has been submited");
			break;
		case "4" : // U.S. Government
			if ((firstName == "")&&(lastName == "")&&(firmName == "")){
				alert("You must first enter your search criteria before submitting this form.");
				return;
			}
			//alert("Your for Search for U.S. Government used the following criteria:\r\n" + firstName + lastName + firmName + "\r\nYour Search has been submited");
       		break;
		case "5" : // U.S. Law School Faculty Members
			if ((firstName == "")&&(lastName == "")&&(firmName == "")&&(city == "")&&(state == "")&&(courses == "")&&(lawSchool=="")){
				alert("You must first enter your search criteria before submitting this form.");
				return;
			}
			//alert("Your for Search for U.S. Law School Faculty Members used the following criteria:\r\n" + firstName + lastName + firmName + city + state + courses + lawSchool + "\r\nYour Search has been submited");
       		break;
		case "7" : // Law Firm Practice/Industry Group Profiles
			if ((praIndGroup == "")&&(firmName == "")&&(city == "")&&(county == "")&&(state == "")&&(country == "")){
				alert("You must first enter your search criteria before submitting this form.");
				return;
			}
			//alert("Your for Search for Law Firms used the following criteria:\r\n" + praIndGroup + firmName + city + radius + county + state + country + "\r\nYour Search has been submited");
       		break;
   		default : // not valid submission
       		return;
	}
	// before submit set cookie
	setCookie("MH-advancedSearch", cookieVals);
	var pname = "http://www.martindale.com/Results" + ".a" + "spx";
	document.qsearch.action = pname;
	document.qsearch.submit();
	//doClear();
}
function multiSelect(obj){
	//creates a pipe dilimited string
	var str = "";
	if (obj.length > 0){
		var count = 0;
		for (i=0; i < obj.length; i++){
			if (obj[i].selected){
				count ++;
			}
			if ((obj[i].selected)&&(trimString(obj[i].value) != "")){
				str += " or " + obj[i].value;
			}
		}
		if(count == obj.length){
			str = "";
		}
		else{
			str = str.substring(4,str.length);
			//if(str.split(" or ").length > 1){
				//str = "(" + str + ")";
			//}
		}
		
	}
	return (str);
}
function check(obj){
	var bool;
	if (obj.checked){
		bool = "Y";
	}else{
		bool = "";
	}
	return bool;
}
function checkSt(){
	var doc = document.qsearch;
	var obj = doc.state.options; 
	var isCanada = false;
	//doc.cr.options[0].selected = false;
	if ((obj[0].selected)&&(obj[0].text == allSP[0][1])){
			doc.country.options[0].selected = false;
			doc.country.options[1].selected = true;
			doc.country.options[2].selected = true;
	}else{
		for(i=0; i<obj.length; i++){
			isCanada = false;
			if (obj[i].selected){
				for(j=0; j<canada.length; j++){	
					if (canada[j][0] == obj[i].value){
						isCanada = true;
						break;
					}
				}
				if ((isCanada)||(obj[0].text == allP[0][1])){
					doc.country.options[0].selected = false;
					doc.country.options[2].selected = true;
				}else{//USA
					doc.country.options[0].selected = false;
					doc.country.options[1].selected = true;
				}
				if (doc.country.options[2].selected && doc.country.options[1].selected){
					break;
				}				
			}			
		}
	}
	checkRating();
	checkCity();
}
function setValue(){
	document.qsearch.kw.value="";
	doOnce = true;
}
var doOnce = true;
function aopValue(obj, lim){
	if(trimString(obj.value)!=""){
		if (doOnce){
			var doc = document.forms['qsearch'].aop;
			loadAops(doc);
			doc[0].selected = true;
			doOnce = false;
		}
		validateSize(obj, lim);
	}
}
function doClear(){
	var val = document.qsearch.ft.value;
	var doc = document.qsearch;
	doc.reset(); //resets text fields
	setDefaults(); //resets dropdowns
	doc.ft.value = val; //keeps user on the same form
}
function gotoTips(){ 
	//This opens the help window for specific forms
	var form = document.qsearch.ft.value;
	var hrefValue = "";
	switch(form)
	{
   		
		case "1" : // Lawyers
		    hrefValue = "http://www.martindale.com/html/Find_Lawyers_Firms/tips_lawyers.html";
			break;
   		case "2" : // Law Firms
   		    hrefValue = "http://www.martindale.com/html/Find_Lawyers_Firms/tips_firms.html";
       		break;
		case "6" : // In-house Counsel	
		    hrefValue = "http://www.martindale.com/html/Find_Lawyers_Firms/tips_in_house.html";
       		break;			
   		case "3" : // Corporate Legal Departments
   		    hrefValue = "http://www.martindale.com/html/Find_Lawyers_Firms/tips_corp.html";
			break;
		case "4" : // U.S. Government
		    hrefValue = "http://www.martindale.com/html/Find_Lawyers_Firms/tips_gov.html";
       		break;
		case "5" : // U.S. Law School Faculty Members
		    hrefValue = "http://www.martindale.com/html/Find_Lawyers_Firms/tips_faculty.html";
       		break;
   		default : // not valid submission
       		break;
	}
	launchwin(hrefValue,'searchTips','height=500,width=680,resizable=yes,scrollbars=yes,toolbar=no');
}
window.onload = advFrmInit; //This is the same as adding onload to the <body> tag. We have problems doing this in ExpressRoom
function launchwin(winurl,winname,winfeatures)
{
	if (winname == null) {
		winname = 'print';
	}
	if (winfeatures == null) {
		winfeatures = 'height=500,width=500,resizable=yes,scrollbars=yes,toolbar=yes';
	}
	//This launches a new window and then
	//focuses it if window.focus() is supported.
	newwin = window.open(winurl,winname,winfeatures);
}
//start cookie code
var cook = document.cookie;
function getCookie(name) { 
	var index = cook.indexOf(name + "=");
    if (index == -1) return null;
   	index = cook.indexOf("=", index) + 1;
    var endstr = cook.indexOf(";", index);
    if (endstr == -1) endstr = cook.length;
    return unescape(cook.substring(index, endstr));
}

var today = new Date();
var expiry = new Date(today.getTime() + 30 * 60 * 1000); //set to expire after 30 min.

function setCookie(name, value) {
   	if (value != null && value != ""){
      	document.cookie=name + "=" + escape(value) + "; expires=" + expiry.toGMTString();
	}
	cook = document.cookie;
}

// this deletes the cookie when called ex. deleteCookie('cookie name', '/', '')
function deleteCookie( name, path, domain ) {
if ( getCookie( name ) ) document.cookie = name + "=" +
( ( path ) ? ";path=" + path : "") +
( ( domain ) ? ";domain=" + domain : "" ) +
";expires=Thu, 01-Jan-1970 00:00:01 GMT";
}
//end cookie
