document.observe('dom:loaded', function() {
  
  if ( $$('.using-tabs').length > 0 ) {
    
    xaTabs = $$('.tab_link');
    xaConts = $$('.cont5'); // Alle Inhalte sammeln und zwischenspeichern  

    if ( window.location.href.indexOf('#') > 0 ) {
      xsShowTabCont = window.location.href.slice( window.location.href.indexOf('#') + 1 );
      
      // Noch aktiven Tab deaktivieren
      var xaCurTab = $$('.using-tabs li.akt');
      for(i = 0; i < xaCurTab.length; i++) {
        xaCurTab[i].removeClassName('akt');
      }
      
      for(i = 0; i < xaConts.length; i++) {
         // Klasse der anzuzeigenden Inhaltscontainer wurde per URL 
         // übergeben?
         if ( xaConts[i].hasClassName(xsShowTabCont) ) {               
          // Inhalt einblenden
          xaConts[i].show();
          // Tab als aktiv auszeichnen
          $(xsShowTabCont).up().addClassName('akt');
          //xoClickedTabLink.up().addClassName('akt');  
         } else {
          // Inaktive Tabs ausblenden
          xaConts[i].hide();
         }
			}
    }
              
    for(i = 0; i < xaTabs.length; i++) {      
          
       Event.observe(xaTabs[i], 'click', function (event) {          
            // Geklickten Tab als aktiv auszeichnen und entsprechenden Inhalt
            // einblenden
            xoClickedTabLink = Event.element(event); // Tab, welcher angeklickt wurde
            
            if ( xoClickedTabLink.up().hasClassName('notavailable') == false ) { // Inhalte zu diesem Tab vorhanden?
              // Noch aktiven Tab deaktivieren
              var xaCurTab = $$('.using-tabs li.akt');
              for(k = 0; k < xaCurTab.length; k++) {
                xaCurTab[k].removeClassName('akt');
              }

    					for(m = 0; m < xaConts.length; m++) {
                   // Klasse der anzuzeigenden Inhaltscontainer wurde per URL 
                   // übergebe?
                   if ( xaConts[m].hasClassName(xoClickedTabLink.readAttribute('id')) ) {               
                    // Inhalt einblenden
                    xaConts[m].show();
                    // Tab als aktiv auszeichnen
                    xoClickedTabLink.up().addClassName('akt');  
                   } else {
                    // Inaktive Tabs ausblenden
                    xaConts[m].hide();
                   }             
              }
  					}
      });
      // Workaround für funktionierendes "return false;"
      xaTabs[i].onclick = function() {      
        if ( $(this).readAttribute('href') == '/' ) {
          if (window.event) event.returnValue = false;
          return false;
        }
      };    
    }
  }
});
