﻿
var map = null;
var pinID = 1;
var sDirections;
var CourseAddress;
var CourseLatLon;

var StartAddress = null;

function ShowInfo()
{
    HideDivs();
    ShowDiv("div_courses");
}
function ShowWeather()
{
    HideDivs();
    ShowDiv("div_weather");
}
function ShowTeeboxes()
{
    HideDivs();
    ShowDiv('div_Teebox');
}

function ShowAmenities()
{
    HideDivs();
    ShowDiv('div_Amenities');
}
function ShowSavings()
{
    HideDivs();
    ShowDiv('div_Savings');
}

function ShowGetStartAddress(startAddress,courseAddress)
{
    //HideDivs();
    
    CourseAddress = courseAddress;
    
    if(startAddress == null  || startAddress.length == 0)
    {
        //alert(startAddress);
        
        if(StartAddress == null)
        {
           // alert(StartAddress);
            StartAddress = 'address, city, state, zip';
        }
    }
    else
        StartAddress = startAddress;
    
    $get('input_startAddress').value = StartAddress;
    ShowDiv('div_StartAddress');
    
    
    
    /*if(UserAddress != null)
        startAddress = prompt("Enter Starting Address", UserAddress );
    else
        startAddress = prompt("Enter Starting Address", "address,city,state,zip");
    if(startAddress != null)
        ShowMap(startAddress,v);*/
}

function ShowMap(lat, lon, name,addr,city,state,zip)
{
   // alert(city);

    HideDivs();
    ShowDiv("div_directions");
    ShowDiv("Map_Directions");
    ShowDiv("div_StartAddress");
        
    if(map == null)
    {
        CourseLatLon = new VELatLong(lat,lon)
       
        
        map = new VEMap('Map_Directions');
        map.LoadMap(CourseLatLon,9,'r',false);
        var descript = addr + '<br />' + city + '<br />' + state + '<br />' + zip + '<br /><br />';
        
        
        descript = descript += "<div style='float:right;'><a href='javascript:GetStartAddress()'>get directions</a>&nbsp;</div><br /><br />";
        
        AddPin(lat,lon,null,name,descript);//,'','','');
    }
}

function AddPin(latitude,longitude,pinURL,title,description) //,iconStyle,titleStyle,previewStyle)
{
   
    if(pinURL == 'null') pinURL = null;
    var pin = new VEPushpin(pinID, new VELatLong(latitude,longitude), pinURL, title, description, 'iconStyle','titleStyle','previewStyle');
   
    map.AddPushpin(pin);
    pinID++;
}

function GetStartAddress()
{
 ShowDiv('div_StartAddress');
    
}


function ShowTheMap()
{
    //$get('div_StartAddress').style.display = "none";
    StartAddress = $get('input_startAddress').value;
    ShowRoute();
}

function ShowRoute()
{  
    ShowDirections();
      
}
function ShowDirections()
{
    //var start = '701 white horse road, voorhees,nj,08043';
    //var end = '2205 hamilton drive, voorhees,nj,08043';
    
    //map.GetRoute(StartAddress,CourseAddress,null,null,onGotRoute);
    map.GetRoute(StartAddress,CourseLatLon,null,null,onGotRoute);
    
    
    
}
   
function onFindResults(findResults)
{
    
    var LatLong;
    var location;
    var start = "701 white horse road, voorhees,nj,08043";
    
    var results="Find Results:\n";
    for (r=0; r < findResults.length; r++)
    {
        if (findResults[r].ID!=null) //VESearchResult objects
        {
            LatLong = findResults[r].LatLong;
            location = findResults[r].ID;
          results+=findResults[r].ID + ": " + findResults[r].LatLong+"\n";
          
        }
        else if (findResults[r].Name!=null) //VEFindResult objects
        {
          results += findResults[r].Name + ", ";
          results += findResults[r].Description + ": ";
          results += findResults[r].Phone + "\n";
        }
    }
    
     var pin = new VEPushpin(
            pinID, 
            LatLong, 
            null, 
            'My pushpin', 
            'This is pushpin number '+pinID
            );

    map.AddPushpin(pin);
    pinID++;

    
    //alert(LatLong);
}

function onGotRoute(route)
{
   var routeinfo="<br />Route info:<br /><br />";
   routeinfo += "Total distance: ";
   routeinfo += route.Itinerary.Distance+" ";
   routeinfo += route.Itinerary.DistanceUnit+"<br />";

   var steps="";
   var len = route.Itinerary.Segments.length;
   for(var i = 0; i<len ;i++)
   {
      steps+=route.Itinerary.Segments[i].Instruction+" -- (";
      steps+=route.Itinerary.Segments[i].Distance+") ";
      steps+=route.Itinerary.DistanceUnit+"<br />";
   }
   routeinfo += "<br /><br />Steps:<br />"+steps;
   
   sDirections = routeinfo;
   
   
   ShowDiv('div_directionsList');
   $get('div_directionsList').innerHTML = sDirections;
   
   
   /*$get('div_directionsList').innerHTML = routeinfo;
   alert($get('div_directionsList').innerHTML);*/
   
 
   
}
  
function deleteRoute()
{
    try
    {
        map.DeleteRoute();
        $get('div_directionsList').innerHTML = '';
    }
    catch (err)
    {
        alert(err.message);
    }
 }
function NavVisible(v)
{
    if(v)
        map.ShowDashboard();
    else
        map.HideDashboard()
}

function HideDivs()
{
    HideDiv("div_courses");
    HideDiv("div_weather");
    HideDiv("div_directions");
    HideDiv("div_Teebox");
    HideDiv("div_Amenities");
    HideDiv("div_Savings");
    HideDiv("div_StartAddress");
    
}

function HideDiv(v)
{
    var div = $get(v);
    div.style.display = 'none';
    div.style.visibility = 'hidden';
}

function ShowDiv(v)
{
    var div = $get(v);
    div.style.display = 'block';
    div.style.visibility = 'visible';
    
    
}




