add files
[uma.git] / public / js / bighead / AC_RunActiveContent.js
blob2e3b5fc6b4f51d951a22559c27a47b798b0dbf0c
1 //v1.0\r
2 //Copyright 2006 Adobe Systems, Inc. All rights reserved.\r
3 function AC_AddExtension(src, ext)\r
4 {\r
5   if (src.indexOf('?') != -1)\r
6     return src.replace(/\?/, ext+'?'); \r
7   else\r
8     return src + ext;\r
9 }\r
11 function AC_Generateobj(objAttrs, params, embedAttrs) \r
12 \r
13   var str = '<object ';\r
14   for (var i in objAttrs)\r
15     str += i + '="' + objAttrs[i] + '" ';\r
16   str += '>';\r
17   for (var i in params)\r
18     str += '<param name="' + i + '" value="' + params[i] + '" /> ';\r
19   str += '<embed ';\r
20   for (var i in embedAttrs)\r
21     str += i + '="' + embedAttrs[i] + '" ';\r
22   str += ' ></embed></object>';\r
24   document.write(str);\r
25 }\r
27 function AC_FL_RunContent(){\r
28   var ret = \r
29     AC_GetArgs\r
30     (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"\r
31      , "application/x-shockwave-flash"\r
32     );\r
33   AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);\r
34 }\r
36 function AC_SW_RunContent(){\r
37   var ret = \r
38     AC_GetArgs\r
39     (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"\r
40      , null\r
41     );\r
42   AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);\r
43 }\r
45 function AC_GetArgs(args, ext, srcParamName, classid, mimeType){\r
46   var ret = new Object();\r
47   ret.embedAttrs = new Object();\r
48   ret.params = new Object();\r
49   ret.objAttrs = new Object();\r
50   for (var i=0; i < args.length; i=i+2){\r
51     var currArg = args[i].toLowerCase();    \r
53     switch (currArg){   \r
54       case "classid":\r
55         break;\r
56       case "pluginspage":\r
57         ret.embedAttrs[args[i]] = args[i+1];\r
58         break;\r
59       case "src":\r
60       case "movie":     \r
61         args[i+1] = AC_AddExtension(args[i+1], ext);\r
62         ret.embedAttrs["src"] = args[i+1];\r
63         ret.params[srcParamName] = args[i+1];\r
64         break;\r
65       case "onafterupdate":\r
66       case "onbeforeupdate":\r
67       case "onblur":\r
68       case "oncellchange":\r
69       case "onclick":\r
70       case "ondblClick":\r
71       case "ondrag":\r
72       case "ondragend":\r
73       case "ondragenter":\r
74       case "ondragleave":\r
75       case "ondragover":\r
76       case "ondrop":\r
77       case "onfinish":\r
78       case "onfocus":\r
79       case "onhelp":\r
80       case "onmousedown":\r
81       case "onmouseup":\r
82       case "onmouseover":\r
83       case "onmousemove":\r
84       case "onmouseout":\r
85       case "onkeypress":\r
86       case "onkeydown":\r
87       case "onkeyup":\r
88       case "onload":\r
89       case "onlosecapture":\r
90       case "onpropertychange":\r
91       case "onreadystatechange":\r
92       case "onrowsdelete":\r
93       case "onrowenter":\r
94       case "onrowexit":\r
95       case "onrowsinserted":\r
96       case "onstart":\r
97       case "onscroll":\r
98       case "onbeforeeditfocus":\r
99       case "onactivate":\r
100       case "onbeforedeactivate":\r
101       case "ondeactivate":\r
102       case "type":\r
103       case "codebase":\r
104         ret.objAttrs[args[i]] = args[i+1];\r
105         break;\r
106       case "width":\r
107       case "height":\r
108       case "align":\r
109       case "vspace": \r
110       case "hspace":\r
111       case "class":\r
112       case "title":\r
113       case "accesskey":\r
114       case "name":\r
115       case "id":\r
116       case "tabindex":\r
117         ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];\r
118         break;\r
119       default:\r
120         ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];\r
121     }\r
122   }\r
123   ret.objAttrs["classid"] = classid;\r
124   if (mimeType) ret.embedAttrs["type"] = mimeType;\r
125   return ret;\r