diff options
Diffstat (limited to 'assets/trading-in-the-rain/MIDI.js/js/util/dom_request_script.js')
-rw-r--r-- | assets/trading-in-the-rain/MIDI.js/js/util/dom_request_script.js | 225 |
1 files changed, 0 insertions, 225 deletions
diff --git a/assets/trading-in-the-rain/MIDI.js/js/util/dom_request_script.js b/assets/trading-in-the-rain/MIDI.js/js/util/dom_request_script.js deleted file mode 100644 index 8f1ea5a..0000000 --- a/assets/trading-in-the-rain/MIDI.js/js/util/dom_request_script.js +++ /dev/null @@ -1,225 +0,0 @@ -/* - ----------------------------------------------------------- - dom.loadScript.js : 0.1.4 : 2014/02/12 : http://mudcu.be - ----------------------------------------------------------- - Copyright 2011-2014 Mudcube. All rights reserved. - ----------------------------------------------------------- - /// No verification - dom.loadScript.add("../js/jszip/jszip.js"); - /// Strict loading order and verification. - dom.loadScript.add({ - strictOrder: true, - urls: [ - { - url: "../js/jszip/jszip.js", - verify: "JSZip", - onsuccess: function() { - console.log(1) - } - }, - { - url: "../inc/downloadify/js/swfobject.js", - verify: "swfobject", - onsuccess: function() { - console.log(2) - } - } - ], - onsuccess: function() { - console.log(3) - } - }); - /// Just verification. - dom.loadScript.add({ - url: "../js/jszip/jszip.js", - verify: "JSZip", - onsuccess: function() { - console.log(1) - } - }); -*/ - -if (typeof(dom) === "undefined") var dom = {}; - -(function() { "use strict"; - -dom.loadScript = function() { - this.loaded = {}; - this.loading = {}; - return this; -}; - -dom.loadScript.prototype.add = function(config) { - var that = this; - if (typeof(config) === "string") { - config = { url: config }; - } - var urls = config.urls; - if (typeof(urls) === "undefined") { - urls = [{ - url: config.url, - verify: config.verify - }]; - } - /// adding the elements to the head - var doc = document.getElementsByTagName("head")[0]; - /// - var testElement = function(element, test) { - if (that.loaded[element.url]) return; - if (test && globalExists(test) === false) return; - that.loaded[element.url] = true; - // - if (that.loading[element.url]) that.loading[element.url](); - delete that.loading[element.url]; - // - if (element.onsuccess) element.onsuccess(); - if (typeof(getNext) !== "undefined") getNext(); - }; - /// - var hasError = false; - var batchTest = []; - var addElement = function(element) { - if (typeof(element) === "string") { - element = { - url: element, - verify: config.verify - }; - } - if (/([\w\d.\[\]\'\"])$/.test(element.verify)) { // check whether its a variable reference - var verify = element.test = element.verify; - if (typeof(verify) === "object") { - for (var n = 0; n < verify.length; n ++) { - batchTest.push(verify[n]); - } - } else { - batchTest.push(verify); - } - } - if (that.loaded[element.url]) return; - var script = document.createElement("script"); - script.onreadystatechange = function() { - if (this.readyState !== "loaded" && this.readyState !== "complete") return; - testElement(element); - }; - script.onload = function() { - testElement(element); - }; - script.onerror = function() { - hasError = true; - delete that.loading[element.url]; - if (typeof(element.test) === "object") { - for (var key in element.test) { - removeTest(element.test[key]); - } - } else { - removeTest(element.test); - } - }; - script.setAttribute("type", "text/javascript"); - script.setAttribute("src", element.url); - doc.appendChild(script); - that.loading[element.url] = function() {}; - }; - /// checking to see whether everything loaded properly - var removeTest = function(test) { - var ret = []; - for (var n = 0; n < batchTest.length; n ++) { - if (batchTest[n] === test) continue; - ret.push(batchTest[n]); - } - batchTest = ret; - }; - var onLoad = function(element) { - if (element) { - testElement(element, element.test); - } else { - for (var n = 0; n < urls.length; n ++) { - testElement(urls[n], urls[n].test); - } - } - var istrue = true; - for (var n = 0; n < batchTest.length; n ++) { - if (globalExists(batchTest[n]) === false) { - istrue = false; - } - } - if (!config.strictOrder && istrue) { // finished loading all the requested scripts - if (hasError) { - if (config.error) { - config.error(); - } - } else if (config.onsuccess) { - config.onsuccess(); - } - } else { // keep calling back the function - setTimeout(function() { //- should get slower over time? - onLoad(element); - }, 10); - } - }; - /// loading methods; strict ordering or loose ordering - if (config.strictOrder) { - var ID = -1; - var getNext = function() { - ID ++; - if (!urls[ID]) { // all elements are loaded - if (hasError) { - if (config.error) { - config.error(); - } - } else if (config.onsuccess) { - config.onsuccess(); - } - } else { // loading new script - var element = urls[ID]; - var url = element.url; - if (that.loading[url]) { // already loading from another call (attach to event) - that.loading[url] = function() { - if (element.onsuccess) element.onsuccess(); - getNext(); - } - } else if (!that.loaded[url]) { // create script element - addElement(element); - onLoad(element); - } else { // it's already been successfully loaded - getNext(); - } - } - }; - getNext(); - } else { // loose ordering - for (var ID = 0; ID < urls.length; ID ++) { - addElement(urls[ID]); - onLoad(urls[ID]); - } - } -}; - -dom.loadScript = new dom.loadScript(); - -var globalExists = function(path, root) { - try { - path = path.split('"').join('').split("'").join('').split(']').join('').split('[').join('.'); - var parts = path.split("."); - var length = parts.length; - var object = root || window; - for (var n = 0; n < length; n ++) { - var key = parts[n]; - if (object[key] == null) { - return false; - } else { // - object = object[key]; - } - } - return true; - } catch(e) { - return false; - } -}; - -})(); - -/// For NodeJS -if (typeof (module) !== "undefined" && module.exports) { - module.exports = dom.loadScript; -}
\ No newline at end of file |