var ie_version = 0, ns_version = 0, version = 3, script = 0;
if(navigator.appVersion.substring(0,1) > 3 && navigator.userAgent.indexOf("WebTV") == -1)
  script = 1;
if(navigator.appName == "Netscape") {
  if(navigator.appVersion.substring(0,1) > 3)
    ns_version = 4;
  if(navigator.appVersion.substring(0,1) > 4)
    ns_version = 5;
}
if(navigator.userAgent.indexOf("MSIE") != -1) {
  if(navigator.appVersion.substring(0,1) > 3)
    ie_version = 4;
  if(navigator.userAgent.substr(navigator.userAgent.lastIndexOf("MSIE") + 5, 1) > 4)
    ie_version = 5;
}
if(navigator.userAgent.indexOf("Opera") != -1) {
  ns_version = 0;
  ie_version = 0;
  version = 3;
}
if(ns_version == 4)
  version = 1;
if(ie_version == 4)
  version = 2;
if(ns_version > 4 || ie_version > 4)
  version = 3;



function objekt_setzen(objekt, objekt_x, objekt_y) {
  switch(version) {
  case 1:
    window.document.layers[objekt].pageX = objekt_x;
    window.document.layers[objekt].pageY = objekt_y;
    break;
  case 2:
    window.document.all[objekt].style.left = objekt_x;
    window.document.all[objekt].style.top = objekt_y;
    break;
  case 3:
    window.document.getElementById(objekt).style.left = objekt_x;
    window.document.getElementById(objekt).style.top = objekt_y;
    break;
  }
}


function objekt_ausschnitt(objekt, oben, rechts, unten, links) {
  switch(version) {
  case 1:
    document.layers[objekt].clip.top = oben;
    document.layers[objekt].clip.left = links;
    document.layers[objekt].clip.bottom = unten;
    document.layers[objekt].clip.right = rechts;
    break;
  case 2:
    document.all[objekt].style.clip = "rect("+oben+" "+rechts+" "+unten+" "+links+")";
    break;
  case 3:
    document.getElementById(objekt).style.clip = "rect("+oben+" "+rechts+" "+unten+" "+links+")";
    break;
  }
}


function objekt_daten(objekt, pos) {

  var wert = 0;
  if(version > 1) {
    var clip = new Array();
    if(version == 2)
      str = document.all[objekt].style.clip;
    else
      str = document.getElementById(objekt).style.clip;
    str_pos = str.indexOf("(");
    clip[0] = parseInt(str.substring(str_pos + 1, str.length));
    str_pos = str.indexOf(" ", str_pos + 1);
    clip[1] = parseInt(str.substring(str_pos + 1, str.length));
    str_pos = str.indexOf(" ", str_pos + 1);
    clip[2] = parseInt(str.substring(str_pos + 1, str.length));
    str_pos = str.indexOf(" ", str_pos + 1);
    clip[3] = parseInt(str.substring(str_pos + 1, str.length));
  }
  switch(pos) {
  case "oben":
    switch(version) {
    case 1:
      wert = document.layers[objekt].pageY;
      break;
    case 2:
      wert = parseInt(document.all[objekt].style.top);
      break;
    case 3:
      wert = document.getElementById(objekt).offsetTop;
      break;
    }
    break;
  case "unten":
    wert = (objekt_daten(objekt, "oben") + objekt_daten(objekt, "hoehe"));
    break;
  case "links":
    switch(version) {
    case 1:
      wert = document.layers[objekt].pageX;
      break;
    case 2:
      wert = parseInt(document.all[objekt].style.left);
      break;
    case 3:
      wert = document.getElementById(objekt).offsetLeft;
      break;
    }
    break;
  case "rechts":
    wert = (objekt_daten(objekt, "links") + objekt_daten(objekt, "breite"));
    break;
  case "breite":
    switch(version) {
    case 1:
      wert = document.layers[objekt].clip.width;
      break;
    case 2:
      wert = document.all[objekt].clientWidth;
      break;
    case 3:
      return document.getElementById(objekt).offsetWidth;
      break;
    }
    break;
  case "hoehe":
    switch(version) {
    case 1:
      wert = document.layers[objekt].clip.height;
      break;
    case 2:
      wert = document.all[objekt].clientHeight;
      break;
    case 3:
      wert = document.getElementById(objekt).offsetHeight;
      break;
    }
    break;
  case "aoben":
    switch(version) {
    case 1:
      wert = document.layers[objekt].clip.top;
      break;
    case 2:
      wert = clip[0];
      break;
    case 3:
      wert = clip[0];
      break;
    }
    break;
  case "aunten":
    switch(version) {
    case 1:
      wert = document.layers[objekt].clip.bottom;
      break;
    case 2:
      wert = clip[2];
      break;
    case 3:
      wert = clip[2];
      break;
    }
    break;
  case "alinks":
    switch(version) {
    case 1:
      wert = document.layers[objekt].clip.left;
      break;
    case 2:
      wert = clip[3];
      break;
    case 3:
      wert = clip[3];
      break;
    }
    break;
  case "arechts":
    switch(version) {
    case 1:
      wert = document.layers[objekt].clip.right;
      break;
    case 2:
      wert = clip[1];
      break;
    case 3:
      wert = clip[1];
      break;
    }
    break;
  case "abreite":
    wert = (objekt_daten(objekt, "arechts") - objekt_daten(objekt, "alinks"));
    break;
  case "ahoehe":
    wert = (objekt_daten(objekt, "aunten") - objekt_daten(objekt, "aoben"));
    break;
  }
  return wert;
}


