/*	###########################################################################################################################
	##																														 ##
	##		movingline																										 ##
	##		Agentur für Werbung & Design																					 ##
	##		Am Stachelauer Berg 7																							 ##
	##		57462 Olpe																										 ##
	##																														 ##
	##		Fon: +49 2761 - 83549 9																							 ##
	##		Fax: +49 2761 - 83549 8																							 ##
	##																														 ##
	##		info@movingline.de																								 ##
	##		www.movingline.de																								 ##
	##																														 ##
	##		Copyright © 2003 - 2010 by movingline																			 ##
	##		Authors: DD / HP 																								 ##
	##																														 ##
	########################################################################################################################### */


/*	---------------------------------------------------------------------------------------------------------------------------
	Joblist
	--------------------------------------------------------------------------------------------------------------------------- */

	function contactslider() {
	  $('.job_content').hide();
	  $('.job').click(
		function() {
		  var checkElement = $(this).next();
   
		  if((checkElement.is('div')) && (checkElement.is(':visible'))) {
			return false;
			}
   
		  if((checkElement.is('div')) && (!checkElement.is(':visible'))) {
   

			$('.job_content:visible').slideUp('normal');
			checkElement.slideDown('normal');
			return false;
			}
		  }
		);
	  }
	$(document).ready(function() {contactslider();});
	
/*	---------------------------------------------------------------------------------------------------------------------------
	Leitung
	--------------------------------------------------------------------------------------------------------------------------- */

	function overview_pro() {
		$(".pic_over").stop().animate({opacity: 0}, 0);
		$(".ov_l,.ov_r").hover(function() {
			$(".pic_over", this).stop().animate({opacity: 1}, 100);
		},function(){
			$(".pic_over", this).stop().animate({opacity: 0.0}, 300);
		});
	}
	$(document).ready(function() {overview_pro();});
	
/*	---------------------------------------------------------------------------------------------------------------------------
	Overview
	--------------------------------------------------------------------------------------------------------------------------- */

	function overview() {

		$(".overview_content").animate({ opacity: 0,height: "171"}, 0);
		$(".container_overview a").hover(function() {
			$(".overview_content", this).stop().animate({ opacity: 1}, 100);
		},function(){
			$(".overview_content", this).stop().animate({ opacity: 0}, 400);
		});
	}
	$(document).ready(function() {overview();});

/*	---------------------------------------------------------------------------------------------------------------------------
	Details
	--------------------------------------------------------------------------------------------------------------------------- */

	function details() {
	
		$('.detailtitle_aktiv').hide();
		$(".detailtitle").click(function () {
			$(".container_details").animate({height:478}, 300, function() {
				$('.details').fadeIn(300);
				});
			$('.detailtitle').hide();
			$('.detailtitle_aktiv').show();
			$('.container_details').addClass("container_details_aktiv");
			});	
			
		$(".detailtitle_aktiv,.picnavi li a").click(function () {
			$('.details').fadeOut(200, function() {
				$(".container_details").animate({height:40}, 200);
				});
			$('.detailtitle').show();
			$('.detailtitle_aktiv').hide();
			$('.container_details').removeClass("container_details_aktiv");
			});	
		}
	$(document).ready(function() {details();});
	
/*	---------------------------------------------------------------------------------------------------------------------------
	Catmenue
	--------------------------------------------------------------------------------------------------------------------------- */


	function cat() {
	  $(".cat").hover( 
		function () { 
		  $(".cat_off").stop(true).fadeTo("normal",1); 
		},  
		function () { 
		  $(".cat_off").fadeTo("normal",0); 
		} 
	  );
	}
	$(document).ready(function() {cat();});
	
