//////////////////////////////////////////////////
// Standard Browsercheck
//
// Beschreibung: ermittelt den aktuellen Browser in Grobklassifikation
//               zusaetzliche Unterteilung in drei hauptkategorien
//               getestet auf ns4.x win/mac, ns6 und gecko win/mac, ie4/ie5 win/mac
//
// Autor: Erik Wunderlich, erik@agi.de / erwu@gmx.net
//        AGI Think Tank Task Force Agency
//
// erstellt: 20.11.2000
//
// letzte Aenderung: 28.3.2001 Differenzierung Hauptbrowser eingefuegt
//////////////////////////////////////////////////

var userAgent = navigator.userAgent.toLowerCase();

var ns4Win = ((userAgent.indexOf("win") > -1) && (document.layers) && (userAgent.indexOf("netscape")));
var ns4Mac = ((userAgent.indexOf("mac") > -1) && (document.layers) && (userAgent.indexOf("netscape")));
var ns4Lin = ((userAgent.indexOf("linux") > -1) && (document.layers) && (userAgent.indexOf("netscape")));

var ieWin = ((userAgent.indexOf("win") > -1) && (document.all));
var ieMac = ((document.all) && (!ieWin) && (userAgent.indexOf("icab") < 0));

// fuer alle w3c compliant engines eg netscape mozilla gecko
var w3c = document.documentElement;

// browserdetails
var ieWin40 = ((ieWin)&&(userAgent.indexOf("4.") > -1)&&(userAgent.indexOf("3.") < 0)&&(userAgent.indexOf("5.") < 0));
var ieWin50 = ((ieWin)&&(userAgent.indexOf("5.") > -1)&&(userAgent.indexOf(".5") < 0));
var ieWin55 = ((ieWin)&&(userAgent.indexOf("5.5") > -1));

var ns6Win = ((userAgent.indexOf("win") > -1) && (userAgent.indexOf("netscape6") > -1));
var ns6Mac = ((userAgent.indexOf("mac") > -1) && (userAgent.indexOf("netscape6") > -1));

var opera = ((userAgent.indexOf("win") > -1) && (userAgent.indexOf("opera") > -1));
var icab = (userAgent.indexOf("icab") > -1);
var aol = (userAgent.indexOf("aol") > -1);

// differenzierung der 3 hauptbrowser
var isNav = ((ns4Win)||(ns4Mac)||(ns4Lin));
var isIE = ((ieWin)||(ieMac));
var isW3C = ((w3c)&&(!isIE));


  ////// Instant Function execute ////////////////////////////////////////////////
  //                                                                            //
  // der folgende Code implementiert einen direkten JavaScript Funktionsaufruf  //
  // in die aktuelle Seite. Die hier eingegebenen Funktionen werden direkt      //
  // in der Seite ausgefuehrt, sofern sie in dieser auch definiert sind.        //
  //                                                                            //
  // Aufruf: dreimal hintereinander auf die "j"-Taste druecken, in erscheinende //
  // Dialogbox gewuenschte Funktion(en) eingeben und OK klicken                 //
  //                                                                            //
  //                                                                            //
  // nicht vergessen: vor Veroeffentlichung der Seite den Code entfernen!!!     //
  ////////////////////////////////////////////////////////////////////////////////
  
  var surf = navigator.appName.toLowerCase();
  var keyCount = 0, Check = "", pwd = "jjj";
  
  //statt jjj kann auch andere Zeichenkette in Kleinbuchstaben(!) als pwd angegeben
  //werden, diese triggert dann das Erscheinen der Dialogbox
  
  function jsPrompt(e) {
    if (surf.indexOf("netscape") > -1) keyCheck(e.which);
    if ((surf.indexOf("explorer") > -1)&&(document.all)) keyCheck(window.event.keyCode);
  }
  
  function keyCheck(taste)
  {
    if (taste == pwd.charCodeAt(keyCount)) keyCount++; else keyCount = 0;
    if (keyCount >= pwd.length)
    {
      keyCount = 0;
      Check = prompt("execute JavaScript command:",Check);
      eval (Check);
    }
  }
  
  if ((surf.indexOf("netscape") > -1)&&(document.layers)) {
    window.captureEvents(Event.KEYPRESS);
    window.onkeypress = jsPrompt;
  } else {
    document.onkeypress = jsPrompt;
  }
  
  ////// Ende instant function execute  //////////////////////////////////////////