Diffstat (limited to 'frontend/gamma/js/MochiKit/MochiKit.js') (more/less context) (ignore whitespace changes)
-rw-r--r-- | frontend/gamma/js/MochiKit/MochiKit.js | 136 |
1 files changed, 136 insertions, 0 deletions
diff --git a/frontend/gamma/js/MochiKit/MochiKit.js b/frontend/gamma/js/MochiKit/MochiKit.js new file mode 100644 index 0000000..8e5be68 --- a/dev/null +++ b/frontend/gamma/js/MochiKit/MochiKit.js | |||
@@ -0,0 +1,136 @@ | |||
1 | /*** | ||
2 | |||
3 | MochiKit.MochiKit 1.5 | ||
4 | |||
5 | See <http://mochikit.com/> for documentation, downloads, license, etc. | ||
6 | |||
7 | (c) 2005 Bob Ippolito. All rights Reserved. | ||
8 | |||
9 | ***/ | ||
10 | |||
11 | if (typeof(MochiKit) == 'undefined') { | ||
12 | MochiKit = {}; | ||
13 | } | ||
14 | |||
15 | if (typeof(MochiKit.MochiKit) == 'undefined') { | ||
16 | /** @id MochiKit.MochiKit */ | ||
17 | MochiKit.MochiKit = {}; | ||
18 | } | ||
19 | |||
20 | MochiKit.MochiKit.NAME = "MochiKit.MochiKit"; | ||
21 | MochiKit.MochiKit.VERSION = "1.5"; | ||
22 | MochiKit.MochiKit.__repr__ = function () { | ||
23 | return "[" + this.NAME + " " + this.VERSION + "]"; | ||
24 | }; | ||
25 | |||
26 | /** @id MochiKit.MochiKit.toString */ | ||
27 | MochiKit.MochiKit.toString = function () { | ||
28 | return this.__repr__(); | ||
29 | }; | ||
30 | |||
31 | /** @id MochiKit.MochiKit.SUBMODULES */ | ||
32 | MochiKit.MochiKit.SUBMODULES = [ | ||
33 | "Base", | ||
34 | "Iter", | ||
35 | "Logging", | ||
36 | "DateTime", | ||
37 | "Format", | ||
38 | "Text", | ||
39 | "Async", | ||
40 | "DOM", | ||
41 | "Selector", | ||
42 | "Style", | ||
43 | "LoggingPane", | ||
44 | "Color", | ||
45 | "Signal", | ||
46 | "Position", | ||
47 | "Visual", | ||
48 | "DragAndDrop", | ||
49 | "Sortable" | ||
50 | ]; | ||
51 | |||
52 | (function () { | ||
53 | if (typeof(document) == "undefined") { | ||
54 | return; | ||
55 | } | ||
56 | var scripts = document.getElementsByTagName("script"); | ||
57 | var kXHTMLNSURI = "http://www.w3.org/1999/xhtml"; | ||
58 | var kSVGNSURI = "http://www.w3.org/2000/svg"; | ||
59 | var kXLINKNSURI = "http://www.w3.org/1999/xlink"; | ||
60 | var kXULNSURI = "http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"; | ||
61 | var base = null; | ||
62 | var baseElem = null; | ||
63 | var allScripts = {}; | ||
64 | var i; | ||
65 | var src; | ||
66 | for (i = 0; i < scripts.length; i++) { | ||
67 | src = null; | ||
68 | switch (scripts[i].namespaceURI) { | ||
69 | case kSVGNSURI: | ||
70 | src = scripts[i].getAttributeNS(kXLINKNSURI, "href"); | ||
71 | break; | ||
72 | /* | ||
73 | case null: // HTML | ||
74 | case '': // HTML | ||
75 | case kXHTMLNSURI: | ||
76 | case kXULNSURI: | ||
77 | */ | ||
78 | default: | ||
79 | src = scripts[i].getAttribute("src"); | ||
80 | break; | ||
81 | } | ||
82 | if (!src) { | ||
83 | continue; | ||
84 | } | ||
85 | allScripts[src] = true; | ||
86 | if (src.match(/MochiKit.js(\?.*)?$/)) { | ||
87 | base = src.substring(0, src.lastIndexOf('MochiKit.js')); | ||
88 | baseElem = scripts[i]; | ||
89 | } | ||
90 | } | ||
91 | if (base === null) { | ||
92 | return; | ||
93 | } | ||
94 | var modules = MochiKit.MochiKit.SUBMODULES; | ||
95 | for (var i = 0; i < modules.length; i++) { | ||
96 | if (MochiKit[modules[i]]) { | ||
97 | continue; | ||
98 | } | ||
99 | var uri = base + modules[i] + '.js'; | ||
100 | if (uri in allScripts) { | ||
101 | continue; | ||
102 | } | ||
103 | if (baseElem.namespaceURI == kSVGNSURI || | ||
104 | baseElem.namespaceURI == kXULNSURI) { | ||
105 | // SVG, XUL | ||
106 | /* | ||
107 | SVG does not support document.write, so if Safari wants to | ||
108 | support SVG tests it should fix its deferred loading bug | ||
109 | (see following below). | ||
110 | */ | ||
111 | var s = document.createElementNS(baseElem.namespaceURI, 'script'); | ||
112 | s.setAttribute("id", "MochiKit_" + base + modules[i]); | ||
113 | if (baseElem.namespaceURI == kSVGNSURI) { | ||
114 | s.setAttributeNS(kXLINKNSURI, 'href', uri); | ||
115 | } else { | ||
116 | s.setAttribute('src', uri); | ||
117 | } | ||
118 | s.setAttribute("type", "application/x-javascript"); | ||
119 | baseElem.parentNode.appendChild(s); | ||
120 | } else { | ||
121 | // HTML, XHTML | ||
122 | /* | ||
123 | DOM can not be used here because Safari does | ||
124 | deferred loading of scripts unless they are | ||
125 | in the document or inserted with document.write | ||
126 | |||
127 | This is not XHTML compliant. If you want XHTML | ||
128 | compliance then you must use the packed version of MochiKit | ||
129 | or include each script individually (basically unroll | ||
130 | these document.write calls into your XHTML source) | ||
131 | */ | ||
132 | document.write('<' + baseElem.nodeName + ' src="' + uri + | ||
133 | '" type="text/javascript"></script>'); | ||
134 | } | ||
135 | }; | ||
136 | })(); | ||