	function selectChangeHandler(page, field) {
		var e = document.getElementById(field);
		var city = e.options[e.selectedIndex].value;
		var querystring = new Array;
 
 		var q = String (document.location).split ('?')[1];
 		j=0;
 		if (q) {
	 		q = q. split ('&');
		 	for (var i = 0 ; i < q.length; i++) {
				var p = q[i].split('=');
				if (p[0] != field) {
					querystring[j++]=p[0]+"="+p[1];
				}
			}
		} 
		if (city != "all") {
		 	querystring[j++] = field + "=" + city;
	 	}
	 	qs = querystring.join("&");
		document.location = page + "?" + qs;
	}
	
	function selectCommunityHandler(field) {
		var e = document.getElementById(field);
		var city = e.options[e.selectedIndex].value;
		var cityPage = city.toLowerCase();
		cityPage = cityPage.replace(/ /, "_");
		
		if (cityPage!="") {
			document.location = "/info/communities/" + cityPage + ".php";
		}
	}
	
	function setMapSelectorDisplay(bVisible) {
		var e = document.getElementById('mapSelection');
		if (bVisible) {
			e.style.display='block';
			var s = document.getElementById('mapSelector');
			var posS = findPos(s);
			var left = (Number(posS[0]) + (Number(s.offsetWidth)/2)) - (Number(e.offsetWidth)/2);
			e.style.left=left+"px";
			document.onclick=check;
		}
		else
		{
			e.style.display='none';
			document.onclick=null;
		}
		return false;
	}
	
	function check(e) {
		var target = (e && e.target) || (event && event.srcElement);
		var objShowLink = document.getElementById('showMapSelector');
		var parent = checkParent(target, objShowLink);
		if (parent)
			return true;
			
		var objMapSelection = document.getElementById('mapSelection');
		var parent = checkParent(target, objMapSelection);
		if(!parent) {
			setMapSelectorDisplay(false);
			//objMapSelection.style.display='none';
		}
		return true;
	}

	function checkParent(t, sel){
		while(t.parentNode||(t==sel)){
			if(t==sel){
				return true;
			}
			t=t.parentNode
		}
		return false;
	}

	function findPos(obj) {
		var curleft = curtop = 0;
		if (obj.offsetParent) {
			do {
					curleft += obj.offsetLeft;
					curtop += obj.offsetTop;
			} while (obj = obj.offsetParent);
		}
		return [curleft,curtop];
	}

	