var uToggle = {
        speed: 'fast',      // 'slow', 'fast', numerische Angaben (ohne Single Quotes)
        process: 1,        // numerische Angabe (Welches Element soll genutzt werden?)
        show: 'Inhalte/Infos einblenden',  // Text für den title Tag (einblenden)
        hide: 'Inhalte/Infos ausblenden',  // Text für den title Tag (ausblenden)

        initialize: function() {
		$("a").each(function(){
                        if(this.rel.toLowerCase().match('utoggle')){
       
                                  // Append initial title attribute
                                  $(this).attr({title: uToggle.show});                           

                                 // hide all destinations at load depending on given process level
                                var a = $(this).parent();
                                 for (var i = 0; i < uToggle.process; i++) {
                                      a = a.next();
                                } 
                                a  = a.css({display: "none"});

                                $(this).toggle(function(){ 
                                        uToggle.odd(this);
					return false;
                                }, function() {
 					uToggle.even(this);
					return false;                               
				});
			}
		});
        },

	odd: function(e) {
                 $(e).attr({title: uToggle.hide});
                 var a = $(e).parent();
                 for (var i = 0; i < uToggle.process; i++) {
                       a= a.next();
                 }
                 a  = a.fadeIn(uToggle.speed);
	},

       even: function(e) {
                 $(e).attr({title: uToggle.show});
                 var a = $(e).parent();
                 for (var i = 0; i < uToggle.process; i++) {
                       a = a.next();
                 }
                 a  = a.fadeOut(uToggle.speed);
       }
};


// build alternative page displays
var uDisplay = {
       level : 0,
       stylesheet : null,
       options : {            
                min: -2,
                max: 3
        },

        initialize: function(options) {

                     $('.nav').append('<p id="toolbar"><a href="#">Ansichten</a></p>');

/*$('#navigation').append('<div id="tools"><div id="wrapTools"><p>Farbschemata:</p><ul class="nav scheme"><li><a title="Schwarze-Schrift-Weißer-Hintergrund-Layout"  href="#" class="styleswitch">W/S</a></li><li><a title="Weiße Schrift-Scharzer Hintergrund-Layout"  href="#" class="styleswitch">S/W</a></li><li><a title="Standard-Layout" class="styleswitch" href="#">Standard</a></li></ul><p>Schriftgröße:</p><ul class="nav"><li><a title="Schrift vergrößern" class="increase" href="#">+</a></li><li><a title="Schrift verkleinern" class="decrease" href="#">-</a></li><li><a title="Originalgröße" class="standard" href="#">*</a></li></ul></div></div>')*/

$('#navigation').append('<div id="tools"><div id="wrapTools"><p>Schriftgröße:</p><ul class="nav"><li><a title="Schrift vergrößern" class="increase" href="#">+</a></li><li><a title="Schrift verkleinern" class="decrease" href="#">-</a></li><li><a title="Originalgröße" class="standard" href="#">*</a></li></ul></div></div>');

		$('#toolbar a').bind('click', function() {
			if ($('#tools').is(':hidden')) {
			      $("#tools").fadeIn('slow');
			} else {
				$("#tools").fadeOut('slow');
			}
			// prevent default behaviour
			return false;
		});

                   if(options) {
		       uDisplay.options = $.extend(uDisplay.options, options);
                    }
                    var level = ($.cookie('flevel') != null) ? $.cookie('flevel') : 0;
                    uDisplay.setSize(level);

                   /* var target = $.cookie('stylesheet');
                    if (target != null) {
                        uDisplay.setStylesheet(target);
                     }*/

                    $('a.increase').click(function() {
                          if((parseInt(uDisplay.level)) + 1 <= uDisplay.options.max) {
                                var next = (parseInt(uDisplay.level) + 1);
                                uDisplay.setSize(next);
                                return false;
                          }
                    });

                    $('a.decrease').click(function() {	
                          if((parseInt(uDisplay.level)) - 1 >= uDisplay.options.min) {
                                var next = (parseInt(uDisplay.level) - 1);
                                uDisplay.setSize(next);
                                return false;
                          }
                    });

                    $('a.standard').click(function() {
                           uDisplay.setSize(0);
                            return false;
                    });
        },

        setSize: function (level) {
                      uDisplay.level = level;
                      $.cookie('flevel', level, {path: '/'});

                      var level = (level / 10) + 1;
                      $('html').css('fontSize', level+'em');
         }
};

$(function(){
       // Show/Hide
       uToggle.initialize();

       // Init Seitenansichten 
       uDisplay.initialize();

     // Init Stylesheet switch
    /* $(".styleswitch").switchstylesheet( { seperator:"Layout"} );

    // enable display of js hidden elements within print view
    var link = document.getElementById("printstylesheet");
    var ss = link.sheet || link.styleSheet;
    var rules = ss.rules || ss.cssRules;

    if (ss.insertRule) {
      ss.insertRule('dd { display:block!important; }', rules.length);
      ss.insertRule('.wraprefs { display:block!important; }', rules.length);
      ss.insertRule('#referenzen #content p { padding-bottom:0!important; }', rules.length);
    } else {
      ss.addRule('dd', 'display:block!important');
      ss.addRule('.wraprefs', 'display:block!important');
      ss.addRule('#referenzen #content p', 'padding-bottom:0!important');
    }*/

  $("nav select").change(function() {
    window.location = $(this).find("option:selected").val();
  });

})
