      var map = null;         
      var myTime = undefined;      
      var icon = "<div style='font-size:12px;font-weight:bold;border:solid 2px Black;background-color:Aqua;width:50px;'>Shape</div>";  
      var infobox = "";
      var storesData = 1;
      var shape;
      var Addr1;
      function setupPage()
      {
                //Code used to fix the mapping position of the virtual earth
                  var ffv = 0;
                  var ffn = "Firefox/"
                  var ffp = navigator.userAgent.indexOf(ffn);
                  if (ffp != -1) ffv = parseFloat(navigator.userAgent.substring(ffp + ffn.length));
                  // If we're using Firefox 1.5 or above override the Virtual Earth drawing functions to use SVG
                  if (ffv >= 1.5)
                   {
                    Msn.Drawing.Graphic.CreateGraphic=function(f,b) { return new Msn.Drawing.SVGGraphic(f,b) }
                }

                if (map != null)
                {
                    map.Dispose();
                }
                map = new VEMap('myMap');
               map.LoadMap();
               map.DeleteAllPushpins();
               map.SetZoomLevel(20);
        var fullURL = parent.document.URL ;
        
        var storeId = fullURL.substring(fullURL.indexOf('=')+1, fullURL.length) 
        GiantEagle.Applications.InternetSites.Web.Services.StoreService.GetByStoreId(storeId,callLocation, callbackAjaxError)
        //GiantEagle.Applications.InternetSites.Web.Services.StoreService.GetHrsByStoreIddt(storeId,CallHours,callbackAjaxError)
      }
        
    function callLocation(result)
    {
            {
                try
                    {
                        var Imagename;
                        if (map != null)
                        {
                            map.Dispose();
                        }
                        map = new VEMap('myMap');      
                        map.LoadMap();  
                        map.SetZoomLevel(10);
                        var stores = result.ClientData;              
                        storesData =2;
                        var count =1;
                        var ImageNumber;
                        var InsertImage;
                        
                        var len = stores.length -1;
                       for (var i =0; i< stores.length; i++)
                       {
                       
                                                   //var storeLocation = new VELatLong(stores[i].SiteLatitude.Value, stores[i].SiteLongitude.Value);
                                                   if(stores[i].BuildingAddress2==null)
                                                       {
                                                          stores[i].BuildingAddress2 ="";
                                                       }
                                                   InsertImage = true;
                                                      var storetype =  stores[i].StoreTypeCode;
                                                      var bannerName= stores[i].StoreBannerName;
                                                      var imagepath = null;
                                                      
                                              if(storetype == "SM" || storetype == "FU" || storetype == "CV")
                                               {
                                                         if(bannerName =="Giant Eagle")
                                                         {
                                                           Imagename ="GE";
                                                           imagepath = "arrow_noNumber_GE.png";
                                                         }
                                                        else if(bannerName =="Giant Eagle Express")
                                                         {
                                                          Imagename ="EAGLEX";
                                                          imagepath = "arrow_noNumber_GEX.png";
                                                          }
                                                        else if(bannerName =="GetGo")
                                                          {
                                                          Imagename ="GG";
                                                          imagepath = "arrow_noNumber_GG.png";
                                                          }
                                                         else if(bannerName =="Market District")
                                                          {
                                                          Imagename ="MD";
                                                          imagepath = "arrow_noNumber_MD.png";
                                                  
                                                          }
                                                         else if(bannerName =="Community Markets")
                                                          {
                                                            InsertImage = false;
                                                            continue;
                                                          }
                                                          else 
                                                          {
                                                          InsertImage = false;
                                                            continue;
                                                          }
                                              }
                                              else
                                              {
                                              InsertImage = false;
                                                continue;
                                              }
                                                                                  
                                   

                                    if (InsertImage)
                                     {
                                    
                                        
                                           var storeLocation = new VELatLong(stores[i].SiteLatitude.Value,stores[i].SiteLongitude.Value);
                                           shape = new VEShape(VEShapeType.Pushpin,storeLocation);
                                           ImageNumber = count;
//                                           shape.SetCustomIcon(_geApplicationRoot+"/Images/StoreLocator/"+imagepath);
                                           shape.SetCustomIcon("<img src='"+_geApplicationRoot+"/Images/StoreLocator/"+imagepath+"' style='width:26px;height:47px'/>");

                                           count++;
                                           var Details = stores[i].BuildingAddress1 +"<br>"+ stores[i].BuildingCity +"<br>"+ stores[i].BuildingZip ;
                                           var Addr1   = stores[i].BuildingAddress1 +","+ stores[i].BuildingCity +","+ stores[i].BuildingZip ;
//                                           document.getElementById("Text3").value = stores[i].BuildingName + "," + stores[i].BuildingAddress1 + "," + stores[i].BuildingAddress2 + "," + stores[i].BuildingCity + "," + stores[0].BuildingZip+","+ stores[0].CountySite.State.StateCode;
                                           var imgsrc =_geApplicationRoot+"/Images/StoreLocator/"+Imagename+".gif";
                                           var storeDetailPath =_geApplicationRoot+"/StoreLocator/StoreDetails.aspx?storeId="+stores[i].StoreId.Value;
                                           infobox ="<img src='"+imgsrc+"'/>"
                                           +"<div id ='asd' style='width:400px;'><br>"+"<td>"+ Details +"</td><br><br>"      
//                                           +"<a href='"+storeDetailPath+"' target='_blank'>More about the store.</a><br><br>"
//                                           +"Get directions:"
//                                           +"<a href='javascript:;' id = 'Tohere' onclick=\"toHere()\">To here</a><td>--</td>"
//                                           +"<a href='javascript:;'id = 'Fromhere' onclick=\"fromHere()\">From here</a></div>"
                                           +"<div style='width:309px;'div id='direct'>"
                                           +"<input id='AddressText' type='text' name='chetan'  style ='visibility:hidden' value =''/>"
                                           +"<input id='Button4' type='button' value='button' style ='visibility:hidden' onclick =\"route('"+ Addr1 + "')\" />"
                                           +"<input id='CityText' type='text' name='ee' style ='visibility:hidden' value ='"+ Addr1 + "'/>"
                                           +"</div>";
                                            shape.SetTitle("<h2>Giant Eagle</h2>");   
                                            shape.SetDescription(infobox);
                                            map.AddShape(shape);
                                            map.SetCenter(storeLocation);
                                           
                                     }
                       }
                  }
                    catch(e)
                        {
                          alert("There was an error displaying the Giant Eagle store..." + e.message);
                        }   
                     if (!result.OperationSucceeded)
                        {
                        alert("There was an error retrieving the folder.\n\n" + result.ClientErrorMessage);
                        return;
                        }
    
    }

 }       
        
                function callbackAjaxError(result)
{
    var message = "There was an error with the remote call : \n" + 
        result._exceptionType + 
        result._message +
        result._stackTrace +
        "\nTime Out: " + result._timedOut;
        alert(message);
   
} 

