var params;
var i,ii,tickeri;

var zmin=2;  var zmax=10;
var smin=2;  var smax=15;
var xmax=64; var ymax=40;  /* Werte aus den Teil-Karten - don't change */
var xxmax=16; var yymax=10;  /* Werte aus den Teil-Karten - don't change */

var groesse=100;
var groessemax=300; var groessemin=50;
var groessedelta=50;
var xhome=1; var yhome=1;

var zeilen=zmin;
var spalten=smin;

var xkoord=xhome;
var ykoord=yhome;

var the_browser="";
var the_version="";
var the_version_short="";
var the_user_agent="";

function discover_user() {
    the_browser=navigator.appName;
    the_version=navigator.appVersion;
    the_version_short=the_version.substr(0,1);
    the_user_agent=navigator.userAgent;
    return
}

function print_button() {
    discover_user();
    document.writeln("<div align=\"center\">");

    if (( "Netscape" == the_browser ) && (4 == the_version_short)) {
          document.writeln("<form>");
            document.writeln("<input type=\"button\" value=\"Drucken...\" name=\"druck\" onclick=\"self.print()\">");
            document.writeln("</form>");
       }
       else {
       document.writeln("<button name=\"druck\" onclick=\"self.print()\">Drucken...</button>");
       }

    document.writeln("</div>");
return
}

function reload_frame(seitenmerker) {
    discover_user();
    if (( "Netscape" == the_browser ) && (4 == the_version_short)) {
       // do not reload page
       }
       else {
        if(parent.location.href==self.location.href)
            {window.location.href=seitenmerker;
           }
       }
return
}

function load_data() {
    params=location.href.split("?");
    for (i=1; i<params.length ; i++)
    {
     parts=params[i].split("=");
     if ("z" == parts[0]) { zeilen=parseInt(parts[1].replace(/%20/g," "));  };
     if ("s" == parts[0]) { spalten=parseInt(parts[1].replace(/%20/g," ")); };
     if ("x" == parts[0]) { xkoord=parseInt(parts[1].replace(/%20/g," ")); };
     if ("y" == parts[0]) { ykoord=parseInt(parts[1].replace(/%20/g," ")); };
     if ("g" == parts[0]) { groesse=parseInt(parts[1].replace(/%20/g," ")); };
    }

     if (zeilen >= zmax)        zeilen=zmax;
     if (zeilen <= zmin)        zeilen=zmin;
     if (spalten >= smax)       spalten=smax;
     if (spalten <= smin)       spalten=smin;
     if (groesse >= groessemax) groesse=groessemax;
     if (groesse <= groessemin) groesse=groessemin;
}



function update_navigator () {
         w=top.seiteFrame.werkzeug.document.werkform;
         while (!w) {window.setTimeout('update_navigator()',10);return; };
         while (
                (! w.le) ||
                (! w.merkx) || (! w.merky) || (! w.merkz) || (! w.merks) || (! w.merkg) ||
                (! w.re) || (! w.li) || (! w.dw) || (! w.up) || (! w.ho) || (! w.nh) ||
                (! w.br) || (! w.nb) || (! w.zi) || (! w.zo) ||
                (! w.le)) {window.setTimeout('update_navigator()',10);return; };

         w.merkx.value=xkoord;
         w.merky.value=ykoord;
         w.merkz.value=zeilen;
         w.merks.value=spalten;
         w.merkg.value=groesse;

         if (xkoord + spalten > xmax ) {w.re.disabled=true;} else w.re.disabled=false;
         if (xkoord <= 1 )             {w.li.disabled=true;} else w.li.disabled=false;
         if (ykoord + zeilen > ymax )  {w.dw.disabled=true;} else w.dw.disabled=false;
         if (ykoord <= 1 )             {w.up.disabled=true;} else w.up.disabled=false;

         if (zeilen >= zmax)        {w.ho.disabled=true;}    else w.ho.disabled=false;
         if (zeilen <= zmin)        {w.nh.disabled=true;}    else w.nh.disabled=false;
         if (spalten >= smax)       {w.br.disabled=true;}    else w.br.disabled=false;
         if (spalten <= smin)       {w.nb.disabled=true;}    else w.nb.disabled=false;
         if (groesse >= groessemax) {w.zi.disabled=true;}    else w.zi.disabled=false;
         if (groesse <= groessemin) {w.zo.disabled=true;}    else w.zo.disabled=false;

return
}

