function news() {
  var aNews = new Array();
  var oNewsQuickSelect = null;
  this.add = function(newscontainer) {
    aNews.push(newscontainer);
  }
  this.size = function() {
    return aNews.length;
  }
  this.getContainerArray = function() {
    return aNews;
  }
  this.sortTS = function(){
    var holder,x,y,c1,c2;
    for (x=0; x<aNews.length; x++) {
      for (y=0; y<(aNews.length-1);y++) {
        c1=aNews[y].getDateTS();
        c2=aNews[y+1].getDateTS();
        if (c1>c2) {
          holder=aNews[y];
          aNews[y]=aNews[y+1];
          aNews[y+1]=holder;
        }
      }
    }
  }
  this.buildQuickSelect = function() {
    oNewsQuickSelect = $('<ul></ul>');
    for (q=0; q<aNews.length; q++) {
      var cont = aNews[q];
      if (cont.getDateTS()>1000) oNewsQuickSelect.append('<li><a title="'+cont.getTitle()+'" href="#news'+cont.getID()+'">'+cont.getDate().getDate()+'.'+(cont.getDate().getMonth()+1)+'.</a></li>');
    }
  }
  this.getQuickSelectDiv = function() {
    if (oNewsQuickSelect==null) this.buildQuickSelect();
    log_debug('call getQuickSelectDiv with div='+oNewsQuickSelect);
    return oNewsQuickSelect;
  }
  this.getDiv = function(idx) {
    if (idx<0 || idx>aNews.length) return null;
    var cont = aNews[idx];
    var newsdiv=$('<div class="news"><a name="news'+cont.getID()+'"/></div>');
    var titlediv = $('<div class="newstitle"></div>');
    if (cont.getDate().getFullYear()>2008){
      titlediv.append('<span>'+cont.getDate().getDate()+'.'+(cont.getDate().getMonth()+1)+'. - '+cont.getTitle()+'</span>');
    } else {
      titlediv.append('<span>'+cont.getTitle()+'</span>');
    }
    newsdiv.append(titlediv);
    if (cont.getImgElement()!=null) {
      var newsimg = cont.getImgElement();
      newsimg.attr('alt',cont.getImgTitle());
      newsimg.attr('title'),cont.getImgTitle();
      newsdiv.append('<div align="center" class="newsimg"><a href="'+cont.getImgLink()+'" target="_blank"></a></div>').find('a:last').append(newsimg);
    }
    if (cont.getText()!='') {
      var volltextlink=$('<div class="newslink">&raquo;&nbsp;Mehr&nbsp;Infos&nbsp;&laquo;</div>');
      var volltextdiv=$('<div id="news_'+cont.getID()+'" class="newstext"></div>');
      volltextdiv.html(cont.getText());
      volltextdiv.hide();
      volltextlink.click(function(){
        $('#news_'+cont.getID()).toggle('normal');
      });
      newsdiv.append(volltextlink);
      newsdiv.append(volltextdiv);
    } else log_debug('News ID '+cont.getID()+' has no text!');
    if (cont.getLink()!='') {
      var ahref = newsdiv.append('<div class="newsref"><a href="<cms:link>'+cont.getLink()+'</cms:link>" target="_self"/></div>').find('a:last');
      if (cont.getLinktext()!='') {
        ahref.html(cont.getLinktext());
        ahref.attr('title',cont.getLinktext());
      } else ahref.html(cont.getLink());

    }
    return newsdiv;
  }

}

function news_container(index) {
  var id=index;
  var ndate;
  var ndatets;
  var ntitle;
  var imgelement=null;
  var imglink;
  var imgtitle='';
  var fulltext='';
  var linktext='';
  var link='';
  this.setLink = function(lnk) {
    link=lnk;
  }
  this.getLink = function() {
    return link;
  }
  this.setLinktext = function(ltext) {
    linktext=ltext;
  }
  this.getLinktext = function() {
    return linktext;
  }
  this.setText = function(text){
    fulltext=text;
  }
  this.getText = function() {
    return fulltext;
  }
  this.setImgLink = function(imglnk) {
    imglink = imglnk;
  }
  this.getImgLink = function() {
    return imglink;
  }
  this.setImgTitle = function(imgt) {
    imgtitle=imgt;
  }
  this.getImgTitle = function() {
    return imgtitle;
  }
  this.setImgElement = function(imgs) {
    imgelement=$(imgs);
  }
  this.getImgElement = function() {
    return imgelement;
  }
  this.setTitle = function(title) {
    ntitle=title;
  }
  this.getTitle = function() {
    return ntitle;
  }
  this.setDate = function(ts) {
    ndatets=ts;
    ndate=new Date(ts);
    
  }
  this.getDateTS = function() {
    return ndatets;
  }
  this.getDate = function() {
    return ndate;
  }
  this.getID = function() {
    return id;
  }
}
var log_debug = function() {
  if($.browser.mozilla && window.console && window.console.firebug) console.log.apply(this, arguments)
}
