// *****************************************************
// ++ jQuery-Ticker - Nachrichtenticker mit Steuerung ++
// *****************************************************
// Autor: Patrick Fischer
// Datum: 01.02.2008 Version 1.0
// Seite: http://www.ajaxschmiede.de
// *****************************************************

// vorwrts - schiebt erstes div an letzte Stelle und gibt das neue erste div aus
function nextNews () {
 $("#ticker_container").append( $("#ticker_container div:first").clone(true) );
 $("#ticker_container div:first").remove();
 $("#ticker").html($("#ticker_container div:first").html());
}

// rckwrts - gibt letztes div aus und schiebt es anschlieend an die erste Stelle
function preNews () {
 $("#ticker").html($("#ticker_container div:last").html());
 $("#ticker_container").prepend( $("#ticker_container div:last").clone(true) );
 $("#ticker_container div:last").remove();
}

// stopp Intervall und ersetzt Play/Pause-Symbol
function stopNews () {
 window.clearInterval( int_ticker );
 $("#navi #navi_pause").attr("src", "24-arrow-next.png");
 int_ticker = null; // stellt sicher, dass automatisches Vorwrtsgehen wieder anluft
}

// Zeit zwischen Textwechsel in 1/1000 sek
int_time = 10000;

$(document).ready( function () {
 // ursprngliches erstes div wird gekennzeichnet
 $("#ticker_container div:first").attr("name", "first_div");
 // ursprngliches letztes div wird gekennzeichnet
 $("#ticker_container div:last").attr("name", "last_div");

 // Ausgabe erste Meldung
 $("#ticker").html($("#ticker_container div:first").html());

 // startet Intervall
 int_ticker = window.setInterval("nextNews()", int_time);

 /* Klickevents fr img-Buttons */
 $("#navi #navi_back").click(function () {
 stopNews();
 preNews();
 });

 $("#navi #navi_pause").click(function () {
 if ( int_ticker )
 {
 stopNews();
 } else {
 nextNews();
 int_ticker = window.setInterval("nextNews()", int_time);
 $(this).attr("src", "24-control-pause.png");
 }
 });

 $("#navi #navi_next").click(function () {
 stopNews();
 nextNews();
 });

 $("#navi #navi_first").click(function () {
 stopNews();

 while ($("#ticker_container div:first").attr("name") != "first_div")
 {
 preNews();
 }
 });

 $("#navi #navi_last").click(function () {
 stopNews();

 while ($("#ticker_container div:first").attr("name") != "last_div")
 {
 nextNews();
 }
 });

 // Hovereffekt beim berfahren des img-Buttons
 $("#navi img").hover(function () {
 $(this).css("cursor", "pointer");
 }, function () {
 $(this).css("cursor", "auto");
 }
 );
});