function prepare_data()
{
    w=top.seiteFrame.werkzeug.document.werkform;
    xkoord=parseInt(w.merkx.value);
    ykoord=parseInt(w.merky.value);
    zeilen=parseInt(w.merkz.value);
    spalten=parseInt(w.merks.value);
    groesse=parseInt(w.merkg.value);

    xplus  = xkoord  + 1;
    xminus = xkoord  - 1;
    yplus  = ykoord  + 1;
    yminus = ykoord  - 1;

    zplus  = zeilen  + 1;
    zminus = zeilen  - 1;
    splus  = spalten + 1;
    sminus = spalten - 1;

    groesseplus = groesse + groessedelta;
    groesseminus = groesse - groessedelta;


}

function go_le()
{
 Legende = window.open("legende.html", "Legende","locationbar=no dependant=yes width=500 scroll=auto");
 Legende.focus();
}

function go_up()
{
    prepare_data();
    if (ykoord <= 1 ) return;
    top.seiteFrame.inhalt.location="karte.html?x=" + xkoord + "?y=" + yminus + "?z=" + zeilen + "?s=" + spalten + "?g=" + groesse
}

function go_do()
{
    prepare_data();
    if (ykoord + zeilen > ymax ) return;
    top.seiteFrame.inhalt.location="karte.html?x=" + xkoord + "?y=" + yplus + "?z=" + zeilen + "?s=" + spalten + "?g=" + groesse
}
function go_li()
{
    prepare_data();
    if (xkoord <= 1 ) return;
    top.seiteFrame.inhalt.location="karte.html?x=" + xminus + "?y=" + ykoord + "?z=" + zeilen + "?s=" + spalten + "?g=" + groesse
}
function go_re()
{
    prepare_data();
    if (xkoord + spalten > xmax ) return;
    top.seiteFrame.inhalt.location="karte.html?x=" + xplus + "?y=" + ykoord + "?z=" + zeilen + "?s=" + spalten + "?g=" + groesse
}
function go_zi()
{
    prepare_data();
    if (groesse >= groessemax) return;
    top.seiteFrame.inhalt.location="karte.html?x=" + xkoord + "?y=" + ykoord + "?z=" + zeilen + "?s=" + spalten + "?g=" + groesseplus
}
function go_zo()
{
    prepare_data();
    if (groesse <= groessemin) return;
    top.seiteFrame.inhalt.location="karte.html?x=" + xkoord + "?y=" + ykoord + "?z=" + zeilen + "?s=" + spalten + "?g=" + groesseminus
}
function go_br()
{
    prepare_data();
    if (spalten >= smax) return;
    if (xkoord + spalten + 1 > xmax ) {top.seiteFrame.inhalt.location="karte.html?x=" + xminus + "?y=" + ykoord + "?z=" + zeilen + "?s=" + splus + "?g=" + groesse }
    else                              {top.seiteFrame.inhalt.location="karte.html?x=" + xkoord + "?y=" + ykoord + "?z=" + zeilen + "?s=" + splus + "?g=" + groesse };
}
function go_nb()
{
    prepare_data();
    if (spalten <= smin) return;
    top.seiteFrame.inhalt.location="karte.html?x=" + xkoord + "?y=" + ykoord + "?z=" + zeilen + "?s=" + sminus + "?g=" + groesse
}
function go_ho()
{
    prepare_data();
    if (zeilen >= zmax) return;
    if (ykoord + zeilen + 1 > ymax ) {top.seiteFrame.inhalt.location="karte.html?x=" + xkoord + "?y=" + yminus + "?z=" + zplus + "?s=" + spalten + "?g=" + groesse }
    else                             {top.seiteFrame.inhalt.location="karte.html?x=" + xkoord + "?y=" + ykoord + "?z=" + zplus + "?s=" + spalten + "?g=" + groesse };
}
function go_nh()
{
    prepare_data();
    if (zeilen <= zmin) return;
    top.seiteFrame.inhalt.location="karte.html?x=" + xkoord + "?y=" + ykoord + "?z=" + zminus + "?s=" + spalten + "?g=" + groesse
}

