/**
  Dieses Script aendert Hintergrundbilder bei Hintergrundgallerien 

  @author Jens Brueckmann www.yalf.de
  @version 1.0 2006-02-10
  @license http://creativecommons.org/licenses/by-nc-sa/2.0/de/

*/

  /**
  Aufruf der Funktion setCellBackground() bei window.onload.
  */


  window.onload = function()
  {
    setCellBackground(); 
  }


/* SET CELL BACKGROUNDS */

  /**
  @param  object   elemCell   Tabellenzelle
  @param  integer  cellCount  Anzahl der Tabellenzellen (entspricht Anzahl der 
                              Hintergrundbilder)
  @param  string   imgSource  URL des Hintergrundbildes  
  */

  /**
  Die Funktion setzt die Hintergruende der einzelnen Zellen anhand der URLs der
  verlinkten Bilder. Da einzelne Hintergruende teilweise transparent sind, wird
  zusaetzlich eine Hintergrundfarbe  - derzeit #E1DED8 - angegeben.

  Die Event-Handler rufen weitere Funktionen auf.
  */

  function setCellBackground()
  {
    var elemCell  = document.getElementsByTagName('td');
    var cellCount = elemCell.length;

    for (var i = 0; i < cellCount; i++)
    {
      var imgSource = elemCell[i].getElementsByTagName('a')[0].href;

      elemCell[i].style.backgroundColor = "#E1DED8";
      elemCell[i].style.backgroundImage = "url(" + (imgSource) + ")";
      elemCell[i].onmouseover = setBodyBackground;
      elemCell[i].onmouseout  = clearBodyBackground;

      // folgende Zeile optional bzw. als Ersatz fuer das Hinweiselement 
      //elemCell[i].getElementsByTagName('a')[0].title = "Rechtsklick => Ziel speichern";
    }
  }


/* SET BODY BACKGROUND */

  /**
  @param  object  elemHint  Element fuer Speicherhinweis
  @param  object  textHint  Hinweistext zum Speichern der Bilder
  
  */

  /**
  Die Funktion setzt aendert den Hintergrund des BODY-Elementes beim Ueberfahren 
  einer Tabellenzelle, wobei der Hintergrund der aktuellen Tabellenzelle als 
  Hintergrund fuer das BODY-Element genommen wird. Zusaetzlich wird ein Element 
  mit einem Hinweistext zum Abspeichern der Bilder erzeugt und angezeigt.
  */

  function setBodyBackground()
  {
    document.body.style.backgroundImage = this.style.backgroundImage;

    var elemHint = document.createElement('span');
    var textHint = document.createTextNode('Rechtsklick => Ziel speichern');

    elemHint.setAttribute('id', 'hint');
    elemHint.appendChild(textHint);

    this.getElementsByTagName('a')[0].appendChild(elemHint);
  }


/* CLEAR BODY BACKGROUND */

  /**
  @param  object  elemA  Ankerelement der Tabellenzelle
  
  */

  /**
  Die Funktion setzt aendert den Hintergrund des BODY-Elementes beim Verlassen 
  der Tabellenzelle, wobei der Hintergrund des BODY-Elementes wieder der ur-
  spruengliche Hintergrund ist. 
  Das Element mit dem  Hinweistext zum Abspeichern wird geloescht.
  */

  function clearBodyBackground()
  {
    var elemA = this.getElementsByTagName('a')[0];
    document.body.style.backgroundImage = "url(../gif/_bg/sand.gif)";

    if (elemA.hasChildNodes())
    {
      elemA.removeChild(elemA.firstChild);
    }
  }

/**
===================================== end ======================================
*/
