//
//  All code: (c) n@work Internet Informationssysteme GmbH
//  http://www.work.de
//

// Richtiger Browser?
var browsername = navigator.appName;
var browserversion = parseInt(navigator.appVersion);
var browserVersionNum = parseFloat(navigator.appVersion)
var agt=navigator.userAgent.toLowerCase();

var is_netscape=(browsername.indexOf("Netscape")!=-1);
var is_ie=(browsername.indexOf("Microsoft Internet Explorer")!=-1);
var isMac  = (agt.indexOf("mac")!=-1);

var isW3C=false; // Gibt an, ob es NS6 oder anderer W3C kompatibler Browser ist
if ((document.getElementById) && is_netscape) {isW3C=true;}


// Detect Internet Explorer Versionsnummer:
var ua = window.navigator.userAgent
var msie = ua.indexOf ( "MSIE " )
var verIE= parseInt (ua.substring (msie+5, ua.indexOf (".", msie )));


// Geben an, ob Layer in verschiedenen Browsern verwedet werden koennen:
nslayer=false;
ielayer=false;
w3xlayer=false;

// Layerparameter abhaengig vom Browser festlegen:
if (document.layers) { // NS 4-5
  visible = 'show';
  hidden = 'hide';
        layer_header ='document.layers[';
        layer_footer =']';
        nslayer=true;
} else if (document.all) { // IE
        visible = 'visible';
        hidden = 'hidden';
        layer_header ='document.all(';
        layer_footer =').style';
  ielayer=true;
} else if (isW3C) { // Netscape 6
        visible = 'visible';
        hidden = 'hidden';
        layer_header ='document.getElementById(';
        layer_footer =').style';
  w3clayer=true;
}

// Festlegen, ob Layer verwendet werden koennen:
var useLayer=false;
if ( ( nslayer || ielayer || isW3C ) && !((verIE<5) && isMac) ) {
        useLayer=true;
}

var br = "";
if ( (is_netscape && browserversion >= 3) ||
     (browsername == "Microsoft Internet Explorer" && browserversion >= 4)) {

        br = "n3";

        // Passiven Bilder vordefinieren:

        // _on = new Image();      _on.src =      "/Icons/subnav__on.gif";

fahrplan_on = new Image();      fahrplan_on.src =      "/Icons/nav_fahrplan_on.gif ";
hafen_on = new Image();      hafen_on.src =      "/Icons/nav_info_on.gif";
flotte_on = new Image();      flotte_on.src =      "/Icons/nav_flotte_on.gif";
bord_on = new Image();      bord_on.src =      "/Icons/nav_bord_on.gif";
uebernachtung_on = new Image();      uebernachtung_on.src =      "/Icons/nav_uebernachtung_on.gif";
links_on = new Image();      links_on.src =      "/Icons/nav_links_on.gif";

// Subnavigation
strecken_on = new Image();      strecken_on.src =      "/Icons/subnav_strecken_on.gif";
fahrplaene_on = new Image();      fahrplaene_on.src =      "/Icons/subnav_fahrplaene_on.gif";
durchgang_on = new Image();     durchgang_on.src =     "/Icons/subnav_durchgang_on.gif";
rundreise_on = new Image();     rundreise_on.src =     "/Icons/subnav_rundreise_on.gif";
//kabinen_on = new Image();     kabinen_on.src =     "/Icons/subnav_kabinen_on.gif";
preisinfo_on = new Image();     preisinfo_on.src =     "/Icons/subnav_preisinfo_on.gif";
kurzseereisen_on = new Image();     kurzseereisen_on.src =     "/Icons/subnav_kurzseereisen_on.gif";

helsinki_on = new Image();      helsinki_on.src =      "/Icons/subnav_helsinki_on.gif";
stockholm_on = new Image();      stockholm_on.src =      "/Icons/subnav_stockholm_on.gif";
turku_on = new Image();     turku_on.src =     "/Icons/subnav_turku_on.gif";
tallinn_on = new Image();     tallinn_on.src =     "/Icons/subnav_tallinn_on.gif";
mariehamn_on = new Image();     mariehamn_on.src =     "/Icons/subnav_mariehamn_on.gif";
kapellskaer_on = new Image();     kapellskaer_on.src =     "/Icons/subnav_kapellskaer_on.gif";
schwed_on = new Image();     schwed_on.src =     "/Icons/subnav_schwed_haefen_on.gif";
daen_on = new Image();     daen_on.src =     "/Icons/subnav_daen_haefen_on.gif";
deu_on = new Image();     deu_on.src =     "/Icons/subnav_deu_haefen_on.gif";



essen_on = new Image();      essen_on.src =      "/Icons/subnav_essen_on.gif";
unterhaltung_on = new Image();      unterhaltung_on.src =      "/Icons/subnav_unterhaltung_on.gif";
unterbringung_on = new Image();     unterbringung_on.src =     "/Icons/subnav_unterbringung_on.gif";
panorama_on = new Image();     panorama_on.src =     "/Icons/subnav_panorama_on.gif";
dutyfree_on = new Image();     dutyfree_on.src =     "/Icons/subnav_dutyfree_on.gif";
tagungen_on = new Image();     tagungen_on.src =     "/Icons/subnav_tagungen_on.gif";

haeuser_on = new Image();      haeuser_on.src =      "/Icons/subnav_haeuser_on.gif";
hotels_on = new Image();      hotels_on.src =      "/Icons/subnav_hotels_on.gif";

}

