function NewsSlide(container_selector, news_element_selector, append_controls_to, external_controls_selector, prev_image, next_image)
{
  this.news_container = $(container_selector)[0];
  this.news_element_selector = news_element_selector;
  if (append_controls_to)
    this.append_controls_to = $(append_controls_to)[0];
  else
    this.append_controls_to = null;

  if (this.news_container != undefined)
  {
    var news_items = $(this.news_element_selector, this.news_container);

    if (news_items.length > 1)
    {
      $(news_items).each(function () {$(this).addClass('ui-slide')} );
      var oThis = this; 
      // Add Navigation
      $(this.news_container).addClass('ui-slide-container');
      
      $(this.append_controls_to)
        .addClass('ui-slide-controls');
      
      this.external_controls = $(external_controls_selector).eq(0);

      var emptyspan = $(document.createElement('span'));
      emptyspan.html('&nbsp;');
      this.external_controls.append(emptyspan);

      if ($('html').attr('lang') == 'en-GB')
      {
        //if (this.append_controls_to)
        //  $(this.append_controls_to).append('<img class="prev-slide" title="Previous" style="display:none" src="/images/prev-slide.png" /><img class="next-slide" title="Next" src="/images/next-slide.gif" />');
        $(this.external_controls).append('<img class="prev-small-slide" alt="" title="Previous" src="/images/' + prev_image + '" />');
      }
      else
      { 
        //if (this.append_controls_to)
        //  $(this.append_controls_to).append('<img class="prev-slide" title="Vorherige Meldung" style="display:none" src="/images/prev-slide.png" /><img class="next-slide" title="Nächste Meldung" src="/images/next-slide.gif" />');
        $(this.external_controls).append('<img class="prev-small-slide" alt="" title="Vorherige Meldung" src="/images/' + prev_image + '" />');
      }

      if (this.append_controls_to)
      { 
        this.prev_slide = $('.prev-slide', this.append_controls_to).click( function () { oThis.slide(false); } );
        this.next_slide = $('.next-slide', this.append_controls_to).click( function () { oThis.slide(true); } );
      }
      /* KEINE "Seitenzahlen" mehr
      for (var i = 1; i <= news_items.length; i++)
      { 
        var link = $(document.createElement('span'));
        link.html(i).attr('goto_item_num', i)
        .click( function () 
          { 
            oThis.goto_item_num($(this).attr('goto_item_num')); 
          } );

        if (i == 1)
          link.addClass('active');
        this.external_controls.append(link);
      }*/

      if ($('html').attr('lang') == 'en-GB')
      {
        $(this.external_controls).append('<img class="next-small-slide" alt="" title="Next" src="/images/' + next_image + '" />');
      }
      else
      { 
        $(this.external_controls).append('<img class="next-small-slide" alt="" title="Nächste Meldung" src="/images/' + next_image + '" />');
      }


      this.prev_small_slide = $('.prev-small-slide', this.external_controls_to).click( function () { oThis.slide(false); } );
      this.next_small_slide = $('.next-small-slide', this.external_controls_to).click( function () { oThis.slide(true); } );
    }
  }
}

NewsSlide.prototype.slide = function (forward, amount)
{
  if (this.change_in_progress)
    return false;

  if (amount == undefined)
    amount = 1;

  this.change_in_progress = true;
  var oThis = this; 
  var current_news_item = $(this.news_element_selector + ':visible', this.news_container)[0];
  if (current_news_item != undefined)
  {
    var next_news_items = $(current_news_item).nextAll(this.news_element_selector);
    var prev_news_items = $(current_news_item).prevAll(this.news_element_selector);

    if (forward)
    {
      var new_news_item = next_news_items[amount - 1];
    }
    else
    {
      var new_news_item = prev_news_items[amount - 1];
    }

    if (new_news_item != undefined)
    {

      if (this.next_slide)
      {
        if (next_news_items.length > amount || !forward)
          this.next_slide.show();
        else
          this.next_slide.hide();
      }
      if (this.prev_slide)
      {
        if (prev_news_items.length > amount || forward)
          this.prev_slide.show();
        else
          this.prev_slide.hide();
      }
      if (this.external_controls != undefined)
      {
        var current_pos = this.get_current_pos();
        $('span', this.external_controls).removeClass('active').eq(current_pos - 1 + (forward ? 1 : -1) * amount).addClass('active');
      }

      $(this.news_container).height($(this.news_container).height());

      $(current_news_item).width($(current_news_item).width());

      $(new_news_item).width($(current_news_item).width());

      $(current_news_item) 
        .css({'left':0, 'position':'absolute'})
        .animate({ 'left': (forward ? -1 : 1) * $(current_news_item).width(), 'opacity':0 }, 500, 'linear',
          function() {
            $(this).hide().css({'width':'', 'height':'', 'left':'', 'position':'', 'opacity':''});
          }
        );

      $(new_news_item)
        .css({'left': (forward ? 1 : -1) * $(current_news_item).width(), 'position':'absolute'})
        .show()
        .animate({ 'left':0, 'opacity':1 }, 500, 'linear',
          function() {
            $(this).css({'width':'', 'height':'', 'left':'', 'position':'', 'opacity':'', 'zoom':''});
            $(oThis.news_container).css({'height':''});
            oThis.change_in_progress = false;
          }
        );
    } else 
    {
      this.change_in_progress = false;
    }
  }
}

NewsSlide.prototype.get_current_pos = function ()
{
  var current_news_item = $(this.news_element_selector + ':visible', this.news_container)[0];
  if (current_news_item != undefined)
  {
    var prev_news_items = $(current_news_item).prevAll(this.news_element_selector);
  
    return prev_news_items.length + 1;

  }
  return false;
}

NewsSlide.prototype.goto_item_num = function (item_num)
{
  var news_items = $(this.news_element_selector, this.news_container);

  if (item_num < 1 || item_num > news_items.length)
    return false;
    
  var current_pos = this.get_current_pos();
  if (current_pos != false)
  {
    if (item_num == current_pos)
    {
      return false;
    }  
    else 
    {
      this.slide(item_num > current_pos, Math.abs(current_pos-item_num));
    }  
      
  }  
}

  try
  {
    $(document).ready(function(){
       new NewsSlide('div.start div.news-overview div.ui-slide-component', 'div.listingblock', '', 'div.start div.news-overview div.ui-slide-external-controls', 'ui-slide-prev-small.png', 'ui-slide-next-small.png');
       new NewsSlide('div.meinhvvstart div.news-overview div.ui-slide-component', 'div.listingblock', '', 'div.meinhvvstart div.news-overview div.ui-slide-external-controls', 'icon_arrow_small_left.png', 'icon_arrow_small_right.png');
     //new NewsSlide('div.start div.right.half div.ui-slide-component div', 'div.listingblock', 'div.start div.right.half div.ui-slide-component');

    });
  }
  catch(e)
  {
  }