function kartedrucken()
{
    top.seiteFrame.inhalt.focus();
    top.seiteFrame.inhalt.print();
}

function print_map()
{
    var quadrant="";
    d=top.seiteFrame.inhalt.document;
    d.close();
    d.open();

    d.writeln("<p align=center><a href=\"copyright.html\" target=\"_parent\">&copy; <b>www.SkateKarte.de</b></a></p>");

    d.writeln("<table border=0 align=\"center\" cellpadding=0 cellspacing=0>");
    d.writeln("<colgroup width=",groesse," height=",groesse," span=",spalten ,"></colgroup>");

    for (i=ykoord; i< (zeilen+ykoord); i++)
    {
     d.write("<tr>");
     for (ii=xkoord; ii<(spalten+xkoord); ii++)
     {

      quadrant = String(Math.floor((i-1)/yymax)+1) + String(Math.floor((ii-1)/xxmax)+1);

      karte = ((ii-1)%xxmax)+(((i-1)%yymax)*xxmax);
      d.writeln("<td><img src=\"map/",quadrant,karte,".jpg\" width=\"",groesse,"\" height=\"",groesse,"\" border=0 alt=\"Farberklärung siehe Legende\"></td>");
     }
     d.writeln("</tr>");
    }

     d.write("<tr>");
     for (ii=xkoord; ii<(spalten+xkoord); ii++)
     {
      d.write("<td>");
      if (spalten+xkoord-1 == ii) {d.write("<img src=\"images/massstab.gif\" width=\"",groesse,"\" height=\"20\" border=\"0\" alt=\"Maßstab\"><br>2km");}
      d.writeln("</td>");
     }
     d.writeln("</tr>");



    d.writeln("</table>");

}


<!-- Ticker stuff -->
var maxmessages=4;
var showmessagetime=20*1000;
var hidemessagetime=40*1000;
var lamellarspeed=20;
var menubreite=185;
var menuhoehe=100;
var steps=20;

var default_seite;

var timer = null;

var stepcounter,m,page;
var seite = new Array(maxmessages);
var aktuell = null;

function stopticker() {
  clearTimeout(timer);
}

function startticker() {
timer=setTimeout("ausblenden()",showmessagetime);
}


function ausblenden () {
  clearTimeout(timer);
  m=(menubreite/steps)*(steps-stepcounter);
  document.getElementById(aktuell).style.clip="rect(0px "+m+"px "+menuhoehe+"px 0px)";
  stepcounter++;
  if (stepcounter<=steps)
  {
  timer=setTimeout
      ("ausblenden()",lamellarspeed);
  }
  else
  {
     document.getElementById(aktuell).style.visible="hidden";
     if (aktuell==default_seite)
     {
        aktuell=seite[page];
        page++;
        if (maxmessages < page) {page=0;}
     }
     else
     {
        aktuell=default_seite;
     }

     document.getElementById(aktuell).style.clip="rect(0px 0px "+menuhoehe+"px 0px)";
     document.getElementById(aktuell).style.visibility="visible";
     stepcounter=steps;
     timer=setTimeout("einblenden()",lamellarspeed);
  }
}

function einblenden () {
  clearTimeout(timer);

  m=(menubreite/steps)*(steps-stepcounter);
  document.getElementById(aktuell).style.clip="rect(0px "+m+"px "+menuhoehe+"px 0px)";
  stepcounter--;
  if (stepcounter>=0)
  { timer=setTimeout("einblenden()",lamellarspeed);}
  else
  {
     if (aktuell == default_seite)
     { timer=setTimeout("ausblenden()",hidemessagetime); }
     else
     { timer=setTimeout("ausblenden()",showmessagetime); }
  }
}


function init2()
{
   default_seite="default_seite";
   seite[0]="klapp0";
   seite[1]="klapp1";
   seite[2]="klapp2";
   seite[3]="klapp3";
   seite[4]="klapp4";
   if (timer != null) {clearTimeout(timer);}
   page=0;
   aktuell=default_seite;
   stepcounter=0;
   timer=setTimeout("ausblenden()",hidemessagetime)
}

function initiate() {
    if      (document.all)    {init2();}
    else if (document.layers) {}
    else                      {lamellarspeed=lamellarspeed;init2();}
}


<!-- Ticker stuff -->