var markers = [];
var markerClusterer = null;
var campcenter = null;
var map = false;
var mapoverview = false;
var lang_bigmap = '';
var campID = 0;
var pictureDat = false;

var defaultDocTitle = document.title;
var currentdisplay = 0;

function gLoad() {
	// alert(campData.sites[0].id);
	var NAFlong = parseNAF(rawNAFlong);
	var NAFlat = parseNAF(rawNAFlat);
	if (GBrowserIsCompatible())
	{
		map = new GMap2(document.getElementById("minimapcanvas"));
		// map.addControl(new GLargeMapControl());
		// map.addControl(new GMapTypeControl());
		campcenter = new GLatLng(NAFlong, NAFlat);
		map.setCenter(campcenter,10);
		map.setUIToDefault();
		
		var icon = new GIcon(G_DEFAULT_ICON);
		icon.iconSize = new GSize(22,32);
		icon.image = "http://www.nafcamp.no/campingplasser/bilder/cchart.png";
		map.addOverlay(new GMarker(campcenter,icon));
	}
	lang_bigmap = $("a#getBigMap").html;
	$("a#getBigMap").click( function(event) { showBigMap();event.preventDefault();});
	$("a#closeBigMap").click( function(event) { closeBigMap();event.preventDefault();});
	
	$("body").append("<div class=\"iconexplaincontainer\"></div>");
	$(window).resize(function(){ $(".iconexplaincontainer *").remove();});
	$(".zGico").hover(function(e) {
				if($(this).hasClass('noexplain') !== false)
				{
					return '';
				}
				var pos = $(this).offset();
				var xPos = pos.left - 90;
				if(xPos < 10) xPos = 10;
				var yPos = pos.top - 75;
				var yPosStart = yPos - 10;
				var explainID = $(this).attr('id').replace('zic_','');
				if( $("#icexp_"+explainID).length  )
				{
				}
				else
				{
					var largeIconID = 'zicL_'+explainID;
					var txt = $(this).attr("alt");
					if(txt.length > 30)
					{
						txt = '<span style="font-size:9px;">'+txt+'</span>';
					}
					var hoverText = "<img src=\"/inline/blank.gif\" border=\"0\" class=\"zGicoL "+ largeIconID +"\" id="+ largeIconID + " /><div class=\"txt\">" +txt + "</div>";
					$(".iconexplaincontainer").append('<div class="iconexplain" id="icexp_'+explainID+'">'+ hoverText +'</div>');
					$("#icexp_"+explainID).css({top:yPosStart,left:xPos});
					
					$("div.iconexplain #icexp_"+explainID).html(hoverText);
				}
				$("#icexp_"+explainID).animate({opacity: "show", top: yPos }, "fast");
				
			}, function(e) {
				var pos = $(this).offset();
				var yPos = pos.top - 85;
				var explainID = $(this).attr('id').replace('zic_','icexp_');
				$("#"+explainID).animate({opacity: "hide", top: yPos}, "fast");
		});
	mapScoreExplanation();
}

function showBigMap() {
	$("div#openbigmap").hide("fast");
	$("div#ZC_minikart").toggleClass('minimap');
	$("div#closebigmap").show("fast");
	
	$("div#minimapcanvas").animate({
					"height": "400px"}, 300);
	// setTimeout('$("div#campCoords").toggleClass("onmap");', 400);
	// setTimeout('$("div#ZC_minikart").toggleClass("bigmap");', 600);
	setTimeout("map.setUIToDefault();", 600);
	setTimeout("map.checkResize();", 600);
	setTimeout("map.panTo(campcenter);", 600);
	setTimeout("mapoverview = new GOverviewMapControl();map.addControl(mapoverview);", 600);
}

function closeBigMap() {
	$("div#minimapcanvas").animate({
					"height": "160px"}, 150);
	map.removeControl(mapoverview);
	$("div#closebigmap").hide("fast");
	$("div#openbigmap").show("fast");
	// $("div#ZC_minikart").toggleClass('bigmap');
	// $("div#campCoords").toggleClass('onmap');
	// setTimeout('$("div#ZC_minikart").toggleClass("minimap");', 450);
	setTimeout("map.checkResize();", 200);
	setTimeout("map.setUIToDefault();", 200);
	setTimeout("map.panTo(campcenter);", 350);
}

function showExp(id, txt){
	$("#"+ id).html(txt);
	$("#"+ id).css("visibility", "visible");
}
function reset(id){
	$("#" + id).css("visibility", "hidden");
}
function parseNAF (dmm) {
	// var reg = new RegExp('/\d+/g');
	// var lt = dmm.match(reg);
	var lt = dmm.split('\xB0');
	var deg = lt[0];
	var decims = lt[1];
	decims = decims.split(' ');
	var mins = decims[1];
	
	return (deg*1.0) + mins/60.0;
}
function dec2gps (dec, human) {
	var decstr = dec.toString();
	var pts = decstr.split('\.');
	var deg = parseInt(pts[0]);
	var mins = (dec - deg)*60;
	switch(human)
	{
		case 'human':
		default:
			return deg + '&#176; '+ truncGPS(mins);
		break;
		case false:
			return deg + ' '+ truncGPS(mins);
		break;
	}
}

function mapScoreExplanation() {
	_mapScoreOutput('ncrate_San', ZappLang.getTrans('rateexplain_san'));
	_mapScoreOutput('ncrate_Ser', ZappLang.getTrans('rateexplain_ser'));
	_mapScoreOutput('ncrate_Akt', ZappLang.getTrans('rateexplain_akt'));
	_mapScoreOutput('ncrate_Opp', ZappLang.getTrans('rateexplain_opp'));
}
function _mapScoreOutput(id, text) {
	$("div#"+id).bind("mouseenter", function() { $("div#ZC_ratingExplain").html('<b>'+text+'</b>')});
	$("div#"+id).bind("mouseleave", function() { $("div#ZC_ratingExplain").html(' &nbsp;')});
}