function CallHours(result)
{                         

    var hrshtml ="<div><table id='Table1' style='width: 270px; BORDER-COLLAPSE: collapse ;' cellspacing='0' cellpadding='3' border='1'><tbody><tr style='font-family:verdana; font-weight: bold;  background-color: #F5F2E9'><th align='left' colspan='3' scope='col' style='font-family:verdana;font-size:10px font-weight: bold;  color:#64656c; background-color: #F5F2E9' >Store Hours</th></tr></tbody>"
    var hours = result.ClientData;   
    for (var i =0; i< hours.length; i++)
    {
        
        if(hours[i].Open24Hours)
        {
             hrshtml+="<tr style='background-image: url(../Images/StoreLocator/back.gif)'><td style=display:inline-table;>"+hours[i].DayDisplay+"</td>"
                      +"<td style='display:inline-table; font-size='10px'; font-family:verdana;'>"+ "24 hrs"+"</td></tr>"

        }
        else
        {
          var OpenTime =hours[i].OpenTimeDisplay;
              OpenTime = OpenTime.split(":");
              if (OpenTime[0].length ==1)
              {     OpenTime = OpenTime[0].substring(0,1);

              }
              else
              {
                OpenTime = OpenTime[0].substring(0,2);
              }
              OpenTime =OpenTime+" am - ";
              
              
          var CloseTime =hours[i].CloseTimeDisplay;
              CloseTime = CloseTime.split(":");
              if (CloseTime[0].length ==1)
              {     CloseTime = CloseTime[0].substring(0,1);

              }
              else
              {
                CloseTime = CloseTime[0].substring(0,2);
              }
           
 
//              CloseTime = CloseTime.substring(0,2);
              CloseTime =CloseTime+" pm";
             hrshtml+="<tr style='background-image: url(../Images/StoreLocator/back.gif)'><td style=display:inline-table;>"+hours[i].DayDisplay+"</td>"
                      +"<td style=display:inline-table;>"+OpenTime+""+CloseTime+"</td></tr>"
        
        }
    
    }
      hrshtml+="</table></div>";
     var previewElement = document.getElementById("StoreHours");
     previewElement.innerHTML = hrshtml;

}

