//
//  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 )));

// Festlegen, ob Layer verwendet werden koennen:
var useLayer=false;
if (((document.layers) || (document.all) || (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";

}

var visible = 'visible';
var hidden = 'hidden';
var save_src="";


// ================= Lotse-Tab: ==============


function determineWidth () {
  if (parseInt(navigator.appVersion)>3) {
    if (navigator.appName=="Netscape") {
      winW = window.innerWidth-16;
      // winH = window.innerHeight;
    }
    if (navigator.appName.indexOf("Microsoft")!=-1) {
      winW = document.body.offsetWidth-20;
      // winH = document.body.offsetHeight;
    }
  }
  return winW;
}


function showTab() {
  //  alert('Show');
  // Zeigt die Buchungsmaske ("TabOutLayer"), nach
  FensterBreite=determineWidth();

  if (document.layers) {
    document.layers[TabOutLayer].left=FensterBreite-tabGesamtbreite+MacOffset;;
    document.layers[TabOutLayer].visibility =visible;
  } else if (document.all) {
    document.all(TabOutLayer).style.left=FensterBreite-tabGesamtbreite+MacOffset;;
    document.all(TabOutLayer).style.visibility =visible;
  } else if (isW3C) { // Netscape 6
    document.getElementById(TabOutLayer).style.left=FensterBreite-tabGesamtbreite+MacOffset;;
    document.getElementById(TabOutLayer).style.visibility = visible;
  }
}

function hideTab() {
  //  alert('Hide');
  if (document.layers) {
    document.layers[TabOutLayer].visibility =hidden;
    document.layers[TabOutLayer].left=-220;
  } else if (document.all) {
    document.all(TabOutLayer).style.visibility =hidden;
    document.all(TabOutLayer).style.left=-220;
  } else if (isW3C) { // Netscape 6
    document.getElementById(TabOutLayer).style.visibility =hidden;
    document.getElementById(TabOutLayer).style.left=-220;
  }
  if (tabHelpOut) {hideTabHelp()}
}

// Gibt an, ob Lotse-Tab drinnen (false) oder draussen ist:
var tabout=false;

// Name des zuletzt goeffneten LotsenLayer:
var lastLotsenLayer="";

// Die Postition des Lotse-Tab muss auf dem Mac bzw. Mac & IE5 korrigiert werden:
var MacOffset=0;
if (isMac) {MacOffset=17};
if (is_ie && isMac) {MacOffset=20};

// Definition der Breite der Lasche & Gesamtbreite wenn ausgeklappt:
var tabBreite=37;
var tabGesamtbreite=258;
var tabHelpGesamtbreite=221;
var tabHelpOut=false;

function SetTabPosition () {
  // Positioniert den Hotel-Tab am rechten Browserrand
  // abhaengig von der dynamischen Breite des Fensters

  FensterBreite=determineWidth();
  if (document.layers) {
    document.layers['TabLayer'].left=FensterBreite-tabBreite+MacOffset;
    document.layers['TabLayer'].visibility =visible;
  } else if (document.all) {
    document.all('TabLayer').style.left=FensterBreite-tabBreite+MacOffset;
    document.all('TabLayer').style.visibility =visible;
  } else if (isW3C) { // Netscape 6
    document.getElementById('TabLayer').style.left= FensterBreite -tabBreite +MacOffset;
    document.getElementById('TabLayer').style.visibility = visible;
  }
}

function resizeEvent () {
  // Falls der Cookie gesetzt ist, d.h. der Lotse aktiviert wurde, den Lotsen neu positionieren:
  if (getCookie('tabCookie')) {
    initTab ();
    // SetTabPosition();
    if (tabHelpOut) {showTabHelp();}
  }
}

function initTab () {
  // Initiiert den Lotsen-Tab

  // Test, ob TabCookie gesetzt wurde:
  if (getCookie('tabCookie')) {
    // Cookie ist gesetzt - Informationen (welcher Layer, in/out) aus dem Cookie auslesen:
    myCookie = getCookie('tabCookie');
    arrayOfItems = myCookie.split(",");

    TabOutLayer = arrayOfItems[0] +"TabLayer";
    //    alert (TabOutLayer);
    if (arrayOfItems[1] == "false") { tabout = false } else { tabout = true};
    // alert (tabout);

    // Cookie ist gesetzt - Tab richtig positionieren ...
    SetTabPosition();

    // ... und Tab anzeigen (eingeklappt oder ausgeklappt):
    if (tabout) {
      showTab();
    } else {
      hideTab();
    }
  }
}


function setTabCookie (whichTabLayer,status) {
  // Setzt einen Cookie, der den ausgewaehlten Lotsen-Layer,
  //  sowie den Staus (true=ausgefahren, false=eingefahren) speichert.

  // Falls auf der Startseite ein anderer Lotse gestartet wird, so lange noch einer
  // geoeffnet ist, diesen zunaechst schliessen:
  if ((lastLotsenLayer!="")&&(lastLotsenLayer!=whichTabLayer)) {EraseTab();}

  // Set-Cookie: name=value; expires=date; path=pathname; domain=domainname; secure
  // alert (status);
  document.cookie = "tabCookie=" + whichTabLayer + "," + status + "; path=/";

  if (!getCookie('tabCookie')) {
    // Falls das Setzen des Cookies fehlgeschlagen ist, Fehler-Meldung anzeigen:
    alert ("Zu Verwendung des Hansa Treuhand Lotsen müssen Sie\naus technischen Gründen einen Cookie akzeptieren.\n\nEs werden keine persönlichen Daten gespeichert!");
  }
  lastLotsenLayer=whichTabLayer;
}

function showTabHelp() {
  // Wenn die Hilfe bereits angezeigt wird, sie wieder verstecken:
  if (tabHelpOut) {
    hideTabHelp();
  } else {
    // Hilfe-Layer richtig positionieren und zeigen:
    FensterBreite=determineWidth();
    if (document.layers) {
      document.layers['HelpTabLayer'].left=FensterBreite-tabHelpGesamtbreite+MacOffset;
      document.layers['HelpTabLayer'].visibility =visible;
    } else if (document.all) {
      document.all('HelpTabLayer').style.left=FensterBreite-tabHelpGesamtbreite+MacOffset;
      document.all('HelpTabLayer').style.visibility =visible;
    } else if (isW3C) { // Netscape 6
      document.getElementById('HelpTabLayer').style.left=FensterBreite-tabHelpGesamtbreite+MacOffset;
      document.getElementById('HelpTabLayer').style.visibility =visible;
    }
    tabHelpOut=true;
  }
}

function hideTabHelp() {
  // Hilfe-Layer richtig positionieren und zeigen:
  FensterBreite=determineWidth();
  if (document.layers) {
    document.layers['HelpTabLayer'].visibility =hidden;
  } else if (document.all) {
    document.all('HelpTabLayer').style.visibility =hidden;
  } else if (isW3C) { // Netscape 6
    document.getElementById('HelpTabLayer').style.visibility =hidden;
  }
  tabHelpOut=false;
}


function EraseTab () {
  // Loescht den Tab-Cookie und versteckt die Lotsen-Layer:
  document.cookie = "tabCookie= ; path=/; expires=Thu, 01-Jan-70 00:00:01 GMT";

  if (document.layers) {
    document.layers[TabOutLayer].visibility =hidden;
    document.layers[TabOutLayer].left=-220;
    document.layers['TabLayer'].visibility =hidden;
    document.layers['TabLayer'].left=-220;
  } else if (document.all) {
    document.all(TabOutLayer).style.visibility =hidden;
    document.all(TabOutLayer).style.left=-220;
    document.all('TabLayer').style.visibility =hidden;
    document.all('TabLayer').style.left=-220;
  } else if (isW3C) { // Netscape 6
    document.getElementById(TabOutLayer).style.visibility =hidden;
    document.getElementById(TabOutLayer).style.left=-220;
    document.getElementById('TabLayer').style.visibility =hidden;
    document.getElementById('TabLayer').style.left=-220;
  }
  if (tabHelpOut) {hideTabHelp()}
  lastLotsenLayer="";
}


function getCookie(name) {
  // name - name of the desired cookie
  // * return string containing value of specified cookie or null if cookie does not exist
  var dc = document.cookie;
  var prefix = name + "=";
  var begin = dc.indexOf("; " + prefix);
  if (begin == -1) {
    begin = dc.indexOf(prefix);
    if (begin != 0) return null;
  } else
    begin += 2;
  var end = document.cookie.indexOf(";", begin);
  if (end == -1)
    end = dc.length;
  return unescape(dc.substring(begin + prefix.length, end));
}


