﻿/**
 * Lakestatus Area Map Framework 1.3
 * Copyright (c) Lakestatus.com - Greg Dohrman. All rights reserved.
 * Unauthorized use is prohibited
 */

	
	var map;
    var baseIcon = new GIcon(G_DEFAULT_ICON);
    baseIcon.shadow = "http://www.google.com/mapfiles/shadow50.png";
    baseIcon.iconSize = new GSize(20, 34);
    baseIcon.shadowSize = new GSize(37, 34);
    baseIcon.iconAnchor = new GPoint(9, 34);
    baseIcon.infoWindowAnchor = new GPoint(9, 2);
    var markers = [];
    var markersText = [];
	


    function initialize() {
      if (GBrowserIsCompatible()) {
        map = new GMap2(document.getElementById("map_canvas"));
        map.setCenter(new GLatLng( 42.848156,-97.544689), 12);
        map.addMapType(G_PHYSICAL_MAP); 
        map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());
        //map.setUIToDefault();
                // Create a base icon for all of our markers that specifies the
        // shadow, icon dimensions, etc.
 
      }
    }
   
     function createMarker(point, index,markerText) {
          // Create a lettered icon for this point using our icon class
          var letter = String.fromCharCode("A".charCodeAt(0) + index);
          var letteredIcon = new GIcon(baseIcon);
          letteredIcon.image = "http://www.google.com/mapfiles/marker" + letter + ".png";

          // Set up our GMarkerOptions object
          markerOptions = { icon:letteredIcon };
          var marker = new GMarker(point, markerOptions);


          GEvent.addListener(marker, "click", function() {
           // marker.openInfoWindowHtml('<div style="width:320px"><div id="layer1" style="position: relative; width: 160px; height: 111px; z-index: 1; float: right; left: 1px; top: 2px"><img alt="" height="106" src="images/weigandfall.JPG" width="160" /></div>'+markerText+'</div> ');
            marker.openInfoWindowHtml(markerText);
          });
          markers.push(marker);
          markersText.push(markerText);
          return marker;
        }

	 function setContent(){
	 	markers=[]
	 	markersText=[]
  	    var topic = document.getElementById('topic').value;
  	    readPOIb(topic);
//  	    var marker=markers[0];
//		alert(marker);
//		marker.openInfoWindowHtml(markersText[0]);
  	 }
	 function showPopup(index){
  	    var marker=markers[index];
		marker.openInfoWindowHtml(markersText[index]);
  	 }
  
 

var xmlhttp;
var xmlurl;	
function readPOIb(topic)
		{
	 	markers=[]
	 	markersText=[]

		xmlhttp=null;
		xmlurl="poi.xml"
		if (window.XMLHttpRequest)
		  {// code for IE7, Firefox, Opera, etc.
		  xmlhttp=new XMLHttpRequest();
		  }
		else if (window.ActiveXObject)
		  {// code for IE6, IE5
		  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
		  }
		if (xmlhttp!=null)
		  {
		  xmlhttp.onreadystatechange=function() {state_Change(topic);};
		  xmlhttp.open("GET",xmlurl,true);
		  xmlhttp.send(null);
		  }
		else
		  {
		  alert("Your browser does not support XMLHTTP.");
		  }
		}

	function state_Change(topic)
	{
	if (xmlhttp.readyState==4)
	  {// 4 = "loaded"
	  if (xmlhttp.status==200)
	    {// 200 = "OK"
	    	map.clearOverlays(); 
	    	map.setCenter(new GLatLng( 42.848156,-97.544689), 12);  
			var index=0;
			var textdesc="<p><table>";
			var xmlDoc=xmlhttp.responseXML;
			var x=xmlDoc.getElementsByTagName("poi");
			
			for (i=0;i<x.length;i++)
			  			
				{
				
				if(x[i].getElementsByTagName("subcategory")[0].childNodes[0].nodeValue.indexOf(topic)>=0){
					var imgsource=x[i].getElementsByTagName("image")[0].childNodes[0].nodeValue;
			      	var desc='<p><b>'+x[i].getElementsByTagName("shortdesc")[0].childNodes[0].nodeValue+'</b></p>';
          			var letter = String.fromCharCode("A".charCodeAt(0) + index);
			      	var img="http://www.google.com/mapfiles/marker" + letter + ".png";
			      	//textdesc=textdesc+"<img  src='"+img+"'/>";
			      	//alert("sample text"+i);
			      	textdesc=textdesc+"<tr><td><img  src='"+img+"' style='vertical-align: middle;' onclick='showPopup("+index+")'/></td><td><a href='javascript:showPopup("+index+")'>"+x[i].getElementsByTagName("shortdesc")[0].childNodes[0].nodeValue+"</a></td></tr>";
			      	desc=desc+x[i].getElementsByTagName("description")[0].childNodes[0].nodeValue;
	        	    //textdesc=textdesc+"<p>"+String.fromCharCode("A".charCodeAt(0) + index)+" - "+desc+"</p>";
			      	
			      	desc='<div style="width:320px"><div id="layer1" style="position: relative; width: 160px; height: 111px; z-index: 1; float: right; left: 1px; top: 2px"><img alt="" height="106" src="images/'+imgsource+'" style="margin: 3px; border-style: solid;border-width: 1px" width="160" /></div>'+desc+'</div>';
	    	      	var coord=x[i].getElementsByTagName("coordinate")[0].childNodes[0].nodeValue;
		      	    var splitcoord=coord.split(",");
		      	    var lat=parseFloat(splitcoord[0]);
		      	    var lng=parseFloat(splitcoord[1]);
			        var latlng = new GLatLng(lat,lng);
	        	    map.addOverlay(createMarker(latlng,index,desc));
	        	    index++;
				    }
				
				}
				textdesc=textdesc+"</table></p>"
	     		document.getElementById('poitext').innerHTML=textdesc;

	    }
	  else
	    {
	    //alert("Problem retrieving XML data:" + xmlhttp.statusText);
	    }
	  }
	 

	}

