﻿// JavaScript Document

    function initialize() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
		var infopanel=document.getElementById("infopanel");
    	map.setCenter(new GLatLng(38.058980, 23.862998), 8);
        map.addControl(new GLargeMapControl());
        map.addControl(new GMapTypeControl());
		map.enableDoubleClickZoom();
		
// Create our "tiny" marker icon
var tinyIcon = new GIcon();
tinyIcon.image = "http://labs.google.com/ridefinder/images/mm_20_red.png";
tinyIcon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
tinyIcon.iconSize = new GSize(12, 20);
tinyIcon.shadowSize = new GSize(22, 20);
tinyIcon.iconAnchor = new GPoint(6, 20);
tinyIcon.infoWindowAnchor = new GPoint(5, 1);

// Set up our GMarkerOptions object literal
markerOptions = { icon:tinyIcon };
      // A function to create the marker and set up the event window
function createMarker(point,html) {
        var marker = new GMarker(point,markerOptions);
        GEvent.addListener(marker, "click", function() {
          marker.openInfoWindowHtml(html);
        });
        return marker;
      }


        GDownloadUrl("http://www.meteo.gr/WFSail/templates/Gdata2.xml", function(data) {
          var xml = GXml.parse(data);
          var markers = xml.documentElement.getElementsByTagName("GROUND_STATIONS");
		  var sdata= xml.documentElement.getElementsByTagName("OBSERVATIONS_GREECE");
		  var zdata= xml.documentElement.getElementsByTagName("OBSERVATIONS_PHENOMENA");
          for (var i = 0; i < markers.length; i++) {
            var point = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
                                    parseFloat(markers[i].getAttribute("long")));
									var sname=markers[i].getAttribute("station_name");
									var sURL=markers[i].getAttribute("station_URL");
									var stemp=sdata[i].getAttribute("temperature");
									var sdate=markers[i].getAttribute("od_date");
									var stime=markers[i].getAttribute("od_time");
									var swindF=sdata[i].getAttribute("wind_force");
									var spressure=sdata[i].getAttribute("pressure");
									var zdescr=zdata[i].getAttribute("descr");
									var zdir=zdata[i].getAttribute("DIRTEXT");
				var marker = createMarker(point,'<table width="235" border="0" cellspacing="2" cellpadding="2"><tr><td width="189" class="White11B">'+sname+'<a href="'+sURL+'" class="menu"></a></td><td width="17"><a href="'+sURL+'" target="_blank"><img src="http://www.meteo.gr/slices/arrow.gif" width="15" height="15" border="0" class="BorderLR"></a></td></tr><tr><td colspan="2"><table width="100%" border="0" cellspacing="4" cellpadding="2"><tr><td class="TabG"><div align="left">Θερμοκρασία: '+stemp+'&deg;C</div></td></tr><tr><td class="TabG"><div align="left">Ένταση ανέμου (μποφόρ): '+swindF+' </div></td></tr><tr><td class="TabG"><div align="left">Διέυθυνση ανέμου: '+zdir+'</div></td></tr><tr><td class="TabG"><div align="left">Πίεση (millibar): '+spressure+'</div></td></tr><tr><td class="TabG"><div align="left">Φαινόμενα:'+zdescr+'</div></td></tr><tr><td class="TabG">Ημ/νία-Ώρα: '+sdate+'/ '+stime+'</td></tr></table></td></tr></table>')
      map.addOverlay(marker);
			
          }
        });
		 //  ======== Add a map overview ==========
      map.addControl(new GOverviewMapControl(new GSize(150,150)));

      //  ======== A function to adjust the positioning of the overview ========
      function positionOverview(x,y) {
        var omap=document.getElementById("map_overview");
        omap.style.left = x+"px";
        omap.style.top = y+"px";
        
        // == restyling ==
        omap.firstChild.style.border = "1px solid gray";

        omap.firstChild.firstChild.style.left="4px";
        omap.firstChild.firstChild.style.top="4px";
        omap.firstChild.firstChild.style.width="190px";
        omap.firstChild.firstChild.style.height="190px";
      }

      //  ======== Cause the overview to be positioned AFTER IE sets its initial position ======== 
      setTimeout("positionOverview(558,254)",1);
      }
    }
    