/*********************************************************************************************************
 Drew Slide - version 1.0
 by Andrew St. Denis
 
 License: Do what you want with this but keep this blurb intact
 ********************************************************************************************************/ 
var Slider=function()
{
	var me=this;
	this.speed=50;
	this.container=null;
	this.width=468;
	this.height=60;
	this.inview=3000;
	this.slides=[];
	this.slideCount=1;
	
	this.T=null;
		
	this.addSlide=function(content,options)
	{
		this.slides.push([content,options]);
	}


	this.createDIV=function(content)
	{
		var newDIV=document.createElement('div');
		newDIV.innerHTML=content;
		newDIV.style.styleFloat='left';
		newDIV.style.cssFloat='left';
		newDIV.style.width=this.width+'px';
		newDIV.style.height=this.height+'px';
		newDIV.style.overflow='hidden';
		newDIV.style.margin='0px';
		newDIV.style.padding='0px';
		return newDIV;
	}

	this.start=function()
	{
		// lockdown the user specified container
		var cont=document.getElementById(this.container);
		cont.style.width=this.width+'px';
		cont.style.height=this.height+'px';
		cont.style.padding='0px';
		cont.style.margin='0px';
		cont.style.overflow='hidden';
		
		// create an internal container for slides
		var newCont=this.createDIV('');
		newCont.style.width=this.width*2 + 'px';
		newCont.style.height=this.height+'px';
		
		// add first slide
		var newSlide=this.createDIV(this.slides[0][0]);
		if (this.slides[0][1] && this.slides[0][1].url)
		{
			newSlide.url=this.slides[0][1].url;
			newSlide.onclick=function(){ document.location.href=this.url };
			newSlide.style.cursor='pointer';
		}
		newCont.appendChild(newSlide);
		
		// add second slide
		newCont.appendChild(this.createDIV(this.slides[1][0]));
		cont.appendChild(newCont);
	
		// start sliding
		var t=(this.slides[0][1] && this.slides[0][1]['inview']) ? this.slides[0][1]['inview'] : this.inview;
		this.T=setTimeout(function(){ me.slideLeft(); }, t);
	}
	
	this.slideLeft=function()
	{
		var cont=document.getElementById(this.container).childNodes[0];

		// continue sliding or start the next slide		
		var curLeft=cont.style.marginLeft.replace(/\D+/g,'')*-1;
		if (curLeft*-1 < this.width)
		{
			cont.style.marginLeft=(Math.abs(curLeft-this.speed) < this.width ? curLeft-this.speed : this.width*-1)+'px';
			this.T=setTimeout(function(){ me.slideLeft(); }, 50);
		}
		else
		{
			// get timeout for current slide
			var t=(this.slides[this.slideCount][1] && this.slides[this.slideCount][1]['inview']) ? this.slides[this.slideCount][1]['inview'] : this.inview;

			// pop off the old div and add new
			this.slideCount=++this.slideCount < this.slides.length ? this.slideCount : 0;
			cont.removeChild(cont.childNodes[0]);
			var newSlide=this.createDIV(this.slides[this.slideCount][0]);
			
			// add url
			if (this.slides[this.slideCount][1] && this.slides[this.slideCount][1].url)
			{
				newSlide.url=this.slides[this.slideCount][1].url;
				newSlide.onclick=function(){ document.location.href=this.url };
				newSlide.style.cursor='pointer';
			}				
			
			cont.appendChild(newSlide);
			cont.style.marginLeft='0px';
			
			this.T=setTimeout(function(){ me.slideLeft(); }, t);
		}
	}


		
}
