/*
 * WM (nbsp GmbH)
 * 25.10.2010
 * Aufmachermodul
 */

/* array fuer mehrere Aufmacher */
var leadTeasers = [];

/* Dauer der Ueberblendung*/
var leadteaserduration = 0.5;

function startLeadTeaserRotation(pCol,pItems,pInt){
	/* Rotation starten */
	
	/*initialisieren der aktuellen kollektion*/
	leadTeasers[pCol]= {};
	
	leadTeasers[pCol].running = 1;
	leadTeasers[pCol].i = 0;
	leadTeasers[pCol].items = pItems;
	leadTeasers[pCol].height = 0;
	
	/*items verstecken*/
	for(var i=1;i<=leadTeasers[pCol].items;i++){		
		if(Ext.get('leadteaser_detail_' + pCol + '_' + i)){
			tmpEl = Ext.get('leadteaser_detail_' + pCol + '_' + i)
			
			/* Hoehe des hoechsten Elements ermitteln */
			if(tmpEl.getHeight() > leadTeasers[pCol].height){
				leadTeasers[pCol].height = tmpEl.getHeight();
			}
			
			tmpEl.setVisibilityMode(Ext.Element.DISPLAY);
			tmpEl.hide();
			tmpEl.on('mouseover',function(){
				breakLeadTeaserRotation(pCol);
			});
			tmpEl.on('mouseout',function(){
				finishLeadTeaserRotation(pCol);
			});	
			
		}
		if(Ext.get('leadteaser_link_' + pCol + '_' + i)){
			Ext.get('leadteaser_link_' + pCol + '_' + i).on('mouseover',function(){
				breakLeadTeaserRotation(pCol);
			});
			Ext.get('leadteaser_link_' + pCol + '_' + i).on('mouseout',function(){
				finishLeadTeaserRotation(pCol);
			});
		}
		
		/* Hoehe setzen */
		Ext.get('leadteaser_wrapper_' + pCol).setHeight(leadTeasers[pCol].height);
		
	}
	
	/* ersten Tab anzeigen */
	Ext.get('leadteaser_detail_' + pCol + '_' + 1).show();
	
	/* Task erstellen der die Tabs automatisch wechselt */
	leadTeasers[pCol].myLeadTeaserTask = {
	 	run: function(){
			if(leadTeasers[pCol].running){
				
				var nextI = leadTeasers[pCol].i+1;				
				if(!Ext.get('leadteaser_detail_' + pCol + '_' + nextI)){					
					nextI = 1;
				}
				switchLeadTeaserRotationContent(pCol,leadTeasers[pCol].i,nextI);
			}
	 	},
	    interval: (pInt+leadteaserduration)*1000 //  (angegebenes interval + die Ueberblenddauer) x second
	 }
	leadTeasers[pCol].myLeadTeaserRunner = new Ext.util.TaskRunner();
	 
	 // Task - runner starten
	leadTeasers[pCol].myLeadTeaserRunner.start(leadTeasers[pCol].myLeadTeaserTask);
}

function switchLeadTeaserRotationContent(pCol,pI,pNext){
	/* Tabs wechseln */
	
	/* aktuelles Element */
	var curEl = Ext.get('leadteaser_detail_' + pCol + '_' + pI);
	var curTabLink = Ext.get('leadteaser_link_' + pCol + '_' + pI);
	
	/* naechstes Element ermitteln */
	var nextI = pNext;	
	
	if(!Ext.get('leadteaser_detail_' + pCol + '_' + nextI)){
		nextI = 1;
	}
	
	leadTeasers[pCol].i = nextI;
	
	var nextEl = Ext.get('leadteaser_detail_' + pCol + '_' + nextI);

	var nextTabLink = Ext.get('leadteaser_link_' + pCol + '_' + nextI);
	
	/* ein /ausblenden */
	if(curEl){
		curEl.fadeOut(
		{
			endOpacity: 0,
			easing:'easeOut',
			duration: leadteaserduration,
			remove: false,
			useDisplay: true
		});
		curTabLink.removeClass('active');
	}
	
	if(nextEl){
		nextEl.fadeIn(
		{
			endOpacity: 1,
			easing:'easeOut',
			duration: leadteaserduration,
			useDisplay: true
		});	
		nextTabLink.addClass('active');
	}
}

function breakLeadTeaserRotation(pCol){
	/* Tabwechsel unterbrechen */
	if(leadTeasers[pCol].running){		
		leadTeasers[pCol].running=0;	
		//leadTeasers[pCol].myLeadTeaserRunner.stopAll();
	}
}

function finishLeadTeaserRotation(pCol){
	/* Tabwechsel fortsetzen */
	if(!leadTeasers[pCol].running){		
		leadTeasers[pCol].running=1;
		//leadTeasers[pCol].myLeadTeaserRunner.start(leadTeasers[pCol].myLeadTeaserTask);
	}
}


function clickLeadTeaserRotation(pCol,pN){
	/* automatischen Tabwechsel stoppen und zum ausgewaehlten Tab wechseln */
	breakLeadTeaserRotation(pCol);
	switchLeadTeaserRotationContent(pCol,leadTeasers[pCol].i,pN);	
}


