$(document).ready(function(){
	$("#more_button").click(function(){
		one_select.toggleMenu();
	});
	$("#more_button").focus(function(){
		$(this).blur();
	});
	$("#main_container_left_bgs a").focus(function(){
		$(this).blur();
	});	
	
	$("a.fancybox").fancybox({
		'transitionIn'	:	'elastic',
		'transitionOut'	:	'elastic',
		'speedIn'		:	300, 
		'speedOut'		:	200, 
		'overlayShow'	:	true,
		'overlayColor'	:	"#111"
	});
});

function dd(s){
	if(!$("body #dd_debug").length){
		$("body").append("<div id='dd_debug'></div>");
		
		$("body #dd_debug").css({
			"position":"absolute",
			"top":"10px",
			"left":"10px",
			"background-color":"#222",
			"color":"#ccc"
		});
	}
	
	$("body #dd_debug").html(s);
}

function initForm(formClass, onSuccess, onError){ // formId nicht formClass
	
	function checkItrE(e){
		var error = false;
		var type = e.html();
		type = explode("|",type);
		
		var cont = e.prev().attr("value");
		cont = $.trim(cont);
		
		switch(type[0]){
			case "text":{
				if(cont == ""){
					error = true;
				}
			}break;
			case "email":{
				if(!checkEmail(cont)){
					error = true;
				}
			}break;
			case "telefon":{
				if(cont.match(/[^\d |\/+-]+/) || cont == ""){
					error = true;
				}
			}break;
		}
		
		if(error){
			return type[1];
		}else{
			return false;
		}
	}
	
	$("#"+formClass+" input, #"+formClass+" textarea").bind("keyup blur focus mouseout", function(){
		var $this = $(this);
		if($this.next().hasClass("pflichtfeld")){
			if(checkItrE($this.next()) === false){
				$this.next().stop().animate({"opacity" : 0});
			}else{
				$this.next().stop().animate({"opacity" : 0.4});
			}
		}
	});
	
	if(typeof onError != "function"){
		onError = function(){};
	}
	if(typeof onSuccess != "function"){
		onSuccess = function(){};
	}
		
	$("#"+formClass).submit(function(event){
		
		var error = new Array();
		
		$("#"+formClass+" .pflichtfeld").each(function(){
			if(eText = checkItrE($(this))){
				error.push(eText);
				$(this).animate({"opacity" : 1},250).animate({"opacity" : 0.3},250).animate({"opacity" : 1},250).animate({"opacity" : 0.3},250).animate({"opacity" : 1},250).animate({"opacity" : 0.4},250);
			}
		});
		
		if(error.length){
			// error
			onError(error);
			//$("#"+formClass+" input, #"+formClass+" textarea, #"+formClass+" button").attr("disabled", false);
		}else{
			// ok
			$("#"+formClass+" input, #"+formClass+" textarea, #"+formClass+" button").attr("disabled", true).blur();
			$("#"+formClass+" .loading_show img").fadeIn();
			
			onSuccess();
		}
		
		event.preventDefault();
	});
}

function checkEmail(email) {
  var strReg = "^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$";
  var regex = new RegExp(strReg);
  return(regex.test(email));
}

