/************************************************
*   scrollerMoo v.0                             *
*   Http: WwW.developer.ps/moo/scrollermoo      *
*   Dirar Abu Kteish dirar@zanstudio.com        *
*   The code was inspired from jd.gallery.js    *
*    and jd.gallery.css. WebSite:               *
*    smoothgallery.jondesign.net                *
/***********************************************/



var scrollerMoo = new Class({
    initialize: function(element, options) {
		
		this.setOptions({
			steps: 2, 
			wrapperClass: 'div.scrollerMooWrapper',
			scrollerItemSelector: 'div.scrollerMooItem'			
	    }, options);
	    this.currentPos = 0;
	    this.scrollerItems = null;
	    this.scrollerElement = element;
	    this.wrapperDiv = element.getElement(this.options.wrapperClass);

		// specifique projet : recup du nom de la rubrique 
		this.style_bouton = this.wrapperDiv.getProperty('title');
		
	    this.scrollEff = new Fx.Scroll(this.wrapperDiv, {wait: false,duration: 600,
                                        offset: {'x': -4, 'y': 0},
                                        transition: Fx.Transitions.Quad.easeInOut
                        });
		
	
		
	    this.initScrollerMoo();
	    
	},
	initScrollerMoo: function() {
	    var ele = this.scrollerElement;
		var options = this.options;
		this.scrollerItems = this.wrapperDiv.getElements(options.scrollerItemSelector);

		if (this.scrollerItems.length > options.steps)
		{
			var bouton_gauche = new Element('a').addClass('left').addEvent(
				'click',function(){this.scrollToItem(-1);}.bind(this)).injectBefore(this.wrapperDiv);
			var bouton_droite = new Element('a').addClass('right').addEvent(
				'click',function(){this.scrollToItem(1);}.bind(this)).injectAfter(this.wrapperDiv);
			
			// specifique projet : modifier image de bouton
			bouton_gauche.setStyle('background-image', 'url(images/' + this.style_bouton + '-galerie-btn-gauche.jpg)');
			bouton_droite.setStyle('background-image', 'url(images/' + this.style_bouton + '-galerie-btn-droite.jpg)');
			
		}		
	},
	scrollToItem: function(dir) {
		
        var move = dir * this.options.steps;
        var index = (this.scrollerItems[this.currentPos+move]) ? this.currentPos+move : ((this.currentPos+move) > 0) ? this.scrollerItems.length-1 : 0;
        
        if(((index + 1) >= this.scrollerItems.length) && (index % this.options.steps) != 0){return;}
		//alert(this.scrollerItems[index].getProperty('id'))
		//this.scrollEff.toElement(this.scrollerItems[index]);

		//var positionCible = this.scrollerItems[index].getPosition().x;
		//var positionCible = findPos(this.scrollerItems[index])[0];
		
		//calcul largeur du bloc
		var largeur_bloc = this.scrollerItems[index].getSize().x;
		var positionCible = index * (largeur_bloc + 1);

		//this.scrollEff.start(this.scrollerItems[index],0);
		this.scrollEff.start(positionCible,0)
		
        this.currentPos = index;       
	}
	
});
scrollerMoo.implement(new Options);



function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}
