var AJAX = new Ace.Engine();
function loadLabels(){
  var loc=window.location.pathname;
    loc=loc.replace(/[\w\d]+\.html/i,'');
  var request = new Ace.Request(Ace.Method.Get, loc + 'labels.xml', null, null, CALLBACK, Ace.XmlCallback, Ace.CallbackOption.StatusOK);
  var Response=AJAX.invoke(request);
  
  return(false);
}


function CALLBACK(Response, Args){
// add labels to images
  
  // search for imagelist
  var Gallery=document.getElementById('list_images');
  var Imagelist=new Array();
  for(var i=0; i<Gallery.childNodes.length; i++){
    if(Gallery.childNodes[i].tagName=='DIV'){
      Imagelist.push(Gallery.childNodes[i]);
    }
  }

  
  for(var l=0; l<Response.xml.getElementsByTagName('label').length; l++){
    var Label=Response.xml.getElementsByTagName('label')[l];
    
    // Daten zum Bild holen
    var countComment=Label.attributes.getNamedItem('comments').value;
    var countNewComment=Label.attributes.getNamedItem('new').value;
    var labelImage=getNodeText(Label).replace('.JPG','');
    
    // search images...
    for(var i=0; i<Imagelist.length; i++){
      var item=Imagelist[i];
      if(labelImage!="" && item.innerHTML.search(labelImage)!=-1){
      // image found
        
        // Labelliste ertellen
        var labellist=document.createElement('ul');
            labellist.className='labels';
        
        // Icon Kommentare
        var iCom=document.createElement('li');
            iCom.className='comment';
          var info=document.createElement('span');
              info.title=countComment + ' Kommentare';
              if(info.textContent){ info.textContent=countComment; }
              else{ info.innerHTML=countComment; }  // IE bug
              
          iCom.appendChild(info);
        labellist.appendChild(iCom);
        
        // Icon neue Kommentare
        if(countNewComment>0){
          var iNew=document.createElement('li');
              iNew.className='new';
            var info=document.createElement('span');
                info.title=countNewComment + ' Neue Kommentare';
                if(info.textContent){ info.textContent=countNewComment; }
                else{ info.innerHTML=countNewComment; }  // IE bug
            iNew.appendChild(info);
          labellist.appendChild(iNew);
        }
        
        // Labels ausgeben
        item.appendChild(labellist);
        
        break;
    } }
    
  }
}