/*	---------------------------------------------------------------------------------------------------------------------------
	Slider
	--------------------------------------------------------------------------------------------------------------------------- */
	
	(function($) {
		$.fn.slider = function(options) {

		var defaults = {			
			container: ".picframe", //Class/id of main container. You can use "#container" for an id.
			slides: ".slidepic", //Class/id of slide container. You can use "#slides" for an id.
			pagination: "picnavi", //Class name of parent ul for numbered links. Don't add a "." here.
			containerClick: false, //Click slider to goto next slide? true/false
			autoStart: 0, //Set to positive number for true. This number will be the time between transitions.
			restart: 0, //Set to positive number for true. Sets time until autoStart is restarted.
			slidespeed: 500, //Speed of slide animation, 1000 = 1second.
			fadespeed: 200, //Speed of fade animation, 1000 = 1second.
			autoHeight: false, //Set to positive number for true. This number will be the speed of the animation.
			addPagination: false //Add pagination links based on content? true/false 
		};

		this.each(function() {
			var obj = $(this);
			var o = $.extend(defaults,options);
			var distance = 0;
			var times = 1;
			var slides = $(o.slides,obj).children().size();
			var width = $(o.slides,obj).children().outerWidth();
			var position = 0;
			var active = false;
			var number = 0;
			var interval = 0;
			var restart = 0;
			var pagination = $("."+o.pagination+" li a",obj);

			if(o.addPagination && !$(pagination).length){
				var buttons = slides;
				$(obj).append("<ul class="+o.pagination+">");
				$(o.slides,obj).children().each(function(){
					if (number<buttons) {
						$("."+o.pagination,obj).append("<li><a rel="+(number+1)+" href=\"#\" >"+(number+1)+"</a></li>");
						number = number+1;
					} else {
						number = 0;
						return false;
					}
					$("."+o.pagination+" li a:eq(0)",obj).parent().addClass("active");
				});
				pagination = $("."+o.pagination+" li a",obj);
			} else {
				$(pagination,obj).each(function(){
					number=number+1;
					$(this).attr("rel",number);
					$(pagination.eq(0),obj).parent().addClass("active");
				});
			}

			if (slides===1) {
				$(o.slides,obj).children().css({position:"absolute",left:position,display:"block"});
				return;
			}

			$(o.slides,obj).css({width:(slides*width)});

			$(o.slides,obj).children().each(function(){
				$(this).css({position:"absolute",left:position,display:"block"});
				position=position+width;
			});

			$(o.slides,obj).children(":eq("+(slides-1)+")").css({position:"absolute",left:-width});

			if (slides>3) {
				$(o.slides,obj).children(":eq("+(slides-1)+")").css({position:"absolute",left:-width});
			}

			if(o.autoHeight){autoHeight(times);}

			$(".button_next",obj).click(function(){
				if(active===false) {
					animate("next",true);
					if(o.autoStart){
						if (o.restart) {autoStart();}
						else {clearInterval(sliderIntervalID);}
					}
				} return false;
			});

			$(".button_pre",obj).click(function(){
				if(active===false) {	
					animate("prev",true);
					if(o.autoStart){
						if (o.restart) {autoStart();}
						else {clearInterval(sliderIntervalID);}
					}
				} return false;
			});

			if (o.containerClick) {
				$(o.container,obj).click(function(){
					if(active===false) {
						animate("next",true);
						if(o.autoStart){
							if (o.restart) {autoStart();}
							else {clearInterval(sliderIntervalID);}
						}
					} return false;
				});
			}

			$(pagination,obj).click(function(){
				if ($(this).parent().hasClass("active")) {return false;}
				else {
					times = $(this).attr("rel");
					$(pagination,obj).parent().siblings().removeClass("active");
					$(this).parent().addClass("active");
					animate("fade",times);
					if(o.autoStart){
						if (o.restart) {autoStart();}
						else {clearInterval(sliderIntervalID);}
					}
				} return false;
			});

			if (o.autoStart) {
				sliderIntervalID = setInterval(function(){
					if(active===false) {animate("next",true);}
				},o.autoStart);
				function autoStart() {
					if (o.restart) {
					clearInterval(sliderIntervalID,interval);
					clearTimeout(restart);
						restart = setTimeout(function() {
							interval = setInterval(	function(){
								animate("next",true);
							},o.autoStart);
						},o.restart);
					} else {
						sliderIntervalID = setInterval(function(){
							if(active===false) {animate("next",true);}
						},o.autoStart);
					}
				};
			}

			function current(times) {
				if(times===slides+1){times = 1;}
				if(times===0){times = slides;}
				$(pagination,obj).parent().siblings().removeClass("active");
				$(pagination+"[rel='" + (times) + "']",obj).parent().addClass("active");
				$(pagination,obj).parent().siblings().animate({opacity: 0.5 }, 0);
				$(pagination+"[rel='" + (times) + "']",obj).parent().animate({opacity: 1 }, 0);
			};

			function autoHeight(times) {
				if(times===slides+1){times=1;}
				if(times===0){times=slides;}	
				var getHeight = $(o.slides,obj).children(":eq("+(times-1)+")",obj).outerHeight();
				$(o.container,obj).animate({height: getHeight},o.autoHeight);					
			};			

			function animate(dir,clicked){	
				active = true;	
				switch(dir){
					case "next":
						times = times+1;
						distance = (-(times*width-width));
						current(times);
						if(o.autoHeight){autoHeight(times);}
						if(slides<3){
							if (times===3){$(o.slides,obj).children(":eq(0)").css({left:(slides*width)});}
							if (times===2){$(o.slides,obj).children(":eq("+(slides-1)+")").css({position:"absolute",left:width});}
						}
						$(o.slides,obj).animate({left: distance}, o.slidespeed,function(){
							if (times===slides+1) {
								times = 1;
								$(o.slides,obj).css({left:0},function(){$(o.slides,obj).animate({left:distance})});							
								$(o.slides,obj).children(":eq(0)").css({left:0});
								$(o.slides,obj).children(":eq("+(slides-1)+")").css({ position:"absolute",left:-width});				
							}
							if (times===slides) $(o.slides,obj).children(":eq(0)").css({left:(slides*width)});
							if (times===slides-1) $(o.slides,obj).children(":eq("+(slides-1)+")").css({left:(slides*width-width)});
							active = false;
						});					
						break; 
					case "prev":
						times = times-1;
						distance = (-(times*width-width));
						current(times);
						if(o.autoHeight){autoHeight(times);}
						if (slides<3){
							if(times===0){$(o.slides,obj).children(":eq("+(slides-1)+")").css({position:"absolute",left:(-width)});}
							if(times===1){$(o.slides,obj).children(":eq(0)").css({position:"absolute",left:0});}
						}
						$(o.slides,obj).animate({left: distance}, o.slidespeed,function(){
							if (times===0) {
								times = slides;
								$(o.slides,obj).children(":eq("+(slides-1)+")").css({position:"absolute",left:(slides*width-width)});
								$(o.slides,obj).css({left: -(slides*width-width)});
								$(o.slides,obj).children(":eq(0)").css({left:(slides*width)});
							}
							if (times===2 ) $(o.slides,obj).children(":eq(0)").css({position:"absolute",left:0});
							if (times===1) $(o.slides,obj).children(":eq("+ (slides-1) +")").css({position:"absolute",left:-width});
							active = false;
						});
						break;
					case "fade":
						times = [times]*1;
						distance = (-(times*width-width));
						current(times);
						if(o.autoHeight){autoHeight(times);}
						$(o.slides,obj).children().fadeOut(o.fadespeed, function(){
							$(o.slides,obj).css({left: distance});
							$(o.slides,obj).children(":eq("+(slides-1)+")").css({left:slides*width-width});
							$(o.slides,obj).children(":eq(0)").css({left:0});
							if(times===slides){$(o.slides,obj).children(":eq(0)").css({left:(slides*width)});}
							if(times===1){$(o.slides,obj).children(":eq("+(slides-1)+")").css({ position:"absolute",left:-width});}
							$(o.slides,obj).children().fadeIn(o.fadespeed);
							active = false;
						});
						break; 
					default:
						break;
					}					
				};
			});
		};
	})(jQuery);
	

