

// FUNKTIONEN, DIE DREAMWEAVER GEBAUT HAT
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}

MM_reloadPage(true);
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}


//FUNKTIONEN UM DIE STYLESHEETS ZU WECHSELN - FUER FONT-SIZE

//Funktion setzt das aktive Stylesheet (titel muss übergeben werden)
function setActiveStyleSheet(title) {
  var i, a;
  //durchläuft alle Tags mit "link" und speichert sie in ein Array
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
  	//falls bei a (=Tag "Link") beim Attribut "rel" die Zeichenkette "style" vorkommt und wenn a als Attribut "title" hat, wird a disabled (Stylesheet nicht verwendet 
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title")) {
      a.disabled = true;
      //Falls aber das "title" Attribut von a dem übergebenen titel entspricht, wird Stylesheet nicht disabled und verwendet
	  if(a.getAttribute("title") == title) a.disabled = false;
    }
  }
}

//Funktion, die das aktive Stylesheet ermittelt
function getActiveStyleSheet() {
  var i, a;
  //durchläuft alle Tags mit "link" und speichert sie in ein Array
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
  	//falls bei a (=Tag "Link") beim Attribut "rel" die Zeichenkette "style"  vorkommt und wenn a als Attribut "title" hat und wenn a nicht disabled ist, wird der Wert des "Titel" Attributs von a zurückgegeben!
    if(a.getAttribute("rel").indexOf("style") != -1 && a.getAttribute("title") && !a.disabled) return a.getAttribute("title");
  }
  //falls nicht, wird null zurcükgegeben
  return null;
}

//Funktion, die das bevorzugte Stylesheet ermittelt
function getPreferredStyleSheet() {
  var i, a;
  //durchläuft alle Tags mit "link" und speichert sie in ein Array
  for(i=0; (a = document.getElementsByTagName("link")[i]); i++) {
  	//falls bei a(=Tag "Link") beim Attribut "rel" die Zeichenkette "style" vorkommt und wenn beim Attribut "rel" die Zeichenkette "alt" (alternative) NICHT vorkommt und wenn a als Attribut "title" hat, wird der Wert des "Titel" Attributs von a zurückgegeben!
	//AUFGEMERKT: auf der Homepage werden zwei bevorzugte Stylesheets eingebunden (wegen Newscenter) -->  oberstes muss das bevorzugte sein!!!
    if(a.getAttribute("rel").indexOf("style") != -1
       && a.getAttribute("rel").indexOf("alt") == -1
       && a.getAttribute("title")
       ) return a.getAttribute("title");
  }
  return null;
}

//Funktione legt einen Cookie ab (es werden Name, Wert und die Gültigkeitsdauer übergeben
function createCookie(name,value,days) {
  if (days) {
    var date = new Date();
	//Das Datum ist das aktuelle Datum umgewandelt in Milliekunden + die übergebene Tage in Millisekunden
    date.setTime(date.getTime()+(days*24*60*60*1000));
	//toGMTString() damit Browser das Datum handeln kann   
	var expires = "; expires="+date.toGMTString();
  }
  else expires = "";
  //Cookie schreiben mit : Name = Wert Ablaufdatum; Pfad;
  document.cookie = name+"="+value+expires+"; path=/";
}

//Funktion liest den Cookie aus:
function readCookie(name) {
  var nameVariable = name + "=";
  //Cookie wird aufgespalten mit Trennzeichen ";" und die einzelnen Teile in ein Feld gespeichert
  var cook = document.cookie.split(';');
  //es werden alle einzelnen Teile durchlaufen
  for(var i=0;i < cook.length;i++) {
    //Variable c wird der jeweilige Teil zugewiesen
	var c = cook[i];
    //Solange das jeweils erste Zeichen des Teils ein Leerzeichen ist, wird das Leerzeichen entfernt bzw. gibt einen Substring zurück, der bei 1 bis zum Ende des des Teils geht. --> vorangehende Leerzeichen entfernen
	while (c.charAt(0)==' ') c = c.substring(1,c.length);
    //Falls c als Teilstring "name=" enthält, wird der Substring, nach dem "=" übergeben --> beim Cookie wurde name+"="+WERT gespeichert und eben diesen Wert will man jetzt!
	if (c.indexOf(nameVariable) == 0) return c.substring(nameVariable.length,c.length);
  }
  //Falls nicht, null zurückgeben
  return null;
}

//Wenn die Seite geladen wird, wir der Cookie ausgelesen
window.onload = function(e) {
  //Den Cookie auslesen mit dem übergeben Suchwort "style"
  var cookie = readCookie("style");
  // falls es einen Cookie gibt, ist title der Wert vom Cookie, falls nicht das bevorzugte Stylesheet
  var title = cookie ? cookie : getPreferredStyleSheet();
  //das aktive Stylesheet ist das mit "Title"
  setActiveStyleSheet(title);
}

//Wenn man die Seite verlässt, wird der Cookie gespeichert
window.onunload = function(e) {
  //title wird der Wert des Aktiven Stylesheets zugewiesen
  var title = getActiveStyleSheet();
  //Cookie wird gesetzt mit name="style", dem Titel und der Gültigkeitsdauer von 3000 Tagen
  createCookie("style", title, 3000);
}
//Den Cookie auslesen mit dem übergeben Suchwort "style"
var cookie = readCookie("style");
// falls es einen Cookie gibt, ist title der Wert vom Cookie, falls nicht das bevorzugte Stylesheet
var title = cookie ? cookie : getPreferredStyleSheet();
//das aktive Stylesheet ist das mit "Title"
setActiveStyleSheet(title);