function layer_scroll(objekt, geschw_x, geschw_y) {
  layer_links = objekt_daten(objekt, "links") + geschw_x;
  layer_oben = objekt_daten(objekt, "oben") + geschw_y;
  ausschnitt_oben = objekt_daten(objekt, "aoben") - geschw_y;
  ausschnitt_rechts = objekt_daten(objekt, "arechts") - geschw_x;
  ausschnitt_unten = objekt_daten(objekt, "aunten") - geschw_y;
  ausschnitt_links = objekt_daten(objekt, "alinks") - geschw_x;
  objekt_setzen(objekt, layer_links, layer_oben);
  objekt_ausschnitt(objekt, ausschnitt_oben, ausschnitt_rechts, ausschnitt_unten, ausschnitt_links);
}
function InitScroller(hoehe, speed) {
  // Scroll-Timer initialisieren um Fehlermeldung zu vermeiden
  timerScroll = window.setTimeout("scroll('scroller', 0, 0)", 50000);
  // Breite und Hoehe des sichtbaren Ausschnitts des Scroll-Layers
  ausschnitt_breite = 173;																	// Scroller-Dimensionen
  ausschnitt_hoehe = hoehe;																	// Höhe def 70
  // Scrollgeschwindigkeit in Pixeln
  auto_scroll_geschw = -1;																	// Geschwindigkeit: Minus = nach unten
  schnell_scroll_geschw = 4;
  // Millisekunden der Wartezeit zwischen den Scroll-Aufrufen
  // Beim Schnellscrollen automatisch halbe Zeit
  scroll_intervall = speed;																	// Geschwindigkeit: höher = langsamer (def 80)
  // Einige Informationen die zum scrollen benötigt werden
  ausschnitt_oben = 0;
  ausschnitt_rechts = ausschnitt_breite;
  ausschnitt_unten = ausschnitt_hoehe;
  ausschnitt_links = 0;
  // Position des Scrollayers bestimmen
  layer_left = 0;
  layer_top = 0;
  // Test-Variablen für Layergrenze
  scroll_pos_x = 0;
  scroll_pos_y = 0;
  // Breite und Höhe des gesamten Scrollayers feststellen, bevor
  // der Ausschnitt gesetzt wird, dann ist das unter Netscape nicht
  // mehr möglich
  layer_breite = objekt_daten("scroller", "breite");
  layer_hoehe = objekt_daten("scroller", "hoehe");
  // Layer platzieren und Scrollausschnitt festlegen
  if(version != 1)
    objekt_setzen("scroller", layer_left, layer_top);
  // Scroller aktivieren und Starten
  objekt_setzen('scrollerdummy', 4, 25);													// ORGDA: Abstand vom linken Rand, von oben
  objekt_anaus("scrollerdummy", 1);
  objekt_anaus("scroller", 1);
  autoScroll();
}
function autoScroll() {
  if(fertig_geladen) {
    clearTimeout(timerScroll);
    timerScroll = window.setTimeout("scroll('scroller', 0, " + auto_scroll_geschw + ", " + scroll_intervall + ")", 1000);
  }
}

