var Site = {
	
	start: function(){
		
		Site.smoothScroll();
		
		if($('foto-frame')) Site.fotoBook();
		
		if ($('home')) {
			Site.menuEffect();
			Site.toolTipsHome();
		}else{
			Site.toolTips();
		}
	},
	
	menuEffect: function() {
		
		var timer = 0;
		var colfxs = [];
		var menuItems = $$('#menu li a');
		
		menuItems.each(function(el, i){
			
			var elem = el.getParent();
			
			colfxs[i] = new Fx.Styles(elem, {
				duration: 2000,
				transition: Fx.Transitions.cubicOut,
				fps: 60,
				wait: false
			});
		
			el.addEvent('mouseover', function(){
				colfxs[i].start({
					'background-color': '#444'
				});
			});
			
			el.addEvent('mouseout', function(){
				colfxs[i].start({
					'background-color': '#000'
				});
			});

		});

	},
	
	Accordion: function() {
	
		var accordionTogglers = document.getElementsByClassName('accToggler');
		
		accordionTogglers.each(function(toggler){
			toggler.origColor = toggler.getStyle('background-color');
			toggler.fx = new Fx.Style(toggler, 'background-color');
		});
		
		var accordionContents = document.getElementsByClassName('accContent');
		
		var accordion = new Fx.Accordion(accordionTogglers, accordionContents,{
			onActive: function(toggler){
				toggler.fx.start('#6899CE');
			},
			onBackground: function(toggler){
				toggler.setStyle('background-color', toggler.origColor);
			}
		});
	
	},
	
	menuSlider: function(){

		var slidefxs = [];
		var cHeights = [];
		var buttons = $$('div.slider-btn');
		var contents = $$('ul.slider-content');
		
		contents.each(function(el, i){
		
			if(!($('deutsch'))) el.setStyle('height','0px');
			
			slidefxs[i] = new Fx.Style(el,'height',{duration: 500});
			
			buttons[i].addEvent('click',function(){

				if(el.getStyle('height').toInt() > 0){
					slidefxs[i].start(0);
				}else{
					slidefxs[i].start(cHeights[i]);
				}
				
				buttons[i].toggleClass('button_');
				
				return false;
				
			});
			
			buttons[i].addEvent('mouseover', function(){
				buttons[i].setStyle('background-position','top right');
			});
			
			buttons[i].addEvent('mouseout', function(){
				buttons[i].setStyle('background-position','center right');
			});
			
			el.setStyle('display','block');
			cHeights[i] = el.getSize().scrollSize.y;
		
		});
	},
	
	toolTipsHome: function(){
		
		var ras = [];
		$$('a.toolTipElement').each(function(ra){
			if (ra.getAttribute('title')) ras.push(ra);
		});
		
		new Tips(ras, {
			maxTitleChars: 22,
			onShow: function(rtip){
				rtip.effects({
					duration: 200,
					transition: Fx.Transitions.quadInOut,
					fps: 60
				}).custom({
						'opacity': [0, 0.95]
					});
			},
			onHide: function(rtip) {
				rtip.effects({
					duration: 100,
					transition: Fx.Transitions.quadInOut,
					fps: 60
				}).custom({
						'opacity': [0.95, 0]
					});
			},
			offsets: {'x': -30, 'y': 25},
			showDelay: 1200,
			className: 'home'
		});
		
	},
	
	toolTips: function(){
		
		var ras = [];
		$$('a.toolTipElement').each(function(ra){
			if (ra.getAttribute('title')) ras.push(ra);
		});
		
		new Tips(ras, {
			maxTitleChars: 22,
			onShow: function(rtip){
				rtip.effects({
					duration: 200,
					transition: Fx.Transitions.quadInOut,
					fps: 60
				}).custom({
						'opacity': [0, 0.8]
					});
			},
			onHide: function(rtip) {
				rtip.effects({
					duration: 100,
					transition: Fx.Transitions.quadInOut,
					fps: 60
				}).custom({
						'opacity': [0.8, 0]
					});
			},
			offsets: {'x': -10, 'y': 25},
			showDelay: 1200,
			className: 'page'
		});
		
	},
	
	fotoBook: function() {
		
		var timer = 0;
		var opFxs = [];
		var fotoSrcs = [];
		var fotoItems = $$('a.foto-item');
		var fotoFrame = $('foto-frame');
		
		var loader = new Element('div').addClass('indicator').injectBefore('foto-frame');
		var loaderFx = new Fx.Style(loader, 'opacity',{
			duration: 1000,
			transition: Fx.Transitions.sineInOut,
			onComplete: function(){
				loader.remove();
			}
		});
		
		fotoItems.each(function(el, i){
			
			var elem = el.getFirst();
			fotoSrcs[i] = el.getProperty('href');
			el.setProperty('href','#');
			
			opFxs[i] = new Fx.Styles(elem, {
				duration: 1000,
				transition: Fx.Transitions.cubicOut,
				fps: 60,
				wait: false
			});
		
			el.addEvent('mouseover', function(){
				opFxs[i].start({
					'opacity': '0.5'
				});
			});
			
			el.addEvent('mouseout', function(){
				opFxs[i].start({
					'opacity': '1.0'
				});
			});

			el.addEvent('click', function(){
				fotoFrame.setProperty('src', fotoSrcs[i]); 
			});

		});
		
		var fotos =  new Asset.images(fotoSrcs, {
			onProgress: function(){
				loader.addClass('indicator-loading');
			},
			onComplete: function(){
				loaderFx.start(1,0);
			}
		});

	},
	
	smoothScroll: function(){
		
		$$('a.smooth').each(function(ss){
			ss.Scroll = new SmoothScroll({
				duration: 800,
				transition: Fx.Transitions.quadOut,
				fps: 60
			});
		});
	}
	
};


window.addEvent('domready', Site.start);