// JavaScript Document

/* Peter Birchmeier (2006) */
function scaleImg(imgObj, maxWidth, maxHeight, scaleUp) {
  var display = arguments[4] ? arguments[4] : imgObj.style.display;
  var linkTarget = arguments[5];
  imgObj.style.display = 'none';
  var img = new Image;
  img.onload = function() {
    var ratios = new Array(2);
    ratios[0] = img.width / maxWidth;
    ratios[1] = img.height / maxHeight;
    var dim = (ratios[0] > ratios[1]) ? 0 : 1;
    if (ratios[dim] > 1 || scaleUp) {
      if (dim==0) imgObj.width = maxWidth; else imgObj.height = maxHeight;
    }
    imgObj.style.display = display;

    if (linkTarget && ratios[dim]>1) {
      imgObj.style.cursor='pointer';
      imgObj.style.cursor='hand';
      imgObj.onclick=function() {
        window.open(imgObj.src, linkTarget, "");
      }
    }
  }
  img.src = imgObj.src;
}

/* John Resig, modified version Michael White */
function addEvent(obj, type, fn) {
  if(obj.addEventListener)
    obj.addEventListener(type, fn, false);
  else {
    obj['e'+type+fn] = fn;
    obj[type+fn] = function() {
      obj['e'+type+fn](window.event);
    }
    obj.attachEvent('on'+type, obj[type+fn]);
  }
}
function removeEvent(obj, type, fn) {
  if(obj.removeEventListener)
    obj.removeEventListener(type, fn, false);
  else {
    obj.detachEvent('on'+type, obj[type+fn]);
    obj[type+fn] = null;
  }
}

/*
  (c) http://robertnyman.com/2006/04/24/get-the-rendered-style-of-an-element/
  Example call of the function:
  getStyle(document.getElementById("container"), "font-size");
*/
function getStyle(oElm, strCssRule){
  var strValue = "";
  if(document.defaultView && document.defaultView.getComputedStyle){
    strValue = document.defaultView.getComputedStyle(oElm, "").getPropertyValue(strCssRule);
  }
  else if(oElm.currentStyle){
    strCssRule = strCssRule.replace(/\-(\w)/g, function (strMatch, p1){
      return p1.toUpperCase();
    });
    strValue = oElm.currentStyle[strCssRule];
  }
  return strValue;
}

