// http://simon.incutio.com/archive/2004/05/26/addLoadEvent
function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      oldonload();
      func();
    }
  }
}

MM_FlashCanPlay = checkFlash();

function checkFlash(){
  var MM_contentVersion = 6;
  var plugin = (navigator.mimeTypes && navigator.mimeTypes["application/x-shockwave-flash"]) ? navigator.mimeTypes["application/x-shockwave-flash"].enabledPlugin : 0;
  if (plugin) {
    var words = navigator.plugins["Shockwave Flash"].description.split(" ");
    for (var i = 0; i < words.length; ++i)
    {
      if (isNaN(parseInt(words[i])))
      continue;
      var MM_PluginVersion = words[i]; 
    }
    var MM_FlashCanPlay = MM_PluginVersion >= MM_contentVersion;
  }
  else if (navigator.userAgent && navigator.userAgent.indexOf("MSIE")>=0 
    && (navigator.appVersion.indexOf("Win") != -1)) {
    oFlash = eval("new ActiveXObject('ShockwaveFlash.ShockwaveFlash." + MM_contentVersion + "');");
    if(oFlash) { MM_FlashCanPlay = true; }
  }
  
  if(window.location.search == "?noflash=1"){ MM_FlashCanPlay = 0; }
  
  return MM_FlashCanPlay;
}

function addEventToElement(elem,func,event){
  if(typeof elem != "object"){ return false; }
  if(typeof func != "function"){ return false; }
  
  if(typeof event == "object"){
    for(var i=0;i<event.length;i++){ addEventToElem(elem,func,event[i]); }
  }
  else if(typeof event == "string") {
    var elemEvent = eval("elem."+ event);
    var old = elemEvent;
    if (typeof elemEvent != 'function') { elemEvent = func; } 
    else {
      elemEvent = function() {
        old();
        func();
      }
    }
    switch(event){
    case "onload":
      elem.onload=elemEvent;
      break;
    case "onchange":
      elem.onchange=elemEvent;
      break;
    case "onfocus":
      elem.onfocus=elemEvent;
      break;
    case "onblur":
      elem.onblur=elemEvent;
      break;
    case "onclick":
      elem.onclick=elemEvent;
      break;
    case "onmouseover":
      elem.onmouseover=elemEvent;
      break;
    case "onmouseout":
      elem.onmouseout=elemEvent;
      break;
    }
  }
}