function getDirections()
{
    var StateCode = document.getElementById("StateDropDown");
    
    var State = StateCode.options[StateCode.selectedIndex].value; 
    if (State == "")
    {
        alert("Please select a state.");
        return;
    }

    var Addr2 = document.getElementById("AddressText").value + " " + document.getElementById("CityText").value + " " + document.getElementById("ZipText").value + " " + State;
    var Addr1 = document.getElementById("storeSearchAddress").value;
    
    if (Addr2 == "   ")
    {
        alert("Please enter an address.");
        return;
    }
    
    var previewElement = document.getElementById("DirectionsDiv");
    previewElement.innerHTML = "<center><br><img src='../Images/Icons/LoadingArrow.gif'>&nbsp;&nbsp;<b>Loading</b></center>";
    
    map.GetRoute(Addr2, Addr1,null,null,onGotRoute);
}


function onGotRoute(route)
{
    
   var routeinfo="Route info:\n\n";
   routeinfo += "Total distance: ";
   routeinfo += route.Itinerary.Distance +" ";
   routeinfo += route.Itinerary.DistanceUnit + "\n";
   var steps="";
   var len = route.Itinerary.Segments.length;
   var Count;
   var html ="<table id='Table1' style='width: 525px; BORDER-COLLAPSE: collapse' cellspacing='0' cellpadding='3' border='1' bordercolor='#f1f1f1' >"
   var distanceunit = "";
   for(var i = 0; i<len ;i++)
   {
      Count = i+1;
      html+="<tr valign='top' style='width:50px;'><td style='background-color:#F0EBDD'; align=center>"+Count+"</td>"
          +"<td valign='top'  style= 'background-color:#F6F3EA;' align=left >"+route.Itinerary.Segments[i].Instruction+"</td>"
          +"<td valign='top'  style='background-color:#F0EBDD;' align=right>"+route.Itinerary.Segments[i].Distance + "</td>"
          +"<td valign='top'  style='background-color:#F0EBDD;' align=left>miles</td></tr>"

   }
   html+="</table>";
   var previewElement = document.getElementById("DirectionsDiv");
   previewElement.innerHTML = html;
   
   document.getElementById("PrintMapLink").style.display = "inline";
}
      

///* Add window.event to Firefox  */



if(!window.event && window.captureEvents)
 {
         // set up event capturing for mouse events (add or subtract as desired)
         window.captureEvents(Event.MOUSEOVER|Event.MOUSEOUT|Event.CLICK|Event.DBLCLICK);
         // set window event handlers (add or subtract as desired)
         window.onmouseover = WM_getCursorHandler;
         window.onmouseout = WM_getCursorHandler;
         window.onclick = WM_getCursorHandler;
         window.ondblclick = WM_getCursorHandler;
         // create an object to store the event properties
         window.event = new Object;
}
function WM_getCursorHandler(e)
 {
//            window.event.clientX = e.pageX;
//           window.event.clientY = e.pageY;
//            window.event.x = e.layerX;
//           window.event.y = e.layerY;
//            window.event.screenX = e.screenX;
//           window.event.screenY = e.screenY;
            if (routeEvent(e) == false) {
                return false;
            } else {
                return true;
            }
}


