// imageFader.js

// -------------------------------------------------------------------

function ImageFader() { }

ImageFader.prototype.pattern = /imagefader\[(\w+)\]/;

ImageFader.prototype.fade = function(imageLinkObject) 
{
  var relAttribute = String(imageLinkObject.getAttribute('rel'));

  if ((regexResult = myImageFader.pattern.exec(relAttribute)) == null)
    return;

  var idOfTargetDiv = regexResult[1];
  var targetDiv = document.getElementById(idOfTargetDiv);
  if (targetDiv == null)
    return;

  var imgId = idOfTargetDiv + 'XXX';
  var imgElement = document.createElement('img');
  imgElement.setAttribute('src', imageLinkObject.href);
  imgElement.setAttribute('id', imgId);
  targetDiv.innerHTML = '';
  targetDiv.appendChild(imgElement);

  var imgObject = $("#" + imgId);
  imgObject.hide();
  imgObject.fadeIn(1000);
}


// -------------------------------------------------------------------

if (window.addEventListener)
{
  window.addEventListener("load", initImageFader, false);
}
else if (window.attachEvent)
{
  window.attachEvent("onload", initImageFader);
}
else
{
  window.onload = function() { initImageFader(); }
}

function initImageFader()
{
  myImageFader = new ImageFader();

  var anchors = document.getElementsByTagName('a');

  for (var i = 0; i < anchors.length; i++)
  {
    var anchor       = anchors[i];
    var relAttribute = String(anchor.getAttribute('rel'));

    if (anchor.getAttribute('href'))
    {
      if ((regexResult = myImageFader.pattern.exec(relAttribute)) != null)
      {
        var idOfTargetDiv = regexResult[1];
        anchor.onclick = function () {
          myImageFader.fade(this); return false;
        }
      }
    }
  }
}

