<!--
//<![CDATA[




// VARIABLES


    // custom icons
    var iconBeer = new GIcon();
	iconBeer.image = './i/beerPin.png';
	iconBeer.iconSize = new GSize(21, 35);
	iconBeer.iconAnchor = new GPoint(10, 34);
	iconBeer.shadow = '';
	iconBeer.infoWindowAnchor = new GPoint(10, 34);
    var iconCash = new GIcon();
	iconCash.image = './i/cashPin.png';
	iconCash.iconSize = new GSize(21, 35);
	iconCash.iconAnchor = new GPoint(10, 34);
	iconCash.shadow = '';
	iconCash.infoWindowAnchor = new GPoint(10, 34);
    var iconMill = new GIcon();
	iconMill.image = './i/windPin.png';
	iconMill.iconSize = new GSize(21, 35);
	iconMill.iconAnchor = new GPoint(10, 34);
	iconMill.shadow = '';
	iconMill.infoWindowAnchor = new GPoint(10, 34);
    var iconBolt = new GIcon();
	iconBolt.image = './i/boltPin.png';
	iconBolt.iconSize = new GSize(21, 35);
	iconBolt.iconAnchor = new GPoint(10, 34);
	iconBolt.shadow = '';
	iconBolt.infoWindowAnchor = new GPoint(10, 34);
    var iconAnch = new GIcon();
	iconAnch.image = './i/anchPin.png';
	iconAnch.iconSize = new GSize(21, 35);
	iconAnch.iconAnchor = new GPoint(10, 34);
	iconAnch.shadow = '';
	iconAnch.infoWindowAnchor = new GPoint(10, 34);
    var iconLeaf = new GIcon();
	iconLeaf.image = './i/leafPin.png';
	iconLeaf.iconSize = new GSize(21, 35);
	iconLeaf.iconAnchor = new GPoint(10, 34);
	iconLeaf.shadow = '';
	iconLeaf.infoWindowAnchor = new GPoint(10, 34);
    var iconShop = new GIcon();
	iconShop.image = './i/shopPin.png';
	iconShop.iconSize = new GSize(21, 35);
	iconShop.iconAnchor = new GPoint(10, 34);
	iconShop.shadow = '';
	iconShop.infoWindowAnchor = new GPoint(10, 34);

    var customIcons = [];
	customIcons["pubh"] = iconBeer;
	customIcons["frmr"] = iconAnch;
	customIcons["cash"] = iconCash;
	customIcons["mill"] = iconMill;
	customIcons["elec"] = iconBolt;
	customIcons["natu"] = iconLeaf;
	customIcons["shop"] = iconShop;

    var markerGroups = { "pubh": [], "frmr": [], "cash": [], "mill": [], "elec": [], "natu": [], "shop": []};

    // default patameters
    var map = null;
    var geocoder = null;
    var lat = 52.63;
    var lng = 1.52;
    var zoom = 10;
    var maptype = G_NORMAL_MAP;

    // skip "?" character
    var query = location.search.substring(1);

    // split the rest at each "&" character to give a list of  "argname=value"  pairs
    var pairs = query.split("&");
	for (var i=0; i<pairs.length; i++) {
	// break each pair at the first "=" to obtain the argname and value
	var pos = pairs[i].indexOf("=");
	var argname = pairs[i].substring(0,pos).toLowerCase();
	var value = pairs[i].substring(pos+1).toLowerCase();

        // process each possible argname
	if (argname == "ll") {
	    ll = value;
	    var coor = ll.split(",");
		if (coor[0]) {lat = parseFloat(coor[0]);}
		if (coor[1]) {lng = parseFloat(coor[1]);}
	}
	if (argname == "z") {zoom = parseInt(value);}
	if (argname == "t") {
	    if (value == "m") {maptype = G_NORMAL_MAP;}
	    if (value == "k") {maptype = G_SATELLITE_MAP;}
	    if (value == "h") {maptype = G_HYBRID_MAP;}
	    }
	}





