//
// Sukuriamas carousel fotkiu perziurai
// Pvz.: new Carousel('carousel', ['img/1.jpg', 'img/2.jpg', 'img/3.jpg']);
//

var Carousel = Class.create({
	
	// Konstruktorius
	initialize: function(container, photos)
	{
		this.container 	= $(container);
		this.viewport 	= $('viewport');
		this.photos		= [];
		
		// Naudojantis fotkiu pavadinimais sukuriamas <img> elementu masyvas
		photos.each(
			function (src, index) {
				this.photos[index] = new Element('img', { 'src': src, title: '' });
			}
		,this);
		
		// Nupaisom fotkes
		this.updateViewport();
		
		// Skrolinimo mygtuku eventai
		Event.observe($('scroll-right'), 'click', function(e){ this.scroll(1); Event.stop(e); }.bind(this), false);
		Event.observe($('scroll-left'), 'click', function(e){ this.scroll(-1); Event.stop(e); }.bind(this), false);
	},
	
	// Skrolinimas
	scroll: function (direction) 
	{
		if (direction > 0) {
			// Perkeliam pirmaji elementa i gala
			this.photos.push(this.photos.shift());
		} else {
			// Perkeliam paskutiniji elementa i prieki
			this.photos.unshift(this.photos.pop());
		}
		
		return this.updateViewport();
	},
	
	// Fotkiu irasymas i #viewport
	updateViewport: function()
	{
		this.viewport.update('');
		
		this.photos.each(
			function (img, index) {
				this.viewport.insert(img);
			}
		,this);
		
		return this;
	}
	
});
