﻿     //hold the markers
     var gmarkers=[];
     //hold the map
     var map;
     //hold overview map
     var overviewControl;
     //hold streams
     var streams;
     //hold watersheds
     var watersheds;
     //hold watershed lines
     var watershedline;
     //hold drought overlay.
     var drought;
     //hold icons
     var baseIcon;
     //hold current data DIV
     var currentDiv;
     //global div to hold the tooltips
     var tooltip = document.createElement("div");
     //global marker manager.
     var mgr;
     //hold the radar overlays.
     var radaroverlay;
     var radaroverlay5;
     var radaroverlay10;
     var radaroverlay15;
     var radaroverlay20;
     var radaroverlay25;
     var radaroverlay30;
     var radarCount = 1;
//hold the time for the radar
     var curDateTime;

     //hold the variable for the radar set interval function.
     var radarInterval = 0;
     var loopInterval = 0; 
     //new data
     var dataNew = 1;

     // Cookie Variables
     var glat = 30.368616;
     var glng = -97.845676;
      var gzoom = 8;
      var gmaptype = 0;
      var gdatatype = "flow";
      var cookiename = "mapinfo";// name for this cookie
      var expiremilliseconds = 31536000000; // number of milliseconds before cookie expiry - one year.
      var currentSite;

      var checkZoom = 0;
       
//Refresh time.
        function refreshRadarTime(){
             var timeSuf = "am";
             curDateTime = new Date();var curHour = curDateTime.getHours();var curMin = curDateTime.getMinutes();var curSec = curDateTime.getSeconds();
             if (curHour >= 12) { timeSuf = "pm"; } if (curHour > 12) { curHour = curHour - 12; } if (curHour == 0) { curHour = 12; } var curTime = curHour + ":" + ((curMin < 10) ? "0" : "") + parseInt(curMin - (curMin % 5)).toString(); 
             document.getElementById("radarTime").innerHTML = curTime+" "+timeSuf;        
        }
//Refresh Radar
        function refreshRadar(){
            radaroverlay.refresh();
            radaroverlay.show();
            clearInterval(loopInterval);
            document.getElementById("radarText").innerHTML = "Current Radar " + "&nbsp;&nbsp;&nbsp;<img height='10' alt='Arrow Link' width='4' border='0' src='Images/arrow.gif' />&nbsp;<span class='desclink'><a href='#' onclick='radarLoop();'>Start Loop</a></span>";
            if (radaroverlay5) {
                map.removeOverlay(radaroverlay5);
            }
            if (radaroverlay10) {
                map.removeOverlay(radaroverlay10);
            }
            if (radaroverlay15) {
                map.removeOverlay(radaroverlay15);
            }
            if (radaroverlay20) {
                map.removeOverlay(radaroverlay20);
            }
            if (radaroverlay25) {
                map.removeOverlay(radaroverlay25);
            }
            if (radaroverlay30) {
                map.removeOverlay(radaroverlay30);
            }
            refreshRadarTime(); 
        }     
// Function to show radar info.
        function showRadar(){
            if (document.getElementById("Radar").checked==true) { // show radar
                urchinTracker('/Radar');
                document.getElementById("radarText").innerHTML = "Current Radar " + "&nbsp;&nbsp;&nbsp;<img height='10' alt='Arrow Link' width='4' border='0' src='Images/arrow.gif' />&nbsp;<span class='desclink'><a href='#' onclick='radarLoop();'>Start Loop</a></span>";
                radarLayer();
                refreshRadarTime();
              
                  document.getElementById("legendRadar").style.visibility = "visible";
 		          map.addOverlay( radaroverlay );                 
                  radaroverlay.show();
                  radarInterval=setInterval("refreshRadar()",300000);
            
            }
            if (document.getElementById("Radar").checked == false) { // show radar
                document.getElementById("radarText").innerHTML = "Current Radar ";
                if (radaroverlay) {
                    map.removeOverlay(radaroverlay);
                }
                if (radaroverlay5) {
                    map.removeOverlay(radaroverlay5);
                }
                if (radaroverlay10) {
                    map.removeOverlay(radaroverlay10);
                }
                if (radaroverlay15) {
                    map.removeOverlay(radaroverlay15);
                }
                if (radaroverlay20) {
                    map.removeOverlay(radaroverlay20);
                }
                if (radaroverlay25) {
                    map.removeOverlay(radaroverlay25);
                }
                if (radaroverlay30) {
                    map.removeOverlay(radaroverlay30);
                }
              document.getElementById("legendRadar").style.visibility = "hidden";
              clearInterval(radarInterval);
              clearInterval(loopInterval);
          }
      }
      function radarLoop() {
          urchinTracker('/Radar Loop');
          document.getElementById("radarText").innerHTML = "Current Radar " + "&nbsp;&nbsp;&nbsp;<img height='10' alt='Arrow Link' width='4' border='0' src='Images/arrow.gif' />&nbsp;<span class='desclink'><a href='#' onclick='refreshRadar();'>Stop Loop</a></span>";
          //          window.open('radarLoop.aspx', 'Radar', 'toolbar=no,location=no,status=no,scrollbars=no,menubar=no,width=600,height=500');

          if (radaroverlay) {
              map.removeOverlay(radaroverlay);
          }
          curDateTime = new Date();         
          var radar_layer = new GTileLayer(null, null, null);
          radar_layer.getTileUrl = function(tile, zoom) {
              return "http://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0r-900913/"
   + zoom + "/" + tile.x + "/" + tile.y + ".png?" + (new Date()).getTime();
          };
          radar_layer.isPng = function() { return true; };
          radar_layer.getOpacity = function() { return 0.6; }
          radaroverlay = new GTileLayerOverlay(radar_layer);
          map.addOverlay(radaroverlay);
          addRadarOverlay5();
          clearInterval(radarInterval);
          radarInterval = setInterval("refreshRadar()", 300000);
      }

      function addRadarOverlay5() {

          var radar_layer5 = new GTileLayer(null, null, null);
          radar_layer5.getTileUrl = function(tile, zoom) {
              return "http://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0r-900913-m05m/"
   + zoom + "/" + tile.x + "/" + tile.y + ".png?" + (new Date()).getTime();
          };
          radar_layer5.isPng = function() { return true; };
          radar_layer5.getOpacity = function() { return 0.6; }
          radaroverlay5 = new GTileLayerOverlay(radar_layer5);

          map.addOverlay(radaroverlay5);
          addRadarOverlay10();
      }

      function addRadarOverlay10() {

          var radar_layer10 = new GTileLayer(null, null, null);
          radar_layer10.getTileUrl = function(tile, zoom) {
              return "http://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0r-900913-m10m/"
   + zoom + "/" + tile.x + "/" + tile.y + ".png?" + (new Date()).getTime();
          };
          radar_layer10.isPng = function() { return true; };
          radar_layer10.getOpacity = function() { return 0.6; }
          radaroverlay10 = new GTileLayerOverlay(radar_layer10);

          map.addOverlay(radaroverlay10);
          addRadarOverlay15();
      }

      function addRadarOverlay15() {

          var radar_layer15 = new GTileLayer(null, null, null);
          radar_layer15.getTileUrl = function(tile, zoom) {
              return "http://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0r-900913-m15m/"
   + zoom + "/" + tile.x + "/" + tile.y + ".png?" + (new Date()).getTime();
          };
          radar_layer15.isPng = function() { return true; };
          radar_layer15.getOpacity = function() { return 0.6; }
          radaroverlay15 = new GTileLayerOverlay(radar_layer15);

          map.addOverlay(radaroverlay15);

          addRadarOverlay20();
      }


      function addRadarOverlay20() {


          var radar_layer20 = new GTileLayer(null, null, null);
          radar_layer20.getTileUrl = function(tile, zoom) {
              return "http://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0r-900913-m20m/"
   + zoom + "/" + tile.x + "/" + tile.y + ".png?" + (new Date()).getTime();
          };
          radar_layer20.isPng = function() { return true; };
          radar_layer20.getOpacity = function() { return 0.6; }
          radaroverlay20 = new GTileLayerOverlay(radar_layer20);

          map.addOverlay(radaroverlay20);
          addRadarOverlay25();
      }

      function addRadarOverlay25() {

          var radar_layer25 = new GTileLayer(null, null, null);
          radar_layer25.getTileUrl = function(tile, zoom) {
              return "http://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0r-900913-m25m/"
   + zoom + "/" + tile.x + "/" + tile.y + ".png?" + (new Date()).getTime();
          };
          radar_layer25.isPng = function() { return true; };
          radar_layer25.getOpacity = function() { return 0.6; }
          radaroverlay25 = new GTileLayerOverlay(radar_layer25);

          map.addOverlay(radaroverlay25);
          addRadarOverlay30();
      }

      function addRadarOverlay30() {

          var radar_layer30 = new GTileLayer(null, null, null);
          radar_layer30.getTileUrl = function(tile, zoom) {
              return "http://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0r-900913-m30m/"
   + zoom + "/" + tile.x + "/" + tile.y + ".png?" + (new Date()).getTime();
          };
          radar_layer30.isPng = function() { return true; };
          radar_layer30.getOpacity = function() { return 0.6; }
          radaroverlay30 = new GTileLayerOverlay(radar_layer30);

          map.addOverlay(radaroverlay30);
          loopInterval=setInterval("loopRadar()", 250);
      }       
                
function radarLayer() {
    var radar_layer = new GTileLayer(null, null, null);
    radar_layer.getTileUrl = function(tile, zoom) {
        return "http://mesonet.agron.iastate.edu/cache/tile.py/1.0.0/nexrad-n0r-900913/"
   + zoom + "/" + tile.x + "/" + tile.y + ".png?" + (new Date()).getTime();
    };
    radar_layer.isPng = function() { return true; };
    radar_layer.getOpacity = function() { return 0.6; }
    radaroverlay = new GTileLayerOverlay(radar_layer);
}

function refreshTime(subMins) {
    var timeSuf = "am";
    
    var curHour = curDateTime.getHours(); var curMin = curDateTime.getMinutes(); var curSec = curDateTime.getSeconds();

    curMin = curMin - subMins;
    if (curMin < 0) {
        curHour--;
        curMin = 60 + curMin;
        if (curHour < 0) {
            curHour = 24;
        }
    }

    if (curHour >= 12) { timeSuf = "pm"; } if (curHour > 12) { curHour = curHour - 12; } if (curHour == 0) { curHour = 12; } var curTime = curHour + ":" + ((curMin < 10) ? "0" : "") + parseInt(curMin - (curMin % 5)).toString();
    document.getElementById("radarTime").innerHTML = curTime + " " + timeSuf;
}

function loopRadar() {

    var curHour = curDateTime.getHours(); var curMin = curDateTime.getMinutes(); var curSec = curDateTime.getSeconds();

    if (radarCount == 1) {
        refreshTime(30);
        radaroverlay.hide();
        radaroverlay30.show();
        radarCount++;
        return;
    }

    if (radarCount == 2) {
        curMin = curMin - 25;
        refreshTime(25);
        radaroverlay30.hide();
        radaroverlay25.show();
        radarCount++;
        return;
    }
    if (radarCount == 3) {
        refreshTime(20);
        radaroverlay25.hide();
        radaroverlay20.show();
        radarCount++;
        return;
    }
    if (radarCount == 4) {
        refreshTime(15);
        radaroverlay20.hide();
        radaroverlay15.show();
        radarCount++;
        return;
    }

    if (radarCount == 5) {
        refreshTime(10);
        radaroverlay15.hide();
        radaroverlay10.show();
        radarCount++;
        return;
    }
    if (radarCount == 6) {
        refreshTime(5);
        radaroverlay10.hide();
        radaroverlay5.show();
        radarCount++;
        return;
    }

    if (radarCount >= 7 && radarCount <= 13) {
        if (radarCount == 7) {
            refreshTime(0);
            radaroverlay5.hide();
            radaroverlay.show();

        }
        radarCount++;
        if (radarCount == 14) {
            radarCount = 1;
        } return;
   }

}


