﻿var map = null;
var geocoder = null;
var count=0;
var myScripts = "";
var UserId ="";
var UserName ="";
var UserImage ="";
var UserStatusImage = "";
var AnswerImage ="";
var PostedHours ="";
var Address ="";
var Polls ="";
var Answers ="";
var IsCommented = "";
var point1 = "";
var point2 = "";
var PushPinIcon="";
var IsAlreadyFriend = "";
var LUserAddress = "";
var iOccr=0;
 var iIdx=0;
 var pinArray = [];


function initialize() {
    //alert(document.getElementById('map_canvas'));
    if (document.getElementById('ctl00_cp1_map_canvas') != null) {
        if (GBrowserIsCompatible())
        {
            map = new GMap2(document.getElementById('ctl00_cp1_map_canvas'));                    
            map.setMapType();
            //add by vikas for zoom in zoom out
            var mt = map.getMapTypes();
                        // Overwrite the getMinimumResolution() and getMaximumResolution() methods
                        for (var i = 0; i < mt.length; i++) {
                            mt[i].getMinimumResolution = function() { return 3; }
                            mt[i].getMaximumResolution = function() { return 10; }
                        }
                        map.addControl(new GLargeMapControl());
                        map.addControl(new GMapTypeControl());
//
                        // end vikas code
                        map.setCenter(new GLatLng(37.4419, -100.1419), 3);

            //funcLoadXMLDoc('getXmlPollResult.aspx?pollid=' + PollID + "&t=" + Math.random() * .1, 'MapData');   
                 
        }
    }
}

//this.Sleep = function goSleep(naptime) {
//    naptime = naptime * 1000;
//    var sleeping = true;
//    var now = new Date();
//    var alarm;
//    var startingMSeconds = now.getTime();
//    alert("starting nap at timestamp: " + startingMSeconds + "\nWill sleep for: " + naptime + " ms");
//    while (sleeping) {
//        alarm = new Date();
//        alarmMSeconds = alarm.getTime();
//        if (alarmMSeconds - startingMSeconds > naptime) { sleeping = false; }
//    }
//    //alert("Wakeup!");
//}


function showAddress(UserId, UserName, UserImage, UserStatusImage, PostedHours, Address, Polls, Answers, IsCommented, PushPinIcon, IsAlreadyFriend, LUserAddress, iCounter) {
   
    if (document.getElementById('ctl00_cp1_map_canvas') != null) {
        geocoder = new GClientGeocoder();
        if (geocoder) {
            //alert("Add-"+Address);
            geocoder.getLatLng(Address,
      function(point) {

          //alert("point-" + point);

          if (!point) {
              //alert(Address + " not found");
          } else {

              var iOccr1 = IsPinPointExists(pinArray, point);



              if (iOccr1 > 0) {

                  //point.x=point.x+iOccr*20;  
                  //  alert('point :'+ point +" Occr "+ iOccr +" point.y " +point.y + " point.y (*) " + (point.y+iOccr* 5) );                                     
                  point1 = new google.maps.LatLng(point.y + (iOccr1 * .01), point.x + (iOccr1 * .01));
                  // alert('point new 2- :'+ point1);

              }
              else {

                  point1 = point;
              }


              pinArray[iIdx] = point;
              iIdx = iIdx + 1;


              var marker = new GMarker(point1);
              map.addOverlay(marker);
              marker.setImage("../Themes/default/images/icons/" + PushPinIcon + ".gif");

              GEvent.addListener(marker, 'click', function() {
                  marker.openExtInfoWindow(
                                                map,
                                                "snow_window",
                                                "Loading User Info...",
                                                {
                                                    ajaxUrl: "MapData.aspx?&t=" + Math.random() * .1 + "&UserId=" + UserId + "&UserName=" + UserName + "&UserImage=" + UserImage + "&UserStatusImage=" + UserStatusImage + "&PostedHours=" + PostedHours + "&Address=" + Address + "&Polls=" + Polls + "&Answers=" + Answers + "&IsCommented=" + IsCommented + "&IsAlreadyFriend=" + IsAlreadyFriend + "&LUserAddress=" + LUserAddress
                                                }


                                            );

              });
              point2 = point
              //map.setCenter(point2, 3);
              //For window close on mouseout
              //              GEvent.addListener(marker, "mouseout", function() {
              //                  map.closeExtInfoWindow();

              //              });    

          }
      }
    );
            geocoder.reset();
            map.addControl(new GLargeMapControl());
            //map.setCenter(point2, 3);
             if (iCounter==1)
              setCenterForLoginUser(LUserAddress);

        }
    }
}

function IsPinPointExists(pinArray,pinVal)
{
   iOccr=0;   
   for(var i=0 ;i<pinArray.length;i++)
   {  
       if(pinArray[i].x==pinVal.x && pinArray[i].y==pinVal.y  )
       {
            iOccr=iOccr+1;        
       }
   }
   return iOccr;
}
function setCenterForLoginUser(address) {
    if (geocoder) {
        geocoder.getLatLng(address, function(point) {
            if (!point) {

            } else {
                map.setCenter(point, 3);

            }
        }
       );
    }
}

    


   
