dojo.require("quelib.Map");
dojo.require("dijit.layout.BorderContainer");
dojo.require("dijit.layout.ContentPane");

var map;
var ccj;
var roads = [];

function home () {
	var home = dijit.byId('home');
	var map = dijit.byId('map');
	home.open();
	map.home();
	return false;
}

function init () {
	map = dijit.byId('map');
	var home = dijit.byId('home');
	roads = [home];

	var terraTilesDOQ = function (a,b,c) {
		var lULP = new GPoint(a.x*256,(a.y+1)*256);
		var lLRP = new GPoint((a.x+1)*256,a.y*256);
		var lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
		var lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);
		var lBbox=lUL.x+","+lUL.y+","+lLR.x+","+lLR.y;
		return "http://www.terraserver-usa.com/ogcmap.ashx?&REQUEST=GetMap&SERVICE=WMS&VERSION=1.1.1&LAYERS=doq&STYLES=default&FORMAT=image/jpeg&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&SRS=EPSG:4326&BBOX="+lBbox+"&WIDTH=256&HEIGHT=256";
	};

	var terraTilesDRG = function (a,b,c) {
		var lULP = new GPoint(a.x*256,(a.y+1)*256);
		var lLRP = new GPoint((a.x+1)*256,a.y*256);
		var lUL = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lULP,b,c);
		var lLR = G_NORMAL_MAP.getProjection().fromPixelToLatLng(lLRP,b,c);
		var lBbox=lUL.x+","+lUL.y+","+lLR.x+","+lLR.y;
		return "http://www.terraserver-usa.com/ogcmap.ashx?&REQUEST=GetMap&SERVICE=WMS&VERSION=1.1.1&LAYERS=drg&STYLES=default&FORMAT=image/jpeg&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&SRS=EPSG:4326&BBOX="+lBbox+"&WIDTH=256&HEIGHT=256";
	};

	var doq = map.newMapType("Arial", "Ari", terraTilesDOQ, [1, 16], "Terraservice");
	var drg = map.newMapType("Topo", "Top", terraTilesDRG, [1, 16], "Terraservice");

	var roads = new GGeoXml("http://maps.google.com/maps/ms?ie=UTF8&hl=en&vps=1&jsv=156c&msa=0&output=nl&msid=114467347816587467641.000468dbad1330fd76e2b");
	map.map.addOverlay(roads);

	var cabins = new GGeoXml("http://maps.google.com/maps/ms?ie=UTF8&hl=en&msa=0&output=nl&msid=114467347816587467641.00046916b065f74b2624d");
	map.map.addOverlay(cabins);

	/*
	// Googles satalite and hybrid maps should not be allowed to zoom in farther than they have data
	var types = map.map.getMapTypes();
	types[1].cb = 14;
	types[2].cb = 14;
	*/
}

google.setOnLoadCallback(function(){
	dojo.addOnLoad(init);
});
