var videoplayer = {
	thumbnails: null,
	swfObj: null,
	
	initialize: function() {
		var thumbsHolder = $('videoHolder');
		if (thumbsHolder != null) {
			this.thumbnails = new thumbnails(this, $('leftPointer'), $('rightPointer'));
			var so = new SWFObject(staticRoot + "/images/VidPlayer.swf", "vidplayer", "372", "252", "9", "#ffffff");
			so.addParam("scale", "noscale");
			
			so.addParam("allowScriptAccess", "always");
			so.addParam("allowFullScreen", "true");
			so.addParam("salign", "TL");
			so.addParam("wmode", "opaque");
			
			so.addVariable("allowFullScreen", "true");
			so.addVariable("flv", staticLibraryRoot + "/images/aboutESVideos/ES" + this.thumbnails.getCurrentSelectedVideo() + ".flv");
			so.addVariable("startimage", this.thumbnails.thumbnails[0].src);
			so.addVariable("bgcolor1","000000");
			so.addVariable("bgcolor2","000000");
			so.addVariable("autoplay","1");
			so.addVariable("autoload","1");
			so.addVariable("showstop","1");
			so.addVariable("showvolume","1");
			so.addVariable("buttonovercolor","ff6633");
			so.addVariable("sliderovercolor","ff6633");
			so.addVariable("width","372");
			so.addVariable("height","252");
			so.addVariable("showloading","never");
	
			so.write("div_video");
	
			this.swfObj = so;
			
			if($('div_video').innerHTML=="") {
				$('noFlash').style.display="block";
				$('div_video').style.display="none";
			}
		}
	},
	
	changeVid: function(videoNumber) {
		var so = this.swfObj;
		so.addVariable("flv", staticLibraryRoot + "/images/aboutESVideos/ES" + videoNumber + ".flv");
		so.write("div_video");
	}
};

var thumbnails = Class.create({
	leftPointer: null,
	rightPointer: null,
	thumbnails: null,
	videoplayer: null,
	firstThumb: 0,
	
	initialize: function(videoplayer, leftPointer, rightPointer) {
		this.videoplayer = videoplayer;
		this.leftPointer = leftPointer;
		this.rightPointer = rightPointer;
		var thumbsHolder = $('videoHolder');
		if (thumbsHolder != null) {
			this.thumbnails = $$('#videoHolder img.thumbnail');
			for (var i = 0; i < this.thumbnails.length; i++) {
				var currentNo = '';
				if (i + 1 < 10) {
					currentNo = '0';
				}
				currentNo += i + 1;
				this.thumbnails[i].thumbHandler = this;
				this.thumbnails[i].videoNumber = currentNo;
				this.thumbnails[i].onclick = this.selectVid;
			}
			this.leftPointer.thumbHandler = this;
			this.leftPointer.onclick = this.scrollLeft;
			this.rightPointer.thumbHandler = this;
			this.rightPointer.onclick = this.scrollRight;
			this.changeThumbPosition(0);
		}
	},
	
	selectVid: function() {
		this.thumbHandler.videoplayer.changeVid(this.videoNumber);
	},
	
	scrollLeft: function() {
		this.thumbHandler.changeThumbPosition(this.thumbHandler.firstThumb - 1);
		return false;
	},
	
	scrollRight: function() {
		this.thumbHandler.changeThumbPosition(this.thumbHandler.firstThumb + 1);
		return false;
	},

	changeThumbPosition: function(pos) {
		this.firstThumb = pos;
		for (var i = 0; i < this.thumbnails.length; i++) {
			this.thumbnails[i].up().style.display = 'none';
		}
		for (var i = 0; i < (this.thumbnails.length >= 3 ? 3 : this.thumbnails.length); i++) {
			this.thumbnails[this.firstThumb + i].up().style.display = 'block';
		}
		if (this.firstThumb == 0) {
			this.leftPointer.style.visibility = 'hidden';
		} else {
			this.leftPointer.style.visibility = 'visible';
		}
		if (this.firstThumb == this.thumbnails.length - 3) {
			this.rightPointer.style.visibility = 'hidden';
		} else {
			this.rightPointer.style.visibility = 'visible';
		}
	},
	
	getCurrentSelectedVideo: function() {
		var selected = '';
		if (this.firstThumb + 1 < 10) {
			selected = '0';
		}
		selected += this.firstThumb + 1;
		return selected;
	}
});

document.observe('dom:loaded', function() {
	videoplayer.initialize();
});