//
// File : rest-rtwgmap-core.js
//
// Description : Javascript functions for core components on the Dine Albert Restaurants Map
//               implementation. Overrides several functions found in the 
//               RTWGMap's javascript lib
//

    //
    // 
    // Loads the rendered markers that match the filter
    // into the "sideListing' element
    //
    // See also 
    //   renderMarkerForSideListing(marker)
    //   applySelectedFilter()
    //
    var returnFilteredMarkers = function(data){    	          		        
        var htmlList = '<div class="smallTextCenter">';   
         
		var label = getSideListingsLabel();        
        if(document.getElementById('sideListingHeader')) {	        
    	    document.getElementById('sideListingHeader').innerHTML = label;
        }

        htmlList += getPrintUrl(label) ;
       
 		printableMarkers = data;
        if(data != null)
        {
            htmlList = htmlList + '<br/>';
            for(var i = 0; i < data.length; i++)
            {
                htmlList = htmlList + renderMarkerForSideListing ( data[i] );                
            }
            
            htmlList = htmlList + '</div>';
            
            document.getElementById("sideListing").innerHTML = htmlList;
        }
    }
    
    var myErrorHandler = function(e) {
    	//alert(e);    
    }
    
	//
	// get all the gmarkers for the specified region
	//
	var getMarkersForRegion = function(regionId){
    	currentRegionId = regionId;
	    map.closeInfoWindow();    
    	closeDirections();
    	//unapplyFilter();
    	//filterChanged();
    	
	    for(var i = 0; i < regions.length; i++)
    	{
        	if(regions[i].id == regionId) {
    	        map.setCenter(new GLatLng(regions[i].latitude, regions[i].longitude), regions[i].zoomLevel);
	            globalRegion = regions[i];
        	    break;
	        }
    	}

		if(globalRegion.label.indexOf('Downtown') != -1) {
			// if the global region's label contains 'Downtown', we 
			// made it up (doesn't exist in the Dine Ab db)
			//
			// Don't use the standard call to getMarkersForRegion ... 
			//
			updateSideListingForCurrentView();
			return;
		} 

		     		
		dwr.engine.setErrorHandler(myErrorHandler);
		
		try { 
		   RestaurantsMapDataProvider.getMarkersForDineAlbertaRegion(globalRegion.id, returnFilteredMarkers);
		} catch(ex) {
			alert(ex);
		}
	}
