function StyleSwitcher (name) {

 var myname=name;
 var defaultStyle = '';
 var styles = new Array();

 var standard = '';

 var fontunit='%';
 var defsize = 80;
 var minsize = 60;
 var maxsize = 110;

 var schwarzweiss = false;



 this.getStyle = function() {
  if(!document.getElementsByTagName) {
   return standard;
  }
  else {
   var el = document.getElementsByTagName('link');
   for (var i = 0; i < el.length; i++ ) {
    if (el[i].getAttribute("rel").indexOf("style") != -1 && el[i].getAttribute("title") && el[i].disabled == false) {
     return el[i].getAttribute("title");
    }
    else {
     return standard;
    };
   }
   return standard;
  }
 }

 this.getDefaultStyle = function () {
  if(!document.getElementsByTagName) {
   return standard;
  }
  else {
   var el = document.getElementsByTagName('link');
   for (var i = 0; i < el.length; i++ ) {
    if (el[i].getAttribute("rel").indexOf("style") != -1 && el[i].getAttribute("title") && el[i].getAttribute("rel").indexOf("alt") == -1) {
     return el[i].getAttribute("title");
    }
    else {
     return standard;
    };
   }
   return standard;
  }
 }


 this.setStyle = function (styl) {
  if(!document.getElementsByTagName) {
   return;
  }
  else {
   var el = document.getElementsByTagName('link');
   for (var i = 0; i < el.length; i++ ) {
    if (el[i].getAttribute("rel").indexOf("style") != -1 && el[i].getAttribute("title")) {
      if (el[i].getAttribute("title") == styl) {
       el[i].disabled = true;
       el[i].disabled = false;
     }
    }
   }
  }
 }

 this.unsetStyle = function (styl) {
  if(!document.getElementsByTagName) {
   return;
  }
  else {
   var el = document.getElementsByTagName('link');
   for (var i = 0; i < el.length; i++ ) {
    if (el[i].getAttribute("rel").indexOf("style") != -1 && el[i].getAttribute("title")) {
      if (el[i].getAttribute("title") == styl) el[i].disabled = true;
    }
   }
  }
 }


 this.increaseSize = function () {

  if(!document.getElementsByTagName) {
   return;
  }
  else {
    this.unsetStyle('Kleine Schrift');
    this.setStyle('Große Schrift');
    setzeCookie('schrift','g',0);
  }
 }

 this.decreaseSize = function () {

  if(!document.getElementsByTagName) {
   return;
  }
  else {
    this.unsetStyle('Große Schrift');
    this.setStyle('Kleine Schrift');
    setzeCookie('schrift','k',0);
  }
 }

 this.normalSize = function () {

  if(!document.getElementsByTagName) {
   return;
  }
  else {
    this.unsetStyle('Große Schrift');
    this.unsetStyle('Kleine Schrift');
    loescheCookie('schrift');
  }
 }

 this.blackwhite = function () {
  if(!schwarzweiss)
  {
   this.setStyle('Schwarz/Weiß');
   schwarzweiss=true;
   setzeCookie('sw','sw',0);
  }
  else {
   loescheCookie('sw');
   this.unsetStyle('Schwarz/Weiß');
   schwarzweiss=false;
  }
 }

 this.showList = function () {
  if(styles.length>0) {
   document.writeln('<select class="styleswitcher" onchange="'+myname+'.setStyle(this.value)">');
   for (var i = 0; i < styles.length; i++ ) {
    if (styles[i] == this.getStyle()) {
     document.writeln('<option value="'+styles[i]+'" selected="selected">'+styles[i]+'</option>');
    }
    else {
     document.writeln('<option value="'+styles[i]+'">'+styles[i]+'</option>');
    }
   }

   document.writeln('</select>');
  }
 }


 this.appendStylepanel = function()
 {
   var parent = document.getElementById('extranavig');
   if(parent)
   {
     var li = document.createElement('li');
     li.className = 'styleswitcher';
     li.innerHTML = '<span style="display:none;">Seite schwarz/weiß darstellen </span><span id="styleblackwhite" onclick="'+myname+'.blackwhite();" style="cursor:pointer;font-size:10px;" title="Schwarzweiß-Kontrast / Farbe"><span id="schwarzbutton" style="color:white;background-color:black;padding:1px 2px;">S</span><span  id="weissbutton" style="color:black;background-color:white;padding:1px 1px;">W</span></span> <span style="display:none;">Schriftgröße: </span><span style="display:none;"> klein </span><span class="fontsizer" onclick="'+myname+'.decreaseSize()" style="font-size:8px;cursor:pointer;" title="Schrift verkleinern">A</span> <span style="display:none;"> normal </span><span class="fontsizer" onclick="'+myname+'.normalSize()" style="font-size:12px;cursor:pointer;"  title="normale Schriftgröße">A</span> <span style="display:none;"> groß </span><span class="fontsizer" onclick="'+myname+'.increaseSize()" style="font-size:15px;cursor:pointer;"  title="Schrift vergrößern">A</span>';
     parent.appendChild(li);

   }
 }

 this.showSizer = function () {
  document.writeln('<span style="display:none;">Schriftgröße: </span><span style="display:none;"> klein </span><span class="fontsizer" onclick="'+myname+'.decreaseSize()" style="font-size:8px;cursor:pointer;" title="Schrift verkleinern">A</span> <span style="display:none;"> normal </span><span class="fontsizer" onclick="'+myname+'.normalSize()" style="font-size:12px;cursor:pointer;"  title="normale Schriftgröße">A</span> <span style="display:none;"> groß </span><span class="fontsizer" onclick="'+myname+'.increaseSize()" style="font-size:15px;cursor:pointer;"  title="Schrift vergrößern">A</span>');
 }

 this.showBW = function () {
  document.writeln('<span style="display:none;">Seite schwarz/weiß darstellen </span><span id="styleblackwhite" onclick="'+myname+'.blackwhite();" style="cursor:pointer;font-size:10px;" title="Schwarzweiß-Kontrast / Farbe"><span id="schwarzbutton" style="color:white;background-color:black;padding:1px 2px;">S</span><span  id="weissbutton" style="color:black;background-color:white;padding:1px 1px;">W</span></span>');
 }

 this.showStylepanel = function () {
  document.writeln('<div class="stylepanel"><h2>Stil wechseln</h2>');
  this.showList();
  document.writeln('<br>Zoom ');
  this.showSizer();
  document.writeln('<br>');
  this.showBW();
  document.writeln('</div>');
 }


 this.applyStyle = function()
 {
   var schrift = leseCookie('schrift');
   var schw = leseCookie('sw');
   if(schrift == 'g')
   {
     this.increaseSize();
   }
   if(schrift == 'k')
   {
     this.decreaseSize();
   }
   if(schw == 'sw')
   {
     this.blackwhite();
   }

 }

 var init = function () {
  if(!document.getElementsByTagName) {
   return;
  }
  else {
   var el = document.getElementsByTagName('link');
   for (var i = 0; i < el.length; i++ ) {
    if (el[i].getAttribute("rel").indexOf("style") != -1 && el[i].getAttribute("title")) {
     styles.push(el[i].getAttribute("title"));
    }
   }
  }
 }




 init();



}



var style_temporaereronload = window.onload;
window.onload = function() {
  if(typeof(style_temporaereronload) == "function")
  {
      style_temporaereronload();
      sw.appendStylepanel();
  }
}

var sw = new StyleSwitcher('sw');
sw.applyStyle();

