var gArgCountErr = 'The "%%" function requires an even number of arguments.' + '\nArguments should be in the form "atttributeName", "attributeValue", ...'; var gTagAttrs = null; var gQTGeneratorVersion = 1.0; function AC_QuickTimeVersion() { return gQTGeneratorVersion;}

function _QTComplain(callingFcnName, errMsg)

{ errMsg = errMsg.replace("%%", callingFcnName); alert(errMsg);}

function _QTAddAttribute(prefix, slotName, tagName)

{ var value; value = gTagAttrs[prefix + slotName]; if ( null == value )

value = gTagAttrs[slotName]; if ( null != value )

{ if ( 0 == slotName.indexOf(prefix) && (null == tagName) )

tagName = slotName.substring(prefix.length); if ( null == tagName )

tagName = slotName; return tagName + '="' + value + '" ';}

else

return "";}

function _QTAddObjectAttr(slotName, tagName)

{ if ( 0 == slotName.indexOf("emb#") )

return ""; if ( 0 == slotName.indexOf("obj#") && (null == tagName) )

tagName = slotName.substring(4); return _QTAddAttribute("obj#", slotName, tagName);}

function _QTAddEmbedAttr(slotName, tagName)

{ if ( 0 == slotName.indexOf("obj#") )

return ""; if ( 0 == slotName.indexOf("emb#") && (null == tagName) )

tagName = slotName.substring(4); return _QTAddAttribute("emb#", slotName, tagName);}

function _QTAddObjectParam(slotName, generateXHTML)

{ var paramValue; var paramStr = ""; var endTagChar = (generateXHTML) ? ' />' : '>'; if ( -1 == slotName.indexOf("emb#") )

{ paramValue = gTagAttrs["obj#" + slotName]; if ( null == paramValue )

paramValue = gTagAttrs[slotName]; if ( 0 == slotName.indexOf("obj#") )

slotName = slotName.substring(4); if ( null != paramValue )

paramStr = '  <param name="' + slotName + '" value="' + paramValue + '"' + endTagChar + '\n';}

return paramStr;}

function _QTDeleteTagAttrs()

{ for ( var ndx = 0; ndx < arguments.length; ndx++ )

{ var attrName = arguments[ndx]; delete gTagAttrs[attrName]; delete gTagAttrs["emb#" + attrName]; delete gTagAttrs["obj#" + attrName];}

}

function _QTGenerate(callingFcnName, generateXHTML, args)

{ if ( args.length < 4 || (0 != (args.length % 2)) )

{ _QTComplain(callingFcnName, gArgCountErr); return "";}

gTagAttrs = new Array(); gTagAttrs["src"] = args[0]; gTagAttrs["width"] = args[1]; gTagAttrs["height"] = args[2]; gTagAttrs["classid"] = "clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B"; gTagAttrs["pluginspage"] = "http://www.apple.com/quicktime/download/"; var activexVers = args[3]

if ( (null == activexVers) || ("" == activexVers) )

activexVers = "6,0,2,0"; gTagAttrs["codebase"] = "http://www.apple.com/qtactivex/qtplugin.cab#version=" + activexVers; var attrName, attrValue; for ( var ndx = 4; ndx < args.length; ndx += 2)

{ attrName = args[ndx].toLowerCase(); attrValue = args[ndx + 1]; if ( "name" == attrName || "id" == attrName )

gTagAttrs["name"] = attrValue; else

gTagAttrs[attrName] = attrValue;}

var objTag = '<object ' + _QTAddObjectAttr("classid") + _QTAddObjectAttr("width") + _QTAddObjectAttr("height") + _QTAddObjectAttr("codebase") + _QTAddObjectAttr("name", "id") + _QTAddObjectAttr("tabindex") + _QTAddObjectAttr("hspace") + _QTAddObjectAttr("vspace") + _QTAddObjectAttr("border") + _QTAddObjectAttr("align") + _QTAddObjectAttr("class") + _QTAddObjectAttr("title") + _QTAddObjectAttr("accesskey") + _QTAddObjectAttr("noexternaldata") + '>\n' + _QTAddObjectParam("src", generateXHTML); var embedTag = '  <embed ' + _QTAddEmbedAttr("src") + _QTAddEmbedAttr("width") + _QTAddEmbedAttr("height") + _QTAddEmbedAttr("pluginspage") + _QTAddEmbedAttr("name") + _QTAddEmbedAttr("align") + _QTAddEmbedAttr("tabindex"); _QTDeleteTagAttrs("src","width","height","pluginspage","classid","codebase","name","tabindex", "hspace","vspace","border","align","noexternaldata","class","title","accesskey"); for ( var attrName in gTagAttrs )

{ attrValue = gTagAttrs[attrName]; if ( null != attrValue )

{ embedTag += _QTAddEmbedAttr(attrName); objTag += _QTAddObjectParam(attrName, generateXHTML);}

}

return objTag + embedTag + '> </em' + 'bed>\n</ob' + 'ject' + '>';}

function QT_WriteOBJECT()

{ document.writeln(_QTGenerate("QT_WriteOBJECT", false, arguments));}
