// ALLGEMEINE JAVA-SCRIPT-FUNKTIONEN

var net = navigator.appName == "Netscape";
var v6 = navigator.appVersion.indexOf("5") == 0;

// zeigt oder versteckt layer
function showLayer(layer,stat){

  if (stat) { getLayer(layer).display = "block"; }
  else { getLayer(layer).display = "none"; }
}

// gibt das style-objekt zu einem layer zurueck
function getLayer(layer) {
  if (net) {
    if (v6) {   return document.getElementById(layer).style; }
    else {    return eval("document." + layer); }
  } else {    return eval("document.all." + layer + ".style"); }
}

// gibt ein bild-objekt zurueck
function getImage(layer,image) {
  if (net && !v6) {return eval("document." + layer + ".document." + image + ";"); }
  else { return eval("document." + image + ";"); }
}

// existiert dieser layer ?
function layerExists(layer) {
  var diff;

  if (net) {
    if (v6) {   return document.getElementById(layer); }
    else {    return eval("document." + layer); }
  } else {    return eval("document.all." + layer); }
}

// bewegt das angegebene layer horizontal
function moveHorizontal(layer,dx,xmax,interval) {
  var objlayer = getLayer(layer);
  var tmpx = objlayer.left;

  tmpx = getIntFromPX(tmpx) + dx;
  objlayer.left = tmpx;

  if ((dx > 0 && tmpx < xmax) || (dx < 0 && tmpx > xmax)) {
    setTimeout("moveHorizontal('" + layer + "'," + dx + "," + xmax + "," + interval + ")",interval);
  }
}

// bewegt das angegebene layer vertical
function moveVertical(layer,dy,ymax,interval) {
  var objlayer = getLayer(layer);
  var tmpy = objlayer.top;

  tmpy = getIntFromPX(tmpy) + dy;
  objlayer.top = tmpy;

  if ((dy > 0 && tmpy < ymax) || (dy < 0 && tmpy > ymax)) {
    setTimeout("moveVertical('" + layer + "'," + dy + "," + ymax + "," + interval + ")",interval);
  }
}

// gibt eine zahl aus einer pixel-angabe (evt. mit "px") zurueck
function getIntFromPX(px) {
  px += "px";
  return parseInt(px.substring(0,px.indexOf("px")));
}

// Weg des Wassers
var backdiv="1";
function showDiv(div) {
  if (backdiv!="") {
    showLayer("text" + backdiv,0);
  }

  showLayer("text" + div,1);

  backdiv=div;
}

/* Popup */
var pop = null;

function popdown() {
  if (pop && !pop.closed) pop.close();
}

function popup(obj,w,h) {
  var url = (obj.getAttribute) ? obj.getAttribute('href') : obj.href;
  if (!url) return true;
  w = (w) ? w += 20 : 150;
  h = (h) ? h += 25 : 150;
  var args = 'width='+w+',height='+h+',resizable=yes,scrollbars=1';
  popdown();
  pop = window.open(url,'',args);
  return (pop) ? false : true;
}

//window.onunload = popdown;
//window.onfocus = popdown;

/* Menu */
var hideMenuFlag  = 1;
var timeout       = '';

function showSub(name) {
    $$('.submenu').setStyle('display','none');
    var showDiv = 'sub-'+name;
    $(showDiv).setStyle('display', 'block');
    if (name == 'intern') {
        $('flags').setStyle('display', 'none');
    } else {
        $('flags').setStyle('display', 'block');
    }
}

function hideSub(name) {
  if (timeout) {
    $clear(timeout);
  }

  timeout = (function(){
    if (hideMenuFlag) {
        $('sub-'+name).setStyle('display','none');
        hideMenuFlag = 0;
        $('flags').setStyle('display', 'block');
    }
  }).delay(100);
}
