/////////////////////////////////////////////////////////////////////////
//
// img rollover script
//
// all img tags with class="rollover" will turn into rollover images
// for example (home.gif) will be replaced with (home-over.gif) on mouseover
//
// 1.0  - Initial Version
// 1.01 - bug fix
//
/////////////////////////////////////////////////////////////////////////

var Rollover = {

    finishedpreload: 0,
    loadedimages: new Array(),

    init: function() {

        if (document.getElementsByTagName) {
            allimgs = document.getElementsByTagName('img');
    
            var p = 0;    

            for (i=0; i < allimgs.length; i++) {
                if (allimgs[i].className.indexOf('rollover') != -1) {
                    var newsrc = allimgs[i].src; 
                    newsrc = newsrc.replace(/\.(gif|png|jpg)$/,'-over.$1');

                    Rollover.loadedimages[p] = new Image(1,1);
                    Rollover.loadedimages[p].src = newsrc;
                    p++;
                
                    allimgs[i].onmouseover = Rollover.toggleon; 
                    allimgs[i].onmouseout = Rollover.toggleoff;
                } 
            }
            Rollover.finishedpreload = 1;
            Rollover.oncomplete();
        }
    },

    // allow a user to define what happens after the rollover initilizes
    oncomplete: function() {},

    toggleoff: function() {
        if (window.Rollover && window.Rollover.finishedpreload) {
          if (this.src.indexOf('-over') != -1 ) {
            this.src = this.src.replace('-over','');
          }	    
        }	    
    },

    toggleon: function() {
        if (window.Rollover && window.Rollover.finishedpreload) {
          if (this.src.indexOf('-over') == -1 ) {
              this.src = this.src.replace(/\.(gif|jpg|png)/,'-over.$1');
          }     
        }
    },

    addEvent: function( obj, type, fn ) {
       if ( obj.attachEvent ) {
          obj['e'+type+fn] = fn;
          obj[type+fn] = function(){obj['e'+type+fn]( window.event );}
          obj.attachEvent( 'on'+type, obj[type+fn] );
       } else {
          obj.addEventListener( type, fn, false );
       }
    }
}

Rollover.addEvent(window,'load',Rollover.init)