// Polygons

	var Polys = new GPolygon.fromEncoded({
	  polylines: [
	    {points: "otx`Isq~HD}F]}J`Br@XrBg@LZ`B_@RUrBhAjAGr@q@YNpBaAB",
	     levels: "PAGCDCCBDBDCCP",
	     color: "#5C7BF8",
	     opacity: 1,
	     weight: 2,
	     numLevels: 18,
	     zoomFactor: 2},
	    {points: "cex`I_x~Hk@JF|CfAC\\kDz@o@?yBn@@Qw@aAUi@aCo@_AL}Ai@i@n@aBiAaGc@aBs@NQmC{AD]nEq@wCmBmBo@lFg@QSxAL~F\\_@FsCVWh@bFVA[z@d@lB`BfCHrC|FhBb@|@",
	     levels: "PCECCBCEBBBDCCCFCCEDDCHCCCFBBEBCCBCECP",
	     color: "#5C7BF8",
	     opacity: 1,
	     weight: 2,
	     numLevels: 18,
	     zoomFactor: 2},
	    {points: "ugy`Iwg_IB_Kn@kDlAe@bBvDN{BnB{@d@lA~@iDy@nJlAUVeCT|N^tP_@AUsFyCgBuAcFgGW",
	     levels: "PBFDEDDDGDCE?GBCCEP",
	     color: "#5C7BF8",
	     opacity: 1,
	     weight: 2,
	     numLevels: 18,
	     zoomFactor: 2},
	    {points: "ust`I_zlHFqLbDsFq@{BoBbCmAwMoBoH_C_O}CaHScDJiGVBfSu[M`Mh@rKz@`GpC`VtJzZcEnB]vBmAn@]~DgDdIoHr@",
	     levels: "PDFDECBDDBGBIBD@EGCCDCEP",
	     color: "#5C7BF8",
	     opacity: 1,
	     weight: 2,
	     numLevels: 18,
	     zoomFactor: 2},
	    {points: "}au`IsnoH}@kHyBwGhJyPEc@sJjQaAiDq@aIqDkF~`@am@xBpHrBpR}A`RcElGVtDuPdX",
	     levels: "PBFBGGBDGICEFDDP",
	     color: "#5C7BF8",
	     opacity: 1,
	     weight: 2,
	     numLevels: 18,
	     zoomFactor: 2},
	    {points: "q}u`IyeqHoIeZxLaPzKvVeOnS",
	     levels: "PFHFP",
	     color: "#5C7BF8",
	     opacity: 1,
	     weight: 2,
	     numLevels: 18,
	     zoomFactor: 2}],
	  fill: true,
	  color: "#5C7BF8",
	  opacity: 0.1,
	  outline: true
	});


















// Window Resizer


    function windowHeight() {
	if (self.innerHeight) { // Mozilla, Safari, Opera, Chrome, etc.
	    return self.innerHeight;
	}
	if (document.documentElement && document.documentElement.clientHeight) { // IE6
	    return document.documentElement.clientHeight;
	}
	if (document.body) { // IE5
	    return document.body.clientHeight;
	}
	return 0;
    }

    function handleResize() {
	var height = windowHeight() - document.getElementById('tet').offsetHeight - 3;
	document.getElementById('map').style.height = height + 'px';
	document.getElementById('bar').style.height = height + 'px';
    }






// Lat and Long Retriver

    function moveendHandler() {
	var center = map.getCenter();
	var latLngStr = 'Center = ' + center.toString();

	var bounds = map.getBounds();
	var boundStr = 'Bounds = ' + bounds.toString();

	var span = bounds.toSpan();
	var spanStr = 'Span = ' + span.toString();

	var zoom = map.getZoom();
	var zoomStr = 'Zoom level = ' + zoom.toString();

	var mapType = map.getCurrentMapType();
	var mType = '';
	if (mapType == G_SATELLITE_MAP) mType = 'k';
	else if (mapType == G_HYBRID_MAP) mType = 'h';
	else if (mapType == G_NORMAL_MAP) mType = 'm';
	else mType = '?';

	var selflinkStr = '/map?'
		+ 'll='
		+ center.lat().toFixed(6).toString()
		+ ','
		+ center.lng().toFixed(6).toString()
		+ '&t='
		+ mType
		+ '&z='
		+ map.getZoom();
	document.getElementById("self_link").href = selflinkStr;
    }




