function hideMarkers(type, value, obj, io){
	if (typeof io == 'undefined') snum = false; //io is an optional variable

	switch (type) {
		case "snum":
			if (io=="over") { // hide all other markers
				if(selected_snum!=null) {
					var selected = document.getElementById(selected_snum);
				}
				obj.style.backgroundColor='#F7F58A';
				if(selected_snum!=null) {
					selected.style.backgroundColor='#FA6C30';
				}
				//map.getInfoWindow().hide()
				for (var i=0;i<gmarkers.length;i++) {
					if (gmarkers[i].snum!=value)  {
						gmarkers[i].hide();
					}
				}
			} else { // show all other markers again
				if(selected_snum!=null) {
					var selected = document.getElementById(selected_snum);
				}
				obj.style.backgroundColor='#D9E3FF';
				if(selected_snum!=null) {
					selected.style.backgroundColor='#FA6C30';
				}
				for (var i=0;i<gmarkers.length;i++) {
					if (gmarkers[i].snum!=value)  {
						gmarkers[i].show();
					}
				}
			}
			break;
		case "cat":
			map.getInfoWindow().hide()
			if (document.getElementById(value).checked==false) { // hide the marker
				for (var i=0;i<gmarkers.length;i++) {
					if (gmarkers[i].cat==value)  {
						gmarkers[i].hide();
					}
				}
			} else { // show the marker again
				for (var i=0;i<gmarkers.length;i++) {
					if (gmarkers[i].cat==value)  {
						gmarkers[i].show();
					}
				}
			}
			break;
	}
}
