// Place your application-specific JavaScript functions and classes here
// This file is automatically included by javascript_include_tag :defaults

function initMaps() {
   if (document.getElementById) {
      var mapIds = initMaps.arguments;    // pass string IDs of containing map elements
      var i, j, area, areas;
      for (i = 0; i < mapIds.length; i++) {
        areas = document.getElementById(mapIds[i]).getElementsByTagName("area");
        for (j = 0; j < areas.length; j++) {  // loop thru area elements
           area = areas[j];
           area.onmouseout = imgSwap;
           area.onmouseover = imgSwap;
        }
      }
   }
}

// image swapping event handling
function imgSwap(evt) {
   evt = (evt) ? evt : event;                   // equalize event models
   var elem = (evt.target) ? evt.target : evt.srcElement;
   var imgClass = elem.parentNode.name;         // get map element name
   if (elem.coords.indexOf(" ") != -1){
       var coordpairs = elem.coords.split(" ");         // convert coords to clip
       var pair1 = coordpairs[0].split(",");
       var pair2 = coordpairs[1].split(",");
       var clipVal = "rect(" + pair1[1] + "px " +
                           pair2[0] + "px " +
                           pair2[1] + "px " +
                           pair1[0] + "px)";
        } else {
       var coordparts = elem.coords.split(",");         // convert coords to clip
       var clipVal = "rect(" + coordparts[1] + "px " +
                           coordparts[2] + "px " +
                           coordparts[3] + "px " +
                           coordparts[0] + "px)";
        }
   var imgStyle;

   if (document.getElementById(imgClass + "Over" + "_ie6")) {
       switch (evt.type) {
          case "mouseout" :
             document.getElementById(imgClass + "Over" + "_ie6").style.visibility = "hidden";
             break;
          case "mouseover" :
             imgStyle = document.getElementById(imgClass + "Over" + "_ie6").style;
             imgStyle.clip = clipVal;
             imgStyle.visibility = "visible";
             break
          }
        } else {
       switch (evt.type) {
          case "mouseout" :
             document.getElementById(imgClass + "Over").style.visibility = "hidden";
             break;
          case "mouseover" :
             imgStyle = document.getElementById(imgClass + "Over").style;
             imgStyle.clip = clipVal;
             imgStyle.visibility = "visible";
             break
          }
        }
   evt.cancelBubble = true;
   return false;
}