
/**
 * Zeigt alle Gruppen an die vorher versteckt waren.
 */
function moreGroups() {
  var groupList = document.getElementById('grouplist');
  var groupItem = groupList.getElementsByTagName('li');
  
  for (var i = 0; i < groupItem.length; i++) {
    if (groupItem[i].className == 'hide') {
      groupItem[i].style.display = (groupItem[i].style.display == 'block')
        ? 'none' : 'block';
    }
  }
}

/**
 * Aktualisiert die Liste der angezeigten GB Einträge.
 */
function refreshComments (source) {
  var callback = {
    /** Der Request war erfolgreich. Inhalt übernehmen. */
    success : function (o) {
      var json = eval ('(' + o.responseText + ')');
      document.getElementById('box_comments').innerHTML = json.content;
    },
    
    /** Der Request ist fehlgeschlagen. Fehlermeldung wird ausgegeben. */
    failure : function (o) {
      alert(o.responseText);
    }
  }
  
  if (source) {
    // Starte den Request.
    var request = YAHOO.util.Connect.asyncRequest('GET', source, callback);
  }
}

/**
 * Warbwähler für die Nickpage.
 */
Color = {
 
 /** Hält TRUE wenn der Farbwähler offen ist, sonst FALSE. */
 isOpen : false,
 
 /** Hält TRUE wenn die Farbe gewechselt wurde. */
 isChanged : false,
 
 /** Hält die neue Farbe, zu der gewechselt wurde. */
 currentColor : new Array("", ""),
 
 /** Öffnet/Schliesst den Farbwähler */
 swap : function () {
    
   if (Color.isOpen) {
     var attrib = {
       height: { to: 0, unit: 'px'} 
     } 
     
     if (Color.isChanged) {
       Color.setColor();
     }
     
   } else {
     var attrib = {
       height: { to: 130, unit: 'px'} 
     }
   }
    
   var anim = new YAHOO.util.Anim('colors', attrib, 0.1, YAHOO.util.Easing.easeBoth());
   anim.animate();
   Color.isOpen = !Color.isOpen;
 },
 
 /** Ändert die Farbe der Nickpage */
 choose : function (color, target) {
   if (target == 'head') {
     document.body.className = document.body.className.replace(/c-head-[^ ]+/, 'c-head-' + color);
     Color.currentColor[0] = color;
     Color.isChanged = true;
   
   } else if (target == 'content') {
     document.body.className = document.body.className.replace(/c-content-[^ ]+/, 'c-content-' + color);
     Color.currentColor[1] = color;
     Color.isChanged = true;
   }
 },
 
 /** Speichert die neue Farbe */
 setColor : function () {
  
   var callback = {
     success : function (o) {alert('Farbwahl gespeichert.')},
     failure : function (o) {alert('Die Farbe konnte nicht gespeichert werden...');}
   }
   
   var sepa = C_SITE_USE_REWRITE_ENGINE ? '?' : '&';
   
   YAHOO.util.Connect.asyncRequest('GET', 
     NICKPAGE_SETCOLORS_URL + sepa + 'colH=' + Color.currentColor[0]  + '&colC=' + Color.currentColor[1], 
     callback);
 }
}
