function loadCollection(element, form, category){
  if(!document.getElementById){
    form.submit();
    return;
  }
  var element = $(element);
  if(!element) return;
  new Ajax.Updater(element, SERVLET.collection.uri,{
    method: 'get',
    parameters: SERVLET.collection.params+'&category='+category,
    onComplete: function(){ new Effect.Highlight(element.parentNode) }});
}

function showMenu(element){
  var siblings = $$('#top-navigation td.menu');
  var submenu  = element.getElementsByTagName('ul')[0];
  siblings.each(function(e){  e.removeClassName('active') });
  element.addClassName('active');
  if(submenu) Element.show(submenu);
}
function hideMenu(element){
  var submenu = element.getElementsByTagName('ul')[0];
  element.removeClassName('active');
  if(submenu) Element.hide(submenu);
}

function showTab(trigger){
  if(!document.getElementById) return;
  var element   = $(trigger.getAttribute('href').split('#')[1]);
  var container = element.parentNode;
  container.select('.entry').invoke('hide');
  trigger.up('ul').select('li').invoke('removeClassName','current');
  if(element){
    element.show();
    trigger.parentNode.addClassName('current');
  }
  return false;
}

function toggleArticleMenu(){
  if(!document.getElementById) return;
  var open = $('article-navigation').hasClassName('open') ? true:false;
  Element.removeClassName($('article-navigation'), open ? 'open':'closed');
  Element.addClassName($('article-navigation'), open ? 'closed':'open');
}
function toggleSearch(){
  if(!document.getElementById) return;
  var eSimple    = $('simple-search');
  var eAdvanced  = $('advanced-search');
  var goAdvanced = eSimple.visible() ? 1 : 0;
  Element.hide(goAdvanced ? eSimple : eAdvanced);
  Element.show(goAdvanced ? eAdvanced : eSimple);
  return false;
}
function toggleLogin(){
  if(!document.getElementById) return;
  $('login').toggle();
  $('login-user').focus();
  return false;
}
function toggleCart(){
  if(!document.getElementById) return;
  $('cart-body').toggle();
  return false;
}

function validateLogin(f){
  for(var i=0, l=f.elements.length; i<l; ++i){
    var element = f.elements[i];
    if(element.type=='text' && element.value=='') return false;
  }
}

function markAnchor(event){
	if (event != null) {
	  if(!document.getElementById) return;
	  var element = event.findElement('a');
	  var target  = $(element.getAttribute('href').substr(1));
	  if(target){
	    target.addClassName('highlighted');
	    setTimeout(function(){
	      Event.observe(document, 'scroll', function(){
	        target.removeClassName('highlighted');
	        Event.stopObserving(document, 'scroll');
	      });
	     },100);
	  }
	}
}
