<!--

// preload the button images
navon = new Image();
navon.src = "/images/navbar-on.gif"
navoff = new Image();
navoff.src = "/images/navbar-off.gif"
button = new Image();
button.src = "/images/button-on.gif"
buttoff = new Image();
buttoff.src = "/images/button-off.gif"

// globals for the map zoon-box positioning
var mapXOffset = 0;
var mapYOffset = 0;

function NavButtonOver(elem) {
    elem.background = "/images/navbar-off.gif";
    if (elem.children)
        elem.children[0].style.color = "#7E93AA";
}

function NavButtonOut(elem) {
    elem.background = "/images/navbar-on.gif";
    if (elem.children)
        elem.children[0].style.color = "#EEEEEE";
}

function NavButtonDown(elem) {
    elem.background = "/images/navbar-off.gif";
    if (elem.children)
        elem.children[0].style.color = "#7E93AA";
}

function NavButtonUp(path) {
    location.href = path;
}

function ButtonOver(elem) {
    elem.background = "/images/button-on.gif";
    if (elem.children)
        elem.children[0].style.color = "#EEEEEE";
}

function ButtonOut(elem) {
    elem.background = "/images/button-off.gif";
    if (elem.children)
        elem.children[0].style.color = "#7E93AA";
}

function ButtonDown(elem) {
    elem.background = "/images/button-on.gif";
    if (elem.children)
        elem.children[0].style.color = "#EEEEEE";
}

function ButtonUp(path) {
    location.href = path;
}

function switchDisplay(ID) {
	var el = document.getElementById(ID);
	if(el.style.display == "none") {
		el.style.display = "block";
	}
	else {
		el.style.display = "none";
	}
}

function hideApology() {
	document.getElementById("apology").style.display = "none";
}

// routines supporting the <area/> tags for the traffic/construction/etc. maps

function camImagePopup(j,i) {
    address = '/cam_detail?j='+j+'&t=cam&i='+i+'&sz=1';
    var w = window.open(address, 'detail_cam',
            'toolbar=0,scrollbars=0,location=0,statusbar=0,' +
            'menubar=0,resizable=1,width=750,height=650');
    if (w) {
        w.focus();
    }
}

