
var ninehole_array = new Array("front","back");
var slider_array = new Array("radius","fees","rating");
function openWin(u,n,w,h,l,t,c,f,x) {
  var ww=((screen.width-w)/2);if(c==1){l=ww;t=(screen.height-h)/2;}if(c==2){l=ww}
	f+=',top='+t+',left='+l;pwin = window.open(u,n,f);pwin.focus();
}

function popWindow2(page,winName)  
{ 
	newWindow = window.open(page,winName,"height=600,width=650,scrollbars,resizable=no,status,location=no,toolbar=no,menubar=no,directories=no");
	newWindow.focus();
}

function doReSort(sortnum) {
	var input = document.createElement('INPUT');
	input.setAttribute('type', 'hidden');
    input.setAttribute('name', 'sortselector');
    input.setAttribute('value', sortnum);
	document.advanced_search_form.appendChild(input);
	document.advanced_search_form.submit();
}
function clearFilters(formname) {
//	this function resets form values to blank and moves the sliders to the left reset position; 
//	the below line would reset form values to their default values as defined in the form input tags.
//	document.getElementById(formname).reset();
	for (x=0; x<slider_array.length; x++) {
		eval("document.getElementById('slider_"+slider_array[x]+"_id').style.left = 0");
	}
	for (var i=0, j=document.getElementById(formname).elements.length; i<j; i++) {
		myName = document.getElementById(formname).elements[i].name;
		myType = document.getElementById(formname).elements[i].type;
		if (myType.indexOf('checkbox') > -1 || myType.indexOf('radio') > -1) {
		    document.getElementById(formname).elements[i].checked = false;
		}
		if (myType.indexOf('text') > -1) {
			document.getElementById(formname).elements[i].value = "";
		}
		if (myType.indexOf('select') > -1) {
		    for (var k=0, l=document.getElementById(formname).elements[i].options.length; k<l; k++) {
		        document.getElementById(formname).elements[i].options[k].selected = false;
			}
			document.getElementById(formname).elements[i].options[0].selected = true;
		}
	}
}

