/*
 * HTMLHttpRequest second script nugget
 * Created June 21, 2007
 * Last update June 21, 2007
 *
**/

var docClickLoader = new RemoteFileLoader('docClickLoader');

function loadInto(src, destId, evt)
{
 var ok = docClickLoader.loadInto(src.href || src.getAttribute('href'), destId);
 if (ok) cancelEvent(evt);
};

function load2Into(src, destId, evt)
{
 var ok = docClickLoader.load2Into(src.href || src.getAttribute('href'), destId);
 if (ok) cancelEvent(evt);
};

function lodeInto(src, destId, evt)
{
 var ok = docClickLoader.lodeInto(src.href || src.getAttribute('href'), destId);
 if (ok) cancelEvent(evt);
};

function toggleInto(src, destId, evt)
{
 var dest = document.getElementById(destId);
 if (!dest.contentLoaded)
 {
  var ok = docClickLoader.loadInto(src.href || src.getAttribute('href'), destId);
  if (ok) dest.contentLoaded = true;
 }
 cancelEvent(evt);
 if (!dest.toggleState)
 {
  dest.style.display = 'block';
  dest.toggleState = 1;
 }
 else
 {
  dest.style.display = 'none';
  dest.toggleState = 0;
 }
};


addEvent(document, 'click', function(evt)
{
 evt = evt || window.event;
 if (evt.which > 1 || evt.button > 1) return;
 var src = evt.target || evt.srcElement;
 if (src.nodeType && src.nodeType != 1) src = src.parentNode;
 while (src)
 {
  var srcName = (src.nodeName||src.tagName||'').toLowerCase();
  if (srcName == 'a' && src.className && src.className.match(/^(load|load2|lode|toggle)into-(.+)$/))
  {
   if (RegExp.$1 == 'load') return loadInto(src, RegExp.$2, evt);
   if (RegExp.$1 == 'load') return load2Into(src, RegExp.$2, evt);
   if (RegExp.$1 == 'lode') return lodeInto(src, RegExp.$2, evt);
   if (RegExp.$1 == 'toggle') return toggleInto(src, RegExp.$2, evt);
  }
  src = src.parentNode;
 }
}, 1);
