function addLoadEvent(func) {
	var oldonload = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = func;
	} else {
		window.onload = function() {
			if (oldonload) {
				oldonload();
			}
		func();
		}
	}
}

function whatsOnResultsTab(tab){
	if (tab == "places"){
		document.getElementById("results_events").style.display = "none";
		document.getElementById("results_places").style.display = "";
		document.getElementById("tab_events").className = "tab_off";
		document.getElementById("tab_places").className = "tab_red";
		toggleMarkers('places'); 
		
	} else if (tab == "events"){
		document.getElementById("results_events").style.display = "";
		document.getElementById("results_places").style.display = "none";
		document.getElementById("tab_events").className = "tab_red";
		document.getElementById("tab_places").className = "tab_off";
		toggleMarkers('events'); 
	}
}

function toggleMarkers(select) {

//	var select = element.value;
	for (var i = 0; i < markerGroups['events'].length; i++) {
		var marker = markerGroups['events'][i];
		marker.hide();
		marker.closeInfoWindow();
	}

	for (var i = 0; i < markerGroups['places'].length; i++) {
		var marker = markerGroups['places'][i];
		marker.hide();
		marker.closeInfoWindow();
	}

	for (var i = 0; i < markerGroups['both'].length; i++) {
		var marker = markerGroups['both'][i];
		marker.hide();
		marker.closeInfoWindow();
	}

	for (var i = 0; i < markerGroups[select].length; i++) {
		var marker = markerGroups[select][i];
			marker.show();
	}
	global_map_view = select;
	
	if (select == "events") {
		document.whatson.markers[0].checked = true;
	
	} else if (select == "places") {
		document.whatson.markers[1].checked = true;
	
	} else if (select == "both") {
		document.whatson.markers[2].checked = true;
	}
}

function deselectPeriod(){
	document.getElementById("day").checked = false;
	document.getElementById("week").checked = false;
	document.getElementById("month").checked = false;
}

function togglePeriod(period){

	var today = new Date();
	var endDay = new Date();
	var day = today.getDate();
	var month = today.getMonth()+1;
	var year = today.getFullYear();

	switch(period.value){
		case "day":
			endDay.setDate(day+1);
			break;
		case "week":
			endDay.setDate(day+7);
			break;
		case "month":
			endDay.setMonth(month);
			break;
		default:
			endDay.setDate(day+1);
	}

	if (day < 10){ day = "0"+ day };
	if (month < 10){ month = "0"+ month };
	var from_date = day + "/" + month + "/" + year;
		
	var end_day = endDay.getDate();
	if (end_day < 10){ end_day = "0"+ end_day };
	var end_month = endDay.getMonth()+1;
	if (end_month < 10){ end_month = "0"+ end_month };
	var end_year = endDay.getFullYear();
	var end_date = end_day + "/" + end_month + "/" + end_year;

	document.getElementById("date_from").value = from_date;
	document.getElementById("date_to").value = end_date;

	document.getElementById(value).checked = true;
}
	

function lessResults(){
	for (i=1; i <= resultCounter; i++){
		resultID = "result" + i;
		document.getElementById(resultID).style.display = "none";
	}
}

function toggleResultDetails(result_counter, latitude, longitude, ptv){

	resultID = "result"+result_counter;
	resultText = "event_btm" + result_counter;
	resultMap = "map" + result_counter;
	current_state = document.getElementById(resultID).style.display;

	if (current_state == "none"){
		document.getElementById(resultID).style.display = "";
		document.getElementById(resultText).innerHTML = "Less Detail";
		if (GBrowserIsCompatible()) {
			if (latitude == 0 && longitude == 0){
				document.getElementById(resultMap).style.display = "none";
				// results map class width and height to 0
			} else {
				var map = new GMap2(document.getElementById(resultMap));
				map.addControl(new GSmallMapControl());
				map.addControl(new GMapTypeControl());
				map.setCenter(new GLatLng(longitude, latitude), 13);
				
				var icon = new GIcon();

				if (ptv == "N"){
					icon.image = "../assets/images/pin_red.png";
				} else {
					icon.image = "../assets/images/pin_blue.png";
				}
				icon.shadow = "../assets/images/pin_shadow.png";
				icon.iconSize = new GSize(19, 50);
				icon.shadowSize = new GSize(55, 50);
				icon.iconAnchor = new GPoint(18, 50);
				icon.infoWindowAnchor = new GPoint(10, 1);
				
				var latlng = new GLatLng(longitude, latitude);
				var result_marker = new GMarker(latlng, icon);
				map.addOverlay(result_marker);
			}
		}		
		
	} else {
		document.getElementById(resultID).style.display = "none";
		document.getElementById(resultText).innerHTML = "More Details";
	}
}

function toggleMap(){
	if (document.getElementById("map_wrapper").style.display == "") {
		document.getElementById("map_wrapper").style.display = "none";
		setCookie('wo_gmap', 'hidden', 365);
	
	} else {
		document.getElementById("map_wrapper").style.display = "";
		setCookie('wo_gmap', 'show', 365);
		map.checkResize();
		map.setCenter(new GLatLng(51.234213, 0.4), 8);
	}
}

function setMap(view){
	if (view == "hidden"){
		document.getElementById("map_wrapper").style.display = "none";
	} else {
		document.getElementById("map_wrapper").style.display = "";
	}
}

function updateAreaID(AreaID) {
	var AreaID;
	document.getElementById("AreaID").value = AreaID;
}

function getCookie(c_name){
	if (document.cookie.length>0)
	  {
	  c_start=document.cookie.indexOf(c_name + "=");
	  if (c_start!=-1)
	    { 
	    c_start=c_start + c_name.length+1; 
	    c_end=document.cookie.indexOf(";",c_start);
	    if (c_end==-1) c_end=document.cookie.length;
	    return unescape(document.cookie.substring(c_start,c_end));
	    } 
	  }
	return "";
}

function setCookie(c_name,value,expiredays){
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}