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.getElementById('embedQuickTime').innerHTML = (_QTGenerate("QT_WriteOBJECT", false, arguments));}
