function sideBar() {
   document.getElementById("map-sidebar-content").innerHTML=randImage(sidebarAr,1," style=\"cursor:pointer;\" ","sideBar()");
}

function linkHelper() {
   return "&"+currentSelection;
}

function onFeatureHoverOn(feature) {
   query.drawFeature(feature,hoverStyle);
   var label  = feature.data["FACILITY_NAME"] != undefined ? feature.data["FACILITY_NAME"] : "";
       //label += feature.data["FACILITY_NUMBER"] != undefined ? " ("+feature.data["FACILITY_NUMBER"]+")" : "";
   var content = "<div class='hoverContent'>"+ label +"</div>";
   popup = new OpenLayers.Popup.FramedCloud("hover",
                              feature.geometry.getBounds().getCenterLonLat(),
                              null,
                              content,
                              null,
                              false,
                              null);
   popup.panMapIfOutOfView=false;
   feature.popup = popup;
   map.addPopup(popup);
}

function onFeatureHoverOff(feature) {
   map.removePopup(feature.popup);
   feature.popup.destroy();
   feature.popup = null;
}

function onFeatureSelect(feature) {
   var url   = feature.data["FACILITY_URL"] != undefined ? "<img src='"+feature.data["FACILITY_URL"].toLowerCase()+"' id='map-sidebar-img' />" : "";
   var label = feature.data["FACILITY_NAME"] != undefined ? feature.data["FACILITY_NAME"] : "";
       //label+= feature.data["FACILITY_NUMBER"] != undefined ? " ("+feature.data["FACILITY_NUMBER"]+")" : "";
       //label+= feature.data["ROUTE"] != undefined ? " ("+feature.data["ROUTE"]+")" : "";
   var notes = feature.data["FACILITY_REMARKS"] != undefined ? feature.data["FACILITY_REMARKS"] : "";
   setDiv('map-sidebar-content', '<div id="map-sidebar-body"><center>'+url+'<p id="map-sidebar-body-label">'+label+'</p></center>'+
                                 '<p id="map-sidebar-body-text">'+notes+'</p></div>');
   // problem here..this is intended to be used with permalink...if user changes view
   // without clicking a new feature, we'll have a view-to-selection mis-match.
   // store the last selected feature in global var
   // use fid and number to verify this is the correct feature.  if they do not
//    // match, a feature has been added or deleted since storing.
   currentSelection = "fid="+feature.fid+"&number="+feature.data["FACILITY_NUMBER"];
}

function setHTML(html){
 setDiv('map-sidebar-content',html);
}

function setDiv(div, html) {
   OpenLayers.Util.getElement(div).innerHTML = html.length ? html.replace(/[\[\]]/g,function(s){return (s == "[")? "<" : ">"}) : "<center>Sorry, I did not find a<br />feature to query.</center>";
}

function toggleLayer(layer) {
   layer = map.getLayersByName(layer);
   if(layer[0].visibility) {
      layer[0].setVisibility(false);
   } else {
      layer[0].setVisibility(true);
      layer[0].redraw();
   }
}

function QueryOnVisible() {
   var layerlist = "";
   var layer = map.getLayersBy('visibility',true);
   if(layer.length > 0) {
      for(var i = 0; i < layer.length; i++) {
         if(!layer[i].isBaseLayer){
            layerlist+=layer[i].name+",";
         }
      }
      return layerlist.slice(0,layerlist.length-1);
   }
   return false;
}
