$(function() {
  
  $('#footer .top').after(' <img src=\"images/ico_print.png\" alt=\"\" /> <a href=\"javascript:window.print();\">Drucken</a>');
  $('.backtotop a').before('<img src=\"images/ico_top.png\" alt=\"\" /> ');
  $('form.nav-form').dropdownmenu();
  $('form.nav-form .type-submit').css('display','none');
  
  // Suche und Newsletter
  $('html[lang=de] input#suche').blur( function() { if(this.value=='') { this.value='Suchbegriff'; } } ).focus( function () { if(this.value=='Suchbegriff') { this.value=''; } } );
  $('html[lang=de] input#newsletter').blur( function() { if(this.value=='') { this.value='Ihre E-Mail-Adresse'; } } ).focus( function () { if(this.value=='Ihre E-Mail-Adresse') { this.value=''; } } );
  
  /* Tabs */
  $('.jstabs').yamltabs({fx:"slideDown"});
  
  /* Slidelist */
  $('.slidelist dd:not(:first)').hide();
  $('.slidelist dt a').click(function(){
    $('dd:visible').slideUp("slow");
    $(this).parent().next().slideDown("slow");
    return false;
  });
  
  /* Lightbox */
  $('a[@rel*=lightbox]').lightBox();
  
  
  // Teaser
  $('#scrollbox').serialScroll({
    target:'#scrollbox-content',
    items:'li', // Selector to the items ( relative to the matched elements, '#sections' in this case )
    prev:'a.prev',// Selector to the 'prev' button (absolute!, meaning it's relative to the document)
    next:'a.next',// Selector to the 'next' button (absolute too)
    axis:'x',// The default is 'y' scroll on both ways
    navigation:'#scrollbox-nav li a',
    duration:700,// Length of the animation (if you scroll 2 axes and use queue, then each axis take half this time)
    force:true, // Force a scroll to the element specified by 'start' (some browsers don't reset on refreshes)
    
    //queue:false,// We scroll on both axes, scroll both at the same time.
    //event:'click',// On which event to react (click is the default, you probably won't need to specify it)
    //stop:false,// Each click will stop any previous animations of the target. (false by default)
    //lock:true, // Ignore events if already animating (true by default)		
    //start: 0, // On which element (index) to begin ( 0 is the default, redundant in this case )		
    //cycle:true,// Cycle endlessly ( constant velocity, true is the default )
    //step:1, // How many items to scroll each time ( 1 is the default, no need to specify )
    //jump:false, // If true, items become clickable (or w/e 'event' is, and when activated, the pane scrolls to them)
    //lazy:false,// (default) if true, the plugin looks for the items on each event(allows AJAX or JS content, or reordering)
    interval:10000, // It's the number of milliseconds to automatically go to the next
    //constant:true, // constant speed
    
    onBefore:function( e, elem, $pane, $items, pos ){
    	/**
    	 * 'this' is the triggered element 
    	 * e is the event object
    	 * elem is the element we'll be scrolling to
    	 * $pane is the element being scrolled
    	 * $items is the items collection at this moment
    	 * pos is the position of elem in the collection
    	 * if it returns false, the event will be ignored
    	 */
    	 //those arguments with a $ are jqueryfied, elem isn't.
    	 
    	 
    	e.preventDefault();
    	if( this.blur )
    		this.blur();
    		
    	// --- custom code ---
    	var bgFlipElement         = $('#teaser_content');
    	var durationFadeIn        = 500; // Length of fade in animation (in milliseconds)
  		var durationFadeOut       = 500; // Length of fade out animation (in milliseconds)
  		
    	var originalElememtHeight = Number(bgFlipElement.css('height').substr(0, bgFlipElement.css('height').length - 2));
    	bgFlipElement.animate({ opacity: 0}, durationFadeOut );
		  bgFlipElement.queue(function () {                    
		                    $(this).css('background-position', '0 -'+pos*originalElememtHeight+'px');
		                    $(this).dequeue();
		                  });
		  bgFlipElement.animate({ opacity: 1}, durationFadeIn );
		  // --- end custom code ---
    },
    onAfter:function( elem ){
    	//'this' is the element being scrolled ($pane) not jqueryfied
    }
  });
  
  /*Scrollbox Start/Stop */
  var scroll_box_is_stopped = false;
  $('#scrollbox-arrows a.startstop').click(function(){
  	if(scroll_box_is_stopped)$('#scrollbox-content').trigger('start');
  	else $('#scrollbox-content').trigger('stop');
  	scroll_box_is_stopped = !scroll_box_is_stopped;
  });
   
  // externe Links
  $('#main p a[href^=http] img').parent('a').addClass('imageinside');
  $('#main p a[href^=http][class!=imageinside]').prepend('<img class="jsico" src=\"images/ico_ext.png\" alt=\"\" />');
  
});
