﻿// JScript File


function applyst() {
    load();
    if( window.XTRonload ) { window.XTRonload(); }
}
function savest() {
    try {
		GUnload()
	}
	catch(e) {}
	
    if( window.XTRonunload ) { window.XTRonunload(); }
}

//load handling adapted from
//http://www.brothercake.com/site/resources/scripts/onload/
if( window.addEventListener ) {
    window.addEventListener( 'load', applyst, false );
    window.addEventListener( 'unload', savest, false );
} else if( document.addEventListener ) {
    document.addEventListener('load' , applyst, false );
    document.addEventListener( 'unload', savest, false );
} else if( window.attachEvent ) {
    window.attachEvent( 'onload', applyst );
    window.attachEvent( 'onunload', savest );
} else {
    if( window.onload ) { window.XTRonload = window.onload; }
    if( window.onunload ) { window.XTRonunload = window.onunload; }
    window.onload = applyst;
    window.onunload = savest;
}

  function load() {
    if (GBrowserIsCompatible()) {
		var map = new GMap2(document.getElementById("map"));		
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		GEvent.addListener(map, "moveend", function() {
			var center = map.getCenter();
			//document.getElementById("message").innerHTML = center.toString();
			}
		);
		var IsAdmin;
		if (document.getElementById("IsAdmin")) {
			IsAdmin = document.getElementById("IsAdmin").value;
		}
		else {
			IsAdmin = 0;
		}
		
		var mapx = document.getElementById("map_x").value;
		var mapy = document.getElementById("map_y").value;
		var intZoomLevel = 9;
		var intTmp;
		try {
			objPageTypeHidden = document.getElementById("pageTypeHidden");
			intTmp=objPageTypeHidden.value;
			if (intTmp==0) {
				intZoomLevel=4;
			}
			else if (intTmp==1) {
				intZoomLevel=6;
			}
		}		
		catch(err) {
			intZoomLevel = 9;
		}
		
		//alert(mapx + ', ' + mapy);
		if (mapy==0 && mapx==0) {
		mapx='-1.4047694206237793';
		mapy='50.91111070631812';
		}
		map.setCenter(new GLatLng(mapy, mapx), intZoomLevel);
						
		var bounds = map.getBounds();
		var southWest = bounds.getSouthWest();
		var northEast = bounds.getNorthEast();
		var lngSpan = northEast.lng() - southWest.lng();
		var latSpan = northEast.lat() - southWest.lat();
		var point = new GLatLng(mapy, mapx);
		if (document.getElementById("map_x").value==0 && document.getElementById("map_y").value==0) {
			//Do nothing
		}
		else {
			map.addOverlay(new GMarker(point));
		}
		//alert(IsAdmin);
		if (IsAdmin==1) {
			GEvent.addListener(map, "click", function(marker, point) {
				if (marker) {
					map.removeOverlay(marker);
					document.getElementById("map_x").value=0;
					document.getElementById("map_y").value=0;
				}
				else {
					map.clearOverlays();
					document.getElementById("map_x").value = point.x;
					document.getElementById("map_y").value = point.y;
					map.addOverlay(new GMarker(point));
				}
			});
		}
    }
  }
