window.addEvent('domready', function() {
	if(document.getElement('.heroes')) {
		var btLeft = document.getElement('.hero-arrow-left');
    	var btRight = document.getElement('.hero-arrow-right');
		var headline = document.getElement('.hero-content-teaser h1');
		var introtext = document.getElement('.hero-content-teaser p');
		var slides = document.getElements('.heroes img').each( function(slide, i) {
			if(i==0) {
				headline.set('html', slide.get('data-pagetitle'));
				introtext.set('html', slide.get('data-introtext'));
				slide.set('src', slide.get('rel'));
			}
		});
		if(slides.length < 2){
			new Elements([btLeft, btRight]).fade('hide');
		}
		//slides.getLast().set('src', slides.getLast().get('rel'));

		var textFx = new Fx.Elements([headline, introtext],{'link': 'chain' });
		var changeHeroText = function(headlineText, introtextText) {
			textFx.start({
				'0': {'opacity': 0},
				'1': {'opacity': 0}
			}).chain( function() {
				headline.set('html', headlineText);
				introtext.set('html', introtextText);
				this.callChain();
			}).start({
				'0': {'opacity': 1},
				'1': {'opacity': 1}
			});
		};
		var direction = 'next';
		
		var slideshow = new SlideShow(document.getElement('.heroes'), {
			transition: 'fade',
			duration: 1500,
	        autoplay: (slides.length > 1 ? true:false),
	        delay: 10000,			
			onShow: function(obj) {
				var newHeroData = null;
				if(direction == 'prev'){	
					newHeroData = this.previousSlide().getFirst();
				}
				else{
					newHeroData = this.nextSlide().getFirst();
				}
				changeHeroText(newHeroData.get('alt'), newHeroData.get('data-introtext'));
				direction = 'next';
			},
			onShowComplete: function() {
	            var img = this.nextSlide().getFirst();
	            
				if(!img.get('src')){
					img.set('src', img.get('rel'));
				}
			}			
		}).fireEvent('showComplete');
		
		btLeft.addEvent('click', function(e) {
			(e && e.stop());
			var curPic = slideshow.previousSlide().getFirst();
			direction = 'prev';
			if(!curPic.get('src')) {
				curPic.addEvent('load', function() {
					slideshow.showPrevious();
					this.removeEvent('load', arguments.callee);
				}).set('src', curPic.get('rel'));
			}
			else {
				slideshow.showPrevious();
			}
		});
		btRight.addEvent('click', function(e){
			(e && e.stop());
			var curPic = slideshow.nextSlide().getFirst();
			if(!curPic.get('src')) {
				curPic.addEvent('load', function() {
					slideshow.showNext();
					this.removeEvent('load', arguments.callee);
				}).set('src', curPic.get('rel'));
			}
			else {
				slideshow.showNext();
			}
		});
	}
});
