var Rollover=Class.create({initialize:function(id,_2){
this.id=id;
this.images={};
this.preloader=new Preloader();
this.setOptions(_2);
this.observeLinks();
},setOptions:function(_3){
this.options={rolloverSuffix:"rollover",selectedSuffix:"sel",suffixSeperator:"_"};
Object.extend(this.options,_3||{});
},observeLinks:function(){
this.links=$$("#"+this.id+" a");
for(i=0;i<this.links.length;i++){
this.links[i].observe("mouseover",this.rolloverImage);
this.links[i].observe("mouseout",this.rollbackImage);
}
images=$$("#"+this.id+" img");
for(i=0;i<images.length;i++){
imageId=images[i].id;
if(!imageId){
imageId=this.id+i;
images[i].id=imageId;
}
this.images[imageId]=images[i].src;
images[i].imageRollover=this;
this.preloader.addToQueue(this.parseRolloverImage(images[i]));
}
this.preloader.startLoading();
},rolloverImage:function(e){
image=Event.element(e);
if(image.imageRollover){
image.imageRollover.images[image.id]=image.src;
image.src=image.imageRollover.parseRolloverImage(image);
}
},rollbackImage:function(e){
image=Event.element(e);
if(image.imageRollover){
image.src=image.imageRollover.images[image.id];
}
},parseRolloverImage:function(_6){
ext=_6.src.substr(_6.src.lastIndexOf("."));
path=_6.src.match(/(.*)\/(.*\.(png|gif|jpg))/)[1];
filename=_6.src.gsub(path,"");
basename=this.parseBasename(filename);
basename=this.parseBasename(basename,this.options.suffixSeperator+this.options.selectedSuffix);
return path+basename+this.options.suffixSeperator+this.options.rolloverSuffix+ext;
},parseBasename:function(_7,_8){
_8=_8||".";
found=_7.lastIndexOf(_8);
if(found>0){
return _7.substr(0,found);
}else{
return _7;
}
}});

