function BlinkText (Text, ID)
// innerHTML von übergebenem Element wird im Wechsel leer gemacht und wieder gefüllt
{
  if (document.getElementById(ID).innerHTML == "")
    document.getElementById(ID).innerHTML = Text
  else
    document.getElementById(ID).innerHTML = "";
} // function BlinkText

function CachePics()
{
  var doc=document;
  if(doc.images) // Ich nehme an, prüfen ob das Dokument überhaupt Bilder enthält
  {
    if(!doc.Pics) doc.Pics=new Array(); // neues, dynamisches Array anlegen
    var i,sz=doc.Pics.length,args=CachePics.arguments; // Parameterübergabe mal anders...
    for(i=0; i<args.length; i++) // Schleife für Menge von Parametern
    {
      window.status="Caching "+args[i]+" ...";
      doc.Pics[sz]=new Image; // Neue Instanz eines "Image"-Objektes
      doc.Pics[sz++].src=args[i]; // In die Member-Variable "src" von dem Image-Objekt das Bild reinladen (dadurch wird es gecached !)
    }
    window.status="";
  }
} // function CachePics

function DisplayLogin(ID, page)
{
  var HTMLCode;

  HTMLCode = document.getElementById(ID).innerHTML;
  if (HTMLCode == "")
  {
    HTMLCode = "<form action="+page+" method='post'>";
    HTMLCode += "Passwort:&nbsp;";
    HTMLCode += "<input name='pwd' size='20' maxlength='20' type='password'>";
    HTMLCode += "&nbsp;<input type='submit' value='Login'>";
    HTMLCode += "</form>";
  }
  else
  {
    HTMLCode = "";
  }
  document.getElementById(ID).innerHTML = HTMLCode;
}

function FitImage(Pic, CurrentWidth, CurrentXRes)
{
  // Passt ein Bild proportional an eine neue Bildschirmauflösung an, relativ zu der Entwickler- Umgebung.
  // Pic: HTML- ID des Bildes
  // CurrentWidth: Breite des Bildes, die es bei Entwickler-Umgebung haben soll. 0, wenn Breite = Breite des Bildes
  // CurrentXRes: Entwickler- Auflösung, X-Achse.

  var XYRatio;
  ImgWidth = document.getElementById(Pic).width;
  ImgHeight = document.getElementById(Pic).height;
  ResolutionX = screen.width;
  ResolutionY = screen.height;

  if (CurrentWidth > 0)
  {
    ImgHeight = ImgHeight*CurrentWidth/ImgWidth;
    ImgWidth = CurrentWidth;
  }
  XYRatio = ImgWidth/ImgHeight;

  document.getElementById(Pic).width = ImgWidth * ResolutionX/CurrentXRes;
  document.getElementById(Pic).height = (ImgWidth * ResolutionX/CurrentXRes)/XYRatio;
} // function FitImage

function ScrollText (Text, URL, ID)
// Einleitende Funktion für Laufschrift
{
  var Inhalt;
  Anzeigebreite = 40;
  Anzeigetext = Text;
  Laenge = Strlen(Anzeigetext);
  Element = ID;
  index = -1;
  document.getElementById(ID).href = URL;
  ScrollLoop = window.setInterval("Step()",60);
} // function ScrollText

function ShowPic(Name)
{
  // Name muß immer folgenmaßen formatiert sein:
  // "/.../.../....", also in absoluten Pfaden
  WinHeight = 650;
  WinWidth = 850;
  if (screen.width > 0 && screen.width < 1024)
    WinWidth = WinWidth/1024*screen.width;
  if (screen.height > 0 && screen.height < 768)
    WinHeight = WinHeight/768*screen.height;
  window.open ("/Browse.php?image="+Name+"&height="+WinHeight+"&width="+WinWidth, "Image", "dependent=yes,height="+WinHeight+",width="+WinWidth+",location=no,menu=no,resizable=no,scrollbars=yes,status=yes,toolbar=no");
} // function ShowPic

function Step()
// Schritte der Laufschrift
{
  Inhalt = "";
  if (++index >= Anzeigebreite+Laenge+1)
    index = 0;
  for (c=1; c<=Anzeigebreite-index; c++)
    Inhalt += "&nbsp;";
  if (index <= Anzeigebreite)
    Inhalt += Anzeigetext.substr(0,index);
  if (index > Anzeigebreite)
    Inhalt += Anzeigetext.substr(index-Anzeigebreite, Laenge);
  for (c=1; c<=index-Laenge; c++)
    Inhalt += "&nbsp;";
  Inhalt = Inhalt.replace (" ", "&nbsp;");
  document.getElementById(Element).innerHTML = Inhalt;
} // function Step

function Strlen(Str)
// Länge des übergebenen Strings ermitteln
{
  tmp = -1;
  while (Str.charAt(++tmp))
  {}
  return tmp;
} // function StrLen
