var map ='';

function setMarker(marker,html,polyLines) {
	GEvent.addListener(marker,"mouseover",function() {
		marker.openInfoWindowHtml(html);
	});

	GEvent.addListener(marker,"click",function() {
		if(this.linesOn) {
			map.removeOverlay(polyLines);
			this.linesOn = false;
		} else {
			map.addOverlay(polyLines);
			this.linesOn = true;
		}
		
	});

}

function mapLoad() {
	startList();

	if (GBrowserIsCompatible()) {
		// custom icons
		var bearIcon = new GIcon();
		bearIcon.image = "/images/malebearicon.png";
		bearIcon.iconSize = new GSize(27, 39);
		bearIcon.shadow = "/images/iconshadow.png";
		bearIcon.transparent = "/images/beartrans.png";
		bearIcon.shadowSize = new GSize(48, 39);
		bearIcon.iconAnchor = new GPoint(13, 38);
		bearIcon.infoWindowAnchor = new GPoint(22, 3);
		bearIcon.imageMap = [21,6, 15,0, 6,0, 0,6, 0,15, 5,23, 9,38, 12,38, 16,23, 21,15];
		
		var townIcon = new GIcon();
		townIcon.image = "/images/townicon.png";
		townIcon.iconSize = new GSize(21, 38);
		townIcon.shadow = "/images/iconshadow.png";
		townIcon.transparent = "/images/beartrans.png";
		townIcon.shadowSize = new GSize(39, 38);
		townIcon.iconAnchor = new GPoint(10, 37);
		townIcon.infoWindowAnchor = new GPoint(22, 3);
		townIcon.imageMap = [21,6, 15,0, 6,0, 0,6, 0,15, 5,23, 9,38, 12,38, 16,23, 21,15];

		map = new GMap2(document.getElementById("map"));
		map.addControl(new GSmallMapControl());
		map.addControl(new GMapTypeControl());
		map.addControl(new GScaleControl());
	
		if(type == 1) {
			map.setCenter(new GLatLng(59.445075,-86.044922), 5);
			map.setMapType(G_HYBRID_MAP);

			var chillMarker = new GMarker(new GLatLng(58.75449,-94.119873),townIcon);
			setMarker(chillMarker,'<div class="infoWindow"<h3>Churchill, MB</h3></div>');
			map.addOverlay(chillMarker);
		} else if(type == 2) {
			map.setCenter(new GLatLng(71.938158,-155.830078), 4);
			map.setMapType(G_HYBRID_MAP);		
		}
		
//http://maps.google.ca/maps?f=q&hl=en&geocode=&q=beaufort+sea&sll=49.891235,-97.15369&sspn=38.725296,82.265625&ie=UTF8&ll=71.897238,-141.064453&spn=9.369915,41.132813&z=5&iwloc=addr&om=1
		GDownloadUrl("/includes/beartracker.php?t="+type,function(data,responseCode) {
			var xml = GXml.parse(data);
			var bears = xml.documentElement.getElementsByTagName("bear");
			for(var i = 0; i < bears.length; i++) {
			
				var marker = new GMarker(new GLatLng(parseFloat(bears[i].getAttribute("lat")),parseFloat(bears[i].getAttribute("lng"))),bearIcon);
				var polys = bears[i].getElementsByTagName("point");
				var polyArray = new Array();
				for(c = 0; c < polys.length; c++) {
					var polyPoint = new GLatLng(parseFloat(polys[c].getAttribute("lat")),parseFloat(polys[c].getAttribute("lng")));
					polyArray.unshift(polyPoint);
					
				}
				
				var ident = bears[i].getAttribute("id");
				var age = bears[i].getAttribute("age");
				if(age == '') age = 'N/A';
				var cubs = bears[i].getAttribute("cubs");
				if(cubs == '') cubs = 'N/A';
				
				if(bears[i].getAttribute("sponsor") == '') {
					var html = '<div style="font-size: 120%;"><h3 style="font-size: 140%; margin: 0;">'+ident+'</h3>This Bear Has No Sponsor. If your business or<br />organization would like to sponsor this bear,<br />please <a href="/contact/">contact</a> us.</div>';
				} else {
					var theight = Number(bears[i].getAttribute("logowidth")) + 80;
					var logo = '<div><img src="/rsrc/bear_sponsors/'+bears[i].getAttribute("logo")+'" width="'+bears[i].getAttribute("logowidth")+'" height="'+bears[i].getAttribute("logoheight")+'" /></div>';
					if(bears[i].getAttribute("logo") == '') logo = '';
					var sponsor = bears[i].getAttribute("sponsor");
					var nickname = bears[i].getAttribute("nickname");
					if(nickname == '') nickname = ident;
										
					var website = bears[i].getAttribute("website");
					if( (website.length > 0) && (website.indexOf('http://') < 0) ) website = 'http://'+website;
					var html = '<div style="style="height: '+theight+'px;">'+logo+'<div style="height: 70px; font-size: 120%; margin-top:7px;"><h3 style="font-size: 140%; margin: 0;">'+nickname+'</h3>This bear is sponsored by:<br /><strong>'+sponsor+'</strong><br /><a href="'+website+'" target="_blank">'+website+'</a></div></div>';
				}
				
				//var html = '<div class="infoWindow"><h3>'+ident+'</h3>Age: '+age+'<br />Cubs: '+cubs+'</div>';
				var polyLines = new GPolyline(polyArray,"#FFFFFF",1);
				setMarker(marker,html,polyLines);
				map.addOverlay(marker);
			}
			
		});
		
	}
}

window.onload = mapLoad;
window.onunload = GUnload;