function PrintMapAndDirections()
{
    var FromAddr = document.getElementById("StoreAddressText").value;
//    FromAddr = FromAddr.replace('<br />',',');
    var StateCode =document.getElementById("StateDropDown");
    var State = StateCode.options[StateCode.selectedIndex].text; 
    var ToAddr =  document.getElementById("AddressText").value +","+ document.getElementById("CityText").value+","+State +" "+document.getElementById("ZipText").value;
    var Address = FromAddr+"^"+ToAddr;
    if(ToAddr.length>5)
    {
    window.open('PrintMapAndDirections.aspx?FromAddr='+ Address,'Maps','toolbar=yes,resizable=yes,menubar=yes,scrollbars=yes,width=500,height=700,resizable=yes'); 
    }
    else
    {
        alert("Enter From Address");
    }
}


function PrintPage()
{
    if (map != null)
    {
        map.Dispose();
    }
   map = new VEMap('myMap');
   map.LoadMap();
   map.SetZoomLevel(20);
   Printroute();
}

function Printroute()
{
            var fullURL = parent.document.URL ;

            var totalAddress = fullURL.substring(fullURL.indexOf('=')+1, fullURL.length) 
            var splitaddress = totalAddress.split("^");
            var Addr1 = splitaddress[0];
            var Addr2 = splitaddress[1];
            map.GetRoute(Addr2, Addr1,null,null,onGotRoute2);


}

function onGotRoute2(route)
{
   var routeinfo="Route info:\n\n";
   routeinfo += "Total distance: ";
   routeinfo += route.Itinerary.Distance+" ";
   routeinfo += route.Itinerary.DistanceUnit+"\n";
   document.getElementById("LableTravleInfo").innerText = routeinfo;
   var steps="";
   var len = route.Itinerary.Segments.length;
   var Count;
   var html ="<div><table id='Table1' style='FONT-SIZE: smaller; width: 444px; COLOR: #333333;' BORDER-COLLAPSE: collapse' cellspacing='0' cellpadding='3' >"
   var distanceunit = "";
   for(var i = 0; i<len ;i++)
   {
      Count = i+1;
      html+="<tr><td style='background-color:#F0EBDD'; align=center>"+Count+"</td>"
          +"<td style= 'background-color:#F6F3EA;' align=left >"+route.Itinerary.Segments[i].Instruction+"</td>"
          +"<td style='background-color:#F0EBDD;' align='right'>"+route.Itinerary.Segments[i].Distance + "</td>"
          +"<td style='background-color:#F0EBDD;'> miles"+" </td></tr>"

   }
    html+="</table>";
     var previewElement = document.getElementById("DirectionsDiv");
     previewElement.innerHTML = html;


}

	function ValidateZip(ZipCodeText)
	{
	     Zipcode = document.getElementById(ZipCodeText);
	     var sZipValue = Zipcode.value.toString().trim();
         if(sZipValue.length == 0)
         {

         }
         else if(isNaN(sZipValue))
         {
            alert("Alphabets and special characters are not allowed.");
            Zipcode.value = "";
            return false;
         }

	}
	
	String.prototype.trim = function()
     { return this.replace(/^\s+|\s+$/, ''); };
     
     
     
     function getDetails()
{    

    var frame = document.getElementById("NoteContainer");
    frame.src = _geApplicationRoot + "/StoreLocator/SendNotes.aspx?" ;
      
    var top = undefined;
    if (document.all)
    {
        top = document.body.scrollTop + event.clientY;
    }
    else
    {
        top = event.clientY;
    }
    
    var bottom = top + parseInt(frame.height);
    var screenBottom = document.body.scrollTop + parseInt(document.body.clientHeight);
    if (bottom > screenBottom)
    {
        top -= ((bottom - screenBottom) + 10);
    }
    frame.style.top = top;
    frame.style.left = (parseInt(screen.availWidth)/2) - 200;    
    frame.style.visibility = "visible";    
}

function closeFrame()
{
    var frame = document.getElementById("NoteContainer");
    frame.style.visibility = "hidden";    
}