function scroll(objekt, geschw_x, geschw_y, intervall) {
  scroll_pos_x += geschw_x;
  if(scroll_pos_x > 0 || scroll_pos_x < -layer_breite / 2) {
    scroll_pos_x -= geschw_x;
    geschw_x = 0;
  }
  scroll_pos_y += geschw_y;
  if(scroll_pos_y < -(layer_hoehe - ausschnitt_hoehe)) {
    layer_scroll(objekt, geschw_x, -scroll_pos_y);
    scroll_pos_y = 0;
  }
  if(scroll_pos_y > 0) {
    scroll_pos_y = -(layer_hoehe - ausschnitt_hoehe);
    layer_scroll(objekt, geschw_x, scroll_pos_y);
  }
  layer_scroll(objekt, geschw_x, geschw_y);
  timerScroll = window.setTimeout("scroll('scroller', " + geschw_x + ", " + geschw_y + ", " + intervall + ")", intervall);
}
// leicht geänderte Funktionen der Standard-Bibliothek
// nötig für Netscape 4.xx (also version=1), da layer in layer
function objekt_setzen(objekt, objekt_x, objekt_y) {
  if(version == 1) {
    nsobj = eval('window');
    if(objekt == "scroller")
      nsobj = eval("document.layers['scrollerdummy']");
  }
  switch(version) {
  case 1:
    nsobj.document.layers[objekt].pageX = objekt_x;
    nsobj.document.layers[objekt].pageY = objekt_y;
    break;
  case 2:
    window.document.all[objekt].style.left = objekt_x;
    window.document.all[objekt].style.top = objekt_y;
    break;
  case 3:
    window.document.getElementById(objekt).style.left = objekt_x;
    window.document.getElementById(objekt).style.top = objekt_y;
    break;
  }
}
function objekt_daten(objekt, pos) {
  if(version == 1) {
    nsobj = eval('window');
    if(objekt == "scroller")
      nsobj = eval("document.layers['scrollerdummy']");
  }
  // pos muss "oben, unten, rechts, links, breite, hoehe" sein fuer Objektdaten
  // bzw. "aoben, aunten, arechts, alinks" fuer Objektausschnittdaten
  // Vorsicht: - Bei NS beziehen sich breite und hoehe nach setzen eines Auschschnitts
  //             nur noch auf diesen.
  //           - Bei IE beziehen sich breite und hoehe aufs window, wenn diese nicht
  //             explizit gesetzt f&uuml;r das Objekt definiert werden
  //           - Ausschnittangaben funktionieren erst nach erstmaligen setzen eines
  //             solchen
  var wert = 0;
  if(version > 1) {
    var clip = new Array();
    if(version == 2)
      str = document.all[objekt].style.clip;
    else
      str = document.getElementById(objekt).style.clip;
    str_pos = str.indexOf("(");
    clip[0] = parseInt(str.substring(str_pos + 1, str.length));
    str_pos = str.indexOf(" ", str_pos + 1);
    clip[1] = parseInt(str.substring(str_pos + 1, str.length));
    str_pos = str.indexOf(" ", str_pos + 1);
    clip[2] = parseInt(str.substring(str_pos + 1, str.length));
    str_pos = str.indexOf(" ", str_pos + 1);
    clip[3] = parseInt(str.substring(str_pos + 1, str.length));
  }
  switch(pos) {
  case "oben":
    switch(version) {
    case 1:
      wert = nsobj.document.layers[objekt].pageY;
      break;
    case 2:
      wert = parseInt(document.all[objekt].style.top);
      break;
    case 3:
      wert = document.getElementById(objekt).offsetTop;
      break;
    }
    break;
  case "unten":
    wert = (objekt_daten(objekt, "oben") + objekt_daten(objekt, "hoehe"));
    break;
  case "links":
    switch(version) {
    case 1:
      wert = nsobj.document.layers[objekt].pageX;
      break;
    case 2:
      wert = parseInt(document.all[objekt].style.left);
      break;
    case 3:
      wert = document.getElementById(objekt).offsetLeft;
      break;
    }
    break;
  case "rechts":
    wert = (objekt_daten(objekt, "links") + objekt_daten(objekt, "breite"));
    break;
  case "breite":
    switch(version) {
    case 1:
      wert = nsobj.document.layers[objekt].clip.width;
      break;
    case 2:
      wert = document.all[objekt].clientWidth;
      break;
    case 3:
      return document.getElementById(objekt).offsetWidth;
      break;
    }
    break;
  case "hoehe":
    switch(version) {
    case 1:
      wert = nsobj.document.layers[objekt].clip.height;
      break;
    case 2:
      wert = document.all[objekt].clientHeight;
      break;
    case 3:
      wert = document.getElementById(objekt).offsetHeight;
      break;
    }
    break;
  case "aoben":
    switch(version) {
    case 1:
      wert = nsobj.document.layers[objekt].clip.top;
      break;
    case 2:
      wert = clip[0];
      break;
    case 3:
      wert = clip[0];
      break;
    }
    break;
  case "aunten":
    switch(version) {
    case 1:
      wert = nsobj.document.layers[objekt].clip.bottom;
      break;
    case 2:
      wert = clip[2];
      break;
    case 3:
      wert = clip[2];
      break;
    }
    break;
  case "alinks":
    switch(version) {
    case 1:
      wert = nsobj.document.layers[objekt].clip.left;
      break;
    case 2:
      wert = clip[3];
      break;
    case 3:
      wert = clip[3];
      break;
    }
    break;
  case "arechts":
    switch(version) {
    case 1:
      wert = nsobj.document.layers[objekt].clip.right;
      break;
    case 2:
      wert = clip[1];
      break;
    case 3:
      wert = clip[1];
      break;
    }
    break;
  case "abreite":
    wert = (objekt_daten(objekt, "arechts") - objekt_daten(objekt, "alinks"));
    break;
  case "ahoehe":
    wert = (objekt_daten(objekt, "aunten") - objekt_daten(objekt, "aoben"));
    break;
  }
  return wert;
}
function objekt_ausschnitt(objekt, oben, rechts, unten, links) {
  if(version == 1) {
    nsobj = eval('window');
    if(objekt == "scroller")
      nsobj = eval("document.layers['scrollerdummy']");
  }
  switch(version) {
  case 1:
    nsobj.document.layers[objekt].clip.top = oben;
    nsobj.document.layers[objekt].clip.left = links;
    nsobj.document.layers[objekt].clip.bottom = unten;
    nsobj.document.layers[objekt].clip.right = rechts;
    break;
  case 2:
    document.all[objekt].style.clip = "rect("+oben+" "+rechts+" "+unten+" "+links+")";
    break;
  case 3:
    document.getElementById(objekt).style.clip = "rect("+oben+" "+rechts+" "+unten+" "+links+")";
    break;
  }
}


