var dom=document.getElementById;var iex=document.all;var ns4=document.layers;function addScrollEvent(event,method){this[event]=method;if(ns4)this.captureEvents(Event[event.substr(2,event.length).toUpperCase()]);}
function removeScrollEvent(event){this[event]=null;if(ns4)this.releaseEvents(Event[event.substr(2,event.length).toUpperCase()]);}
function getElement(name,nest){nest=nest?"document."+nest+".":"";var el=dom?document.getElementById(name):iex?document.all[name]:ns4?eval(nest+"document."+name):false;el.css=ns4?el:el.style;el.getLeft=function(){return parseInt(el.css.left)||0};el.setLeft=function(x){el.css.left=ns4?x:x+"px"};el.getWidth=function(){return ns4?el.document.width:el.offsetWidth};el.getClipWidth=function(){return ns4?el.clip.width:el.offsetWidth};el.hideVis=function(){el.css.visibility="hidden"};el.addScrollEvent=addScrollEvent;el.removeScrollEvent=removeScrollEvent;return el;}
function getXMouse(e){return iex?event.clientX:e.pageX;}
document.addScrollEvent=addScrollEvent;document.removeScrollEvent=removeScrollEvent;var noScroll;ScrollObj=function(speed,dragWidth,trackWidth,trackObj,upObj,downObj,dragObj,contentMaskObj,contentObj){this.speed=speed;this.dragWidth=dragWidth;this.trackWidth=trackWidth;this.trackObj=getElement(trackObj);this.upObj=getElement(upObj);this.downObj=getElement(downObj);this.dragObj=getElement(dragObj);this.contentMaskObj=getElement(contentMaskObj);this.contentObj=getElement(contentObj,contentMaskObj);this.obj=contentObj+"Object";eval(this.obj+"=this");this.trackLeft=this.dragObj.getLeft();this.trackLength=this.trackWidth-this.dragWidth;this.trackRight=this.trackLeft+this.trackLength;this.contentMaskWidth=this.contentMaskObj.getClipWidth();this.contentWidth=this.contentObj.getWidth();this.contentLength=this.contentWidth-this.contentMaskWidth;this.scrollLength=this.trackLength/this.contentLength;this.scrollTimer=null;if(this.contentWidth<=this.contentMaskWidth){noScroll=true;}else{var self=this;this.upObj.addScrollEvent("onmousedown",function(){self.scroll(self.speed);return false});this.upObj.addScrollEvent("onmouseup",function(){self.stopScroll()});this.upObj.addScrollEvent("onmouseout",function(){self.stopScroll()});this.downObj.addScrollEvent("onmousedown",function(){self.scroll(-self.speed);return false});this.downObj.addScrollEvent("onmouseup",function(){self.stopScroll()});this.downObj.addScrollEvent("onmouseout",function(){self.stopScroll()});this.dragObj.addScrollEvent("onmousedown",function(e){self.startDrag(e);return false});if(iex)this.dragObj.addScrollEvent("ondragstart",function(){return false});}}
ScrollObj.prototype.startDrag=function(e){this.dragStartMouse=getXMouse(e);this.dragStartOffset=this.dragObj.getLeft();var self=this;document.addScrollEvent("onmousemove",function(e){self.drag(e)});document.addScrollEvent("onmouseup",function(){self.stopDrag()});}
ScrollObj.prototype.stopDrag=function(){document.removeScrollEvent("onmousemove");document.removeScrollEvent("onmouseup");}
ScrollObj.prototype.drag=function(e){var currentMouse=getXMouse(e);var mouseDifference=currentMouse-this.dragStartMouse;var dragDistance=this.dragStartOffset+mouseDifference;var dragMovement=(dragDistance<this.trackLeft)?this.trackLeft:(dragDistance>this.trackRight)?this.trackRight:dragDistance;this.dragObj.setLeft(dragMovement);var contentMovement=-(dragMovement-this.trackLeft)*(1/this.scrollLength);this.contentObj.setLeft(contentMovement);}
ScrollObj.prototype.scroll=function(speed){var contentMovement=this.contentObj.getLeft()+speed;var dragMovement=this.trackLeft-Math.round(this.contentObj.getLeft()*(this.trackLength/this.contentLength));if(contentMovement>0){contentMovement=0;}else if(contentMovement<-this.contentLength){contentMovement=-this.contentLength;}
if(dragMovement<this.trackLeft){dragMovement=this.trackLeft;}else if(dragMovement>this.trackRight){dragMovement=this.trackRight;}
this.contentObj.setLeft(contentMovement);this.dragObj.setLeft(dragMovement);this.scrollTimer=window.setTimeout(this.obj+".scroll("+speed+")",25);}
ScrollObj.prototype.stopScroll=function(){if(this.scrollTimer){window.clearTimeout(this.scrollTimer);this.scrollTimer=null;}}
function fixNetscape4(){if(ns4origWidth!=window.innerWidth||ns4origHeight!=window.innerHeight){window.location.reload();}}
if(document.layers){ns4origWidth=window.innerWidth;ns4origHeight=window.innerHeight;window.onresize=fixNetscape4;}
