// jInits für die neue Startseite 2011
$(function() {
	/* ******************************************************************
	 * Cycle Rotation 
	 * der Bühne auf der Startseite
	  *******************************************************************/
	$('div#cycle').cycle({
		fx:    'scrollHorz', 
		sync:   0,
		timeout: 8000,
		speed: 800,
		sync:  true,
		startingSlide:   0,
		pager: '#cyclePager',
		next:   '#next', 
		prev:   '#prev',
		pause:   1,
		delay:1000,
		before: function(currSlideElement, nextSlideElement, options, forwardFlag){
			var correct = 17
			// id vom Slide Element holen, damit wir es der NAVI
			// zuordnen können
			var id = $(nextSlideElement).attr('id').split('_')[1]
			// zugehöriges Navigations element selektieren
			var elem = $('div.TabNavigation').find('#id-'+id)
			// Absolute Position des zugehörigen Nav Elementes rausfinden
			var pos = elem.position()
			// Pixel vom äusseren rechten Rand zur mitte des Elements
			var middle = elem.outerWidth() / 2
			// Pfeil selektieren
			var arrow = $('#Stage .Arrow')
			// Mitte des Pfeils errechnen
			var arrow_middle = arrow.outerWidth() / 2
			// Pfeil der Stage entsprechend verschieben
			arrow.animate({left: (pos.left+middle)-arrow_middle-correct},800);
		},
		pagerAnchorBuilder: function(idx, slide) {
			// return selector string for existing anchor 
			return '#cyclePager li:eq(' + idx + ') a'; 
		}
	});


	/* ******************************************************************
	 * Wenn einer der Hauptnavigationpunkte oder das Scrollband überfahren
	 * wird, soll die Rotation angehalten werden. Beim verlassen, wird
	 * die Rotation fortgeführt
	  *******************************************************************/
	// Wenn die Maus ein Hauptnavigationspunkt berührt, dann Bühne stoppen
	$('div.TabNavigation').delegate('li','mouseover',function(){ $('div#cycle').cycle('pause') })
	// Wenn die Maus ein Hauptnavigationspunkt verlässt, dann weitesliden
	$('div.TabNavigation').delegate('li','mouseleave',function(){ $('div#cycle').cycle('resume') })
	// Wenn die Maus das Scrollband berührt, dann Bühne stoppen
	$('div#slider').bind('mouseover',function(){ $('div#cycle').cycle('pause') })
	// Wenn die Maus das Scrollband verlässt, dann weitesliden
	$('div#slider').bind('mouseleave',function(){ $('div#cycle').cycle('resume') })


	/* ******************************************************************
	 * Moving Boxes Reel für den Scroller auf der Startseite
	 * definieren und laden. Sehr spezifische Lösung.
	 * @author Robert Agthe (http://robert-agthe.de)
	  *******************************************************************/
	try {
		// Moving Boxes laden
		var mb = new piApp.helper.MovingBoxes()
			mb.selektor = '#slider .mb-scrollcontainer'
			mb.selektor_wrapper = '.mb-slider'
			mb.selektor_items = '.mb-slider .item'
			mb.selektor_items_all = '.mb-slider .mb-panel'
			mb.selektor_next = 'a.mb-scrollButtons.mb-right'
			mb.selektor_prev = 'a.mb-scrollButtons.mb-left'
			// CSS für inaktive Elemente
			mb.inactiveItemCss = { width: 241, 'subcss': { 'img': {  }, 'ul': { 'font-size':12 } } }
			// Moving Boxes CSS für Items definieren
			mb.activeItemCss = { width: 241, 'subcss': { 'img': {  }, 'ul': { 'font-size':12 } } }
			mb.animationSpeed = 700 // Wie schnell soll alles laufen?
			mb.offset = 20
			mb.activeItem = 1
			mb.diaspeed = 8000 // Wie lange soll ein Bild verweilen?
			mb.init() // Moving Boxes initialisieren
			//mb.diashow() // Diashow starten
			
	} catch(e) {}

	// ???
	$('div.HomeTeaser div.Box:nth-child(4)').addClass("RightContentCol");
	$('.ButtonPrev,.ButtonNext').attr({style: "display:block"});
	$('div#Stage ul#cyclePager').attr({style: "display:inline"});
	$('div#Stage ul#cyclePager li').removeClass('ui-state-disabled');
	$('.mb-scrollButtons').attr({style: "display:block"});

	// Die SliderImg des Scroller automatisch mit den vorhandenen Links aus der Linksliste versehen
    $("div.mb-inside").each(function(){ 
            var linkUrl = $(this).children("ul.LinkList").children("li:first-child").children("a").attr("href");
            var linkClass = $(this).children("ul.LinkList").children("li:first-child").children("a").attr("class");
            var linkRel = $(this).children("ul.LinkList").children("li:first-child").children("a").attr("rel");
            var linkType = $(this).children("ul.LinkList").children("li:first-child").children("a").attr("type");
            
            if( linkClass == undefined){
                linkClass = "";
            }
            if( linkRel == undefined){
                linkRel = "";
            }
            if( linkType == undefined){
                linkType = "";
            }
            
            if(linkUrl != null){
                $(this).children("div.SliderImg").children("img").wrapAll("<a class='"+linkClass+"' type='"+linkType+"' rel='"+linkRel+"' href='"+linkUrl+"' />");
            }
        }); 


});

