$(document).ready(function() {

  $('.headline').each(function() {
		
		var $this = $(this);
		var headlineTimeout;
    var rotateInProgress = false;
		var currentHeadline = 0;
		var oldHeadline = 0;
		var headlineCount = $this.find(".headline-slide").length;
		var bVideo = false;
	
	
		if($this.find(".headline-nav-range-2").length>0){
			bVideo = true;
		}

		$this.find(".headline-slider").width( "485px" );
		$this.find(".headline-slider").height( "320px" );
		$this.find(".headline-slide").height( $this.find(".headline-slider").height() );
		$this.find(".headline-slide").width( $this.find(".headline-slider").width() );
		$this.find(".headline-nav-3-in").width( $this.find(".headline-slider").width() );

	    		

		//$('.navbar-title').vAlign();

		$this.find(".slide-loading").hide();
		$this.find(".headline-slide").show();

		$this.find(".navi").click(function() {
				headlineSet( $(this).attr("value") );
				return false;
		});

		$this.find(".headline-prev").click(function() {
				if(currentHeadline!=0)
					headlineSet( (oldHeadline - 1) % headlineCount );
				return false;
		});

		$this.find(".headline-next").click(function() {
				if(currentHeadline!=(headlineCount-1))
					headlineSet( (oldHeadline + 1) % headlineCount );
				return false;
		});

		if(bVideo){
			var i=0;
			$this.find(".headline-slide").each(function() {
				if(i>0){
					$(this).hide();
				}
				i++;
			});
		}

    var headlineSet = function(index) {

        clearTimeout(headlineTimeout);
		    rotateInProgress = false;
        headlineTimeout = false;

				if(oldHeadline==index){
					return;
				}

    		var $active = $this.find(".slide-" + oldHeadline);
				var $next = $this.find("." + "slide-" + index);

		    if(bVideo){
	    		$active.removeClass('active');
	        $active.hide();
				}else{
	    		$active.addClass('last-active');
				}

    		var $navi_active = $this.find(".navi-" + oldHeadline);
    		$navi_active.removeClass('navi-active');

				currentHeadline = index;
		    if(bVideo){
					$next.show();
					$next.addClass('active');
				}
				
	    	var $navi_current = $this.find("." + "navi-" + currentHeadline);
	    	$navi_current.addClass('navi-active');
        oldHeadline = currentHeadline;


		    if(!bVideo){

	    		$next.css({opacity: 0.0})
	    		    .addClass('active')
		    		    .animate({opacity: 1.0}, 400, function() {
	    		        $active.removeClass('active last-active');
									rotateInProgress = false;
	 		    }).find(".headline-introtext").css("-moz-opacity", 0.7);

				}


		}
		
    var headlineRotate = function() {

				if ( !rotateInProgress) {
          
          rotateInProgress = true;
          headlineTimeout = false;

	    		var $active = $this.find("." + "slide-" + oldHeadline);
	    		$active.addClass('last-active');

	    		var $navi_active = $this.find("." + "navi-" + oldHeadline);
	    		$navi_active.removeClass('navi-active');

          currentHeadline = (oldHeadline + 1) % headlineCount;
	    		var $next = $this.find("." + "slide-" + currentHeadline);
	    		var $navi_current = $this.find("." + "navi-" + currentHeadline);
	    		$navi_current.addClass('navi-active');
	    		
	    		$next.css({opacity: 0.0})
	    		    .addClass('active')
	    		    .animate({opacity: 1.0}, 800, function() {
	  							
	    		        $active.removeClass('active last-active');

									rotateInProgress = false;
									if (!headlineTimeout) {
										headlineTimeout = setTimeout(headlineRotate, 4000);
									}
	    		        
	    		    }).find(".headline-introtext").css("-moz-opacity", 0.7);
		          oldHeadline = currentHeadline;
	    		    
				}
		}

    if(!bVideo){
	    headlineTimeout = setTimeout(headlineRotate,4000);
    }

	});

});



