function getLayerRef (id, document) {
  if (!document)
    document = window.document;
  if (document.layers) {
    for (var l = 0; l < document.layers.length; l++)
      if (document.layers[l].id == id)
        return document.layers[l];
    for (var l = 0; l < document.layers.length; l++) {
      var result = getLayerRef(id, document.layers[l].document);
      if (result)
        return result;
    }
    return null;
  }
  else if (document.all) {
    return document.all[id];
  }
  else if (document.getElementById) {
    return document.getElementById(id);
  } else {
    return null;
  }
}

function setVisibility(objLayer, visible) {
	if(document.layers){
    objLayer.visibility  =
        (visible == true) ? 'show' : 'hide';
  } else {
    objLayer.style.visibility =
        (visible == true) ? 'visible' : 'hidden';
  }
}


function writeLayer(id, text, frame){
	// schreibt... 'text'
	// in den Layer... 'id'
	// in dem Frame... 'frame'(optional)
	var d = (frame) ?  getLayerRef(id, "window.frames['"+frame+"'].document") : getLayerRef(id);
	if(document.layers){ // Ns4: *schreibe in Layer - Special*
		d.document.open();
		d.document.write(text);
		d.document.close();
	}
	else{ // das Gleiche fuer alle andren Browser
	eval(d).innerHTML = text;}
	setVisibility(d, 1)
	return d;
}


function writeError(id, errorMesg, buttons){
    // Schreibt eine Fehlermeldung,  schickt sie an die Funktion writeLayer() und blendet den ErrorLayer ein
	// (string)	id = Name des Layers
	// (string) errorMesg = Fehlermeldung(Text)
	// (array) 	buttons = Array mit den Namen der Buttons und deren Links(new Array('abbrechen', 'window.close()'))
	var mesg = "<table class=\"error\"><tr><td class=\"errorStyle\"><br />"+errorMesg+"<form name=\"errorForm\" style=\"text-align: center;\" onclick=\"return false;\">";
	for(i = 0; i < buttons.length; i++ ){
		mesg += "<input type=\"submit\" onclick=\""+buttons[i+1]+"\" class=\"button\" value=\""+buttons[i]+"\" />\n";
		i++;
	}
	mesg += "<br /><br /></td></tr></table>";

	if(d = writeLayer(id, mesg)){
	     setVisibility(d, 1)
		return true;
	}
	else   {
    
    return false;
    
    } 

}

function hideElem (id){
	b = getLayerRef(id);
	setVisibility(b, 0)
}

