/* ----- Zentral definierte JavaScript-Funktionen ----- */
  
   /* ----- User mit altem IE-Browser eine Neuinstallation empfehlen ----- */
   function version_ie_browser( ){

      var vers = navigator.appVersion;
      var pos = vers.indexOf('MSIE');

      // alle Browser außer IE verlassen diese Funktion 
      if (navigator.appName.indexOf("Explorer") < 0){ return 0; }

      return parseFloat( vers.substring(pos + 5) );
   }


   /* ----- Funktion: Zufallszahl im Raum von aa<=x<=bb erzeugen ----- */
    function zufall(aa, bb) {   
      var zz;                         /* Ergebnisvariable */
      aa=Math.round(aa);
      bb=Math.round(bb);
      zz=aa;                          /* mindestens aa als Ergebnis zurückgeben */
      if(bb>aa){
        zz = aa + Math.floor(Math.random() * (bb-aa+1) );
      }
      return zz;                      /* Ergebnis zurückgeben */
    }


   /* ----- Funktion: Die Seite auf eine Mindestbreite setzen, 
            damit Seiteninhalte bei schmalem Browserfenster nicht "nach unten rausflutschen"
            Workaround für das im Internetexplorer bis incl. Version 8 fehlende min-width ----- */

   function seite_auf_mindestbreite( xmin ){

      var vers = navigator.appVersion;
      var pos = vers.indexOf('MSIE');
      var genauezahl; 

      var scrx = screen.width  != undefined ? screen.width  : screen.availWidth;       //Bildschrmbreite
      var scry = screen.height != undefined ? screen.height : screen.availheight;      //Bildschrmhöhe
      var winx0 = window.screenLeft != undefined ? window.screenLeft : window.screenX; //linker Rand des Fensters

      // alle Browser außer IE verlassen diese Funktion 
      if (navigator.appName.indexOf("Explorer") < 0){ return; }

      //alert(  navigator.appName );

      // IE > 8 verlässt diese Funktion 
      if (pos > -1){
         genauezahl = parseFloat( vers.substring(pos + 5) );
         //alert (  genauezahl );
         if (genauezahl > 8){ return; }
      }

      var iWidth =  window.innerWidth  || (window.document.documentElement.clientWidth  || window.document.body.clientWidth);
      var iHeight = window.innerHeight || (window.document.documentElement.clientHeight || window.document.body.clientHeight);

      //alert(state + "Breite: " + iWidth + " Höhe: " + iHeight);
      //alert( "xmin: " + xmin +  "    iWidth: " + iWidth + "    iHeight: " + iHeight + "  ");

      if (iWidth != 0  &&  iWidth < xmin  &&  iHeight != 0) { 
          //Erst nach links, dann breiter, weil manche IE-Versionen nicht 
          //über den rechten Rand hinaus verbreitern wollen.
          //Window (wenn möglich) so weit nach links rücken, dass es ganz im Bildschirm ist.
          //mit +40 zur Korrektur der Randbreite
          if ( winx0 + (xmin+40) >= scrx ) { 
              window.moveTo( Math.max( 10 , scrx-(xmin+40)-5 ) , 10);
          }

          //Fenstergröße ändern
          window.resizeTo( xmin+40 , Math.min(iHeight+190,scry) );
      }
   }


/* ----- Funktion: Fenstergröße einstellen; an Bildschirmauflösung 800 x 600 anpassen ----- */
function fensterformat(breite,hoehe,xx,yy) {
 
  var maxhoehe=570;

  if(screen.height<=600 && hoehe>=500){ 
    yy=10;}                                    /* Default für yy setzen */

  if(screen.height<=600 && hoehe>maxhoehe-yy){
    hoehe=maxhoehe-yy;}                        /* Default für yy setzen */

  if(navigator.appVersion.substring(0,1) > "2"){
    window.resizeTo(breite,hoehe);             /* Fenstergröße einstellen */
    window.moveTo(xx,yy);                      /* Fenster verschieben */
  }
}

/* ----- Funktion: Ein zweites DetailFenster mit angegebenen Maßen öffnen ----- */
/* ----- Fenster mit allen Leisten  ----- */
function fensterauf1(inhalt,breite,hoehe) {
/*   seite1=window.open(inhalt,"details1","width="+breite+ ",height="+hoehe+ ",top=0,screenX=0,screenY=0,resizable=yes,scrollbars=yes,location=yes,menubar=yes,status=yes,toolbar=yes,dependent=yes"); */
  seite1=window.open(inhalt,"details1");
}

/* ----- Funktion: Ein zweites DetailFenster mit angegebenen Maßen öffnen ----- */
/* ----- Fenster ohne alles (OHNE Scrollbars)  ----- */
function fensterauf2(inhalt,breite,hoehe) {
  seite2=window.open(inhalt,"details2","width="+breite+",height="+hoehe+",screenX=0,screenY=0,resizable=yes,scrollbars=no,dependent=yes");
  /* ----- hier kein focus()-Befehl, sonst Error bei IE <= 4.0 ----- */
}

/* ----- Funktion: Ein zweites DetailFenster mit angegebenen Maßen öffnen ----- */
/* ----- Fenster ohne alles (MIT Scrollbars)  ----- */
function fensterauf3(inhalt,breite,hoehe) {
  seite3=window.open(inhalt,"details3","width="+breite+",height="+hoehe+",screenX=0,screenY=0,resizable=yes,scrollbars=yes,dependent=yes");
  /* ----- hier kein focus()-Befehl, sonst Error bei IE <= 4.0 ----- */
}

/* ----- Funktion: Stadtplan und Anleitung aufgerufen */
  function openstadtplan() {
    fensterauf1("http://www.stadtplan.net/brd/hessen/bensheim/home.html",750,550);
    fensterauf2("help-stadtplan.htm",450,140);
  }


