/*
Virual Earth Maps for STLH
*/
var map;

//Define metro coord
var metroCoord = new Object();
metroCoord.Raleigh = {Lat:35.82783471774357,Long:-78.71154785156251};
metroCoord.Charlotte = {Lat:35.223185049701804,Long:-80.83534240722656};
metroCoord.Wilmington = {Lat:34.23451236236986,Long:-77.94250488281253};
metroCoord.Cincinnati = {Lat:39.34916646551958,Long:-84.40040588378907};
     

function loadNeighborhoodMap()
{
    var qs = getArgs();
    map = new VEMap('neighborhoodMap');
        
    var vePoint;
    switch(qs.metro)
    {
        case 'charlotte':
            vePoint = new VELatLong(metroCoord.Charlotte.Lat, metroCoord.Charlotte.Long)
            break;
        case 'wilmington':
            vePoint = new VELatLong(metroCoord.Wilmington.Lat, metroCoord.Wilmington.Long)
            break;
        case 'cincinnati':
            vePoint = new VELatLong(metroCoord.Cincinnati.Lat, metroCoord.Cincinnati.Long)
            break;
        default:
            vePoint = new VELatLong(metroCoord.Raleigh.Lat, metroCoord.Raleigh.Long)
            qs.metro = 'raleigh';
            break;
    }
    
    map.LoadMap(vePoint,10,'r',false);
    map.HideDashboard();
	
	var l = new VEShapeLayer();
    var veLayerSpec = new VEShapeSourceSpecification(VEDataType.GeoRSS, "/georss.axd?metro=" + qs.metro, l);
    map.ImportShapeLayerData(veLayerSpec, onNeighborhoodMapLoadComplete, 1);   
    
}

function loadNeighborhoodMap_v4()
{
    var qs = getArgs();
    map = new VEMap('neighborhoodMap');
        
    var vePoint;
    switch(qs.metro)
    {
        case 'charlotte':
            vePoint = new VELatLong(metroCoord.Charlotte.Lat, metroCoord.Charlotte.Long)
            break;
        case 'wilmington':
            vePoint = new VELatLong(metroCoord.Wilmington.Lat, metroCoord.Wilmington.Long)
            break;
        case 'cincinnati':
            vePoint = new VELatLong(metroCoord.Cincinnati.Lat, metroCoord.Cincinnati.Long)
            break;
        default:
            vePoint = new VELatLong(metroCoord.Raleigh.Lat, metroCoord.Raleigh.Long)
            qs.metro = 'raleigh';
            break;
    }
    
    map.LoadMap(vePoint,10,'r',false);
    map.HideDashboard();
    
    var veLayerSpec = new VELayerSpecification();
    veLayerSpec.Type = VELayerType.GeoRSS;
    veLayerSpec.ID = 'neighborhood';

    veLayerSpec.LayerSource = "/georss.axd?metro=" + qs.metro;
    veLayerSpec.Method = 'get';
    veLayerSpec.IconUrl = '/images/houseicon.gif';
    veLayerSpec.FnCallback  = onNeighborhoodMapLoadComplete;

    map.AddLayer(veLayerSpec);
    map.ShowLayer('neighborhood');     
    
}


function onNeighborhoodMapLoadComplete(pins)
{

    if (pins.length ==1)
    {
        pins[0].m_vemap.SetZoomLevel(pins[0].m_vemap.initialZoomLevel);
    }
}


/* Get Query Srings
 * var args = getArgs( );  // Parse args from URL
 * var q = args.q || "";  // Use argument, if defined, or a default value
 * var n = args.n ? parseInt(args.n) : 10;
 */
function getArgs() {
    var args = new Object( );
    var query = location.search.substring(1);     // Get query string
    var pairs = query.split("&");                 // Break at ampersand
    for(var i = 0; i < pairs.length; i++) {
        var pos = pairs[i].indexOf('=');          // Look for "name=value"
        if (pos == -1) continue;                  // If not found, skip
        var argname = pairs[i].substring(0,pos);  // Extract the name
        var value = pairs[i].substring(pos+1);    // Extract the value
        value = decodeURIComponent(value);        // Decode it, if needed
        args[argname] = value;                    // Store as a property
    }
    return args;                                  // Return the object
}


if(typeof(Sys) !== "undefined") Sys.Application.notifyScriptLoaded();