var save_src="";

function toggle_image (bild,mode,layerName) {
   if ( br == "n3" ) {
   if ( mode == "off") {
        // Passive Version darstellen:
        if (layerName){
                if (nslayer) {
                        document.layers[layerName].document.images[bild].src = save_src;
                } else if (ielayer) {
                        document.all(layerName).document.images[bild].src = save_src;
                }
        } else {
                document.images[bild].src = save_src;
        }
   } else {
        // Aktive Version darstellen:
              if (layerName) {
          if (nslayer) {
                                    save_src=document.layers[layerName].document.images[bild].src;
            document.layers[layerName].document.images[bild].src = eval ( bild + "_on.src" );
          } else if (ielayer) {
                                     save_src=document.all(layerName).document.images[bild].src;
             document.all(layerName).document.images[bild].src = eval ( bild + "_on.src" );
          }
        } else {
                            save_src=document.images[bild].src;
          document.images[bild].src = eval ( bild + "_on.src" );
        }
   }
  }
}

function initializePage() {

        // Bei Netscape 4-5 den MouseOut Event an den Layer knuepfen:
         if ((document.layers)) {
                document.FahrplanLayer.onmouseout = function (evt) {
                         ToggleLayer('FahrplanLayer','off');}
                document.HafenLayer.onmouseout = function (evt) {
                         ToggleLayer('HafenLayer','off');}
                document.FlotteLayer.onmouseout = function (evt) {
                         ToggleLayer('FlotteLayer','off');}
                document.BordLayer.onmouseout = function (evt) {
                         ToggleLayer('BordLayer','off');}
                document.UebernachtungLayer.onmouseout = function (evt) {
                         ToggleLayer('UebernachtungLayer','off');}
                document.LinksLayer.onmouseout = function (evt) {
                         ToggleLayer('LinksLayer','off');}

         }

        // Aktuellen Hautpnavigationspunkt markieren:
        if ((main_nav!="homepage")&&(main_nav!="blank")) {
                        document.images[main_nav].src = eval ( main_nav + "_on.src" );
        }

}


// =============== DHTML Menus: ===============


if (document.layers) { // NS 4-5
          visible = 'show';
          hidden = 'hide';
        layer_header ='document.layers[';
        layer_footer =']';
} else if (document.all) { // IE
        visible = 'visible';
        hidden = 'hidden';
        layer_header ='document.all(';
        layer_footer =').style';
} else if (isW3C) { // Netscape 6
        visible = 'visible';
        hidden = 'hidden';
        layer_header ='document.getElementById(';
        layer_footer =').style';
}


