/*
* Javascript Image Rotator
* @author : Ed Cradock
* @date : 7 January 2008
*
* For all your webdesign needs: visit http://www.zymic.com
*/
var _this;
var curslide=0;
var preslide=0;
var nextslide=0;

showstatus= true;
function DoclearInterval(ssname){
   clearInterval(slideshow);
   showstatus= false;
   document.getElementById('startstop').innerHTML = '<a style="text-decoration:none;" href="javascript:rotator.start();" title="Start">start<\/a>';

}
function imageRotator(viewport, cycleOffset)
{
   _this = this;
   this.imageStack = new Array;
   this.offset = cycleOffset;

   var exists = document.getElementById(viewport);
   if(!eval(exists))
   {
      alert('Element ID does not exist.');
   }
   else
   {
      this.viewport = viewport;
      this.controller = 'um';

   }
}
imageRotator.prototype.getNext = function()
{
   if (curslide >= this.imageStack.length){curslide=0;}
  
   return this.imageStack[curslide];
}
imageRotator.prototype.getSlide = function(slidenum)
{
   curslide = slidenum;
   document.getElementById('placeholder').src = this.imageStack[curslide];
   clearInterval(slideshow);
   showstatus= false;
   if(curslide==0){preslide =this.imageStack.length-1; nextslide=curslide+1;}
   else if(curslide==this.imageStack.length-1){preslide =curslide-1; nextslide=0;}
   else if(curslide!=0&&curslide!=this.imageStack.length){preslide=curslide-1; nextslide=curslide+1;}
   newcontrol='<div style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:rotator.getSlide('+preslide+');" title="Previous"><<\/a><\/div>&nbsp;';
   for(var x = 0; x < this.imageStack.length; x++){
   		if(x!=curslide){
   			newcontrol = newcontrol + '<div style="font-size:8pt;display:inline;padding-right:2px;padding-left:2px; color:#000000;"><a style="text-decoration:none;" href="javascript:rotator.getSlide('+x+');">'+(x+1)+'<\/a><\/div>&nbsp;';
   		}else{
   			newcontrol = newcontrol + '<div style="font-size:8pt;display:inline;padding-right:2px;padding-left:2px;border: 1px solid #000000; color:red;">'+(x+1)+'<\/div>&nbsp;';
   		}
   }
   if (showstatus){
		newcontrol=newcontrol +'<div style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:rotator.getSlide('+nextslide+');" title="Next">><\/a><\/div>&nbsp;<div id="startstop" style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:DoclearInterval(slideshow);">pause<\/a><\/div>&nbsp;';
   }else{
        newcontrol=newcontrol +'<div style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:rotator.getSlide('+nextslide+');" title="Next">><\/a><\/div>&nbsp;<div id="startstop" style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:rotator.start();">start<\/a><\/div>&nbsp;';
   }
   document.getElementById(_this.controller).innerHTML = newcontrol;

}

imageRotator.prototype.setViewport = function()
{
   document.getElementById(_this.viewport).src = _this.getNext();
   if(curslide==0){preslide =this.imageStack.length-1; nextslide=curslide+1;}
   else if(curslide==this.imageStack.length-1){preslide =curslide-1; nextslide=0;}
   else if(curslide!=0&&curslide!=this.imageStack.length-1){preslide=curslide-1; nextslide=curslide+1;}
   newcontrol='<div style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:rotator.getSlide('+preslide+');" title="Previous"><<\/a><\/div>&nbsp;';
   for(var x = 0; x < this.imageStack.length; x++){
   		if(x!=curslide){
   			newcontrol = newcontrol + '<div style="font-size:8pt;display:inline;padding-right:2px;padding-left:2px; color:#000000;"><a style="text-decoration:none;" href="javascript:rotator.getSlide('+x+');">'+(x+1)+'<\/a><\/div>&nbsp;';
   		}else{
   			newcontrol = newcontrol + '<div style="font-size:8pt;display:inline;padding-right:2px;padding-left:2px;border: 1px solid #000000; color:red;">'+(x+1)+'<\/div>&nbsp;';
   		}
   }
   if (showstatus){
		newcontrol=newcontrol +'<div style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:rotator.getSlide('+nextslide+');" title="Next">><\/a><\/div>&nbsp;<div id="startstop" style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:DoclearInterval(slideshow);">pause<\/a><\/div>&nbsp;';
   }else{
        newcontrol=newcontrol +'<div style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:rotator.getSlide('+nextslide+');" title="Next">><\/a><\/div>&nbsp;<div id="startstop" style="display:inline;padding:2px; color:#000000;font-size:8pt;"><a style="text-decoration:none;" href="javascript:rotator.start();">start<\/a><\/div>&nbsp;';
   }
   document.getElementById(_this.controller).innerHTML = newcontrol;
   curslide += +1;
}

imageRotator.prototype.start = function()
{
   this.setViewport();
   slideshow = setInterval(function() { _this.setViewport() }, _this.offset);
   showstatus= true;
   document.getElementById('startstop').innerHTML = '<a style="text-decoration:none;" href="javascript:DoclearInterval(slideshow);" title="Pause">pause<\/a>';
}
imageRotator.prototype.stop = function()
{
   //this.setViewport();
   clearInterval(slideshow);
   
}

imageRotator.prototype.add = function(imageName)
{
   this.imageStack.push(imageName);
}