// More functions

    function createMarker(point, name, label, info, type, foto, cred, lati, long) {
	var marker = new LabeledMarker(point, {icon: customIcons[type], title: name, labelText: label, labelOffset: new GSize(0,0)});
	markerGroups[type].push(marker);
	var htm1 = "<b>" + name + "</b><br />" + info + "<br />Lat: " + lati + "<br />Lng: " + long;
	if(foto){var html = htm1 + "<br /><img width='300' height='190' src='" + foto + "' /><br />Photo by " + cred;}
	else{var html = htm1;}
	GEvent.addListener(marker, 'click', function() {
	    marker.openInfoWindowHtml(html);
	});
	return marker;
    }

    function toggleGroup(type) {
	for (var i = 0; i < markerGroups[type].length; i++) {
	    var marker = markerGroups[type][i];
	    if (marker.isHidden()) {
		marker.show();
	    } else {
		marker.hide();
	    }
	} 
    }

    function toggleLabels() {
	var showLabels = document.getElementById("labelsCheckbox").checked;
	for (groupName in markerGroups) {
	    for (var i = 0; i < markerGroups[groupName].length; i++) {
		var marker = markerGroups[groupName][i];
		marker.setLabelVisibility(showLabels);
	    }
	}
    }












// Map Canvas


    function initialize() {
	handleResize();

	var email = rot13('znvygb') + ':' + rot13('gevohgr') + '@' + rot13('oebnqfznc.pb.hx');
	var eleme = document.getElementById('contact')
	eleme.href = email;
	eleme.innerHTML = email.substring(7);

	if (GBrowserIsCompatible()) {
	    map = new GMap2(document.getElementById('map'));

	    map.setCenter(new GLatLng(lat, lng), zoom, maptype);
	    map.addControl(new GLargeMapControl());
	    map.addControl(new GScaleControl());
	    map.addControl(new GHierarchicalMapTypeControl());
	    map.enableDoubleClickZoom();
	    map.enableScrollWheelZoom();
	    map.enableContinuousZoom();
	    map.addOverlay(Polys);

	    document.getElementById("pubhCheckbox").checked = true;
	    document.getElementById("frmrCheckbox").checked = true;
	    document.getElementById("cashCheckbox").checked = true;
	    document.getElementById("millCheckbox").checked = true;
	    document.getElementById("elecCheckbox").checked = true;
	    document.getElementById("natuCheckbox").checked = true;
	    document.getElementById("shopCheckbox").checked = true;
	    document.getElementById("labelsCheckbox").checked = true;

	    GDownloadUrl('0m_data_static.xml', function(data) {
		var xml = GXml.parse(data);
		var markers = xml.documentElement.getElementsByTagName('marker');
		for (var i = 0; i < markers.length; i++) {
		    var lati = parseFloat(markers[i].getAttribute('lat'));
		    var long = parseFloat(markers[i].getAttribute('lng'));
		    var name = markers[i].getAttribute('name');
		    var label = markers[i].getAttribute('label');
		    var info = markers[i].getAttribute('info');
		    var type = markers[i].getAttribute('type');
		    var foto = markers[i].getAttribute('foto');
		    var cred = markers[i].getAttribute('cred');
		    var point = new GLatLng(parseFloat(markers[i].getAttribute('lat')),
					    parseFloat(markers[i].getAttribute('lng')));
		var marker = createMarker(point, name, label, info, type, foto, cred, lati, long);
		map.addOverlay(marker);
	    }
	});
	moveendHandler();
	GEvent.addListener(map, 'moveend', moveendHandler);
      }
    }


window.onresize = handleResize;
window.onload = initialize;


//]]>
-->
