var map;
var mm;
var rules= {
'#bigimg' : function(el) { // close the big IMG
			el.style.cursor='pointer';
			el.style.display='none';
			el.onclick = function() {
				Effect.Fade(el);
	      }
	 },
	'#start' : function(el) {
		el.onclick= function() {
			map.setCenter(new GLatLng(53.586469721,10.024410943), 15);	
		}
	
	}
};

Event.observe(window, 'load', init_app);
Event.observe(window, 'unload', GUnload);


function init_app(event) {
  Behaviour.register(rules);
  Behaviour.apply(rules);
  map = new GMap2($("map"));  
  map.addControl(new GSmallMapControl());
  map.setCenter(new GLatLng(53.645, 10.1), 11);
  var polyline = new GPolyline.fromEncoded({
  		color: "#ff0000",
  		weight: 2,
  		opacity: 0.8,
  		points: "kbafIq{d|@x@Xr@cAE@_@aCMgAP{@t@u@^m@bAeATeBz@kAOcCAaBEUC]E_CEE@{AUkCGeF@qAKq@AsBRQfASt@GDIWsF@wEIkES_EA_DEaA@mDBcA?cDRoB@{@L]W]kAq@JkAdA_DLwBNk@BAb@oBPg@^{CB]Xk@`@mBFAhBxA\\`@JGrByD?y@Ee@JmBFcCVqAVaG?SVaBTcCRmDK}Dc@oC]uAQUe@mAMK]T}Ap@u@x@o@`ASKgBwEiAgCsBkF]qAy@gB[uAy@yA{@uAk@oAo@y@K_@e@_@[]cAyAyBkDi@cAk@sAyA{Bu@uAIGCMMO]`A}@bDw@XgCvGuA~D]nAy@O]pAiAdC_@hBAl@_@~@]`@SGKMMe@s@cAMRKv@W?cBf@iA`BE\\@JaBr@iAVWNCXgAj@eA`A}@h@iAGmAVqAD{@UsAIqCtAaA^_AfAK@IOIE@@A\\EHcBmAs@uAIc@}@w@qAa@}Am@kAgA{@_BoAiAYa@y@q@gA?mAEeA}@eAeBo@{Bg@yB{@sAeAmAk@}@Gk@y@mCoA{By@gBw@wAkAcAuB{@O[Q@KDM?SWWKeAeAk@gAk@eBiAaBOCA_D`@gC^{@RkAC{C?qCImD[sBMyGCi@Ga@A_@LeATuANsBh@gCx@iA@kBh@kAf@uCLmBWuCYoAQoA?gA^Q`AW`@@B}BGyD[{A}BIcAOyA@mAKmBDIwA?m@IMA@Q@OKgBeBaCgB{A{@OSu@Ka@BAI@_B]}ASKIWSgCs@g@yAIcARaAG{@MGCUkBEiDBkGMgC?sEEwAa@Kq@Fy@@Ka@M{DGkAc@eFi@aBD@NK|@r@L[EE_@CUSwBf@uAR}BJOk@_@gG[y@SSo@c@o@PYGm@Uo@_AG]YHqCc@M@yCq@mAc@EMDIiAmEUoBIsBg@gBqA_AQeAY}CE_AOmAOkCE}AQmBq@yAQYmAFk@Nq@DcB\\_BJeBIaBYiHq@gA@BGGCm@qAGYIeAk@{B{@k@Yc@Mq@UUg@cC_@kCy@iAU{B]}DYs@aAeA_@q@m@uAw@eH_@mCYqDk@uC_@mEBWOWm@o@Oq@Y{BKaDE_DYaD_BoDj@wArAWNI?i@MwCg@{DG}A@OfC[MQ?EKyBMuAbAmAdBoA~A]l@UxDqAd@s@VaA?_ASqDUqB]gCi@}Bg@aBYgBAgB@_@b@UbFRpB@fBCNaADe@X[?eCZU_@s@[w@OkCUoHKeBMaEIuDMoCG[c@sAE?b@cAEYaBeAeAaA_AcAgAu@kCeCsA_AgAsAoAgAg@q@iBuDy@qBGK]]eA_CgA}BqFoJe@eAeB}CqAcCy@mAaAiBsBmD}@kB[w@OoBBuBLy@u@yAaB}BEO@cALUYeC]{Bc@gBe@o@@qBH_@EeAYgB_B_JGsAMYkDp@mA?cBs@eAKu@SoB_@cAIQ@gA\\i@Cm@_@_@EuCqAuDu@y@]u@C]Ri@h@uCyAWc@g@Gy@VQ`@g@j@a@l@s@p@oAXQn@Iz@GFLINJ?IADGBw@QQ?]Ko@FQXQLQ`@[]ICGGU[GOUOGIDC?P~Gd@@FA?BUWAAA?YEIOuA}@s@I@sAq@iACIBIQeBaAkCmAgAa@_Aw@EI{@OKEq@PeAr@}EzDaAn@cAbA{@vAW`B}@d@aBRyEvBcA^}ATa@LoEtCeAv@qAfAeAv@mB`AI\\TtAH`AWqBEeBEp@UViAd@U|AFt@c@pBiArAoAb@oATgBb@]j@e@dBAJa@F{CrAy@TiATaBHoARaDv@sAJyAVqA\\}ATu@Qc@w@}@aAEUsAAgA@e@DgAb@iBf@_EjBy@Oo@?_@TSdA@fDUbBe@nCq@dD?`@WhCIPQ|@ArAk@jFCn@UpBg@`HApAUtAs@rAaBdAs@p@HpAb@lBZx@ThA|@dAb@~Ap@vA`@~@h@pC[`@sE`C_A\\mA|@UJEQAw@@PUHY`@kAb@I]EVuAv@]LIM@IAVC?QRo@dA[^OJYDGSM@ID?YWSG?wAv@UzDGd@KZGD@BKBMTy@zGm@dA@FaAjFg@vBu@fCs@tBc@dBo@|Ae@nBSn@GNSLMDYhAOz@Wx@E|CKxDMh@KvBNHp@jAIvAEhBDbBUhAC`@@v@SpBd@j@AFJUzA|@z@fDNrBGx@C~Ai@vHa@zCe@f@a@vBs@dGOp@KbA{@Z_Gk@mAAuA^gALk@EeALaACaBCsABaAHeATcCv@UJSNm@t@i@|@oAtC_A`D]fEa@tCRxCVpBv@|HR`BTfADp@@xC\\`DMfDYnC@l@VnAdBpAbAd@f@JvAb@fAt@FT\\Jd@`@bBr@RDz@Ar@LdCOt@KpA|@bA`@lBYRX`@dAR`Am@bC}@`A_@hAEVWjFw@bE[~BGLu@\\Cv@DtBa@bBS`BUj@EzELnH?bFE`AGdH@d@GtHg@jN_@vCg@rAQr@JnBOFi@v@cBUA@BD\\F`ADTCLqA\\}BXoAn@PTt@HhE?VGPD`@d@x@NdAB`GD|DMfGYfGO|BW|@AZkAxAcAzAm@fA]\\Md@gAlAqAfBY~@y@xAs@x@iAhB{@`Bw@d@eBZqAs@gBkAaA}@s@k@wAGqANcBf@}Al@IEEWJJKN}@AC@SxAQfCu@nFg@lAe@lBWrB[dB?A?BIRWxAGv@[xA_@bC}@pE[pCS|CYrB@PABDCh@EEDwBYuA_@cAMsBc@a@bAo@xBwBe@O`@E|P_@dH_@nEKEBTOlCYpCQzBeAbHk@bCEZt@d@pCxC@TUxAi@xCSvBLj@vAvCJd@TVV^lBbEZh@dA`@DvAY|CmDtQcAhE_BhIo@fC[pBKtE@Hv@An@BjCXb@NBlAMtBCPBd@Ch@@jBc@vCk@vPwBxHoBWq@Q_AMgCOuBR}EZoAZwAbAoAdBk@|Ak@r@y@pB[p@MBg@hACvBu@fHMn@kCtUC`AYlDK`JGxAOlJa@~FaAnK}@vIOn@_@j@B|ACdASxCKl@e@xEOzCg@hOSfCU|EUbCM\\Kp@J`AkAxNc@bCLt@XK`@GpBSn@PtAVBp@_@~CXv@AjABUMsAY^GjBV~@`@fAf@CF|ALK",
  		levels: "PCD@?BD@@BBF@@?@@@AA@@@DA?AEAA@@?C??B@@DAEAAA@??A?AAE@@E@F?A@BA?AA?DB@I@@D@B@BF??A@AD?@@@B?A?A?A??@?H?CBA@CC@BAB@F@AAE@C@CB?CACAA@@EA@BAD?BCA@B?@HBACB?CAA@?D?CEB?B@@C@B@?EAAB??B@@I@BAECAAD??BA@??E?@BBBBADBA?AD?AD@BH@A@@E?@D?@BA@@C@E?BAABEBBB@?GB?A@?EA?EA?ABD?BC@GAB@AEAB@EBB?CACA?B@G@@B@CBC@??A?@C?G@@A@D@@AF@?A?ABACAA@BC?CAA?H?@AA@C?B@C?ACGC@D?A@DAD?A?FAC@?CAF@ABA?BA?FBA?D?AFBC?C@????C@@CAIA?A@@B@@E@@?A?B@@?@@?@FABAC@@DABC@BCAAC?A@HADB@?CB?AD@ABADB?CAAFB@?ABD@?BADA?A??AC?@F@?@?@?E@AAE?B?A??EA@C?BAA?B?B?LAB?@DBDAA?B?D?@?AEA@E@EABCAADC@@DA?G@@C@@AAA@@DBA@CE?C@AC@BIAB@?A@A?BA??A@AEB@FA@@CBA?BGA@A?C?DA@CBCB?B@DA?@@?DAA?BAC?G?B??@@BBB?@C??@@?B@?A??G?A@C@C@ABA?AE@BBDAE?@CBBB??HB@C@BA@?@B@F?B@D@AI@DA?@?@CAB@B@GB@?BAA@@E@@B?C@CD@AGBAC@B??CC?C@AEA@B?@?AEA?CD@C?F?A@D?@CFBA@B@AC?D@?H@B?@@AA@B@A@?BGD?A?EAB@B@BAB?G@@B@B@??@@??@@D@@??C?F@A@?E?DCHBDAA@A?B@?EAD@?@E@@A?A?CCFBA@?@F?E?A@EA?A??BBGF@?AD?AEACAA?@@HB??C@A??D@?BAC@A@?B?A@CA@BBAFC?@C?EABAC@DBD?CBBP",
  		zoomFactor: 2, 
  		numLevels: 18
  });
  map.addOverlay(polyline);
  mm = new MarkerManager(map);	
  mm.addMarkers(createMarkers(15), 9);

  mm.addMarkers(createMarkers(10), 10);

  mm.addMarkers(createMarkers(10), 11);
  mm.addMarkers(createMarkers(5), 12);
  mm.addMarkers(createMarkers(3), 13);
  mm.addMarkers(createMarkers(2), 14);
  mm.addMarkers(createMarkers(1), 15);
  mm.refresh();
}