function zoomInOver(map,left,top,width,height) {
	//find offsets
	obj = document.getElementById("mapdiv");
	mapXOffset = 0;
	mapYOffset = 0;
	if(!ie4 || (ie4 && window.opera)) {
		if (obj.offsetParent)
		{
			while (obj.offsetParent)
			{
				mapXOffset += obj.offsetLeft;
				mapYOffset += obj.offsetTop;
				obj = obj.offsetParent;
			}
		}
		else if (obj.x) {
			mapXOffset += obj.x;
			mapYOffset += obj.y;
		}
	}
	/*while(obj) {
		var x = obj.offsetLeft;
		var y = obj.offsetTop;
		if(isNaN(x) || isNaN(y)) {
			break;
		} else {
			mapXOffset += x;
			mapYOffset += y;
		}
		obj = obj.parentNode;
	}*/

	
	
    left += mapXOffset;
    top  += mapYOffset;

    var lt = document.getElementById('mapzm_lt');
    lt.style.left   = left+'px';
    lt.style.top    = top+'px';
    lt.style.width  = '2px';
    lt.style.height = height+'px';

    var rt = document.getElementById('mapzm_rt');
    rt.style.left   = (left+width)+'px';
    rt.style.top    = top+'px';
    rt.style.width  = '2px';
    rt.style.height = height+'px';

    var tp = document.getElementById('mapzm_tp');
    tp.style.left   = left+'px';
    tp.style.top    = top+'px';
    tp.style.width  = width+'px';
    tp.style.height = '2px';

    var bt = document.getElementById('mapzm_bt');
    bt.style.left   = left+'px';
    bt.style.top    = (top+height)+'px';
    bt.style.width  = (2+width)+'px';
    bt.style.height = '2px';

    lt.className    = 'mapzm_show';
    rt.className    = 'mapzm_show';
    tp.className    = 'mapzm_show';
    bt.className    = 'mapzm_show';

    //overlib('Click to zoom in to the ' + map + ' map.',
    //        CAPTION, 'Zoom in');
}
function zoomInOut() {
    //nd();

    var lt = document.getElementById('mapzm_lt');
    var rt = document.getElementById('mapzm_rt');
    var tp = document.getElementById('mapzm_tp');
    var bt = document.getElementById('mapzm_bt');

    lt.className = 'mapzm_hide';
    rt.className = 'mapzm_hide';
    tp.className = 'mapzm_hide';
    bt.className = 'mapzm_hide';

    lt.style.left   = '1px';
    lt.style.top    = '1px';
    lt.style.width  = '0px';
    lt.style.height = '0px';

    rt.style.left   = '1px';
    rt.style.top    = '1px';
    rt.style.width  = '0px';
    rt.style.height = '0px';

    tp.style.left   = '1px';
    tp.style.top    = '1px';
    tp.style.width  = '0px';
    tp.style.height = '0px';

    bt.style.left   = '1px';
    bt.style.top    = '1px';
    bt.style.width  = '0px';
    bt.style.height = '0px';
}
function zoomOutOver(map) {
    //overlib('Click to zoom out to the ' + map + ' map.',
    //        CAPTION, 'Zoom Out');
}
function zoomOutOut() {
    //nd();
}
function panOver(map) {
    //overlib('Click to pan over to the ' + map + ' map.',
    //        CAPTION, 'Pan');
}
function panOut() {
    //nd();
}
function gotoMap(id) {
    nd();
    newLocation = '/maps/' + id;
    if (typeof noborder != "undefined" && noborder) {
        newLocation += '?noborder=1';
    }
    window.location = newLocation;
}
function gotoCstMap(id) {
    nd();
    window.location = '/construction/maps/' + id;
}
function detailOver(jur, typ, id, txt, cap) {
    if ( o3_showingsticky ) { return; }

    var content = txt;
    var caption = cap;

    switch (typ) {
        case 'CAM':
          caption = 'Traffic Cam';
          break;
        case 'CMS':
          caption = 'Message Sign';
          break;
        case 'RCL':
          break;
        case 'INC':
          break;
        case 'CNST':
          break;
        case 'STN':
          caption = 'Detection Station';
          break;
        case 'WMS':
          caption = 'Weather Station';
          break;
case 'AIRP':
           break;
case 'RST':
break;

        default:
          return;
    }
    content = content + '<div class="overlib_id">'+jur+'-'+typ+'-'+id+'</div>';
    overlib(content, CAPTION, caption);
}
function detailOut() {
    if ( o3_showingsticky ) { return; }
    nd();
}
function detailClick(j, t, i, txt, cap) {

    j = j.toLowerCase();
    t = t.toLowerCase();

    switch (t) {
        case 'cam':
          caption = 'Traffic Cam';
          src = '/images/dynamic/cameras/small_'+j+'_cam_'+i+'.jpg';
          link = '<a href="javascript: camImagePopup(\''+
              j+'\','+i+');">[full-size image]</a>';
          content = 
            '<div align="center">'+txt+'</div>'+
            '<div align="center">'+'<img src="'+src+'" alt="" />'+'</div>'+
            '<div align="center">'+link+'</div>';
          break;
        case 'cms':
          caption = 'Message Sign';
          src = '/images/dynamic/signs/'+j+'_cms_'+i+'.gif';
          content = 
            '<div align="center">'+txt+'</div>'+
            '<div align="center">'+'<img src="'+src+'" alt="" />'+'</div>';
          break;
        case 'inc':
        case 'rcl':
        case 'cnst':
          caption = cap;
          content = txt;
          break;
        case 'wms':
          caption = cap;
          content = txt;
          break;
 case 'airp':
          caption = cap;
          content = txt;
          break;

case 'rst':
          caption = cap;
          content = txt;
          break;


        default:
          return;
    }
    nd();

    j = j.toUpperCase();
    t = t.toUpperCase();

    content = content+'<div class="overlib_id">'+j+'-'+t+'-'+i+'</div>';
    overlib(content, PIN, DRAG, STICKY, CLOSECLICK, CAPTION, caption);
}

/* setup for the overlib.js library */
var ol_fgcolor          = "#A5B4C4";
var ol_bgcolor          = "#39597D";
var ol_textfont         = "Verdana,Arial,Helvetica,sans-serif";
var ol_captionfont      = "Verdana,Arial,Helvetica,sans-serif";
var ol_closefont        = "Verdana,Arial,Helvetica,sans-serif";
var ol_width            = "150";
var ol_border           = "1px";
var ol_close            =  "<img src=\"/dot/lib/dot/images/close.gif\" border=\"0\">";
var ol_autostatus       = 2;
var ol_snapx            = 1;
var ol_snapy            = 1;
var ol_hauto            = 1;
var ol_vauto            = 1;
var ol_css              = 53;  /* CSSCLASS from overlib.js */
var ol_fgclass          = "overlib_fg";
var ol_bgclass          = "overlib_bg";
var ol_textfontclass    = "overlib_txt";
var ol_captionfontclass = "overlib_cap";
var ol_closefontclass   = "overlib_cls";

// End JavaScript -->

