saverStatus = 0;

$(window).addEvent('domready', function() {
	if($('photostream')) {
		photostream_wrapper = $('photostream');
		photostream_container = photostream_wrapper.getElement('.mod_sns');
		item_width = 240;
		resizePhotostream();
		photostream_wrapper.setStyle('overflow-x', 'auto');
		addPhotostreamEvents();
	}
	//var overlayScrollbars = new MooScroll({/*options here*/});
	//overlayScrollbars.mooScrollAreas[0].initSlider();
	if(!$(document.body).hasClass('kontakt')) {
		startTimer();
		
		$(document).addEvent('mousemove', function() {
			if(saverStatus) {
				stopSaver();
			} else {
				resetTimer();
			}
		});
	}
	if($(document.body).hasClass('home')) {
		moosizer = new mooSizer({ bgElement:'bgslideshow' });
	}
	slideshow = false;
	if($(document.body).hasClass('home') && $('bgslideshow') && $('bgslideshow').getElements('img').length > 1) {
		$('bgslideshow').getElement('img').fade('show');
		slideshow = true;
	}
	
	if($('kontakt_minimized') && $('minimize_kontakt')) {
		$('kontakt_minimized').getElement('a').addEvent('click', function(event) {
			event.stop();
			this.setStyle('display', 'none');
			$('main').setStyle('display', 'block');
			$('footer').setStyle('display', 'block');
			$('content').getElement('h1').setStyle('display', 'block');
		});
		$('minimize_kontakt').getElement('a').addEvent('click', function(event) {
			event.stop();
			$('kontakt_minimized').getElement('a').setStyle('display', 'block');
			$('main').setStyle('display', 'none');
			$('footer').setStyle('display', 'none');
			$('content').getElement('h1').setStyle('display', 'none');
		});
	}
	
	// startseite
	/*if($(document.body).hasClass('home')) {
		Slimbox.open('tl_files/100-euro-geschenkt.jpg');
	}*/
	
});

function resizePhotostream() {
	var items = photostream_container.getChildren('.item');
	var container_width = items.length * item_width;
	if(photostream_container.getElement('.pager')) {
		container_width += 110;
	}
	photostream_container.setStyle('width', container_width);
}

function fetchPhotostream(event) {
	event.stop();
	var req = new Request.HTML({
		url: this.get('href'),
		onSuccess: function(responseTree, responseElements, responseHTML, responseJavaScript) {
			photostream_container.set('html', [photostream_container.get('html'), responseHTML]);
			resizePhotostream();
			addPhotostreamEvents();
		}
	});
	this.getParent().destroy();
	req.get();
}

function addPhotostreamEvents() {
	if(photostream_container.getElement('.pager a')) {
		photostream_container.getElement('.pager a').removeEvents('click').addEvent('click', fetchPhotostream);
	}
}

function startTimer() {
	saverTimer = startSaver.delay(60000);
}

function resetTimer() {
	if(typeof(saverTimer) != 'undefined' && $defined(saverTimer)) {
		saverTimer = $clear(saverTimer);
		startTimer();
	}
}

function startSaver() {
	saverStatus = 1;
	$('wrapper').setStyle('display', 'none');
	//$('background_overlay').setStyle('display', 'none');
	if(slideshow) {
		slideshowTimer = ce_slideshow($('bgslideshow'), 'img', 4000);
	}
}

function stopSaver() {
	saverStatus = 0;
	$('wrapper').setStyle('display', 'block');
	//$('background_overlay').setStyle('display', 'block');
	if(slideshow) {
		slideshowTimer = $clear(slideshowTimer);
	}
	startTimer();
}

function ce_slideshow(container, type, delay) {
	var length = length ? length : 4000 ;
	var elements = container.getElements(type);
	var elementcount = elements.length - 1;
	var visible = 0;
	elements.fade('hide');
	elements[visible].fade('show');
	
	var fader = (function(){
		elements[visible].fade(0);
		if(visible == elementcount) {
			visible = 0;
		} else {
			visible = visible + 1;
		}
		elements[visible].fade(1);
	}).periodical(delay);
	
	return fader;
}
