var color = '#8ad480';
var color2 = '#419b34';

function openChild(parent) {

   closeAllChild(parent);
  
    var pars = $H({parent:parent}).toQueryString();

    new Ajax.Request("catalog/ajax.html",
            {method:'post', parameters:pars, onComplete:parseResponse});
    return true;
}

function parseResponse(transport) {
    var data = eval('(' + transport.responseText + ')');
    if (data.length > 0) {
      var currentDiv = $('catalog_'+data[0].parent_id);
      if (currentDiv.parentNode.id == 'left_menu') currentDiv.style.backgroundColor = color; 
      currentLink = currentDiv.innerHTML.replace('openChild', 'closeChild');
      currentDiv.innerHTML = currentLink;
      var childDiv = $('catalog_child_'+data[0].parent_id);
      var childLinks = '';
      for (var i=0; i<data.length; i++) {
        
        childLinks += '<div id="catalog_'+data[i].id+'"><a '+(data[i].items?'href="'+data[i].lang+'/catalog/'+data[i].id+'.html" ':'onclick="openChild('+data[i].id+')"')+'>'+data[i].caption+'</a></div><div style="display: none;" id="catalog_child_'+data[i].id+'"></div>';
      }
      childDiv.style.paddingLeft = 10+'px';
      childDiv.innerHTML = childLinks;
      childDiv.style.display = 'block';
    }
}

function closeAllChild (parent) {
  
  if ($('catalog_'+parent)) 
    var nodes = $('catalog_'+parent).parentNode.childNodes;
  else 
    return false;
  
  for (var i=0; i<nodes.length; i++) {
    var id = nodes[i].id;
    if (id != null && id != '') {
      if (id.substr(0, 13) == 'catalog_child') {
        $(id).innerHTML = '';
        $(id).style.display = 'none';
      }
      else {
        parent_id = id.substr(8);
        var currentDiv = $(id);
        currentDiv.removeAttribute('style');
        currentLink = currentDiv.innerHTML.replace('closeChild', 'openChild');
        currentDiv.innerHTML = currentLink;
      }
    }
  }
}

function closeChild (parent) {
  var currentDiv = $('catalog_'+parent);
  currentDiv.removeAttribute('style');
  currentLink = currentDiv.innerHTML.replace('closeChild', 'openChild');
  currentDiv.innerHTML = currentLink;
  $('catalog_child_'+parent).innerHTML = '';
  $('catalog_child_'+parent).style.display = 'none';
}
// function for tree load
function openTree (id, sent) {
  var pars = $H({id:id, sent:sent}).toQueryString();

    new Ajax.Request("catalog/ajax.html?action=tree",
            {method:'post', parameters:pars, onComplete:treeResponse}); 
}

function treeResponse(transport) {
    var data = eval('(' + transport.responseText + ')');
    var last = data.pop();
    if (data.length > 0) {
      var currentDiv = $('catalog_'+data[0].parent_id);
      if (currentDiv.parentNode.id == 'left_menu') currentDiv.style.backgroundColor = color; 
      currentLink = currentDiv.innerHTML.replace('openChild', 'closeChild');
 
      var childDiv = $('catalog_child_'+data[0].parent_id);
      var childLinks = '';
      for (var i=0; i<data.length; i++) {
        if (data[i].active) {
          
          currentLink = currentLink.replace(' ', ' style="color: '+color2+';" '); 
          
          childLinks += '<div id="catalog_'+data[i].id+'"><strong>'+data[i].caption+'</strong></div><div style="display: none;" id="catalog_child_'+data[i].id+'"></div>';
        }
        else {
        childLinks += '<div id="catalog_'+data[i].id+'"><a '+(data[i].items?'href="'+data[i].lang+'/catalog/'+data[i].id+'.html" ':'onclick="openChild('+data[i].id+')"')+'>'+data[i].caption+'</a></div><div style="display: none;" id="catalog_child_'+data[i].id+'"></div>';
        }
      }
      
      currentDiv.innerHTML = currentLink;
      childDiv.style.paddingLeft = 10+'px';
      childDiv.innerHTML = childLinks;
      childDiv.style.display = 'block';
      
    }
    openTree(last, data[0].parent_id);
}