/**
 * original by: Andre Mohren
 * modified by: Johannes Wüller
 */
//registering .slider()
jQuery.fn.slider = function(params) {

   //setting and overiding options
   var options = {'content': [], 'speed': 1000, 'time': 5000};
   jQuery.extend(options, params);
   //do nothing when there is no content
   if (options['content'].length == 0) {
      return;
   }

   //applying slider to each matched element
   jQuery(this).each(function() {

      //function for sliding an element
      var slideelement = function() {
         var element = slider.find('span:first');
         element.clone().appendTo(slider);
         slider.children('span').animate({
            'left': '-' + element.width() + 'px'
         }, options['speed'], function() {
            slider.children('span').css({'left': '0px'});
            element.remove();
         });
      };

      //our slider container
      var slider = jQuery('<div></div>').css({
         'overflow': 'hidden', 'position': 'relative', 'white-space': 'nowrap',
         'width': jQuery(this).parent().css('width')
      }).appendTo(this);

      //creating all contents and put them into the slider
      for (var i = 0; i < options['content'].length; i++) {
         jQuery('<span>' + options['content'][i] + '</span>').css({
            'position': 'relative'//, 'vertical-align': 'top'
         }).appendTo(slider);
      }

      //activate sliding
      if (options['content'].length > 2)
      window.setInterval(slideelement, options['time']);

   });

};