function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);
  if (endstr == -1)
    endstr = document.cookie.length;
  return document.cookie.substring(offset, endstr);
}
function GetCookie (name) {
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;
  while (i < clen) {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
      return getCookieVal(j);
      i = document.cookie.indexOf(" ", i) + 1;
      if (i == 0) break; 
  }
  return "";
}
function SetCookie (name,value,expires,path,domain,secure) {
  document.cookie = name + "=" + value +
    ((expires) ? "; expires=" + "Thu, 01-Jan-2008 00:00:01 GMT" : "") +
    ((path) ? "; path=" + path : "") +
    ((domain) ? "; domain=" + domain : "") +
    ((secure) ? "; secure" : "");
}
function setRecentSearch(newsearchtext, newsearchurl, cookiename) {
	var cookiestr = GetCookie(cookiename);
	var cookietext = "";
	newsearchtext = newsearchtext.replace(/[||~|"|&]/g, "");
	if (newsearchtext != "") {
		if (cookiestr != "") {
			var numsearches = cookiestr.split("|").length;
			if (numsearches > 10) numsearches = 10;
			var cnt = 0;
			for (i = 0; i < numsearches ; i++) {
				var searchurl = cookiestr.split("|")[i].split("~")[0];
				var searchtext = cookiestr.split("|")[i].split("~")[1];
				var textlen = searchtext.length;
				if (searchtext != newsearchtext) {
					cookietext += "|" + searchurl + "~" + searchtext;
				}
				cnt++;
			}
		}
		if (cookiestr != "") {
			cookietext = newsearchurl+"~"+newsearchtext + cookietext;
		} else {
			cookietext = newsearchurl+"~"+newsearchtext;
		}
		SetCookie(cookiename, cookietext, "Fri, 27 Jul 2018 02:47:11 UTC","/","");
	}
}
function getRecentSearch (cookiename) {
	
	var cookiestr = GetCookie(cookiename);
	if (cookiestr != "") {
		var outputstr = "";
		var numsearches = cookiestr.split("|").length;
		var cnt = 0;
		outputstr = "<ul class='courselist'>";
		for (i = 0; i < numsearches ; i++) {
			if (cnt >= 10) break;
			var searchurl = cookiestr.split("|")[i].split("~")[0];
			var searchtext = unescape(cookiestr.split("|")[i].split("~")[1]);
			var textlen = searchtext.length;
			searchtext = searchtext.substring(0,25);
			if (textlen > 25) searchtext += "...";
			outputstr += "<li><a href='"+searchurl+"'>"+searchtext+"</a></li>";
			cnt++;
		}
		outputstr += "</ul>";
	} else {
		outputstr = "<ul class='courselist'><li>You have no recent searches.</li></ul>";
	}
	return outputstr;
}


function setRecentCourse(newcoursetext, newcourseurl, cookiename) {
	setRecentSearch(newcoursetext,newcourseurl,cookiename)
}

function getRecentCourse(cookiename) {
	return getRecentSearch(cookiename).replace(/recent searches/,"recently viewed courses");
}
function showDetailPanels(formname) {
	for (var k=0; k<document.getElementById(formname).panel.length; k++) {
		if (document.getElementById(formname).panel[k].checked) {
				alert(document.getElementById(formname).panel[k].value);
		}
	}
}
function showHideTeeBox(id, total) {
	for (var k=0; k < total; k++) {
		document.getElementById("tee_"+k).className = "box_hidden";
		document.getElementById("tab_"+k).className = "tab_off";
	}
	document.getElementById("tee_"+id).className = "box_shown";
	document.getElementById("tab_"+id).className = "tab_on";
}
function showHideBackFront(id,total) {
	for (var k=0; k < total; k++) {
		document.getElementById("holeset_"+k).className = "box_hidden";
		document.getElementById("link"+k).style.textDecoration = "underline";
	}
	document.getElementById("holeset_"+id).className = "box_shown";
	document.getElementById("link"+id).style.textDecoration = "none";
}
function showHideMap(id) {
	if (id == "map") {
		document.getElementById("results_list_td").style.display = "none";
		document.getElementById("results_map_td").style.width = "989px";
		document.getElementById("map").style.width = "800px";
		document.getElementById("map").style.height = "600px";
		document.getElementById("onlymaplink").className = "listing_link_inactive";
		document.getElementById("coursemaplink").className = "listing_link_active";
	} else if (id == "both") {
		document.getElementById("results_list_td").style.display = "";
		document.getElementById("results_list_td").style.width = "500px";
		document.getElementById("results_map_td").style.width = "450px";
		document.getElementById("map").style.width = "450px";
		document.getElementById("map").style.height = "410px";
		document.getElementById("onlymaplink").className = "listing_link_active";
		document.getElementById("coursemaplink").className = "listing_link_inactive";
	}
	
}
/* review submission functions */
function checkWholeForm(form) {
	if (form.rname.value == "") {
		alert('Please enter a name for your review.');
		form.rname.focus();
		form.rname.select();
		return false;
	} else if (form.mo.value == "--") {
		alert('Please select the month you played this course.');
		form.mo.focus();
		form.mo.select();
		return false;
	} else if (form.yr.value == "--") {
		alert('Please select the year you played this course.');
		form.yr.focus();
		form.yr.select();
		return false;
	} else if (form.rate.value == "") {
		alert('Please rate this course.');
		form.rate.focus();
		form.rate.select();
		return false;	
	} else if (form.text.value == "") {
		alert('Please complete the review comments.');
		form.text.focus();
		form.text.select();
		return false;
	} else if (form.uname.value == "") {
		alert('Please enter your name or nickname.');
		form.uname.focus();
		form.uname.select();
		return false;
	} else if (form.loc.value == "") {
		alert('Please enter your location.');
		form.loc.focus();
		form.loc.select();
		return false;
	} else {
		return writeScribbleInput();
	}
}

function checkMaxChars(el, num) {
     var msg = "";
     var elName = el.name || el.id;
     var msgEl = document.getElementById(elName + '-msg')
     var count = num - el.value.length;
     if (msgEl){
       if (count == num){
         msg = 'Maximum ' + num + ' characters';
       } else if (count > 0){
         msg = count + ' character'
             + ((count > 1)?'s':'')+ ' left';
       } else if (0 == count){
         msg = 'Limit reached';
       } else {
		 msg = 'Limit reached';
		 el.value = el.value.substring(0, num);
       }
       msgEl.innerHTML = msg;
     }
}

function writeScribbleInput () {
	var scribblestr = "";
	var scribbleauthor = document.review_submit_form.uname.value;
	for (var x = 0; x < fieldarray.length; x++) {
		// would retrieve values of "recommended for" checkboxes when they are enabled
		//if (fieldarray[x] == "reco") {
			//scribblestr += "[@"+fieldarray[x]+"@][@![CDATA[";		
			//for (var i=0; i < document.review_submit_form.reco.length; i++)
			//{
			//   if (document.review_submit_form.reco[i].checked) {
			//      	scribblestr += document.review_submit_form.reco[i].value + ",";
			//   }
			//}
			//scribblestr += "]]@][@/"+fieldarray[x]+"@]";
		//} else {
			scribblestr += "[@"+fieldarray[x]+"@][@![CDATA[" + eval("document.review_submit_form."+fieldarray[x]+".value") + "]]@][@/"+fieldarray[x]+"@]";
		//}
	}
	document.scribble_form.userName.value = scribbleauthor;
	document.scribble_form.messageText.value = scribblestr;
	SetCookie("scribblesubmit", "true", "Fri, 27 Jul 2018 02:47:11 UTC","/","");
	document.scribble_form.submit();
	return false;
}

function popMailWin() {
	var pageURL   = escape(self.document.URL);
   	var pageTitle = escape(self.document.title);
   	var formURL="/cgi-bin/mail/mailurl2friend.cgi?path=/golfonline/email&url=" + pageURL + "&group=golfonline&title=" + pageTitle ;
	window.open(formURL,"emailpop","height=475,width=350,resizable,scrollbars");
	return false;
}	
 