window.addEvent('domready', function() {
									 
	var slideTimer = 9000;  //time between slides... 1000 = 1 Second
	var transitionTime = 1800; //Slide Time... 1000 = 1 Second
	var items = $$('.feat_block');  //Get the array of divs
	var numItems = items.length; // count the number of banners
	var prevFeat = $('prevbtn');
	var nextFeat = $('nextbtn');
	var featNum = 0;  //first Slide number created
	var isPaused = 0;
	var sliding = 0;
	
	if($('scrollBlock') && numItems > 1){
		
		// inject the loader while banners sort themselves
		var banLoader = '<img src="'+siteAddr+'_img/front_end/icons/loader.gif" />';
		var balLoadDiv = new Element('div', {'id': 'banload'});
		balLoadDiv.set('html', banLoader);
		balLoadDiv.inject($('screen'), 'before');
		
		
		//Setup positions
		items.each(function(element, index) {
			
			if(index == 0){
				element.removeClass('first_item');
				element.setStyle('left', "0");
			}
			else{
				element.setStyle('left', "742px");
			}
		
		});
		
		//get rid of loader once positioning is sorted
		balLoadDiv.dispose();
				
		//Slider
		var slideForward = function(){ 
				//get item to slide out
			var curItem = items[featNum];  
			sliding = 1;
			if(featNum < (numItems - 1)){
				featNum++; 
			}
			else{
				featNum = 0;
			}		
		
			var newItem = items[featNum];
					
			var item_in = new Fx.Morph(newItem, {
				     duration: transitionTime, 
				     transition: Fx.Transitions.Quad.easeInOut, 
				     wait:false
			});
			
			var item_out = new Fx.Morph(curItem, {
				     duration: transitionTime, 
				     transition: Fx.Transitions.Quad.easeInOut, 
				     wait:false
			});
			
			//beginning value
			item_in.start({
				'left': [742, 0]
			});
			
			item_out.start({
				'left': '-742'
			});
			//pause the slider
			item_in.addEvent('complete', function(){
				sliding = 0;
			});
			item_out.addEvent('complete', function(){
				sliding = 0;
			});
			
		};
			
			
		var slideBackward = function(){ 
			var curItem = items[featNum];  
			if(featNum > 0){
				featNum--; 
			}
			else{
				featNum = (numItems - 1);
			}
			
			var newItem = items[featNum];
			
			
			var item_in = new Fx.Morph(newItem, {
				 duration: transitionTime, 
				 transition: Fx.Transitions.Quad.easeInOut, 
				 wait:false
			});
			
			var item_out = new Fx.Morph(curItem, {
				 duration: transitionTime, 
				 transition: Fx.Transitions.Quad.easeInOut, 
				 wait:false
			});
	
			item_in.start({
				'left': [-742, 0]
			});
			
			//no beginning values needed
			item_out.start({
				'left': '742'
			});
			//pause the slider
			item_in.addEvent('complete', function(){
				sliding = 0;
			});
			item_out.addEvent('complete', function(){
				sliding = 0;
			});
			
			
		};
			
			
		//call the slider function periodically
		var theTimer = slideForward.periodical(slideTimer, this); 
		
		//scroll buttons
		if(nextFeat){
			nextFeat.addEvent('click', function(e){
				e.stop();
				if(sliding == 0){
					sliding = 1;
					if(isPaused == 0){
						$clear(theTimer);
						theTimer = slideForward.periodical(slideTimer);
					}
					slideForward();
				}
			});
			
			prevFeat.addEvent('click', function(e){
				e.stop();
				if(sliding == 0){
					sliding = 1;
					if(isPaused == 0){
						$clear(theTimer);
						theTimer = slideForward.periodical(slideTimer);
					}				     
					slideBackward();
				}
			});
		}
	}
		
});