function getImageLeft(img) {
        // Stellt die Position (x) eines Bildes "img" fest:
          var x, obj;
        if (document.layers) {
                    if (img.container != null)  return img.container.pageX + img.x;
                    else  return img.x;
          }
         if ((document.all) || (isW3C)) {
                    x = 0;
                    obj = img;
                    while (obj.offsetParent != null) {
                      x += obj.offsetLeft;
                      obj = obj.offsetParent;
                    }
                    x += obj.offsetLeft;
                    return x;
          }
  return -1;
}


function getImageTop(img) {
        // Stellt die Position (y) eines Bildes "img" fest:
  var y, obj;
        if (document.layers) {
    if (img.container != null)    return img.container.pageY + img.y;
    else  return img.y;
  }
 if ((document.all) || (isW3C)) {
    y = 0;
    obj = img;
    while (obj.offsetParent != null) {
      y += obj.offsetTop;
      obj = obj.offsetParent;
    }
    y += obj.offsetTop;
    return y;
  }
  return -1;
}


function ToggleLayer(menu,mode){
        // Blendet einen Layer "menu" ein (mode="on") oder aus (mode="off"):

        if (!useLayer) {return true;} // Layer nur bei geeigneten Browsern zeigen

        TempLayer = eval ( layer_header + 'menu' + layer_footer);

        // Momentane Position der Buttons fuer die Plazierung der Layer feststellen:
        if (menu=="FahrplanLayer") tmp_img='fahrplan';
        if (menu=="HafenLayer") tmp_img='hafen';
        if (menu=="FlotteLayer") tmp_img='flotte';
        if (menu=="BordLayer") tmp_img='bord';
        if (menu=="UebernachtungLayer") tmp_img='uebernachtung';
        if (menu=="LinksLayer") tmp_img='links';

         leftOffset=getImageLeft(document.images[tmp_img]);
         topOffset=getImageTop(document.images[tmp_img]);

        // Falsche Positionierung bei IE & Mac beheben (ignoriert MARGINWIDTH...):
        if (is_ie && isMac) {leftOffset=leftOffset+20; topOffset=topOffset+24};

        // alert (leftOffset);
        // alert (  topOffset);

         if (mode == "off") {
                // Layer verbergen
                TempLayer.visibility = hidden;
          } else {
                // Alle andere Layern verbergen, falls einer noch sichtbar ist:
                for (i=0; i<=layerArrayLaenge; i++) {
                         if (document.layers) { // Netscape 4-5
                                if (document.layers[layerArray[i]]) { // Ist Layer bereits geladen?
                                        document.layers[layerArray[i]].visibility =hidden;
                                }
                         } else if (document.all) { // IE
                                if (document.all(layerArray[i])) { // Ist Layer bereits geladen?
                                                                        //alert (layerArray[i]);
                                         document.all(layerArray[i]).style.visibility =hidden;
                                }
                        } else if (isW3C) { // Netscape 6
                                if (document.getElementById(layerArray[i])) { // Ist Layer bereits geladen?
                                         document.getElementById(layerArray[i]).style.visibility =hidden;
                                }
                        }
                }

                if (TempLayer) { // Ist Layer bereits geladen?
                        // Postition anpassen:
                        TempLayer.left=leftOffset;
                        TempLayer.top=topOffset;
                        // Layer zeigen:
                        TempLayer.visibility = visible;
                }
        }
}

// Liste aller Layer zum Verbergen aller Layer:
layerArray= new Array();
layerArray[0]="FahrplanLayer";
layerArray[1]="HafenLayer";
layerArray[2]="FlotteLayer";
layerArray[3]="BordLayer";
layerArray[4]="UebernachtungLayer";
layerArray[5]="LinksLayer";
layerArrayLaenge=layerArray.length-1;


// ================= Oeffnet neues Fenster: ===========
function OpenRemoteWindow(url,target,breite,hoehe,option) {
        var widthOffset=0; var sc=0;

        if (is_netscape && !isW3C && (option=='undefined')) {widthOffset=40;}
        if (option=="scroll") {sc=1;}
     features='toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1' +sc + ',resizable=' +sc + ',width=' + (breite-widthOffset) +',height=' + hoehe +',screenX=30,screenY=30';
        // alert (features);
     win=window.open(url,target,features);
     win.focus();
}