﻿var markerText = "";

function pageLoad()
{
  if (GBrowserIsCompatible()) {
    mapdiv = document.getElementById("map");
    map = new google.maps.Map2(mapdiv);
    map.setUIToDefault(); 
   
    var lat = parseFloat($get('C_mapLatitude').value);
    var lng = parseFloat($get('C_mapLongitude').value);
    var zoom = parseInt($get('C_mapZoomLevel').value);
    markerText = $get('C_mapMarkerText').value;
    var mapNotGameText = $get('C_mapNotGameText').value;
    
    var start = new GLatLng(lat, lng);
    map.setCenter(start, zoom, G_HYBRID_MAP);
    
    showLatLng(start);
    showZoom();

    if (markerText != "")
    {
      var marker = createMarker(start, markerText);
      map.addOverlay(marker);
      marker.openInfoWindowHtml(markerText);  
    }
    
   // GEvent.addDomListener(mapdiv, "DOMMouseScroll", map.wheelZoom); // Firefox 
   // GEvent.addDomListener(mapdiv, "mousewheel", map.wheelZoom); // IE 
   
    GEvent.addListener(map, "mousemove", function(point) { 
      showLatLng(point);
    }); 

    GEvent.addListener(map, "zoomend", function(oldLevel, newLevel) {
      showZoom();
    });
    
    GEvent.addListener(map, "click", function(marker, point) {
      if (!marker)
      {
        if (mapNotGameText != "")
        {
          alert(mapNotGameText);
        }
        else
        {
          if (markerText != "")
          {
            alert("Ebben a fordulóban már megjelöltél egy helyszínt.\nMinden játékban csak egy tippet adhatsz le!\n\nTöbbszörös regisztráció és tippleadás a játékból való kizárással jár!");
          }
          else
          {
            var userLogin = $get('userLogin').value;

            if (userLogin == "0")
            {
              alert("A tipp leadása előtt be kell jelentkezned!");
            }
            else
            {
              if (map.getZoom() < 16)
              {
                alert("A tipp leadása előtt nagyítsd fel a térképet legalább 16-os szintre, annak érdekében, hogy pontosan tudd megjelölni az adott helyszínt!");
              }
              else
              {
                if (confirm("Erre a helyszínre adod le a tipped?\nA tipp leadása után nem lesz lehetőséged módosítani!\n\nEgy személy egy fordulóban csak egyszer tippelhet.\nTöbbszörös regisztráció és tippleadás a játékból való kizárással jár!"))
                {
                  document.documentElement.style.cursor = "wait";
                  $get('up1').style.display = 'block'; 
                  Animare.IttVoltam.Web.WebService.Command.AddGameTip(point.lat(), point.lng(), OnSucceeded, OnFailed);
                }
              }
            }
          }  
        }  
      }
    });

    
  }
}
    
 
    
function OnSucceeded(result)
{
  document.documentElement.style.cursor = "default";
  if (result.code != 0)
  {
    $get('up1').style.display = 'none'; 
    alert(result.message); 
  }
  else
  {
    markerText = result.message;
    var marker = createMarker(new GLatLng(result.latitude, result.longitude), markerText);
    map.addOverlay(marker);
    marker.openInfoWindowHtml(markerText);    
    $get('up1').style.display = 'none'; 
  }
}

function OnFailed(error)
{
  document.documentElement.style.cursor = "default";
  Animare.IttVoltam.Web.WebService.Command.Error(
    error.get_exceptionType(),
    error.get_message(),
    error.get_statusCode(),
    error.get_stackTrace(),
    error.get_timedOut()
  );
  $get('up1').style.display = 'none'; 
  alert(errorMessage);
}    
    
        


function createMarker(point, markerText) 
{  
  var icon = new GIcon();
  icon.image = "http://i.ittvoltam.hu/icon/green.png";
  icon.shadow = "http://i.ittvoltam.hu/icon/shadow.png";
  icon.iconSize = new GSize(20, 34);
  icon.shadowSize = new GSize(37, 34);
  icon.iconAnchor = new GPoint(9, 34);
  icon.infoWindowAnchor = new GPoint(9, 2);
  icon.infoShadowAnchor = new GPoint(18, 25);
  
  var marker = new GMarker(point, icon);  
  GEvent.addListener(marker, "click", function() 
  {
    marker.openInfoWindowHtml(markerText);  
  });
  return marker;
}


    
 function pageUnload()
 {
   GUnload();
 }

if (typeof(Sys) !== "undefined") Sys.Application.notifyScriptLoaded();
    


