//methods for rollover object

function imageChange(which,onoff){
               lyr = (typeof this.layernames == 'string')? this.layernames : this.layernames[which];
		var ns_statement = (lyr) ? 'document.layers[\"' + lyr + '\"].' : '';
                var ie_statement = 'document.images[\"' + this.imagenames[which] + '\"].src = this.' + onoff + '_images[' + which +'].src';
                ns_statement += ie_statement;

                //netscape
                if(document.layers){
                        eval(ns_statement);
                }else if(document.images){
                        eval(ie_statement);
        }
}

function multiChange(whicharray,onoffarray){
	for(i=0;i<=whicharray.length;i++){
		this.imageChange(whicharray[i],onoffarray[i]);
	}
}

//constructor for rollovers obj
function rollovers(baseurl,imagenames,layernames){
	//properties - each are arrays to support multiple images
	// doesn't support nested layers

	this.imagenames = imagenames;
	this.layernames = layernames ? layernames : '';
	this.baseurl = baseurl;
	this.off_images = new Array;
	this.on_images = new Array;

	//preload the images & store as properties
	for(i=0;i<=imagenames.length;i++){
		this.off_images[i] = new Image();
		this.off_images[i].src = this.baseurl + imagenames[i] + ".jpg";
		this.on_images[i] = new Image();
		this.on_images[i].src = this.baseurl + imagenames[i] + "_on.jpg";
	}
	//methods
	this.imageChange = imageChange;
	this.multiChange = multiChange;
}


