/**
 * @author Torsten Podraza
 */

function chkArrows(){
	var content=$('#content');
	var up=$('#up');
	var down=$('#down');
	var bottom=content.prop('scrollHeight');
	var height=content.height();
	var pos=content.scrollTop();
	if (pos==bottom-height){down.css('background-image','url(img/down_inactive.png)');
	}else{	
		if(bottom>height)down.css('background-image','url(img/down.png)'); else down.css('background-image','url(img/down_inactive.png)');
	}
	if(pos>0)up.css('background-image','url(img/up.png)');else up.css('background-image','url(img/up_inactive.png)');

};
$( function() {
	var main = function(){
		var langSelected=0;
		var language=$('#language');
		var langLi=$('#language li');
		var win=$(window);
		var content=$('#content');
		var intro=$('#intro');
		var menu=$('#menu');
		var menu1=$('#m1');
		var menu2=$('#m2');
		var menu3=$('#m3');
		var up=$('#up');
		var down=$('#down');
		var scrollAreaHeight=20;
		var scrollTime=8;
		var scrollWheelTarget=0;
		var scrollWheelDelta=0;
		
		
		function setLanguage(){
			switch(langSelected){
				case 0 : 
						 $('.eng').css('display','none');
						 $('.dt').css('display','block');
						 break;
				case 1 : $('.dt').css('display','none');
						 $('.eng').css('display','block');
						 break;		 
			}
		};
		
		function resize() {
			//resize backgroundimage
			var scale=1;
			var winHeight=win.height();
			var winWidth=win.width();
			var bHeight=winHeight;
			var bWidth=winWidth;
			
			
			
			winWidth=winWidth<650?650:winWidth;
			winHeight=winHeight<340?340:winHeight;			
			var a1=winHeight/750;
			var a2=winWidth/1440;
			var ratio=750/1440;
			if(a2<a1) {
				
				winHeight=a2*750;
				bWidth=bHeight/ratio;
				
				scale=a2;
			} else {
				
				winWidth=a1*1440;
				
				bHeight=bWidth*ratio;
				scale=a1;
			};
			
			$('#bgImg').css('width',bWidth).css('height',bHeight);
			$('.bI').css('width',bWidth).css('height',bHeight);
			var scale2=scale;
			//resize div
			var bodyFSize 		= 12.5*scale2;
			$('body').css('font-size',1);
			var minFSize=parseInt($('body').css('font-size'),10);
			if(bodyFSize<minFSize){
				scale2= minFSize/12.5;
				bodyFSize 		= 12.5*scale2;
			};
			$('body').css('font-size',bodyFSize);			
			
			//logo
			/*var logoWidth 		= 245 * scale;
			var logoHeight 		=  36 * scale;
			var logoTop 		=  55 * scale;*/
			var logoLeft 		= 135 * scale;
			/*$("object#lo")	.css('width', logoWidth)
			.css('height', logoHeight);
			$("#logo")		.css('top', logoTop)
			.css('left', logoLeft)
			.css('width', logoWidth)
			.css('height', logoHeight);*/
			//intro & content
			var contentTop		= 176*scale;
			var introFSize		=  34*scale;
			var introFMargin	=   8*scale;
			var contentFSize	=  12*scale2;
			var contentLeft		= 460*scale2;
			var contentWidth	= 775*scale;
			var arrWidth		= 28+2*contentFSize;
			var arrHeight		= scrollAreaHeight;
			var contentHeight	= winHeight-contentTop-2*contentFSize;
			var contPPadding  	=  24*scale;
			var contPMargin		=	3*scale;
			
			$('#intro p').css({
				'margin-bottom':introFMargin,
				'font-size':introFSize
				});
			intro.css({
				'top':contentTop,
				'left':contentLeft
			});
			content.css({
				'top':contentTop,
				'left':contentLeft,
				'font-size':contentFSize,
				'line-height':'1.5' ,
				'width':contentWidth,
				'height':contentHeight
			});
			
			$('.arrPos').css({
				'left':contentLeft+contentWidth,
				'font-size':contentFSize,
				'width':arrWidth,
				'height':arrHeight
			});
	
			//menu
			
			var menuPadding		=	8*scale2;
			var m1Size			=  88*scale2-2*menuPadding;
			var m2Width			= 183*scale2-2*menuPadding;
			var menuWidth		= 283*scale2;
			var menuFMargin		=   5*scale2;
			var menuFSize		=  12.5*scale2;
			
			language.css({
				'font-size':contentFSize,
				'top':contentTop-2*contentFSize,
			});
			langLi.css({
				'margin-left':menuFMargin,
				'padding-left':contPMargin,
				'padding-right':contPMargin
			});
			language.css({
				'left':contentLeft+contentWidth-language.width()
			});
			up.css({'top':contentTop});
			down.css({'top':contentTop+arrHeight+contentFSize});
			$('#content p').css({
				'padding-left':contPPadding,
				'padding-right':contPPadding,
				'margin-top':contPMargin
			});
			menu.css({
				'top':contentTop,
				'left':logoLeft,
				'width':menuWidth,
				'font-size':menuFSize
			});
			menu1.css({
				'width':m1Size,
				'padding':menuPadding
			});
			menu2.css({
				'width':m2Width,
				'right':0,
				'padding':menuPadding
			});
			menu3.css({
				'width':m2Width,
				'right':0,
				'padding':menuPadding
			});
			$('#menu li').css('margin-bottom',menuFMargin);
			content.trigger('mousemove');
		};
		win.bind("resize", function() {
			resize();
		});
		
		menu3.load('cont/menu/workshops.htm', function() {
			var m3Li=$('#m3 li');
			m3Li.click( function() {
				m3Li.removeClass('selected');
				$(this).addClass('selected');
				
				var n=($(this).index()+1)+'.';
				var url=menu3.data(n);
				$('#content').load(url, function() {
					up.fadeIn(300);
				    down.fadeIn(300);
					setLanguage();
					content.scrollTop(0).fadeIn(300);
					win.trigger("resize");
				});
			});
		});	
		menu2.load('cont/menu/projekte.htm', function() {
			var m2Li=$('#m2 li');
			m2Li.click( function() {
				m2Li.removeClass('selected');
				$(this).addClass('selected');
				var n=($(this).index()+1)+'.';
				var url=menu2.data(n);
				content.load(url, function() {
					setLanguage();
					up.fadeIn(300);
				    down.fadeIn(300);
					content.scrollTop(0).fadeIn(300);
					win.trigger("resize");
				});
			});
		});
		menu1.load('cont/menu/menu.htm', function() {
			var m1Li=$('#m1 li');
			m1Li.filter(':first').addClass('selected');
			m1Li.click( function() {
				//initialize content div and scrolling
				if(intro.css('display')!='none') {
					intro.animate({
						'opacity':'0'
					},500, function() {
						intro.css('display','none');
						content.overscroll({showThumbs:false}).css('position','absolute');
						up.hover( function(){
							clearInterval(interval);
							up.css('background-image','url(img/up_hover.png)');
							down.css('background-image','url(img/down.png)');
							var time=content.scrollTop()*scrollTime;
							content.stop().animate({
									scrollTop:0
								},time,'linear');
						},function(){
							interval = setInterval('chkArrows()',50);
							content.stop();
						});
						down.hover( function(){
							clearInterval(interval);
							down.css('background-image','url(img/down_hover.png)');
							up.css('background-image','url(img/up.png)');
							bottom=content.prop('scrollHeight');
							height=content.height();
							var bot=bottom-height;
							var time=(bot-content.scrollTop())*scrollTime;
							content.stop().animate({
									scrollTop:bot
								},time,'linear');
						},function(){
							interval = setInterval('chkArrows()',50);
							content.stop();
						});
					});
				};
	
				m1Li.removeClass('selected');
				$(this).addClass('selected');
				switch($(this).index()) {
					case 0:
						$('body').load('body.htm',function(){
							main();
						});
					//Profil
					case 1:
						$('#bgImg div:last').fadeIn('slow');
						menu2.fadeOut(300);
						menu3.fadeOut(300);
						up.fadeOut(300);
						down.fadeOut(300);
						content.empty().load('cont/profil.htm', function() {
							setLanguage();
							content.scrollTop(0).trigger('mousemove').fadeIn(300);
							win.trigger("resize");
						});
						break;
					//Projekte
					case 2:
						$('#bgImg div:last').fadeOut('slow', function() {
							$(this).css('display','none');
						});
						menu2.fadeIn(300);
						menu3.fadeOut(300);
						content.fadeOut(300).empty();
						up.fadeOut(300);
						down.fadeOut(300);
						$('#m2 li').removeClass('selected');
						
						break;
					//Workshops
					case 3:
						$('#bgImg div:last').fadeOut('slow', function() {
							$(this).css('display','none');
						});
						menu3.fadeIn(300);
						menu2.fadeOut(300);
						up.fadeOut(300);
						down.fadeOut(300);
						content.empty().load('cont/workshops_text.htm', function() {
							setLanguage();
							content.scrollTop(0).trigger('mousemove').fadeIn(300);
							win.trigger("resize");		
						});
						$('#m3 li').removeClass('selected');
						break;
					//Kontakt
					case 4:
						$('#bgImg div:last').fadeIn('slow');
						menu2.fadeOut(300);
						menu3.fadeOut(300);
						up.fadeOut(300);
						down.fadeOut(300);
						content.empty().load('cont/kontakt.htm', function() {
							setLanguage();
							content.scrollTop(0).trigger('mousemove').fadeIn(300);
							win.trigger("resize");
						});
						break;
					};
			});
		});
		intro.load('cont/introtext.htm', function() {
			setLanguage();
			intro.fadeIn(500);
			win.trigger("resize");
		});
		langLi.click(function(){
			langLi.removeClass('selected');
			$(this).addClass('selected');
			//change language for menus
			var m1sel = menu1.children().children().filter('.selected').index();
			var m2sel = menu2.children().children().filter('.selected').index();
			var m3sel = menu3.children().children().filter('.selected').index();
			$('#m1 li').removeClass('selected');
			$('#m2 li').removeClass('selected');
			$('#m3 li').removeClass('selected');
			
			langSelected=$(this).index();
			setLanguage();
			if (m1sel >=0) {
				$('#m1 li').filter(':visible').eq(m1sel).addClass('selected');
			};
			if (m2sel >=0) {
				$('#m2 li').filter(':visible').eq(m2sel).addClass('selected');
			};
			if (m3sel >=0) {
				$('#m3 li').filter(':visible').eq(m3sel).addClass('selected');
			};
		});
		langLi.eq(0).addClass('selected');
		setLanguage();

		var interval = setInterval('chkArrows()',50);
	}
	$('body').load('body.htm',function(){
		main();
		$('body').css('display','block');
	});
});