function objekt_anaus(objekt, zustand) {
  if(version == 1) {
    nsobj = eval('window');
    if(objekt == "scroller")
      nsobj = eval("document.layers['scrollerdummy']");
  }
  switch(version) {
  case 1:
    if(zustand == 0)
      nsobj.document.layers[objekt].visibility = "hide";
    else
      nsobj.document.layers[objekt].visibility = "show";
    break;
  case 2:
    if(zustand == 0)
      document.all[objekt].style.visibility = "hidden";
    else
      document.all[objekt].style.visibility = "visible";
    break;
  case 3:
    if(zustand == 0)
      document.getElementById(objekt).style.visibility = "hidden";
    else
      document.getElementById(objekt).style.visibility = "visible";
    break;
  }
}


function layer_scroll(objekt, geschw_x, geschw_y) {
  layer_links = objekt_daten(objekt, "links") + geschw_x;
  layer_oben = objekt_daten(objekt, "oben") + geschw_y;
  objekt_setzen(objekt, layer_links, layer_oben);
}


// added ORGDA, 20.02.2004

function IncSpeed() {
	if (auto_scroll_geschw==0)
	{
		auto_scroll_geschw = -1;
		autoScroll();
	}
	else if (auto_scroll_geschw>0)
	{
		auto_scroll_geschw = 0;
		autoScroll();
	}
}

function DecSpeed() {
	if (auto_scroll_geschw==0)
	{
		auto_scroll_geschw = 1;
		autoScroll();
	}
	else if (auto_scroll_geschw<0)
	{
		auto_scroll_geschw = 0;
		autoScroll();
	}
}

//function OpenExt(url, param)
//   { 
	// Öffnen ein neues Fenster mit der Schablone indexExt (gleichfarbiger Rand wie Hauptfenster)
	// und in dessen Inhaltsbereich die angegebene Url. Über param können, falls gewünscht, 
	// die Öffnungsoptionen definiert werden. Falls nicht, werden die hier definierten 
	// Standardoptionen verwendet.
//	if ((param != null) && (param.length > 0))
//		var opt = param;
//	else
//		var opt = "width=650,height=450,screenX=10,screenY=10,resizable=yes,scrollbars=yes,menubar=no,toolbar=no,locationbar=no,status=no";
//	Fneu = window.open(url,"_blank",opt);
	//Fneu.location.href= url;
//   }


   
fenster = 0;
fertig_geladen = false;