
$( document ).ready( function()
{
	var secPerState = 7;

	// Anzahl der Aufmacher-Zustände
	var leadMax = $( '#lead-nav ul' ).children().length;
	
	// ID des Bausteins ermitteln zum späteren AJAX-Nachladen
	var dat_id = 0;
	var classes = $( '#lead' ).attr( 'class' ).split(' ');
	for( var i = 0; i < classes.length; i++ )
	{
		if( classes[i].indexOf( 'dat_id_' ) != -1 )
		{
			dat_id = classes[i].substr( 7 );
		}
	}

	if( dat_id > 0 && leadMax > 1 )
	{
		// Zweites Bild für Crossfade erzeugen
		$( '#lead-img1' ).after( '<img id="lead-img2" class="lead-img" src="" alt="" />' );
		$( '#lead-img2' ).hide();
		
		// Parameter für Rotation
		var rotateLeadInt;
		var leadContent = new Array();
		var oldLead = 0;
		var currLead = 0;
		//$( '#lead-nav ul li' ).each( function(){ currLead++; if( $( this ).hasClass( 'active' ) ) return false; } );
		//var img2Flag = currLead % 2;
		currLead = 1;
		img2Flag = 1;
		
		// Funktion: Rotation zum nächsten Zustand
		var rotateLead = function()
		{
			oldLead = currLead;
			currLead = ( currLead+1 > leadMax ) ? 1 : currLead+1;
			
			if( img2Flag == 0 )
			{
				$( '#lead-img1' ).attr( 'src', $( leadContent[ currLead-1 ] ).find( '#lead-img1' ).attr( 'src' ) );
				$( '#lead-img2' ).fadeOut( 1000 );
			}
			else
			{
				$( '#lead-img2' ).attr( 'src', $( leadContent[ currLead-1 ] ).find( '#lead-img1' ).attr( 'src' ) );
				$( '#lead-img2' ).fadeIn( 1000 );
			}
			
			img2Flag = 1 - img2Flag;
			
			if( oldLead > 0 ) $( '#lead-nav li:eq(' + ( oldLead-1 ) + ')' ).removeClass( 'active' );
			$( '#lead-nav li:eq(' + ( currLead-1 ) + ')' ).addClass( 'active' );
			
			$( '#lead-teaser' ).html( $( leadContent[ currLead-1 ] ).find( '#lead-teaser' ).html() );
			
			rotateLeadInt = setTimeout( rotateLead, secPerState * 1000 );
		};
		
		// Callback: Rotation starten
		var startLeadRotation = function()
		{
			rotateLeadInt = setTimeout( rotateLead, secPerState * 1000 );
		};
		
		// Aufmacher-Zustände vorausladen und Rotation starten
		var leadLoadComplete = 0;
		for( var i=0; i<leadMax; i++ ) leadLoadComplete += Math.pow( 2, i );
		
		leadContent[0] = $( '#lead' ).clone();		
		var leadLoaded = 1;
		
		var leadCallback = function( i )
		{
			return function()
			{
				leadLoaded += Math.pow( 2, i-1 );
				if( leadLoaded == leadLoadComplete ) startLeadRotation();
			}
		};
		
		for( var i=2; i<=leadMax; i++ )
		{
			leadContent[ i-1 ] = $( '<div>' ).load
			(
				'/ajax?com=am&dat_id=' + dat_id + '&sub=' + i,
				leadCallback( i )
			);
		}
		
	}

});