// Function to hide and show base layers
function baseLayers() {

    if (drought) {
        map.removeOverlay(drought);
    }
               if (document.getElementById("Watersheds").checked==true) { // show watersheds            
                      watersheds.show();
                      watershedline.show();
               }
               if (document.getElementById("Drought").checked == true) { //show drought
                   urchinTracker('/Drought');
                   watersheds.hide();
                   drought.zPriority = 0;
                   map.addOverlay(drought);                       
               }
               
               if (document.getElementById("Streams").checked==true) { // show streams            
                      streams.show();
               }
               
               if (document.getElementById("Counties").checked==true) { // show counties           
                      counties.show();
               }
               
               if (document.getElementById("Watersheds").checked==false) { // hide watersheds            
                      watersheds.hide();
                      watershedline.hide();
               }
               
               if (document.getElementById("Streams").checked==false) { // hide streams            
                      streams.hide();
               }
               
               if (document.getElementById("Counties").checked==false) { // hide counties           
                      counties.hide();
               }
        
        }

        function Layers(layer){
            
            var mLength=gmarkers.length;

               //set the global datatype variable
               gdatatype=layer;              
               //get the datatype option list.
               var list=document.getElementById('myParameters');
               
             
              mgr.clearMarkers();
              
              // show flow markers
              
              switch(layer){
              case "flow":
                //set the correct list box item.
                list[0].selected=true;
                
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].flow!=-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        gmarkers[i].labelClass_="notrated";
                        gmarkers[i].labelText_=gmarkers[i].flow;
                        
                        if(gmarkers[i].bankfull!=-998||gmarkers[i].floodstage!=-998){
                            gmarkers[i].labelClass_="LabeledMarker_markerLabel";                        
                        }                         
                        if(gmarkers[i].stage>=gmarkers[i].bankfull&&gmarkers[i].bankfull!=-998){
                            gmarkers[i].labelClass_="bankfull";
                        }
                        if(gmarkers[i].stage>=gmarkers[i].floodstage&&gmarkers[i].floodstage!=-998){
                            gmarkers[i].labelClass_="floodstage";
                        }
 
                        mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());               
                        
                       
                     }
                  }
               break;

              // show stage markers
              
              case "stage":
                  //set the correct list box item.
                  list[1].selected=true;
                              
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].stage!=-998&&gmarkers[i].type=="river"&&map.getZoom()>=gmarkers[i].zoom)  {
                        gmarkers[i].labelClass_="notrated";                    
                        gmarkers[i].labelText_=gmarkers[i].stage;
                        if(gmarkers[i].bankfull!=-998||gmarkers[i].floodstage!=-998){
                            gmarkers[i].labelClass_="LabeledMarker_markerLabel";                        
                        }                         
                        if(gmarkers[i].stage>=gmarkers[i].bankfull&&gmarkers[i].bankfull!=-998){
                            gmarkers[i].labelClass_="bankfull";
                        }
                        if(gmarkers[i].stage>=gmarkers[i].floodstage&&gmarkers[i].floodstage!=-998){
                            gmarkers[i].labelClass_="floodstage";
                        } 
                        mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom()); 
                     }
                  }
                break;  

              //show temperature markers
              case "temp":
                  //set the correct list box item.
                  list[15].selected=true;
                  
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].temp>-998&&map.getZoom()>=gmarkers[i].zoom)  {
     
                        if(gmarkers[i].temp>=-50&&gmarkers[i].temp<0){
                           gmarkers[i].labelClass_="tempbelow0";
                        }
                        if(gmarkers[i].temp>=0&&gmarkers[i].temp<10){
                           gmarkers[i].labelClass_="temp0";
                        }
                        if(gmarkers[i].temp>=10&&gmarkers[i].temp<20){
                           gmarkers[i].labelClass_="temp10";
                        } 
                        if(gmarkers[i].temp>=20&&gmarkers[i].temp<30){
                           gmarkers[i].labelClass_="temp20";
                        }
                        if(gmarkers[i].temp>=30&&gmarkers[i].temp<40){
                           gmarkers[i].labelClass_="temp30";
                        }                        
                        if(gmarkers[i].temp>=40&&gmarkers[i].temp<50){
                           gmarkers[i].labelClass_="temp40";
                        }
                        if(gmarkers[i].temp>=50&&gmarkers[i].temp<60){
                           gmarkers[i].labelClass_="temp50";
                        }                        
                        if(gmarkers[i].temp>=60&&gmarkers[i].temp<70){
                           gmarkers[i].labelClass_="temp60";
                        }                                                  
                        if(gmarkers[i].temp>=70&&gmarkers[i].temp<80){
                           gmarkers[i].labelClass_="temp70";
                        }
                        if(gmarkers[i].temp>=80&&gmarkers[i].temp<90){
                           gmarkers[i].labelClass_="temp80";
                        }
                        if(gmarkers[i].temp>=90&&gmarkers[i].temp<100){
                           gmarkers[i].labelClass_="temp90";
                        }
                        if(gmarkers[i].temp>=100){
                           gmarkers[i].labelClass_="temp100";
                        }
                        gmarkers[i].labelText_=gmarkers[i].temp+"°";
                        mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());
                     }
                  }
                break;

              //show temperature markers
              case "mintemp":
                  //set the correct list box item.
                  list[16].selected=true;
                  
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].mintemp>-998&&map.getZoom()>=gmarkers[i].zoom)  {
 
                        if(gmarkers[i].mintemp>=-50&&gmarkers[i].mintemp<0){
                           gmarkers[i].labelClass_="tempbelow0";
                        }
                        if(gmarkers[i].mintemp>=0&&gmarkers[i].mintemp<10){
                           gmarkers[i].labelClass_="temp0";
                        }
                        if(gmarkers[i].mintemp>=10&&gmarkers[i].mintemp<20){
                           gmarkers[i].labelClass_="temp10";
                        } 
                        if(gmarkers[i].mintemp>=20&&gmarkers[i].mintemp<30){
                           gmarkers[i].labelClass_="temp20";
                        }
                        if(gmarkers[i].mintemp>=30&&gmarkers[i].mintemp<40){
                           gmarkers[i].labelClass_="temp30";
                        }                        
                        if(gmarkers[i].mintemp>=40&&gmarkers[i].mintemp<50){
                           gmarkers[i].labelClass_="temp40";
                        }
                        if(gmarkers[i].mintemp>=50&&gmarkers[i].mintemp<60){
                           gmarkers[i].labelClass_="temp50";
                        }                        
                        if(gmarkers[i].mintemp>=60&&gmarkers[i].mintemp<70){
                           gmarkers[i].labelClass_="temp60";
                        }                                                  
                        if(gmarkers[i].mintemp>=70&&gmarkers[i].mintemp<80){
                           gmarkers[i].labelClass_="temp70";
                        }
                        if(gmarkers[i].mintemp>=80&&gmarkers[i].mintemp<90){
                           gmarkers[i].labelClass_="temp80";
                        }
                        if(gmarkers[i].mintemp>=90&&gmarkers[i].mintemp<100){
                           gmarkers[i].labelClass_="temp90";
                        }
                        if(gmarkers[i].mintemp>=100){
                           gmarkers[i].labelClass_="temp100";
                        }
                        gmarkers[i].labelText_=gmarkers[i].mintemp+"°";
                        mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());
                     }
                  }
                break;
                
              //show temperature markers
              case "maxtemp":
                  //set the correct list box item.
                  list[17].selected=true;
                  
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].maxtemp>-998&&map.getZoom()>=gmarkers[i].zoom)  {
 
                        if(gmarkers[i].maxtemp>=-50&&gmarkers[i].maxtemp<0){
                           gmarkers[i].labelClass_="tempbelow0";
                        }
                        if(gmarkers[i].maxtemp>=0&&gmarkers[i].maxtemp<10){
                           gmarkers[i].labelClass_="temp0";
                        }
                        if(gmarkers[i].maxtemp>=10&&gmarkers[i].maxtemp<20){
                           gmarkers[i].labelClass_="temp10";
                        } 
                        if(gmarkers[i].maxtemp>=20&&gmarkers[i].maxtemp<30){
                           gmarkers[i].labelClass_="temp20";
                        }
                        if(gmarkers[i].maxtemp>=30&&gmarkers[i].maxtemp<40){
                           gmarkers[i].labelClass_="temp30";
                        }                        
                        if(gmarkers[i].maxtemp>=40&&gmarkers[i].maxtemp<50){
                           gmarkers[i].labelClass_="temp40";
                        }
                        if(gmarkers[i].maxtemp>=50&&gmarkers[i].maxtemp<60){
                           gmarkers[i].labelClass_="temp50";
                        }                        
                        if(gmarkers[i].maxtemp>=60&&gmarkers[i].maxtemp<70){
                           gmarkers[i].labelClass_="temp60";
                        }                                                  
                        if(gmarkers[i].maxtemp>=70&&gmarkers[i].maxtemp<80){
                           gmarkers[i].labelClass_="temp70";
                        }
                        if(gmarkers[i].maxtemp>=80&&gmarkers[i].maxtemp<90){
                           gmarkers[i].labelClass_="temp80";
                        }
                        if(gmarkers[i].maxtemp>=90&&gmarkers[i].maxtemp<100){
                           gmarkers[i].labelClass_="temp90";
                        }
                        if(gmarkers[i].maxtemp>=100){
                           gmarkers[i].labelClass_="temp100";
                        }
                        gmarkers[i].labelText_=gmarkers[i].maxtemp+"°";
                        mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());
                     }
                  }
                break;

              
              //show humidity markers
              case "humidity":
                  //set the correct list box item.
                  list[18].selected=true;
                  
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].humidity>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].humidity>=0&&gmarkers[i].humidity<10){
                           gmarkers[i].labelClass_="humid0";
                        }

                        if(gmarkers[i].humidity>=10&&gmarkers[i].humidity<20){
                           gmarkers[i].labelClass_="humid10";
                        }

                        if(gmarkers[i].humidity>=20&&gmarkers[i].humidity<30){
                           gmarkers[i].labelClass_="humid20";
                        }
                        
                        if(gmarkers[i].humidity>=30&&gmarkers[i].humidity<40){
                           gmarkers[i].labelClass_="humid30";
                        }
                        
                        if(gmarkers[i].humidity>=40&&gmarkers[i].humidity<50){
                           gmarkers[i].labelClass_="humid40";
                        }
                        
                        if(gmarkers[i].humidity>=50&&gmarkers[i].humidity<60){
                           gmarkers[i].labelClass_="humid50";
                        }
                        
                        if(gmarkers[i].humidity>=60&&gmarkers[i].humidity<70){
                           gmarkers[i].labelClass_="humid60";
                        }
                        
                        if(gmarkers[i].humidity>=70&&gmarkers[i].humidity<80){
                           gmarkers[i].labelClass_="humid70";
                        }
                        
                        if(gmarkers[i].humidity>=80&&gmarkers[i].humidity<90){
                           gmarkers[i].labelClass_="humid80";
                        }
                        
                        if(gmarkers[i].humidity>=90&&gmarkers[i].humidity<100){
                           gmarkers[i].labelClass_="humid90";
                        }
                        
                        if(gmarkers[i].humidity>=100){            
                           gmarkers[i].labelClass_="humid100";
                        }                        
                        gmarkers[i].labelText_=gmarkers[i].humidity+"%";
                        mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());
                     }
                  }
                break;


            //show water temperature markers 
            case "wtemp":
                //set the correct list box item.
                list[19].selected = true;

                for (var i = mLength - 1; i > -1; i--) {
                    if (gmarkers[i].wtemp > -998 && map.getZoom() >= gmarkers[i].zoom) {

                        if (gmarkers[i].wtemp >= -50 && gmarkers[i].wtemp < 0) {
                            gmarkers[i].labelClass_ = "tempbelow0";
                        }
                        if (gmarkers[i].wtemp >= 0 && gmarkers[i].wtemp < 10) {
                            gmarkers[i].labelClass_ = "temp0";
                        }
                        if (gmarkers[i].wtemp >= 10 && gmarkers[i].wtemp < 20) {
                            gmarkers[i].labelClass_ = "temp10";
                        }
                        if (gmarkers[i].wtemp >= 20 && gmarkers[i].wtemp < 30) {
                            gmarkers[i].labelClass_ = "temp20";
                        }
                        if (gmarkers[i].wtemp >= 30 && gmarkers[i].wtemp < 40) {
                            gmarkers[i].labelClass_ = "temp30";
                        }
                        if (gmarkers[i].wtemp >= 40 && gmarkers[i].wtemp < 50) {
                            gmarkers[i].labelClass_ = "temp40";
                        }
                        if (gmarkers[i].wtemp >= 50 && gmarkers[i].wtemp < 60) {
                            gmarkers[i].labelClass_ = "temp50";
                        }
                        if (gmarkers[i].wtemp >= 60 && gmarkers[i].wtemp < 70) {
                            gmarkers[i].labelClass_ = "temp60";
                        }
                        if (gmarkers[i].wtemp >= 70 && gmarkers[i].wtemp < 80) {
                            gmarkers[i].labelClass_ = "temp70";
                        }
                        if (gmarkers[i].wtemp >= 80 && gmarkers[i].wtemp < 90) {
                            gmarkers[i].labelClass_ = "temp80";
                        }
                        if (gmarkers[i].wtemp >= 90 && gmarkers[i].wtemp < 100) {
                            gmarkers[i].labelClass_ = "temp90";
                        }
                        if (gmarkers[i].wtemp >= 100) {
                            gmarkers[i].labelClass_ = "temp100";
                        }
                        gmarkers[i].labelText_ = gmarkers[i].wtemp + "°";
                        mgr.addMarker(gmarkers[i], map.getZoom(), map.getZoom());
                    }
                }
                break;
               
    
              //show lake level markers
              case "lakelevel":
                  //set the correct list box item.
                  list[2].selected=true;
                  for (var i=mLength-1;i>-1;i--) {
                      if (gmarkers[i].type == "lake" && map.getZoom() >= gmarkers[i].zoom && gmarkers[i].sitenumber != 1972) {
                        gmarkers[i].labelClass_="notrated";
                        gmarkers[i].labelText_=gmarkers[i].stage;
                        mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());
                     }
                     if (gmarkers[i].type=="dam"&&map.getZoom()>=gmarkers[i].zoom)  {
                        gmarkers[i].labelClass_="LabeledMarker_markerLabel";                        
                        gmarkers[i].labelText_=gmarkers[i].head;
                        mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());
                     }

                  }
                break;
               
              //show most recent rainfall measurements
              
              case "rain":
                 
                  list[3].selected=true;
                  
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].rain>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain==0.01){
                           gmarkers[i].labelClass_="rainx01";
                        }
                        
                        if(gmarkers[i].rain>0.01&&gmarkers[i].rain<0.1){
                           gmarkers[i].labelClass_="rainx10";
                        }

                        if(gmarkers[i].rain>=0.1&&gmarkers[i].rain<0.25){
                           gmarkers[i].labelClass_="rainx25";
                        }
                        
                        if(gmarkers[i].rain>=0.25&&gmarkers[i].rain<.5){
                           gmarkers[i].labelClass_="rainx50";
                        }
                        
                        if(gmarkers[i].rain>=.5&&gmarkers[i].rain<.75){
                           gmarkers[i].labelClass_="rainx75";
                        }
                        
                        if(gmarkers[i].rain>=.75&&gmarkers[i].rain<1){
                           gmarkers[i].labelClass_="rain1";
                        }
                        
                        if(gmarkers[i].rain>=1&&gmarkers[i].rain<1.5){
                           gmarkers[i].labelClass_="rain1x5";
                        }
                        
                        if(gmarkers[i].rain>=1.5&&gmarkers[i].rain<2){
                           gmarkers[i].labelClass_="rain2";
                        }
                        
                        if(gmarkers[i].rain>=2&&gmarkers[i].rain<2.5){
                           gmarkers[i].labelClass_="rain2x5";
                        }
                        
                        if(gmarkers[i].rain>=2.5&&gmarkers[i].rain<3){
                           gmarkers[i].labelClass_="rain3";
                        } 
                        
                        if(gmarkers[i].rain>=3&&gmarkers[i].rain<4){
                           gmarkers[i].labelClass_="rain4";
                        }  
                        
                        if(gmarkers[i].rain>=4&&gmarkers[i].rain<5){
                           gmarkers[i].labelClass_="rain5";
                        }  
                        
                        if(gmarkers[i].rain>=5&&gmarkers[i].rain<6){
                           gmarkers[i].labelClass_="rain6";
                        }  
                        
                        if(gmarkers[i].rain>=6&&gmarkers[i].rain<8){
                           gmarkers[i].labelClass_="rain8";
                        }  
                        
                        if(gmarkers[i].rain>=8){
                           gmarkers[i].labelClass_="rain10";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                break;              

              //show most rainfall past 30 minutes
              case "rain30min":
                  
                  list[4].selected=true;
                  
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].rain30min>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain30min==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain30min==0.01){
                           gmarkers[i].labelClass_="yrainx01";
                        }
                        
                        if(gmarkers[i].rain30min>0.01&&gmarkers[i].rain30min<0.1){
                           gmarkers[i].labelClass_="yrainx10";
                        }

                        if(gmarkers[i].rain30min>=0.1&&gmarkers[i].rain30min<0.2){
                           gmarkers[i].labelClass_="yrainx20";
                        }
                        
                        if(gmarkers[i].rain30min>=0.2&&gmarkers[i].rain30min<.3){
                           gmarkers[i].labelClass_="yrainx30";
                        }
                        
                        if(gmarkers[i].rain30min>=.3&&gmarkers[i].rain30min<.4){
                           gmarkers[i].labelClass_="yrainx40";
                        }
                        
                        if(gmarkers[i].rain30min>=.4&&gmarkers[i].rain30min<.6){
                           gmarkers[i].labelClass_="yrainx60";
                        }
                        
                        if(gmarkers[i].rain30min>=.6&&gmarkers[i].rain30min<.8){
                           gmarkers[i].labelClass_="yrainx80";
                        }
                        
                        if(gmarkers[i].rain30min>=.8&&gmarkers[i].rain30min<1){
                           gmarkers[i].labelClass_="yrain1";
                        }
                        
                        if(gmarkers[i].rain30min>=1&&gmarkers[i].rain30min<1.25){
                           gmarkers[i].labelClass_="yrain1x25";
                        }
                        
                        if(gmarkers[i].rain30min>=1.25&&gmarkers[i].rain30min<1.5){
                           gmarkers[i].labelClass_="yrain1x5";
                        } 
                        
                        if(gmarkers[i].rain30min>=1.5&&gmarkers[i].rain30min<1.75){
                           gmarkers[i].labelClass_="yrain1x75";
                        }  
                        
                        if(gmarkers[i].rain30min>=1.75&&gmarkers[i].rain30min<2){
                           gmarkers[i].labelClass_="yrain2";
                        }  
                        
                        if(gmarkers[i].rain30min>=2&&gmarkers[i].rain30min<2.5){
                           gmarkers[i].labelClass_="yrain2x5";
                        }  
                        
                        if(gmarkers[i].rain30min>=2.5&&gmarkers[i].rain30min<3){
                           gmarkers[i].labelClass_="yrain3";
                        }  
                        
                        if(gmarkers[i].rain30min>=3){
                           gmarkers[i].labelClass_="yrain3x";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain30min;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                 break;
               
              //show rainfall measurements past 24 hours.
              case "rain1day":
                  //set the correct list box item.
                  list[11].selected=true;
              
              
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].rain1day>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain1day==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain1day==0.01){
                           gmarkers[i].labelClass_="rainx01";
                        }
                        
                        if(gmarkers[i].rain1day>0.01&&gmarkers[i].rain1day<0.1){
                           gmarkers[i].labelClass_="rainx10";
                        }

                        if(gmarkers[i].rain1day>=0.1&&gmarkers[i].rain1day<0.25){
                           gmarkers[i].labelClass_="rainx25";
                        }
                        
                        if(gmarkers[i].rain1day>=0.25&&gmarkers[i].rain1day<.5){
                           gmarkers[i].labelClass_="rainx50";
                        }
                        
                        if(gmarkers[i].rain1day>=.5&&gmarkers[i].rain1day<.75){
                           gmarkers[i].labelClass_="rainx75";
                        }
                        
                        if(gmarkers[i].rain1day>=.75&&gmarkers[i].rain1day<1){
                           gmarkers[i].labelClass_="rain1";
                        }
                        
                        if(gmarkers[i].rain1day>=1&&gmarkers[i].rain1day<1.5){
                           gmarkers[i].labelClass_="rain1x5";
                        }
                        
                        if(gmarkers[i].rain1day>=1.5&&gmarkers[i].rain1day<2){
                           gmarkers[i].labelClass_="rain2";
                        }
                        
                        if(gmarkers[i].rain1day>=2&&gmarkers[i].rain1day<2.5){
                           gmarkers[i].labelClass_="rain2x5";
                        }
                        
                        if(gmarkers[i].rain1day>=2.5&&gmarkers[i].rain1day<3){
                           gmarkers[i].labelClass_="rain3";
                        } 
                        
                        if(gmarkers[i].rain1day>=3&&gmarkers[i].rain1day<4){
                           gmarkers[i].labelClass_="rain4";
                        }  
                        
                        if(gmarkers[i].rain1day>=4&&gmarkers[i].rain1day<5){
                           gmarkers[i].labelClass_="rain5";
                        }  
                        
                        if(gmarkers[i].rain1day>=5&&gmarkers[i].rain1day<6){
                           gmarkers[i].labelClass_="rain6";
                        }  
                        
                        if(gmarkers[i].rain1day>=6&&gmarkers[i].rain1day<8){
                           gmarkers[i].labelClass_="rain8";
                        }  
                        
                        if(gmarkers[i].rain1day>=8){
                           gmarkers[i].labelClass_="rain10";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain1day;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                break;

              //show rainfall measurements since midnight.
              case "raintoday":
                  //set the correct list box item.
                  list[10].selected=true;
                  
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].raintoday>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].raintoday==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].raintoday==0.01){
                           gmarkers[i].labelClass_="rainx01";
                        }
                        
                        if(gmarkers[i].raintoday>0.01&&gmarkers[i].raintoday<0.1){
                           gmarkers[i].labelClass_="rainx10";
                        }

                        if(gmarkers[i].raintoday>=0.1&&gmarkers[i].raintoday<0.25){
                           gmarkers[i].labelClass_="rainx25";
                        }
                        
                        if(gmarkers[i].raintoday>=0.25&&gmarkers[i].raintoday<.5){
                           gmarkers[i].labelClass_="rainx50";
                        }
                        
                        if(gmarkers[i].raintoday>=.5&&gmarkers[i].raintoday<.75){
                           gmarkers[i].labelClass_="rainx75";
                        }
                        
                        if(gmarkers[i].raintoday>=.75&&gmarkers[i].raintoday<1){
                           gmarkers[i].labelClass_="rain1";
                        }
                        
                        if(gmarkers[i].raintoday>=1&&gmarkers[i].raintoday<1.5){
                           gmarkers[i].labelClass_="rain1x5";
                        }
                        
                        if(gmarkers[i].raintoday>=1.5&&gmarkers[i].raintoday<2){
                           gmarkers[i].labelClass_="rain2";
                        }
                        
                        if(gmarkers[i].raintoday>=2&&gmarkers[i].raintoday<2.5){
                           gmarkers[i].labelClass_="rain2x5";
                        }
                        
                        if(gmarkers[i].raintoday>=2.5&&gmarkers[i].raintoday<3){
                           gmarkers[i].labelClass_="rain3";
                        } 
                        
                        if(gmarkers[i].raintoday>=3&&gmarkers[i].raintoday<4){
                           gmarkers[i].labelClass_="rain4";
                        }  
                        
                        if(gmarkers[i].raintoday>=4&&gmarkers[i].raintoday<5){
                           gmarkers[i].labelClass_="rain5";
                        }  
                        
                        if(gmarkers[i].raintoday>=5&&gmarkers[i].raintoday<6){
                           gmarkers[i].labelClass_="rain6";
                        }  
                        
                        if(gmarkers[i].raintoday>=6&&gmarkers[i].raintoday<8){
                           gmarkers[i].labelClass_="rain8";
                        }  
                        
                        if(gmarkers[i].raintoday>=8){
                           gmarkers[i].labelClass_="rain10";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].raintoday;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                break;
 
              //show rainfall measurements past hour.
              case "rain1":
                  //set the correct list box item.
                  list[5].selected=true;
                  
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].rain1>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain1==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain1==0.01){
                           gmarkers[i].labelClass_="yrainx01";
                        }
                        
                        if(gmarkers[i].rain1>0.01&&gmarkers[i].rain1<0.1){
                           gmarkers[i].labelClass_="yrainx10";
                        }

                        if(gmarkers[i].rain1>=0.1&&gmarkers[i].rain1<0.2){
                           gmarkers[i].labelClass_="yrainx20";
                        }
                        
                        if(gmarkers[i].rain1>=0.2&&gmarkers[i].rain1<.3){
                           gmarkers[i].labelClass_="yrainx30";
                        }
                        
                        if(gmarkers[i].rain1>=.3&&gmarkers[i].rain1<.4){
                           gmarkers[i].labelClass_="yrainx40";
                        }
                        
                        if(gmarkers[i].rain1>=.4&&gmarkers[i].rain1<.6){
                           gmarkers[i].labelClass_="yrainx60";
                        }
                        
                        if(gmarkers[i].rain1>=.6&&gmarkers[i].rain1<.8){
                           gmarkers[i].labelClass_="yrainx80";
                        }
                        
                        if(gmarkers[i].rain1>=.8&&gmarkers[i].rain1<1){
                           gmarkers[i].labelClass_="yrain1";
                        }
                        
                        if(gmarkers[i].rain1>=1&&gmarkers[i].rain1<1.25){
                           gmarkers[i].labelClass_="yrain1x25";
                        }
                        
                        if(gmarkers[i].rain1>=1.25&&gmarkers[i].rain1<1.5){
                           gmarkers[i].labelClass_="yrain1x5";
                        } 
                        
                        if(gmarkers[i].rain1>=1.5&&gmarkers[i].rain1<1.75){
                           gmarkers[i].labelClass_="yrain1x75";
                        }  
                        
                        if(gmarkers[i].rain1>=1.75&&gmarkers[i].rain1<2){
                           gmarkers[i].labelClass_="yrain2";
                        }  
                        
                        if(gmarkers[i].rain1>=2&&gmarkers[i].rain1<2.5){
                           gmarkers[i].labelClass_="yrain2x5";
                        }  
                        
                        if(gmarkers[i].rain1>=2.5&&gmarkers[i].rain1<3){
                           gmarkers[i].labelClass_="yrain3";
                        }  
                        
                        if(gmarkers[i].rain1>=3){
                           gmarkers[i].labelClass_="yrain3x";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain1;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                break;

               //show rainfall measurements past 2 hours.
              case "rain2":
                  //set the correct list box item.
                  list[6].selected=true;
                  
                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].rain2>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain2==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain2==0.01){
                           gmarkers[i].labelClass_="yrainx01";
                        }
                        
                        if(gmarkers[i].rain2>0.01&&gmarkers[i].rain2<0.1){
                           gmarkers[i].labelClass_="yrainx10";
                        }

                        if(gmarkers[i].rain2>=0.1&&gmarkers[i].rain2<0.2){
                           gmarkers[i].labelClass_="yrainx20";
                        }
                        
                        if(gmarkers[i].rain2>=0.2&&gmarkers[i].rain2<.3){
                           gmarkers[i].labelClass_="yrainx30";
                        }
                        
                        if(gmarkers[i].rain2>=.3&&gmarkers[i].rain2<.4){
                           gmarkers[i].labelClass_="yrainx40";
                        }
                        
                        if(gmarkers[i].rain2>=.4&&gmarkers[i].rain2<.6){
                           gmarkers[i].labelClass_="yrainx60";
                        }
                        
                        if(gmarkers[i].rain2>=.6&&gmarkers[i].rain2<.8){
                           gmarkers[i].labelClass_="yrainx80";
                        }
                        
                        if(gmarkers[i].rain2>=.8&&gmarkers[i].rain2<1){
                           gmarkers[i].labelClass_="yrain1";
                        }
                        
                        if(gmarkers[i].rain2>=1&&gmarkers[i].rain2<1.25){
                           gmarkers[i].labelClass_="yrain1x25";
                        }
                        
                        if(gmarkers[i].rain2>=1.25&&gmarkers[i].rain2<1.5){
                           gmarkers[i].labelClass_="yrain1x5";
                        } 
                        
                        if(gmarkers[i].rain2>=1.5&&gmarkers[i].rain2<1.75){
                           gmarkers[i].labelClass_="yrain1x75";
                        }  
                        
                        if(gmarkers[i].rain2>=1.75&&gmarkers[i].rain2<2){
                           gmarkers[i].labelClass_="yrain2";
                        }  
                        
                        if(gmarkers[i].rain2>=2&&gmarkers[i].rain2<2.5){
                           gmarkers[i].labelClass_="yrain2x5";
                        }  
                        
                        if(gmarkers[i].rain2>=2.5&&gmarkers[i].rain2<3){
                           gmarkers[i].labelClass_="yrain3";
                        }  
                        
                        if(gmarkers[i].rain2>=3){
                           gmarkers[i].labelClass_="yrain3x";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain2;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                break;
 
               //show rainfall measurements past 3 hours.
              case "rain3":
                  //set the correct list box item.
                  list[7].selected=true;

                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].rain3>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain3==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain3==0.01){
                           gmarkers[i].labelClass_="rainx01";
                        }
                        
                        if(gmarkers[i].rain3>0.01&&gmarkers[i].rain3<0.1){
                           gmarkers[i].labelClass_="rainx10";
                        }

                        if(gmarkers[i].rain3>=0.1&&gmarkers[i].rain3<0.25){
                           gmarkers[i].labelClass_="rainx25";
                        }
                        
                        if(gmarkers[i].rain3>=0.25&&gmarkers[i].rain3<.5){
                           gmarkers[i].labelClass_="rainx50";
                        }
                        
                        if(gmarkers[i].rain3>=.5&&gmarkers[i].rain3<.75){
                           gmarkers[i].labelClass_="rainx75";
                        }
                        
                        if(gmarkers[i].rain3>=.75&&gmarkers[i].rain3<1){
                           gmarkers[i].labelClass_="rain1";
                        }
                        
                        if(gmarkers[i].rain3>=1&&gmarkers[i].rain3<1.5){
                           gmarkers[i].labelClass_="rain1x5";
                        }
                        
                        if(gmarkers[i].rain3>=1.5&&gmarkers[i].rain3<2){
                           gmarkers[i].labelClass_="rain2";
                        }
                        
                        if(gmarkers[i].rain3>=2&&gmarkers[i].rain3<2.5){
                           gmarkers[i].labelClass_="rain2x5";
                        }
                        
                        if(gmarkers[i].rain3>=2.5&&gmarkers[i].rain3<3){
                           gmarkers[i].labelClass_="rain3";
                        } 
                        
                        if(gmarkers[i].rain3>=3&&gmarkers[i].rain3<4){
                           gmarkers[i].labelClass_="rain4";
                        }  
                        
                        if(gmarkers[i].rain3>=4&&gmarkers[i].rain3<5){
                           gmarkers[i].labelClass_="rain5";
                        }  
                        
                        if(gmarkers[i].rain3>=5&&gmarkers[i].rain3<6){
                           gmarkers[i].labelClass_="rain6";
                        }  
                        
                        if(gmarkers[i].rain3>=6&&gmarkers[i].rain3<8){
                           gmarkers[i].labelClass_="rain8";
                        }  
                        
                        if(gmarkers[i].rain3>=8){
                           gmarkers[i].labelClass_="rain10";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain3;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                break;  
 
               //show rainfall measurements past 6 hours.
              case "rain6":

                  //set the correct list box item.
                  list[8].selected=true;

                  for (var i=mLength-1;i>-1;i--) {
                     if (gmarkers[i].rain6>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain6==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain6==0.01){
                           gmarkers[i].labelClass_="rainx01";
                        }
                        
                        if(gmarkers[i].rain6>0.01&&gmarkers[i].rain6<0.1){
                           gmarkers[i].labelClass_="rainx10";
                        }

                        if(gmarkers[i].rain6>=0.1&&gmarkers[i].rain6<0.25){
                           gmarkers[i].labelClass_="rainx25";
                        }
                        
                        if(gmarkers[i].rain6>=0.25&&gmarkers[i].rain6<.5){
                           gmarkers[i].labelClass_="rainx50";
                        }
                        
                        if(gmarkers[i].rain6>=.5&&gmarkers[i].rain6<.75){
                           gmarkers[i].labelClass_="rainx75";
                        }
                        
                        if(gmarkers[i].rain6>=.75&&gmarkers[i].rain6<1){
                           gmarkers[i].labelClass_="rain1";
                        }
                        
                        if(gmarkers[i].rain6>=1&&gmarkers[i].rain6<1.5){
                           gmarkers[i].labelClass_="rain1x5";
                        }
                        
                        if(gmarkers[i].rain6>=1.5&&gmarkers[i].rain6<2){
                           gmarkers[i].labelClass_="rain2";
                        }
                        
                        if(gmarkers[i].rain6>=2&&gmarkers[i].rain6<2.5){
                           gmarkers[i].labelClass_="rain2x5";
                        }
                        
                        if(gmarkers[i].rain6>=2.5&&gmarkers[i].rain6<3){
                           gmarkers[i].labelClass_="rain3";
                        } 
                        
                        if(gmarkers[i].rain6>=3&&gmarkers[i].rain6<4){
                           gmarkers[i].labelClass_="rain4";
                        }  
                        
                        if(gmarkers[i].rain6>=4&&gmarkers[i].rain6<5){
                           gmarkers[i].labelClass_="rain5";
                        }  
                        
                        if(gmarkers[i].rain6>=5&&gmarkers[i].rain6<6){
                           gmarkers[i].labelClass_="rain6";
                        }  
                        
                        if(gmarkers[i].rain6>=6&&gmarkers[i].rain6<8){
                           gmarkers[i].labelClass_="rain8";
                        }  
                        
                        if(gmarkers[i].rain6>=8){
                           gmarkers[i].labelClass_="rain10";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain6;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                break;
               
               //show rainfall measurements past 12 hours.
              case "rain12":
                  //set the correct list box item.
                  list[9].selected=true;
                  
                  for (var i=gmarkers.length-1;i>-1;i--) {
                     if (gmarkers[i].rain12>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain12==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain12==0.01){
                           gmarkers[i].labelClass_="rainx01";
                        }
                        
                        if(gmarkers[i].rain12>0.01&&gmarkers[i].rain12<0.1){
                           gmarkers[i].labelClass_="rainx10";
                        }

                        if(gmarkers[i].rain12>=0.1&&gmarkers[i].rain12<0.25){
                           gmarkers[i].labelClass_="rainx25";
                        }
                        
                        if(gmarkers[i].rain12>=0.25&&gmarkers[i].rain12<.5){
                           gmarkers[i].labelClass_="rainx50";
                        }
                        
                        if(gmarkers[i].rain12>=.5&&gmarkers[i].rain12<.75){
                           gmarkers[i].labelClass_="rainx75";
                        }
                        
                        if(gmarkers[i].rain12>=.75&&gmarkers[i].rain12<1){
                           gmarkers[i].labelClass_="rain1";
                        }
                        
                        if(gmarkers[i].rain12>=1&&gmarkers[i].rain12<1.5){
                           gmarkers[i].labelClass_="rain1x5";
                        }
                        
                        if(gmarkers[i].rain12>=1.5&&gmarkers[i].rain12<2){
                           gmarkers[i].labelClass_="rain2";
                        }
                        
                        if(gmarkers[i].rain12>=2&&gmarkers[i].rain12<2.5){
                           gmarkers[i].labelClass_="rain2x5";
                        }
                        
                        if(gmarkers[i].rain12>=2.5&&gmarkers[i].rain12<3){
                           gmarkers[i].labelClass_="rain3";
                        } 
                        
                        if(gmarkers[i].rain12>=3&&gmarkers[i].rain12<4){
                           gmarkers[i].labelClass_="rain4";
                        }  
                        
                        if(gmarkers[i].rain12>=4&&gmarkers[i].rain12<5){
                           gmarkers[i].labelClass_="rain5";
                        }  
                        
                        if(gmarkers[i].rain12>=5&&gmarkers[i].rain12<6){
                           gmarkers[i].labelClass_="rain6";
                        }  
                        
                        if(gmarkers[i].rain12>=6&&gmarkers[i].rain12<8){
                           gmarkers[i].labelClass_="rain8";
                        }  
                        
                        if(gmarkers[i].rain12>=8){
                           gmarkers[i].labelClass_="rain10";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain12;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                break;
               
                //show rainfall measurements past 48 hours
              case "rain2day":
                  //set the correct list box item.
                  list[12].selected=true;
                  for (var i=gmarkers.length-1;i>-1;i--) {
                     if (gmarkers[i].rain2day>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain2day==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain2day==0.01){
                           gmarkers[i].labelClass_="xrainx01";
                        }
                        
                        if(gmarkers[i].rain2day>0.01&&gmarkers[i].rain2day<0.2){
                           gmarkers[i].labelClass_="xrainx2";
                        }

                        if(gmarkers[i].rain2day>=0.2&&gmarkers[i].rain2day<0.5){
                           gmarkers[i].labelClass_="xrainx5";
                        }
                        
                        if(gmarkers[i].rain2day>=0.5&&gmarkers[i].rain2day<1){
                           gmarkers[i].labelClass_="xrain1";
                        }
                        
                        if(gmarkers[i].rain2day>=1&&gmarkers[i].rain2day<1.5){
                           gmarkers[i].labelClass_="xrain1x5";
                        }
                        
                        if(gmarkers[i].rain2day>=1.5&&gmarkers[i].rain2day<2){
                           gmarkers[i].labelClass_="xrain2";
                        }
                        
                        if(gmarkers[i].rain2day>=2&&gmarkers[i].rain2day<3){
                           gmarkers[i].labelClass_="xrain3";
                        }
                        
                        if(gmarkers[i].rain2day>=3&&gmarkers[i].rain2day<4){
                           gmarkers[i].labelClass_="xrain4";
                        }
                        
                        if(gmarkers[i].rain2day>=4&&gmarkers[i].rain2day<5){
                           gmarkers[i].labelClass_="xrain5";
                        }
                        
                        if(gmarkers[i].rain2day>=5&&gmarkers[i].rain2day<6){
                           gmarkers[i].labelClass_="xrain6";
                        } 
                        
                        if(gmarkers[i].rain2day>=6&&gmarkers[i].rain2day<8){
                           gmarkers[i].labelClass_="xrain8";
                        }  
                        
                        if(gmarkers[i].rain2day>=8&&gmarkers[i].rain2day<10){
                           gmarkers[i].labelClass_="xrain10";
                        }  
                        
                        if(gmarkers[i].rain2day>=10&&gmarkers[i].rain2day<12){
                           gmarkers[i].labelClass_="xrain12";
                        }  
                        
                        if(gmarkers[i].rain2day>=12&&gmarkers[i].rain2day<15){
                           gmarkers[i].labelClass_="xrain15";
                        }  
                        
                        if(gmarkers[i].rain2day>=15){
                           gmarkers[i].labelClass_="xrain20";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain2day;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                break;
  
                //show rainfall measurements past week
              case "rain1wk":
                  //set the correct list box item.
                  list[13].selected=true;
                  
                  for (var i=gmarkers.length-1;i>-1;i--) {
                     if (gmarkers[i].rain1wk>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain1wk==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain1wk==0.01){
                           gmarkers[i].labelClass_="xrainx01";
                        }
                        
                        if(gmarkers[i].rain1wk>0.01&&gmarkers[i].rain1wk<0.2){
                           gmarkers[i].labelClass_="xrainx2";
                        }

                        if(gmarkers[i].rain1wk>=0.2&&gmarkers[i].rain1wk<0.5){
                           gmarkers[i].labelClass_="xrainx5";
                        }
                        
                        if(gmarkers[i].rain1wk>=0.5&&gmarkers[i].rain1wk<1){
                           gmarkers[i].labelClass_="xrain1";
                        }
                        
                        if(gmarkers[i].rain1wk>=1&&gmarkers[i].rain1wk<1.5){
                           gmarkers[i].labelClass_="xrain1x5";
                        }
                        
                        if(gmarkers[i].rain1wk>=1.5&&gmarkers[i].rain1wk<2){
                           gmarkers[i].labelClass_="xrain2";
                        }
                        
                        if(gmarkers[i].rain1wk>=2&&gmarkers[i].rain1wk<3){
                           gmarkers[i].labelClass_="xrain3";
                        }
                        
                        if(gmarkers[i].rain1wk>=3&&gmarkers[i].rain1wk<4){
                           gmarkers[i].labelClass_="xrain4";
                        }
                        
                        if(gmarkers[i].rain1wk>=4&&gmarkers[i].rain1wk<5){
                           gmarkers[i].labelClass_="xrain5";
                        }
                        
                        if(gmarkers[i].rain1wk>=5&&gmarkers[i].rain1wk<6){
                           gmarkers[i].labelClass_="xrain6";
                        } 
                        
                        if(gmarkers[i].rain1wk>=6&&gmarkers[i].rain1wk<8){
                           gmarkers[i].labelClass_="xrain8";
                        }  
                        
                        if(gmarkers[i].rain1wk>=8&&gmarkers[i].rain1wk<10){
                           gmarkers[i].labelClass_="xrain10";
                        }  
                        
                        if(gmarkers[i].rain1wk>=10&&gmarkers[i].rain1wk<12){
                           gmarkers[i].labelClass_="xrain12";
                        }  
                        
                        if(gmarkers[i].rain1wk>=12&&gmarkers[i].rain1wk<15){
                           gmarkers[i].labelClass_="xrain15";
                        }  
                        
                        if(gmarkers[i].rain1wk>=15){
                           gmarkers[i].labelClass_="xrain20";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain1wk;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                  }
                 break;
 
                 //show rainfall measurements past 2 weeks
              case "rain2wk":
                  //set the correct list box item.
                  list[14].selected=true;
                  for (var i=gmarkers.length-1;i>-1;i--) {
                     if (gmarkers[i].rain2wk>-998&&map.getZoom()>=gmarkers[i].zoom)  {
                     
                        if(gmarkers[i].rain2wk==0){
                            gmarkers[i].labelClass_="rainna";
                        }
 
                        if(gmarkers[i].rain2wk==0.01){
                           gmarkers[i].labelClass_="xrainx01";
                        }
                        
                        if(gmarkers[i].rain2wk>0.01&&gmarkers[i].rain2wk<0.2){
                           gmarkers[i].labelClass_="xrainx2";
                        }

                        if(gmarkers[i].rain2wk>=0.2&&gmarkers[i].rain2wk<0.5){
                           gmarkers[i].labelClass_="xrainx5";
                        }
                        
                        if(gmarkers[i].rain2wk>=0.5&&gmarkers[i].rain2wk<1){
                           gmarkers[i].labelClass_="xrain1";
                        }
                        
                        if(gmarkers[i].rain2wk>=1&&gmarkers[i].rain2wk<1.5){
                           gmarkers[i].labelClass_="xrain1x5";
                        }
                        
                        if(gmarkers[i].rain2wk>=1.5&&gmarkers[i].rain2wk<2){
                           gmarkers[i].labelClass_="xrain2";
                        }
                        
                        if(gmarkers[i].rain2wk>=2&&gmarkers[i].rain2wk<3){
                           gmarkers[i].labelClass_="xrain3";
                        }
                        
                        if(gmarkers[i].rain2wk>=3&&gmarkers[i].rain2wk<4){
                           gmarkers[i].labelClass_="xrain4";
                        }
                        
                        if(gmarkers[i].rain2wk>=4&&gmarkers[i].rain2wk<5){
                           gmarkers[i].labelClass_="xrain5";
                        }
                        
                        if(gmarkers[i].rain2wk>=5&&gmarkers[i].rain2wk<6){
                           gmarkers[i].labelClass_="xrain6";
                        } 
                        
                        if(gmarkers[i].rain2wk>=6&&gmarkers[i].rain2wk<8){
                           gmarkers[i].labelClass_="xrain8";
                        }  
                        
                        if(gmarkers[i].rain2wk>=8&&gmarkers[i].rain2wk<10){
                           gmarkers[i].labelClass_="xrain10";
                        }  
                        
                        if(gmarkers[i].rain2wk>=10&&gmarkers[i].rain2wk<12){
                           gmarkers[i].labelClass_="xrain12";
                        }  
                        
                        if(gmarkers[i].rain2wk>=12&&gmarkers[i].rain2wk<15){
                           gmarkers[i].labelClass_="xrain15";
                        }  
                        
                        if(gmarkers[i].rain2wk>=15){
                           gmarkers[i].labelClass_="xrain20";
                        }
                        
                         gmarkers[i].labelText_=gmarkers[i].rain2wk;
                         mgr.addMarker(gmarkers[i],map.getZoom(),map.getZoom());                 
                   
                     }
                                       }
                 break;
                 
                 
                case "clearlabels":
                  //set the correct list box item.
                  list[20].selected=true;
                  break;
               }//end switch 
               
         toggleGauges();           
            
        }	
        
        function printPage(){
            urchinTracker('/Printable Page');
//            var curDateTime = new Date(); var curHour = curDateTime.getHours(); var curMin = curDateTime.getMinutes(); var curSec = curDateTime.getSeconds();
//            if (curHour >= 12) { timeSuf = "pm"; } if (curHour > 12) { curHour = curHour - 12; } if (curHour == 0) { curHour = 12; } var curTime = curHour + ":" + ((curMin < 10) ? "0" : "") + parseInt(curMin).toString();
            window.open(document.getElementById("dataFrame").src,'data','toolbar=no,location=no,status=no,scrollbars=yes,menubar=no,width=500');
            closeFrame();
        }

        function zoomSite() {
            urchinTracker('/Zoom to Site');
            var mLength = gmarkers.length;
            for (var i = mLength - 1; i > -1; i--) {
                if (gmarkers[i].sitenumber == currentSite) {
                    map.setCenter(gmarkers[i].getLatLng(), 11);
                }
            }
        }

        function collapse() {
            if (document.getElementById("legendRadar").className == 'radarLegend') {
                urchinTracker('/Collapse');
                document.getElementById("legendRadar").className = 'radarCollapse';
                document.getElementById('selectGauge').style.left = "100px";
                document.getElementById('videoImage').style.left = "100px"
                //document.getElementById("selectGauge").className = 'collapsegaugeBox';
            }
            else {
                document.getElementById("legendRadar").className = 'radarLegend';
                //document.getElementById("selectGauge").className = 'gaugeBox';
                document.getElementById('selectGauge').style.left = "333px";
                document.getElementById('videoImage').style.left = "332px";
            }
            resizeMap();
        }
        
        function getData(){
        urchinTracker('/From Data List ' + gdatatype);
        document.getElementById("selectGauge").style.visibility = "visible";
        var myList=document.getElementById("gaugeDropDown");
        document.getElementById("dataFrame").src = "chron.aspx?sNum=" + myList.options[myList.selectedIndex].value + "&sType=" + gdatatype + "&sName=" + myList.options[myList.selectedIndex].text;
        currentSite = myList.options[myList.selectedIndex].value;
        }
 
        function changeExtent()
        {
            checkZoom = 1;
            
            var mylist=document.getElementById("myList");
            urchinTracker('/Map Area ' + mylist.options[mylist.selectedIndex].text);
            if(mylist.options[mylist.selectedIndex].text=="Lake Area"){
                map.setCenter(new GLatLng(30.608050,-98.253601), 10);
            }
            
            if(mylist.options[mylist.selectedIndex].text=="Expanded Lake Area"){
                map.setCenter(new GLatLng(30.725959,-98.680427), 9);
            }
            
            if(mylist.options[mylist.selectedIndex].text=="Upper Northeast"){
                map.setCenter(new GLatLng(31.830207,-99.112199), 9);
            }

            if(mylist.options[mylist.selectedIndex].text=="Upper Southwest"){
                map.setCenter(new GLatLng(30.508948,-99.733802), 9);
            }
            
             if(mylist.options[mylist.selectedIndex].text=="Lower Basin"){
                map.setCenter(new GLatLng(30.065614,-97.127608), 9);
            }
            
            if(mylist.options[mylist.selectedIndex].text=="Matagorda Bay"){
                map.setCenter(new GLatLng(29.100328,-96.166449), 9);
            }

            if(mylist.options[mylist.selectedIndex].text=="City of Austin"){
                map.setCenter(new GLatLng(30.268616,-97.745676), 11);
            }

            if(mylist.options[mylist.selectedIndex].text=="Lower Colorado River Basin"){
                map.setCenter(new GLatLng(30.368616, -97.845676), 8);

            }
           
            if(mylist.options[mylist.selectedIndex].text=="Texas View"){
                map.setCenter(new GLatLng(31.24333,-99.45833), 6);
            }       

        }

        function changeParameters()
        {
            var myParameters=document.getElementById("myParameters");
                        
            urchinTracker('/' + myParameters.options[myParameters.selectedIndex].text);
            
            if(myParameters.options[myParameters.selectedIndex].text=="Stream Flow (cfs)"){
                toggleDiv(currentDiv,0);
                Layers('flow');
                toggleDiv('infoflow',1);
                
            }

            if(myParameters.options[myParameters.selectedIndex].text=="Temperature - Current"){
                toggleDiv(currentDiv,0);
                Layers('temp');
                toggleDiv('infotemp',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Temp - Min - Since Midnight"){
                toggleDiv(currentDiv,0);
                Layers('mintemp');
                toggleDiv('infomintemp',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Temp - Max - Since Midnight"){
                toggleDiv(currentDiv,0);
                Layers('maxtemp');
                toggleDiv('infomaxtemp',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Relative Humidity"){
                Layers('humidity');
                toggleDiv(currentDiv,0);
                toggleDiv('infohumidity',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Stage"){
                toggleDiv(currentDiv,0);
                Layers('stage');
                toggleDiv('infostage',1);
            }
            
           
            if(myParameters.options[myParameters.selectedIndex].text=="Lake Levels"){
                //map.setCenter(new GLatLng(30.483333,-98.133538), 10); 
                Layers('lakelevel');
                toggleDiv(currentDiv,0);
                toggleDiv('infolakelevel',1);
            }     

            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Most Recent"){
                Layers('rain');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain',1);
            }

            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past 30 Minutes"){
                Layers('rain30min');
                 toggleDiv(currentDiv,0);
                 toggleDiv('inforain30min',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past Hour"){
                Layers('rain1');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain1',1);
            }

            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past 2 Hours"){
                Layers('rain2');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain2',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past 3 Hours"){
                Layers('rain3');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain3',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past 6 Hours"){
                Layers('rain6');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain6',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past 12 Hours"){
                Layers('rain12');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain12',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Since Midnight"){
                Layers('raintoday');
                toggleDiv(currentDiv,0);
                toggleDiv('inforaintoday',1);
            }
            
            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past 24 Hours"){
                Layers('rain1day');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain1day',1);
            }
 
            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past 48 Hours"){
                Layers('rain2day');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain2day',1);
            }  
                     
            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past Week"){
                Layers('rain1wk');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain1wk',1);
            } 

            if(myParameters.options[myParameters.selectedIndex].text=="Rainfall - Past 2 Weeks"){
                Layers('rain2wk');
                toggleDiv(currentDiv,0);
                toggleDiv('inforain2wk',1);
            }

            if (myParameters.options[myParameters.selectedIndex].text == "Surface Water Temperature") {
                Layers('wtemp');
                toggleDiv(currentDiv, 0);
                toggleDiv('infotemp', 1);
            }

            if(myParameters.options[myParameters.selectedIndex].text=="Clear Labels"){
                Layers('clearlabels');
                toggleDiv(currentDiv,0);
                toggleDiv('infoclearlabels',1);
            }  

        }


	function onLoad() {

    if (GBrowserIsCompatible()) {
       document.getElementById("Radar").checked=false;
     // === Look for the cookie ===
      if (document.cookie.length>0) {
        cookieStart = document.cookie.indexOf(cookiename + "=");
        if (cookieStart!=-1) {
          cookieStart += cookiename.length+1; 
          cookieEnd=document.cookie.indexOf(";",cookieStart);
          if (cookieEnd==-1) {
            cookieEnd=document.cookie.length;
          }
          cookietext = document.cookie.substring(cookieStart,cookieEnd);
          // == split the cookie text and create the variables ==
          bits = cookietext.split("|");
          glat = parseFloat(bits[0]);
          glng = parseFloat(bits[1]);
          gzoom = parseInt(bits[2]);
          gdatatype = bits[3];
          radar = bits[4];
          stream = bits[5];
          watershed = bits[6];
          county = bits[7];
          drought = bits[8];
          if (radar == 1) {
              document.getElementById("Radar").checked = true
          }
          if (radar == 0) {
              document.getElementById("Radar").checked = false
          }
          if (stream == 1) {
              document.getElementById("Streams").checked = true
          }
          if (stream == 0) {
              document.getElementById("Streams").checked = false
          }
          if (watershed == 1) {
              document.getElementById("Watersheds").checked = true
          }
          if (watershed == 0) {
              document.getElementById("Watersheds").checked = false
          }
          if (county == 1) {
              document.getElementById("Counties").checked = true
          }
          if (county == 0) {
              document.getElementById("Counties").checked = false
          }
          if (drought == 1) {
              document.getElementById("Drought").checked = true
          }
          if (drought == 0) {
              document.getElementById("Drought").checked = false
          }         
        } 
      }
      //set map extent to first element.
      var list = document.getElementById('myList');
      list[0].selected = true;
           
		   // === Create the tilelayer for streams===
		  var streamtiles = new GTileLayer(new GCopyrightCollection(""), 0, 17);
					  
		  streamtiles.getTileUrl = function(tile,zoom) {

		  return "http://hydromet.lcra.org/tiles/streams/_alllayers/L" + ("00" + ((zoom - 0) - 6).toString(10)).substring(("00" + ((zoom - 0) - 6).toString(10)).length - 2) + "/R" + ("00000000" + (tile.y - 0).toString(16)).substring(("00000000" + (tile.y - 0).toString(16)).length - 8) + "/C" + ("00000000" + (tile.x - 0).toString(16)).substring(("00000000" + (tile.x - 0).toString(16)).length - 8) + ".png";
            
		  }
		  streamtiles.isPng = function() {return true;}
		  
		  
		  // === Create the tilelayers for watersheds===
		  var watershedtiles = new GTileLayer(new GCopyrightCollection(""), 0, 17);			  

		  watershedtiles.getTileUrl = function(tile,zoom) {

		  return "http://hydromet.lcra.org/tiles/watersheds/_alllayers/L" + ("00" + ((zoom - 0) - 6).toString(10)).substring(("00" + ((zoom - 0) - 6).toString(10)).length - 2) + "/R" + ("00000000" + (tile.y - 0).toString(16)).substring(("00000000" + (tile.y - 0).toString(16)).length - 8) + "/C" + ("00000000" + (tile.x - 0).toString(16)).substring(("00000000" + (tile.x - 0).toString(16)).length - 8) + ".png";

		  }
		  watershedtiles.isPng = function() {return false;} 
		  watershedtiles.getOpacity = function() { return 0.5; };
		  
		  var watershedlinetiles = new GTileLayer(new GCopyrightCollection(""), 0, 17);			  

		  watershedlinetiles.getTileUrl = function(tile,zoom) {

		  return "http://hydromet.lcra.org/tiles/watershedsline/L" + ("00" + ((zoom - 0) - 6).toString(10)).substring(("00" + ((zoom - 0) - 6).toString(10)).length - 2) + "/R" + ("00000000" + (tile.y - 0).toString(16)).substring(("00000000" + (tile.y - 0).toString(16)).length - 8) + "/C" + ("00000000" + (tile.x - 0).toString(16)).substring(("00000000" + (tile.x - 0).toString(16)).length - 8) + ".png";

		  }
		  watershedlinetiles.isPng = function() {return true;} 

		   // === Create the tilelayer for counties===
		  var countytiles = new GTileLayer(new GCopyrightCollection(""), 0, 17);					  
		  countytiles.getTileUrl = function(tile,zoom) {

		  return "http://hydromet.lcra.org/tiles/CountyBoundaries/L" + ("00" + ((zoom - 0) - 6).toString(10)).substring(("00" + ((zoom - 0) - 6).toString(10)).length - 2) + "/R" + ("00000000" + (tile.y - 0).toString(16)).substring(("00000000" + (tile.y - 0).toString(16)).length - 8) + "/C" + ("00000000" + (tile.x - 0).toString(16)).substring(("00000000" + (tile.x - 0).toString(16)).length - 8) + ".png";

		  }
		  countytiles.isPng = function() { return true; }


	      var drought_layer = new GTileLayer(new GCopyrightCollection(""), 1, 17);
	      drought_layer.getTileUrl = function(tile, zoom) {
	          var llp = new GPoint(tile.x * 256, (tile.y + 1) * 256);
	          var urp = new GPoint((tile.x + 1) * 256, tile.y * 256);
	          var ll = G_NORMAL_MAP.getProjection().fromPixelToLatLng(llp, zoom);
	          var ur = G_NORMAL_MAP.getProjection().fromPixelToLatLng(urp, zoom);
	          var dt = new Date();
	          var nowtime = dt.getTime();
	          var tileurl = "http://torka.unl.edu:8080/cgi-bin/mapserv.exe?map=/ms4w/apps/dm/service/usdm_current_wms.map";
	          tileurl += "&request=GetMap&service=WMS&version=1.1.1&layers=usdm_current&styles=";
	          tileurl += "&format=image/gif&bgcolor=0x333333&transparent=true&srs=EPSG:4326";
	          tileurl += "&bbox=" + ll.x + "," + ll.y + "," + ur.x + "," + ur.y;
	          tileurl += "&width=256&height=256&reaspect=false&cachetime=" + nowtime;
	          bbox = ll.x + " " + ll.y + " " + ur.x + " " + ur.y;
	          return tileurl;
	      };
	      drought_layer.getOpacity = function() { return 0.6; }
	      drought_layer.isPng = function() { return false; }
	      drought = new GTileLayerOverlay(drought_layer);
	  
        baseIcon.iconSize = new GSize(20, 20);
        baseIcon.iconAnchor = new GPoint(10, 10);

	    map = new GMap2(document.getElementById("map"));
		map.addControl(new GLargeMapControl3D());

		map.addMapType(G_PHYSICAL_MAP);
		map.setMapType(G_PHYSICAL_MAP);

		map.addControl(new GScaleControl());
		overviewControl = new GOverviewMapControl(new GSize(129, 120));
		map.addControl(overviewControl);
		map.setCenter(new GLatLng(glat, glng), gzoom);
		//setup marker manager
		mgr=new MarkerManager(map);

		
		var mapControl = new GHierarchicalMapTypeControl();
		mapControl.clearRelationships();
		mapControl.addRelationship(G_SATELLITE_MAP, G_HYBRID_MAP, "Labels", false);
		map.addControl(mapControl);
		
		  // === add GTileLayerOverlay(s) to it ===
		  
		  //streams		  
		  streams = new GTileLayerOverlay(streamtiles);	
		  //watersheds
		   watersheds = new GTileLayerOverlay(watershedtiles);
		  //watershed lines
		   watershedline = new GTileLayerOverlay(watershedlinetiles);
	      //counties	
		   counties = new GTileLayerOverlay(countytiles);

		   map.addOverlay(watersheds);
		   watershedline.zPriority = 100;
		   map.addOverlay(watershedline);

		   map.addOverlay(streams);
		   counties.zPriority = 50;
		   map.addOverlay(counties);
		   counties.hide();
		   
		   baseLayers();
		   showRadar();
		   GEvent.addListener(map, "dragend", function() {
		       document.getElementById('myList').selectedIndex = 0;
		   });

		   //limit zoom levels.
           
		   G_PHYSICAL_MAP.getMinimumResolution = function() { return 6 };
		   G_NORMAL_MAP.getMinimumResolution = function() { return 6 };
		   G_SATELLITE_MAP.getMinimumResolution = function() { return 6 };
		   G_HYBRID_MAP.getMinimumResolution = function() { return 6 };

		   G_PHYSICAL_MAP.getMaximumResolution = function() { return 13 };
		   G_NORMAL_MAP.getMaximumResolution = function() { return 13 };
		   G_SATELLITE_MAP.getMaximumResolution = function() { return 13 };
		   G_HYBRID_MAP.getMaximumResolution = function() { return 13 };

		   GEvent.addListener(map, "zoomend", function(oldLevel, newLevel) {

		       urchinTracker('/Zoom ' + newLevel);

		       if (!checkZoom) {
		           document.getElementById('myList').selectedIndex = 0;
		       }
		       checkZoom = 0;
		       if ((newLevel >= 6 && newLevel <= 13)) {

		           baseLayers();

		           document.getElementById("Streams").disabled = false;
		           document.getElementById("Watersheds").disabled = false;
		           document.getElementById("Counties").disabled = false;

		       }

		       if (newLevel < 6 || newLevel > 13) {

		           if (!watersheds.isHidden()) {
		               watersheds.hide();
		           }
		           if (!watershedline.isHidden()) {
		               watershedline.hide();
		           }
		           if (!streams.isHidden()) {
		               streams.hide();
		           }
		           if (!counties.isHidden()) {
		               counties.hide();
		           }

		           document.getElementById("Streams").disabled = true;
		           document.getElementById("Watersheds").disabled = true;
		           document.getElementById("Counties").disabled = true;
		       }

		       Layers(gdatatype);

		   }); 
						
		  // ====== set up marker mouseover tooltip div ======
		  document.getElementById("map").appendChild(tooltip);
		  tooltip.style.visibility="hidden";    
    
       /* first set of options is for the visual overlay.*/
        var boxStyleOpts = {
          opacity: 0.2,
          border: "2px solid red"
        }
		
        /* second set of options is for everything else */
        var otherOpts = {
          buttonHTML: "<img src='Images/Zoom-In.gif' />",
          buttonZoomingHTML: "<img src='Images/Zoom-In.gif' />",
          buttonStartingStyle: {width: '21px', height: '24px', border: 'none'},
		  backButtonHTML: "<img src='Images/Zoom-Out.gif' />",
		  backButtonStyle: {display:"none", width: '21px', height: '24px', border: 'none',marginTop:"3px"},
		  backButtonEnabled: true,
		  overlayRemoveTime: 1500
        };
		
        /* third set of options specifies callbacks */
        var callbacks = {
        };
		
        map.addControl(new DragZoomControl(boxStyleOpts, otherOpts, callbacks));
           
            //Layers(gdatatype);
            toggleDiv('info'+gdatatype,1);
	}
}

	  function showTooltip(marker) {

    //Build Tooltip.
            
            var myTooltip='<div class="markerTooltip"><b>Site Number: </b>'+marker.sitenumber+'<br />'+marker.name+'<br /><br />';

            if (marker.wtemp!=-998) {
                myTooltip = myTooltip + "<b>Water Temperature: </b>" + marker.wtemp + " °F<br />";
            }
            if(marker.flow!=-998){
                myTooltip=myTooltip + "<b>Flow: </b>" + marker.flow + " cfs<br />";
            }
            if(marker.stage!=-998&&marker.type!="lake"){
                myTooltip=myTooltip + "<b>Stage: </b>" + marker.stage + " feet<br />";
            }
            if(marker.bankfull!=-998){
                myTooltip=myTooltip + "<b>Bankfull Stage: </b>" + marker.bankfull + " feet<br />";
            }
            if(marker.floodstage!=-998){
                myTooltip=myTooltip + "<b>Flood Stage: </b>" + marker.floodstage + " feet<br />";
            }
            if(marker.rain!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Most Recent: </b>" + marker.rain + " in<br />";
            }
            if(marker.rain1!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Past Hour: </b>" + marker.rain1 + " in<br />";
            }
             if(marker.rain2!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Past 2 Hours: </b>" + marker.rain2 + " in<br />";
            }
            if(marker.rain3!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Past 3 Hours: </b>" + marker.rain3 + " in<br />";
            }
            if(marker.rain6!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Past 6 Hours: </b>" + marker.rain6 + " in<br />";
            }
            if(marker.rain12!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Past 12 Hours: </b>" + marker.rain12 + " in<br />";
            }
            if(marker.raintoday!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Since Midnight: </b>" + marker.raintoday + " in<br />";
            }
            if(marker.rain1day!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Past 24 Hours: </b>" + marker.rain1day + " in<br />";
            }
            if(marker.rain2day!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Past 48 Hours: </b>" + marker.rain2day + " in<br />";
            }
            if(marker.rain1wk!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Past Week: </b>" + marker.rain1wk + " in<br />";
            }
            if(marker.rain2wk!=-998){
                myTooltip=myTooltip + "<b>Rainfall - Past 2 Weeks: </b>" + marker.rain2wk + " in<br />";
            }
            if(marker.temp!=-998){
                myTooltip=myTooltip + "<b>Current Temperature: </b>" + marker.temp + " °F<br />";
            }
            if(marker.mintemp!=-998){
                myTooltip=myTooltip + "<b>Temp - Min - Since Midnight: </b>" + marker.mintemp + " °F<br />";
            }
            if(marker.maxtemp!=-998){
                myTooltip=myTooltip + "<b>Temp - Max - Since Midnight: </b>" + marker.maxtemp + " °F<br />";
            }
            if(marker.humidity!=-998){
                myTooltip=myTooltip + "<b>Relative Humidity: </b>" + marker.humidity + " %<br />";
            }
                       
            myTooltip=myTooltip+"</div>";

	//Load the data for the markers           
            marker.tooltip=myTooltip;			
			
			tooltip.innerHTML = marker.tooltip;
			var point=map.getCurrentMapType().getProjection().fromLatLngToPixel(map.getBounds().getSouthWest(),map.getZoom());
			var offset=map.getCurrentMapType().getProjection().fromLatLngToPixel(marker.getPoint(),map.getZoom());
			var anchor=marker.getIcon().iconAnchor;
			var width=marker.getIcon().iconSize.width;
			var pos = new GControlPosition(G_ANCHOR_BOTTOM_LEFT, new GSize(offset.x - point.x - anchor.x + width,- offset.y + point.y +anchor.y)); 
			pos.apply(tooltip);
			tooltip.style.visibility="visible";
      }	
        
 		function createMarker(num,sitenumber,zoom,name,lat,lng,type,stage,flow,temp,wtemp,humidity,head,tail,rain,rain30min,rain1,rain2,rain3,rain6,rain12,raintoday,rain1day,rain2day,rain1wk,rain2wk,bankfull,floodstage,mintemp,maxtemp) {

            //Round the data
            
            flow=Math.round(flow);
            temp=Math.round(temp);
            humidity=Math.round(humidity);
            bankfull=Math.round(bankfull);
            floodstage=Math.round(floodstage);
            mintemp=Math.round(mintemp);
            maxtemp=Math.round(maxtemp);
            stage = Math.max(stage);
            if (wtemp != -998) {
                wtemp = wtemp * 1.8 + 32;
            }
            wtemp = Math.round(wtemp);

            if(dataNew==1){  //if the data comes from the initial page load         
       
            var latlng=new GLatLng(lat,lng);            
      
            opts = { 
              "icon": baseIcon,
              "clickable": false,
              "labelText": flow,
              "labelOffset": new GSize(-7,-7)
            };

		    var marker = new LabeledMarker(latlng,opts);

	        marker.sitenumber=sitenumber;
	        marker.name=name;
	        marker.zoom=zoom;
			marker.type=type;
			marker.stage=stage;
			marker.flow=flow;
			marker.temp = temp;
			marker.wtemp = wtemp;
			marker.humidity=humidity;
			marker.head=head;
			marker.tail=tail;
			marker.rain=rain;
			marker.rain30min=rain30min;
			marker.rain1=rain1;
			marker.rain2=rain2;
			marker.rain3=rain3;
			marker.rain6=rain6;
			marker.rain12=rain12;
			marker.raintoday=raintoday;
			marker.rain1day=rain1day;
			marker.rain2day=rain2day;
			marker.rain1wk=rain1wk;
			marker.rain2wk=rain2wk;
			marker.bankfull=bankfull;
			marker.floodstage=floodstage;
			marker.mintemp=mintemp;
			marker.maxtemp=maxtemp;

			gmarkers.push(marker);

			GEvent.addListener(marker, "click", function() {
			    urchinTracker('/From Map ' + gdatatype);
			    currentSite = marker.sitenumber;
			    document.getElementById("selectGauge").style.visibility = "visible";
			    document.getElementById("dataFrame").src = "chron.aspx?sNum=" + marker.sitenumber + "&sType=" + gdatatype + "&sName=" + marker.name;
			    //window.open('http://butch/situationreport/chron.aspx?sNum='+marker.sitenumber+'&sType='+gdatatype+'&sName='+marker.name,'data','toolbar=no,location=yes,status=no,scrollbars=yes,menubar=no,width=800');
			});
			
			GEvent.addListener(marker,"mouseover", function() {
				showTooltip(marker);
			}); 
				   
			GEvent.addListener(marker,"mouseout", function() {
				tooltip.style.visibility="hidden"
			});
			
			}
			else{//data coming in on refresh.
			gmarkers[num].stage=stage;
			gmarkers[num].flow=flow;
			gmarkers[num].temp = temp;
			gmarkers[num].wtemp = wtemp;
			gmarkers[num].humidity=humidity;
			gmarkers[num].head=head;
			gmarkers[num].tail=tail;
			gmarkers[num].rain=rain;
			gmarkers[num].rain30min=rain30min;
			gmarkers[num].rain1=rain1;
			gmarkers[num].rain2=rain2;
			gmarkers[num].rain3=rain3;
			gmarkers[num].rain6=rain6;
			gmarkers[num].rain12=rain12;
			gmarkers[num].raintoday=raintoday;
			gmarkers[num].rain1day=rain1day;
			gmarkers[num].rain2day=rain2day;
			gmarkers[num].rain1wk=rain1wk;
			gmarkers[num].rain2wk=rain2wk;
			gmarkers[num].bankfull=bankfull;
			gmarkers[num].floodstage=floodstage;
			gmarkers[num].mintemp=mintemp;
			gmarkers[num].maxtemp=maxtemp;
		  }
   
        }  

//function to toggle the DIV for the legend
function toggleDiv(id,flagit) {
if (flagit=="1"){
currentDiv=id;
if (document.layers) document.layers[''+id+''].visibility = "show"
else if (document.all) document.all[''+id+''].style.visibility = "visible"
else if (document.getElementById) document.getElementById(''+id+'').style.visibility = "visible"
}
else
if (flagit=="0"){
if (document.layers) document.layers[''+id+''].visibility = "hide"
else if (document.all) document.all[''+id+''].style.visibility = "hidden"
else if (document.getElementById) document.getElementById(''+id+'').style.visibility = "hidden"
}
}

//function to toggle the DIV for the TOC
function toggleDivTOC(id,flagit) {
if (flagit=="1"){
if (document.layers) document.layers[''+id+''].visibility = "show"
else if (document.all) document.all[''+id+''].style.visibility = "visible"
else if (document.getElementById) document.getElementById(''+id+'').style.visibility = "visible"
}
else
if (flagit=="0"){
if (document.layers) document.layers[''+id+''].visibility = "hide"
else if (document.all) document.all[''+id+''].style.visibility = "hidden"
else if (document.getElementById) document.getElementById(''+id+'').style.visibility = "hidden"
}
}

function closeFrame(){
document.getElementById("selectGauge").visibility = "hide";
document.getElementById("dataFrame").src="";
document.getElementById("selectGauge").style.visibility = "hidden";
}

//function to toggle the DIV for the TOC
function toggleGauges() {

  var gauges=document.getElementById('gaugeDropDown');              
    
    //remove current dropdown list options.
    gauges.options.length=0;
    
     switch(gdatatype){
      case "flow":
        var optn = document.createElement ("OPTION");
        optn.text = "View Stage and Flow data";
        optn.value = 0;
        gauges.options.add(optn);
      for (var i=0;i<gmarkers.length;i++) {
           if (gmarkers[i].flow!=-998&&gmarkers[i].type=="river")  { 
            var optn = document.createElement ("OPTION");
            optn.text = gmarkers[i].name;
            optn.value = gmarkers[i].sitenumber;
            gauges.options.add(optn);
            }
      }
      
      break;
      
      case "stage":
        var optn = document.createElement ("OPTION");
        optn.text = "View Stage and Flow data";
        optn.value = 0;
        gauges.options.add(optn);

      for (var i=0;i<gmarkers.length;i++) {
           if (gmarkers[i].stage!=-998&&gmarkers[i].type=="river")  { 
            var optn = document.createElement ("OPTION");
            optn.text = gmarkers[i].name;
            optn.value = gmarkers[i].sitenumber;
            gauges.options.add(optn);
            }
      }
      
      break;

      case "temp": 
      case "mintemp":
      case "maxtemp":
      
        var optn = document.createElement ("OPTION");
        optn.text = "View Temperature data";
        optn.value = 0;
        gauges.options.add(optn);

      for (var i=0;i<gmarkers.length;i++) {
           if (gmarkers[i].temp>-998)  { 
            var optn = document.createElement ("OPTION");
            optn.text = gmarkers[i].name;
            optn.value = gmarkers[i].sitenumber;
            gauges.options.add(optn);
            }
      }
      
      break;

      case "humidity":
        var optn = document.createElement ("OPTION");
        optn.text = "View Humidity data";
        optn.value = 0;
        gauges.options.add(optn);

      for (var i=0;i<gmarkers.length;i++) {
           if (gmarkers[i].humidity>-998)  { 
            var optn = document.createElement ("OPTION");
            optn.text = gmarkers[i].name;
            optn.value = gmarkers[i].sitenumber;
            gauges.options.add(optn);
            }
      }
      
      break;
      
      case "lakelevel":
        var optn = document.createElement ("OPTION");
        optn.text = "View Lake Level data";
        optn.value = 0;
        gauges.options.add(optn);
      for (var i=0;i<gmarkers.length;i++) {
           if (gmarkers[i].type=="dam")  { 
            var optn = document.createElement ("OPTION");
            optn.text = gmarkers[i].name;
            optn.value = gmarkers[i].sitenumber;
            gauges.options.add(optn);
            }
      }

      break;

      case "wtemp":
          var optn = document.createElement("OPTION");
          optn.text = "View Surface Temp data";
          optn.value = 0;
          gauges.options.add(optn);

          for (var i = 0; i < gmarkers.length; i++) {
              if (gmarkers[i].wtemp > -998) {
                  var optn = document.createElement("OPTION");
                  optn.text = gmarkers[i].name;
                  optn.value = gmarkers[i].sitenumber;
                  gauges.options.add(optn);
              }
          }
          
          break;
      
      case "rain":
      case "rain30min":
      case "rain1":
      case "rain2":
      case "rain3":
      case "rain6":
      case "rain12":
      case "raintoday":
      case "rain1day":
      case "rain2day":
      case "rain1wk":
      case "rain2wk":

        var optn = document.createElement ("OPTION");
        optn.text = "View Rainfall data";
        optn.value = 0;
        gauges.options.add(optn);

      for (var i=0;i<gmarkers.length;i++) {
           if (gmarkers[i].rain>-998)  { 
            var optn = document.createElement ("OPTION");
            optn.text = gmarkers[i].name;
            optn.value = gmarkers[i].sitenumber;
            gauges.options.add(optn);
            }
      }
      
      break;
}//end switch
}//end function


      // === Set the cookie before exiting ===
      function setCookie() {
        urchinTracker('/Save Map State');
        var today = new Date();
        var radar = 0;
        var stream = 0;
        var watershed = 0;
        var county = 0;
        var drought = 0;
        
        today.setTime(today.getTime());
        if (document.getElementById("Radar").checked == true) {
            radar = 1;
        }
        if (document.getElementById("Streams").checked == true) {
            stream = 1;
        }
        if (document.getElementById("Watersheds").checked == true) {
            watershed = 1;
        }
        if (document.getElementById("Counties").checked == true) {
            county = 1;
        }
        if (document.getElementById("Drought").checked == true) {
            drought = 1;
        }

        var cookietext = cookiename + "=" + map.getCenter().lat() + "|" + map.getCenter().lng() + "|" + map.getZoom() + "|" + gdatatype + "|" + radar + "|" + stream + "|" + watershed + "|" + county + "|" + drought;

        if (expiremilliseconds) {
          var exdate=new Date(today.getTime() + (expiremilliseconds) );
          cookietext += ";expires="+exdate.toGMTString();
        }
                
        // == write the cookie ==
        document.cookie = cookietext;
        alert("Map State Saved.");
     }

    function exitPage() {
        GUnload();
    }

    function resizeMap() {
        document.getElementById('map').style.height = getHeight() + 'px';
        map.removeControl(overviewControl);
        overviewControl = new GOverviewMapControl(new GSize(129, 120));
        setTimeout("map.checkResize();map.addControl(overviewControl)",500);
    }
    function getHeight() {
        var height = 0;
        if (typeof (window.innerWidth) == 'number') {
            //Non-IE
            height = window.innerHeight - 80;

        } else if (document.documentElement &&
              (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
            //IE 6+ in 'standards compliant mode'
            height = document.documentElement.clientHeight - 80;
        } 
        
        if (height < 650) {
            height = 650;
        }
        return height;

    } 