var one_select = {
	XY: new Array(0,0),
	ms: 25,
	bremse_h: 1,
	bremse_v: 5,
	bg_id: 0,
	heis: new Array(),
	menu_on: false,
	content_on: false,
	vertical_center: true,
	getContentHeight: function(){
		var h = $("#content_height_checker").html($("#content").html()).height();
		$("#content_height_checker").html("");
		return h;
	},
	renewBackground: function(pfad, id){
		
		$("#background_container").css({
			"background-image" : "url(grafiken/image.php?image=/"+pfad+")"
		});
		
		$.ajax({ url: "ajax/ajax.php?do=changeBackground",
			type: "POST",
			data: "pfad="+pfad,
			success: function(data){
				$(".bg_button").removeClass("on");
				$("#bg_"+id).addClass("on");
			}
		});
	},
	/*
	renewXY: function(){
		var ges_h = $("#body").height();
		var ges_w = $("#body").width();
		var con_h = $("#main_container").height();
		var con_w = $("#main_container").width();
		
		
		var soll_left = ges_w/2 - con_w/2;
		var soll_top = 0;
		
		if(one_select.vertical_center) soll_top = ges_h/2 - con_h/2;
		else soll_top = 50;
				
				
		one_select.XY[0] += (soll_left-one_select.XY[0])/one_select.bremse_h;
		one_select.XY[1] += (soll_top-one_select.XY[1])/one_select.bremse_v;
	
		
		$("#main_container").css({"left": one_select.XY[0]+"px"});
		$("#main_container").css({"top": one_select.XY[1]+"px"});
		
		setTimeout("one_select.renewXY();",one_select.ms);
		
		if(ges_h<con_h){
			$("#background").css({"height":ges_h+"px","width":ges_w+"px"});
		}else{
			$("#background").css({"height":ges_h+"px","width":ges_w+"px"});
		}
	},
	openMod: function(mod, eOpenMod){
		//$("#main_menu li").removeClass("on");
		$("#main_menu li img").hide();
		$(eOpenMod).siblings("img").stop().fadeIn();
		$(eOpenMod).parent().addClass("on");
		
		$.get('module/ajax_loader.php?mod='+mod, function(data) {
			$("#main_menu li").removeClass("on");
			$(eOpenMod).parent().addClass("on");
			$("#content").html(data);
			$("#main_menu li img").stop().fadeOut();
			one_select.toggleContentOn();
		});
		
	},
	*/
	toggleContent: function(){
		
	},
	toggleContentOn: function(){
		one_select.vertical_center = false;
		var h = one_select.getContentHeight();
		$("#main_container").css("height","auto");
		
		$("#content").css("margin-top","380px");
		$("#content").css("opacity","0.0");
		$("#content").animate({
			"margin-top":"310px",
			"opacity": "1"
		}, 550);
		
		one_select.content_on = true;
		
		one_select.toggleMenuOn();
	},
	content_klap: function(e){
			
		if(!$(e).parent().hasClass("on")){			
			$("#content h2").removeClass("on");
			$("#content .content_inner").slideUp();
			
			$(e).parent().addClass("on");
			$(e).parent().next(".content_inner").slideDown();
			
			// Stoppe den laufenden Slider
			
			if($(".nivoSlider").length){
				$(".nivoSlider").each(function(){
					$(this).data('nivoslider').stop();
				});
			}

			// Falls Slider vorhanden starte diesen
			if($('#baustein_c'+e.name).length){
				$('#baustein_c'+e.name).nivoSlider({
					effect: "fold",
					controlNav: false,
					directionNav: false,
					pauseTime: 5000
				});
				$('#baustein_c'+e.name).data('nivoslider').start();
			}
		}else{
			$(e).parent().removeClass("on");
			$(e).parent().next(".content_inner").slideUp();			

			if($('#baustein_c'+e.name).length){
				$('#baustein_c'+e.name).data('nivoslider').stop();
			}
		}
		
		/*
		if($(e).parent().hasClass("on")){
			$(e).parent().removeClass("on");
			$(e).parent().next(".content_inner").hide();
		}else{
			$(e).parent().addClass("on");
			$(e).parent().next(".content_inner").show();
		}
		*/
		return false;
	},
	toggleContentOff: function(callback){
		$("#main_menu li").removeClass("on");
		
		$("#content").stop().animate({"height": "0px"}, 550, "easeInOutQuart", function(){
			if(typeof callback != "undefined"){
				$("#main_container").css("height", "300px");
				$(this).hide();
				callback();
			}
		});
		
		$('#distance').animate({'margin-bottom': '-180px'}, 550, "easeInOutQuart");
	
		one_select.content_on = false;		
	},
	toggleMenu: function(){		
		if($('#more_button').hasClass('close_menu')){
			one_select.toggleMenuOff();
		}else{
			one_select.toggleMenuOn();	
		}
	},
	toggleMenuOn: function(){		
		$("#main_container").stop().animate({
			"width":"980px"
		}, 550, "easeInOutQuart", function(){$('#distance').stop().animate({'margin-bottom': '-800px'}, 550, "easeInOutQuart");});

		one_select.menu_on = true;
		
		$("#more_button").removeClass("open_menu");
		$("#more_button").addClass("close_menu");
	},
	toggleMenuOff: function(){
		one_select.toggleContentOff(
			function(){
				$("#main_container").stop().animate({
					"width":"300px"
				}, 550, "easeInOutQuart");
				one_select.menu_on = false;
			$("#more_button").addClass("open_menu");
			$("#more_button").removeClass("close_menu");
				//$("#more_button").html("open menu &raquo;");
			}
		);
	}
};

function d(s){
	if(typeof(console) !== 'undefined') {
		console.log(s);
	}
}

function m_encode(name,stack){
	$.ajax({ url: "ajax/mailencoder.php",
		type: "POST",
		data: "name="+name+"&stack="+stack,
		success: function(e){
			location.href='mailto:'+e;	
		}
	});
}

function footer_klap(){
	if($('#footer_clap').hasClass("on")){
		$('#footer_clap').removeClass("on");
		$('.footer_inner').slideUp();
	}else{
		$('#footer_clap').addClass("on");
		$('.footer_inner').slideDown();
	}
}

function horizontalSlide(page){
	switch(page){
		case 0: $("#ul_container #slide_div_0").stop().animate({"left":"20px"});
				$("#ul_container #slide_div_1").stop().animate({"left":"981px"});
				$("#ul_container #slide_div_2").stop().animate({"left":"981px"});
				$("#ul_container #slide_div_3").stop().animate({"left":"981px"});
				break;
		case 1: $("#ul_container #slide_div_0").stop().animate({"left":"-981px"});
				$("#ul_container #slide_div_1").stop().animate({"left":"20px"});
				$("#ul_container #slide_div_2").stop().animate({"left":"981px"});
				$("#ul_container #slide_div_3").stop().animate({"left":"981px"});
				break;
		case 2: $("#ul_container #slide_div_0").stop().animate({"left":"-981px"});
				$("#ul_container #slide_div_1").stop().animate({"left":"981px"});
				$("#ul_container #slide_div_2").stop().animate({"left":"20px"});
				$("#ul_container #slide_div_3").stop().animate({"left":"981px"});
				break;
		case 3: $("#ul_container #slide_div_0").stop().animate({"left":"-981px"});
				$("#ul_container #slide_div_1").stop().animate({"left":"981px"});
				$("#ul_container #slide_div_2").stop().animate({"left":"981px"});
				$("#ul_container #slide_div_3").stop().animate({"left":"20px"});
				break;
		case 10:$("#ul_container #slide_div_10").stop().animate({"left":"20px"});
				$("#ul_container #slide_div_11").stop().animate({"left":"981px"});
				break;
		case 11:$("#ul_container #slide_div_10").stop().animate({"left":"-981px"});
				$("#ul_container #slide_div_11").stop().animate({"left":"20px"});
				break;
	}
}
				
