function log (functionName){
    if($("logger")){
        $("logger").insert(functionName+"<br />");
    }
}

var teaserNakedBoxHeight = 215;                      //standardwert für höhe einer teaserbox
var teaserHeadlineHeight = 0;                        //höhe der Überschriftenbox
var setBoxMaxHeight = 0;                             //ausgerechnete maximale Boxhöhe

var setEffectDuration = 0.3;                         //setzt die Dauer der Effekte
var oberFoo = 0;                                     //berechnen der Höhe auf der Startseite

/* +++Funktion zum Errechnen der Höhe der Teaserboxen+++ */
function teaserCalculateBoxHeight(){
  var teaserNumber = $$(".teaser").size();

  $$(".teaserHeadline").each(function(item){
    
    teaserHeadlineHeight = item.getHeight();
    
    setBoxMaxHeight = teaserNakedBoxHeight-teaserHeadlineHeight;

    //für Startseite, da Teaser hier eine feste Höhe hat
    if($("sliderPool")){
      var foo = $("teaser").getHeight();

      oberFoo += item.getHeight()+25;
      setBoxMaxHeight = 330-oberFoo;
    }
    
  });
  
}

/* +++Funktion zum Anpassen der Teaser-Abschluss-Grafik+++ */
function goldOrBlueBoxAtEnd(){

  if(teaserGoldOrBlue.down().next().getHeight() == 0 || teaserGoldOrBlue.down().next().getHeight() == 1){

    if($browser=="IE 7"){
        if(teaserGoldOrBlue.getAttribute("className") == "gold"){
          $("teaserEnd").down().src = "/libImages/global/teaserEndCloseGold.png";
        }else{
          $("teaserEnd").down().src = "/libImages/global/teaserEndCloseBlue.png";
        }
    }else{
        if(teaserGoldOrBlue.getAttribute("class") == "gold"){
          $("teaserEnd").down().src = "/libImages/global/teaserEndCloseGold.png";
        }else{
          $("teaserEnd").down().src = "/libImages/global/teaserEndCloseBlue.png";
        }
    }
  
  }else{
    $("teaserEnd").down().src = "/libImages/global/teaserEndOpen.png";
  }
    
}

/* +++Funktion und ein/ausblenden des Pfeils vor der Headline+++ */
function arrowShowHide(e,item){
  if(e == item){
    e.down().down().setStyle("visibility: hidden;");
  }else{
    e.down().down().setStyle("visibility: visible;");
  }
}

/* +++Diese Funktion enthält den öffnen/schließen Effekt+++ */
function effectOpen(item){
  
  var effectsArray = new Array();
  
  $$(".teaserHeadline").each(function(e){
    
    if(e == item){
      
      effectsArray[effectsArray.length] = new Effect.Morph(item.next(), {
                                            style: "height: "+setBoxMaxHeight+"px;",
                                            duration: setEffectDuration,
                                            afterFinish: function(){goldOrBlueBoxAtEnd();arrowShowHide(e,item);},
                                            sync: true
                                          });
      
    }else{
      if(e.next().getHeight() > 1){
        effectsArray[effectsArray.length] = new Effect.Morph(e.next(), {
                                              style: "height: 1px;",
                                              duration: setEffectDuration,
                                              afterFinish: function(){goldOrBlueBoxAtEnd();arrowShowHide(e,item);},
                                              sync: true
                                            });
         
      }
    }
    
  });
  
  new Effect.Parallel(
    effectsArray,{
      duration: setEffectDuration
    }
  );
}

/* +++eigentlich aufgerufene Funktion, hier läuft alles zusammen+++ */
function teaserModulSlider(){
  
  $$(".teaserHeadline").each(function(item){
    
    if(item.next().hasClassName("alwaysOpen")){
      item.next().setStyle("height: "+setBoxMaxHeight+"px;")
      item.down().down().setStyle("visibility: hidden;");
    }
        
  });
  
  goldOrBlueBoxAtEnd();
  
  $$(".teaserHeadline").each(function(item){
    
    item.observe("click", function(e){
        effectOpen(item);
    });
    
  });
}

