/* $Id: bm-ie.js 3204 2008-08-07 16:28:02Z josh $ */
Object.extend(BM, {
    initMenu : function() {
        var updater = navigator.appVersion.substr(22,3)=="5.0"
          ? BM.updateMenuIE5
          : BM.updateMenuIE;
        $A( $$('div.bmw_navigation ul') ).each(updater);
    },
    updateMenuIE : function(list) {
        //add zero-height/width li containing iframe sized to list dimensions
        var li=document.createElement('li');
        li.style.fontSize = li.style.lineHeight = li.style.width = li.style.height 
          = li.style.borderWidth = '0px';
        ['Left','Right','Top','Bottom'].each(function(p){
            li.style['padding'+p]=li.style['margin'+p]='0px';
        });

        var ieMat=document.createElement('iframe');
        ieMat.style.position = 'absolute';
        ieMat.style.zIndex = '-1';
        ieMat.scrolling = "no";
        ieMat.frameBorder = "0";
        var dims = Element.getDimensions(list);
        ieMat.style.width = dims.width+"px";
        ieMat.style.height = dims.height+"px";

        li.insertBefore(ieMat,null);
        list.insertBefore(li, list.childNodes[0]);
        Element.setOpacity(ieMat, 0);

        $A( list.getElementsByTagName('li') ).each(function(li){
          li.onmouseover = function(){Element.addClassName(li,'bmn_hover')} ;
          li.onmouseout = function(){Element.removeClassName(li,'bmn_hover')} ;
        });
    },
    updateMenuIE5 : function(list) { // no dice w/iframe, hide selects instead
        var ieLIs = list.getElementsByTagName('li');
        $A(ieLIs).each( function(li){
            li.onmouseover = function(){
                Element.addClassName(li,'bmn_hover');
                BM.hideSelects();
            };
            li.onmouseout = function(){
                Element.removeClassName(li,'bmn_hover');
                BM.showSelects();
            };
        });
    },
    hideSelects : function(){
        var oSelects=document.getElementsByTagName("select");
        $A(oSelects).each( function(select){
          Element.addClassName(select,'bmHide');
        } );
    },
    showSelects : function(){
        var oSelects=document.getElementsByTagName("select");
        $A(oSelects).each( function(select){
          Element.removeClassName(select,'bmHide');
        } );
    }    
});
Event.observe(window,'load',BM.initMenu);
