var IsIE  = (navigator.appVersion.indexOf("MSIE") != -1) ? true : false;
var IsWin = (navigator.appVersion.toLowerCase().indexOf("win") != -1) ? true : false;
var IsOpera = (navigator.userAgent.indexOf("Opera") != -1) ? true : false;

function AddExtension(src, ext) {
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?');
  else
    return src + ext;
}

function GenerateObj(objAttrs, params, embedAttrs) {
  var str = '';

  if (IsIE && IsWin && !IsOpera) {

    str += '<object ';

    for (var i in objAttrs) {
      str += i + '="' + objAttrs[i] + '" ';
    }

    str += '>';

    for (var i in params) {
      str += '<param name="' + i + '" value="' + params[i] + '" /> ';
    }

    str += '</object>';
  }
  else {

    str += '<embed ';

    for (var i in embedAttrs) {
      str += i + '="' + embedAttrs[i] + '" ';
    }

    str += '> </embed>';
  }

  document.write(str);
}

function RunSWFContent() {
  var ret = GetArgs ( arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000", "application/x-shockwave-flash");

  GenerateObj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function GetArgs(args, ext, srcParamName, classid, mimeType) {
  var ret = new Object();

  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();

  for (var i=0; i < args.length; i=i+2) {

    var currArg = args[i].toLowerCase();

    switch (currArg) {
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":
        args[i+1] = AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblclick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
      case "id":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace":
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }

  ret.objAttrs["classid"] = classid;

  if (mimeType) ret.embedAttrs["type"] = mimeType;

  return ret;
}

function swapImgRestore() { //v3.0
  var i,x,a=document.sr;

  for (i=0; a && i < a.length && (x=a[i]) && x.oSrc; i++)
    x.src=x.oSrc;
}

function preloadImages() { //v3.0
  var d=document;

  if (d.images) {
    if (!d.pl) d.pl=new Array();

    var i,j=d.pl.length,a=preloadImages.arguments;

    for(i=0; i < a.length; i++)

    if (a[i].indexOf("#")!=0) {
      d.pl[j]=new Image;
      d.pl[j++].src=a[i];
    }
  }
}

function findObj(n, d) { //v4.01
  var p,i,x;

  if (!d)
    d=document;

  if ((p=n.indexOf("?"))>0 && parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document;
    n=n.substring(0,p);
  }

  if (!(x=d[n]) && d.all)
    x=d.all[n];

  for (i=0;!x && i<d.forms.length; i++)
    x=d.forms[i][n];

  for (i=0;!x && d.layers && i<d.layers.length;i++)
    x=findObj(n,d.layers[i].document);

  if (!x && d.getElementById)
    x=d.getElementById(n);
    return x;
}

function swapImage() { //v3.0
  var i,j=0,x,a=swapImage.arguments;

  document.sr=new Array; for(i=0; i < (a.length-2); i+=3)

  if ((x=findObj(a[i]))!=null) {
    document.sr[j++]=x;

    if (!x.oSrc)
      x.oSrc=x.src;
      x.src=a[i+2];
  }
}