/*	---------------------------------------------------------------------------------------------------------------------------
	Fader
	--------------------------------------------------------------------------------------------------------------------------- */
	
	
(function($) {

$.fn.innerfade = function(options) {

	this.each(function(){ 	

		var settings = {
			animationtype: 'fade',
			speed: 'normal',
			timeout: 2000,
			type: 'sequence',
			containerheight: 'auto',
			runningclass: 'innerfade'
		};

		if(options)
			$.extend(settings, options);

		var elements = $(this).children();

		if (elements.length > 1) {

			$(this).css('position', 'relative');

			$(this).css('height', settings.containerheight);
			$(this).addClass(settings.runningclass);

			for ( var i = 0; i < elements.length; i++ ) {
				$(elements[i]).css('z-index', String(elements.length-i)).css('position', 'absolute');
				$(elements[i]).hide();
			};

			if ( settings.type == 'sequence' ) {
				setTimeout(function(){
					$.innerfade.next(elements, settings, 1, 0);
				}, settings.timeout);
				$(elements[0]).show();
			} else if ( settings.type == 'random' ) {
				setTimeout(function(){
					do { current = Math.floor ( Math.random ( ) * ( elements.length ) ); } while ( current == 0 )
					$.innerfade.next(elements, settings, current, 0);
				}, settings.timeout);
				$(elements[0]).show();
			}	else {
				alert('type must either be \'sequence\' or \'random\'');
			}

		}

	});
};


$.innerfade = function() {}
$.innerfade.next = function (elements, settings, current, last) {

	if ( settings.animationtype == 'slide' ) {
		$(elements[last]).slideUp(settings.speed, $(elements[current]).slideDown(settings.speed));
	} else if ( settings.animationtype == 'fade' ) {
		$(elements[last]).fadeOut(settings.speed);
		$(elements[current]).fadeIn(settings.speed);
	} else {
		alert('animationtype must either be \'slide\' or \'fade\'');
	};

	if ( settings.type == 'sequence' ) {
		if ( ( current + 1 ) < elements.length ) {
			current = current + 1;
			last = current - 1;
		} else {
			current = 0;
			last = elements.length - 1;
		};
	}	else if ( settings.type == 'random' ) {
		last = current;
		while (	current == last ) {
			current = Math.floor ( Math.random ( ) * ( elements.length ) );
		};
	}	else {
		alert('type must either be \'sequence\' or \'random\'');
	};
	setTimeout((function(){$.innerfade.next(elements, settings, current, last);}), settings.timeout);
};
})(jQuery);

	function picfade() {
		$('#image_rotate').innerfade({ 
				speed: 1050, 
				timeout: 3000, 
				type: 'sequence', 
				containerheight: '350px'
			});
		}
	$(document).ready(function() {picfade();});
