var Slider = new Class({
	Implements: Options,
	options: {
		sliderContainer: '.AC-SliderMain',
		slider: '.AC-Slider',
		slides: '.AC-Slide',
		sliderPrev: '.AC-SliderPrev',            
		sliderNext: '.AC-SliderNext',
		sliderLoop: true,
		transition: Fx.Transitions.Sine.easeInOut,
		transitionDuration: 900
	},
	initialize: function(options) {
		this.setOptions(options);
		if($$(this.options.slides).length > 0){
			slidesPerSet = ($$(this.options.slider)[0].getParent().getSize().x / $$(this.options.slides)[0].getScrollSize().x).toInt();
			$$(this.options.slider).set('styles', { 'width': ($$(this.options.slides)[0].getScrollSize().x) * $$(this.options.slides).length });	
			$$(this.options.sliderPrev)[0].addEvent('click',this.scrollLeft.bind(this));
			$$(this.options.sliderNext)[0].addEvent('click',this.scrollRight.bind(this));
			$$(this.options.sliderPrev)[0].addClass('disabled');
			if($$(this.options.slides).length <= slidesPerSet) { $$(this.options.sliderNext)[0].addClass('disabled'); }
			counter = 0;
			slideFx = new Fx.Tween($$(this.options.slider)[0], {duration:this.options.transitionDuration, transition:this.options.transition});
		}
	},
	scrollLeft: function(){
		slideFx.cancel();
		if(counter != 0) {
			counter--;
			$$(this.options.sliderNext)[0].removeClass('disabled');
		}
		if(counter == 0) {
			$$(this.options.sliderPrev)[0].addClass('disabled');
		}
		
		slideFx.start('margin-left', -(($$(this.options.slides)[0].getScrollSize().x * slidesPerSet) * counter));
		if(this.options.showNav == true){ this.setNav() }
	},
	scrollRight: function(){
		slideFx.cancel();
		if(counter < (($$(this.options.slides).length) / slidesPerSet) - 1) {
			counter++;
			$$(this.options.sliderPrev)[0].removeClass('disabled');
		}
		if (counter >= (($$(this.options.slides).length) / slidesPerSet) - 1) {
			$$(this.options.sliderNext)[0].addClass('disabled');
		}
		slideFx.start('margin-left', -(($$(this.options.slides)[0].getScrollSize().x * slidesPerSet) * counter));
		if(this.options.showNav == true){ this.setNav() }
    }        
});









