/**
 *  Javascript Standard-Bibliothek
 *  ------------------------------ 
 *  Enthält alle Basisfunktionen des Frontends ..
*/

// Kudnendaten Liefer-Wunschtermin freigeben/sperren
function switch_kundendaten_termineingabe( Wert ) {
  
  var container = document.getElementById( 'div_liefertermin' );
  
  if ( Wert == 'VORBESTELLUNG LIEFERUNG' || Wert == 'VORBESTELLUNG ABHOLUNG' ) {
    container.style.display = 'block';
    document.bestellabwicklung_2.liefertermin_eingabe.style.display = 'block';
    document.bestellabwicklung_2.liefertermin_eingabe.readOnly = false;
  } else {
    container.style.display = 'none';
    document.bestellabwicklung_2.liefertermin_eingabe.value = '';
    document.bestellabwicklung_2.liefertermin_eingabe.style.display = 'none';
    document.bestellabwicklung_2.liefertermin_eingabe.readOnly = true;
  }
  return ;
} // end

// Kundendaten Passwort-Felder ein- und ausblenden
function switch_kundendaten_passworteingabe( Element ) {
  var elem;
  if ( elem = document.getElementById( Element ) ) {
    if ( document.bestellabwicklung_2.kunde_speichern.checked == true )
      elem.style.visibility = 'visible';
    else if ( document.bestellabwicklung_2.kunde_speichern == false )
      elem.style.visibility = 'hidden';
    else
      elem.style.visibility = 'hidden';
  }
  return ;
} // end

// NUR IE ... Inhalt Höhe kontrollieren 
/**
function ie_hoehe_pruefen() {
  var elem, hoehe_css, hoehe_int, limit=620;
  if ( elem = document.getElementById( 'dokument_inhalte') ) {
    if ( hoehe_css = elem.style.height ) {
      hoehe_int = parseInt( hoehe_css.replace( 'px', '' ) );
      if ( hoehe_int > limit )
        elem.style.height = String(limit) + 'px';
      alert( hoehe_int );
    }
  }
} // end
**/

// Absoluten Offset eines HTML Elements ermitteln
function getElementOffset( element )
{
  var elem=element, tagname="", x=0, y=0;
  
  /* solange elem ein Objekt ist und die Eigenschaft offsetTop enthaelt
   wird diese Schleife fuer das Element und all seine Offset-Eltern ausgefuehrt */
  while ((typeof(elem)=="object")&&(typeof(elem.tagName)!="undefined"))
  {
    y+=elem.offsetTop;     /* Offset des jeweiligen Elements addieren */
    x+=elem.offsetLeft;    /* Offset des jeweiligen Elements addieren */
    tagname=elem.tagName.toUpperCase(); /* tag-Name ermitteln, Grossbuchstaben */

  /* wenn beim Body-tag angekommen elem fuer Abbruch auf 0 setzen */
  if (tagname=="BODY")
    elem=0;

  /* wenn elem ein Objekt ist und offsetParent enthaelt Offset-Elternelement ermitteln */
  if (typeof(elem)=="object")
    if (typeof(elem.offsetParent)=="object")
      elem = elem.offsetParent;
  }

  /* Objekt mit x und y zurueckgeben */
  position = new Object();
  position.x = x;
  position.y = y;
  return position;
} // end

// Scroll-Position des Dokuments ermitteln
function getScrollXY() {
    var scrOfX = 0, scrOfY = 0;
 
    if( typeof( window.pageYOffset ) == 'number' ) {
        //Netscape compliant
        scrOfY = window.pageYOffset;
        scrOfX = window.pageXOffset;
    } else if( document.body && ( document.body.scrollLeft || document.body.scrollTop ) ) {
        //DOM compliant
        scrOfY = document.body.scrollTop;
        scrOfX = document.body.scrollLeft;
    } else if( document.documentElement && ( document.documentElement.scrollLeft || document.documentElement.scrollTop ) ) {
        //IE6 standards compliant mode
        scrOfY = document.documentElement.scrollTop;
        scrOfX = document.documentElement.scrollLeft;
    }
    return [ scrOfX, scrOfY ];
}