////////////////////////////////////////////////////
function createMarkers(anzahl) {
    var markers = [];
    var i=0;
    for (var ndx in photos) {
    	i++;
    	if (i % anzahl) continue; 
    	var item = photos[ndx];
    	var point = new GLatLng(item.lat, item.lng);
        var marker = createMarker(point, item.fn);
        markers.push(marker);
    	i++;
    }
	return markers;
}


function createMarker(point,fn) {
        var marker = new GMarker(point,{icon:getIcon(fn,16,12)});
   		var maske = /(.*?)\.png/;
		var elems = maske.exec(fn);
		var jpg  =  elems[1] + '.' + 'jpg';
   	    GEvent.addListener(marker, "mouseover", function(el) {
			var icon = marker.getIcon();
		  	var bigmarker = new GMarker(point,{icon:getIcon(jpg,120,96)});
			GEvent.addListener(bigmarker, "click", function(el) {
			   var marker = new GMarker(point,{icon:getIcon(fn,16,12)});
				var maske = /(.*?)\.png/;
				var elems = maske.exec(fn);
				var jpg  = './img/' + elems[1] + '.' + 'jpg';
					//	console.log(jpg);
   				$('bigimg').innerHTML = '<img title="Klick schlie&szlig;t das gro&szlig;e Fenster." src="' + jpg +'" />';
   				Effect.Grow($('bigimg'));
        	});
			map.addOverlay(bigmarker);			
			setTimeout(function() {marker.show();bigmarker.hide()},1630);
        });
		return marker;
}

function getIcon(fn,w,h) {
  var icon = new GIcon();
  icon.iconSize = new GSize(w,h);
  icon.shadowSize = new GSize(32,32);
  icon.iconAnchor = new GPoint(w/2,h/2);
  icon.infoWindowAnchor = new GPoint(0,0);
  icon.infoShadowAnchor = new GPoint(1,1);
  var url = null;
  var icon = new GIcon(icon, "http://tools.webmasterei.com/hhnordtour/img/" + fn, null, "http://_maps.google.com/mapfiles/kml/pal3/icon44s.png");
  return icon;
}
      
      

