/*
TODO
- migration nach jquery (als plugin)
  -> DONE, aber noch nicht sehr jquery'ish (keine kaskaden)
- eliminierung von globalen variablen (via closures)
*/

// einstellungen (@@@nice die koennte man auch in einem array sammeln)
var scroll_speed = 2;

// interne, globale variablen
var _scroll_object;
var _scroll_timer;
var _scroll_direction;

// TODO auf .ready() umstellen wenn das gefixt wurde (test mit aktueller
// jquery version: feuert zu frueh, daher werden nicht alle element gefunden!)
$(document).load(function(){

   // scroll-bereich rechts suchen
   _scroll_object = $('#content_right_text').get(0);

   // wenn scroll-bereich rechts nicht gefunden wurde, dann links suchen
   // ebenfalls weitersuchen wenn scroll-bereich leer ist
   // @@@todo nicht zwei bereich, sondern eine passende id, die dann sowohl
   //         links als auch rechts verwendet wird
   if (!_scroll_object || (_scroll_object.childNodes.length == 0) || (_scroll_object.firstChild.id === 'navi-ref')) {
      _scroll_object = $('#content_left_text').get(0);
   }

   // wenn kein contentobject gefunden wird dann nix machen
   if (!_scroll_object) {
      return;
   }
   
   _scroll_timer = false;
   _scroll_direction = false;

   // TODO kann man die beiden bloecke hier nicht zusammenfassen? sind sehr aehnlich...
   
   $('#navigation_arrow_up').hover(function(){
       scroll_start(-1);
   },function(){
      scroll_stop();
   });

   $('#navigation_arrow_down').hover(function(){
      scroll_start(1);
   },function(){
      scroll_stop();
   });

});

function scroll_stop () {
   if (_scroll_timer) {
      clearInterval(_scroll_timer);
      _scroll_timer = false;
   }
}

function scroll_start (direction) {
   scroll_stop();
   _scroll_direction = direction;
   _scroll_timer = setInterval('scroll_scroller()',25);
}

function scroll_scroller () {
   _scroll_object.scrollTop += (_scroll_direction * scroll_speed);
}


