function ImageGallery(UniqueID,ImageCount,cycleTime,direction,RolloverToLargerImages,cycleLoop,cycleDelay){this.cycleDelay=cycleDelay;this.imageCount=ImageCount;this.initialCycleTime=cycleTime;this.cycleCounter=1;this.totalHeight=0;this.div=document.getElementById('cycleDiv'+UniqueID);this.uniqueID=UniqueID;this.stopCycle=0;this.intervalSet=0;this.direction=direction;this.RolloverToLargerImages=RolloverToLargerImages;this.rolloverDisplaying=0;this.cycleLoop=cycleLoop;this.distanceTraveled=0;switch(this.direction){case 0:this.offset="offsetLeft";this.increase=1;this.style="left";this.widthHeight="width";this.clientwidthHeight="offsetWidth";this.ID="img";break;case 1:this.offset="offsetLeft";this.increase=0;this.style="left";this.widthHeight="width";this.clientwidthHeight="offsetWidth";this.ID="img";break;case 2:this.offset="offsetTop";this.increase=1;this.style="top";this.widthHeight="height";this.clientwidthHeight="offsetHeight";this.ID="DIV";break;case 3:this.offset="offsetTop";this.increase=0;this.style="top";this.widthHeight="height";this.clientwidthHeight="offsetHeight";this.ID="DIV";break;}
var temp;var i;for(i=1;i<=this.imageCount;i++){temp=document.getElementById(this.ID+this.uniqueID+'_'+i);temp.style.position='relative';temp.style[this.style]='0px';if(this.direction<2){this.totalHeight=this.totalHeight+temp[this.widthHeight];}else{this.totalHeight=this.totalHeight+temp.offsetHeight;}}
if(this.increase==1){for(i=1;i<=this.imageCount;i++){temp=document.getElementById(this.ID+this.uniqueID+'_'+i);temp.style[this.style]=-this.totalHeight+this.div[this.clientwidthHeight]+'px';}}
if(this.cycleDelay>0){setTimeout("thediv"+this.uniqueID+".DoCycle()",this.cycleDelay);}else{this.DoCycle();}}
ImageGallery.prototype.setStop=function(currentImage){this.stopCycle=1;this.currentImage=currentImage;if(this.RolloverToLargerImages){setTimeout("thediv"+this.uniqueID+".DoRollover("+currentImage+")",2000);}};ImageGallery.prototype.setGo=function(){this.stopCycle=0;this.RemoveRollover();};ImageGallery.prototype.RemoveRollover=function(currentImage){if(this.rolloverDisplaying){this.rolloverDisplaying=0;document.body.removeChild(this.rolloverImage);}};ImageGallery.prototype.DoRollover=function(currentImage){if(this.stopCycle&&currentImage==this.currentImage){this.RemoveRollover();this.rolloverDisplaying=1;var temp=document.getElementById(this.ID+this.uniqueID+'_'+(currentImage+1));rolloverImage=new Image();rolloverImage.src=arrayofRollovers[this.uniqueID][currentImage];rolloverImage.style.position='absolute';rolloverImage.id="rolloverImage";this.rolloverImage=rolloverImage;document.body.appendChild(rolloverImage);width=rolloverImage.width;height=rolloverImage.height;if(this.direction<2){rolloverImage.width=temp.width+temp.width*0.5;rolloverImage.height=height*(rolloverImage.width/width);}else{rolloverImage.width=temp.offsetWidth+temp.offsetWidth*0.5;rolloverImage.height=height*(rolloverImage.width/width);}
clientOffsetL=0;clientOffsetT=0;var temp2=temp;if(temp2.offsetParent){clientOffsetL=temp2.offsetLeft;clientOffsetT=temp2.offsetTop;while((temp2=temp2.offsetParent)){clientOffsetL+=temp2.offsetLeft;clientOffsetT+=temp2.offsetTop;}}
rolloverImage.style.top=parseInt(clientOffsetT)+'px';rolloverImage.style.left=parseInt(clientOffsetL-rolloverImage.width)+'px';}};ImageGallery.prototype.DoCycle=function(){var temp;var current;var reset=0;var clientOffset=0;var clientSize=this.div[this.clientwidthHeight];var j;if(!this.stopCycle){if(!this.cycleLoop){if(this.distanceTraveled>=this.totalHeight){return;}
this.distanceTraveled++;}
temp=document.getElementById(this.ID+this.uniqueID+'_'+1);if(temp.offsetParent!=this.div){temp=this.div;if(temp.offsetParent){clientOffset=temp[this.offset];while((temp=temp.offsetParent)){clientOffset+=temp[this.offset];}}}
var tempreset;var updatedtotalHeight=0;for(var i=1;i<=this.imageCount;i++){temp=document.getElementById(this.ID+this.uniqueID+'_'+i);if(this.direction<2){updatedtotalHeight+=temp[this.widthHeight];}else{updatedtotalHeight+=temp.offsetHeight;}
if(this.increase==1){temp.style[this.style]=parseInt(temp.style[this.style],10)+1+'px';if(temp[this.offset]-clientOffset>clientSize){this.div.removeChild(temp);this.div.insertBefore(temp,this.div.childNodes[0]);for(j=1;j<=this.imageCount;j++){tempreset=document.getElementById(this.ID+this.uniqueID+'_'+j);tempreset.style[this.style]=-this.totalHeight+clientSize+1+'px';}
break;}}else{temp.style[this.style]=parseInt(temp.style[this.style],10)-1+'px';if((parseInt(temp[this.offset],10)-clientOffset)+(this.direction<2?parseInt(temp[this.widthHeight],10):temp.offsetHeight)<0){this.div.appendChild(this.div.removeChild(temp));for(j=1;j<=this.imageCount;j++){tempreset=document.getElementById(this.ID+this.uniqueID+'_'+j);tempreset.style[this.style]=0+'px';}
break;}}}
this.totalHeight=Math.max(this.totalHeight,updatedtotalHeight);}
if(!this.intervalSet){this.intervalSet=1;setInterval("thediv"+this.uniqueID+".DoCycle()",Math.max((1000/(this.totalHeight/this.imageCount))*this.initialCycleTime,20));}};
