var ajaxStack = new Array;
var ajaxStackPointer = 0;
var ajaxAvailables = new Array;
var ajaxAvailablesUrls = new Array;

function advs_trigger(catname)
{
   if(true || document.getElementById('advs-loading').style.display != 'block')
   {
      var obj = document.getElementById('img_'+catname);

      var tmp;
      var catmatch;
      if(ajaxStackPointer > 0)
         ajaxStackPointer--

      if(document.getElementById(catname).style.display != 'block') {
         if( obj ) {
         	obj.src = "res/images/minus-icon.gif";
      	 }
         
         //document.getElementById('advs-loading').style.display = 'block';

         for(var i = 0; i < ajaxAvailables.length; i++)
         {
            tmp = ajaxAvailables[i].split('-');
            catmatch = tmp[0]+'-'+tmp[1];
            if(catmatch == catname)
               ajaxStack[ajaxStack.length] = i;
         }
         document.getElementById(catname).style.display = 'block';
         makeRequest();
      } else {
      	if( obj ) {
        	obj.src = "res/images/plus-icon.gif";
        }
      	
      	document.getElementById(catname).style.display = 'none';
      }
   }
}	

function handleAjaxStack(responseTree, responseElements, responseHTML, responseJavaScript)
{
   if(false || responseHTML != '0') {
   
      document.getElementById(ajaxAvailables[ajaxStack[ajaxStackPointer - 1]]).innerHTML = responseHTML;
      document.getElementById(ajaxAvailables[ajaxStack[ajaxStackPointer - 1]]+'-link').style.display = 'inline';
   }

   if(ajaxStackPointer < ajaxStack.length)
      makeRequest();

   //if(ajaxStackPointer >= ajaxStack.length)
      //document.getElementById('advs-loading').style.display = 'none';
}

function makeRequest()
{
    var url = ajaxAvailablesUrls[ajaxStack[ajaxStackPointer]];
    ajaxStackPointer++;
    
    new Request.HTML({url: url, method: 'get', onComplete: handleAjaxStack}).send();
}

