/*
/* Allgemeine DHTML-Bibliothek
/*
/*    Quelle und Beschreibung:
/*      http://de.selfhtml.org/dhtml/beispiele/dhtml_bibliothek.htm
/*
/*    geaendert von Ralf Roehrig (RR)
/*      2010/02/25: Die Funktionsnamen besitzen jetzt ale den Prefix "dhtml" um 
/*                  Namenskonflikte und Iretationen zu vermeiden 
/*
*/          

var DHTML = false, DOM = false, MSIE4 = false, NS4 = false, OP = false;

if (document.getElementById) {
  DHTML = true;
  DOM = true;
} else {
  if (document.all) {
    DHTML = true;
    MSIE4 = true;
  } else {
    if (document.layers) {
      DHTML = true;
      NS4 = true;
    }
  }
}
if (window.opera) {
  OP = true;
}
// wenn nachfolgendes alert( ... ) nicht benoetigt wird, dann auskommentieren
// alert( 'DHTML='+DHTML+', DOM='+DOM+', MSIE4='+MSIE4+', NS4='+NS4+', OP='+OP );


function dhtmlGetElement (Mode, Identifier, ElementNumber) {
  var Element, ElementList;
  var modeLowerCase = (Mode)? Mode.toLowerCase(): ""; // added by RR 2010/02/25

  if (DOM) {
    if (modeLowerCase == "id") {      // changed by RR 2010/02/25
      Element = document.getElementById(Identifier);
      if (!Element) {
        Element = false;
      }
      return Element;
    }
    if (modeLowerCase == "name") {    // changed by RR 2010/02/25
      ElementList = document.getElementsByName(Identifier);
      Element = ElementList[ElementNumber];
      if (!Element) {
        Element = false;
      }
      return Element;
    }
    if (modeLowerCase == "tagname") { // changed by RR 2010/02/25
      ElementList = document.getElementsByTagName(Identifier);
      Element = ElementList[ElementNumber];
      if (!Element) {
        Element = false;
      }
      return Element;
    }
    return false;
  }
  if (MSIE4) {
    if (modeLowerCase == "id" || modeLowerCase == "name") { // changed by RR 2010/02/25
      Element = document.all(Identifier);
      if (!Element) {
        Element = false;
      }
      return Element;
    }
    if (modeLowerCase == "tagname") {                       // changed by RR 2010/02/25
      ElementList = document.all.tags(Identifier);
      Element = ElementList[ElementNumber];
      if (!Element) {
        Element = false;
      }
      return Element;
    }
    return false;
  }
  if (NS4) {
    if (modeLowerCase == "id" || modeLowerCase == "name") { // changed by RR 2010/02/25
      Element = document[Identifier];
      if (!Element) {
        Element = document.anchors[Identifier];
      }
      if (!Element) {
        Element = false;
      }
      return Element;
    }
    if (modeLowerCase == "layerindex") {                    // changed by RR 2010/02/25
      Element = document.layers[Identifier];
      if (!Element) {
        Element = false;
      }
      return Element;
    }
    return false;
  }
  return false;

}// function dhtmlGetElement (Mode, Identifier, ElementNumber)


function dhtmlGetAttribute (Mode, Identifier, ElementNumber, AttributeName) {
  var Attribute;
  var Element = dhtmlGetElement(Mode, Identifier, ElementNumber);
  if (!Element) return false;

  if (DOM || MSIE4) {
    Attribute = Element.getAttribute(AttributeName);
    return Attribute;
  }
  if (NS4) {
    Attribute = Element[AttributeName]
    if (!Attribute) {
       Attribute = false;
    }
    return Attribute;
  }
  return false;

}// function dhtmlGetAttribute (Mode, Identifier, ElementNumber, AttributeName)


function dhtmlGetContent (Mode, Identifier, ElementNumber) {
  var Content;
  var Element = dhtmlGetElement(Mode, Identifier, ElementNumber);
  if (!Element) return false;
  
  if (DOM && Element.firstChild) {
    if (Element.firstChild.nodeType == 3) {
      Content = Element.firstChild.nodeValue;
    } else {
      Content = "";
    }
    return Content;
  }
  if (MSIE4) {
    Content = Element.innerText;
    return Content;
  }
  return false;

}// function dhtmlGetContent (Mode, Identifier, ElementNumber)


function dhtmlSetContent (Mode, Identifier, ElementNumber, Text) {
  var Element = dhtmlGetElement(Mode, Identifier, ElementNumber);
  if (!Element) return false;
  
  if (DOM && Element.firstChild) {
    Element.firstChild.nodeValue = Text;
    return true;
  }
  if (MSIE4) {
    Element.innerText = Text;
    return true;
  }
  if (NS4) {
    Element.document.open();
    Element.document.write(Text);
    Element.document.close();
    return true;
  }
  return false;

}// function dhtmlSetContent (Mode, Identifier, ElementNumber, Text)

