summaryrefslogtreecommitdiff
path: root/static/src/assets/trading-in-the-rain/MIDI.js/js/util/dom_request_xhr.js
diff options
context:
space:
mode:
Diffstat (limited to 'static/src/assets/trading-in-the-rain/MIDI.js/js/util/dom_request_xhr.js')
-rw-r--r--static/src/assets/trading-in-the-rain/MIDI.js/js/util/dom_request_xhr.js146
1 files changed, 0 insertions, 146 deletions
diff --git a/static/src/assets/trading-in-the-rain/MIDI.js/js/util/dom_request_xhr.js b/static/src/assets/trading-in-the-rain/MIDI.js/js/util/dom_request_xhr.js
deleted file mode 100644
index 84c208e..0000000
--- a/static/src/assets/trading-in-the-rain/MIDI.js/js/util/dom_request_xhr.js
+++ /dev/null
@@ -1,146 +0,0 @@
-/*
- ----------------------------------------------------------
- util/Request : 0.1.1 : 2015-03-26
- ----------------------------------------------------------
- util.request({
- url: './dir/something.extension',
- data: 'test!',
- format: 'text', // text | xml | json | binary
- responseType: 'text', // arraybuffer | blob | document | json | text
- headers: {},
- withCredentials: true, // true | false
- ///
- onerror: function(evt, percent) {
- console.log(evt);
- },
- onsuccess: function(evt, responseText) {
- console.log(responseText);
- },
- onprogress: function(evt, percent) {
- percent = Math.round(percent * 100);
- loader.create('thread', 'loading... ', percent);
- }
- });
-*/
-
-if (typeof MIDI === 'undefined') MIDI = {};
-
-(function(root) {
-
- var util = root.util || (root.util = {});
-
- util.request = function(opts, onsuccess, onerror, onprogress) { 'use strict';
- if (typeof opts === 'string') opts = {url: opts};
- ///
- var data = opts.data;
- var url = opts.url;
- var method = opts.method || (opts.data ? 'POST' : 'GET');
- var format = opts.format;
- var headers = opts.headers;
- var responseType = opts.responseType;
- var withCredentials = opts.withCredentials || false;
- ///
- var onsuccess = onsuccess || opts.onsuccess;
- var onerror = onerror || opts.onerror;
- var onprogress = onprogress || opts.onprogress;
- ///
- if (typeof NodeFS !== 'undefined' && root.loc.isLocalUrl(url)) {
- NodeFS.readFile(url, 'utf8', function(err, res) {
- if (err) {
- onerror && onerror(err);
- } else {
- onsuccess && onsuccess({responseText: res});
- }
- });
- return;
- }
- ///
- var xhr = new XMLHttpRequest();
- xhr.open(method, url, true);
- ///
- if (headers) {
- for (var type in headers) {
- xhr.setRequestHeader(type, headers[type]);
- }
- } else if (data) { // set the default headers for POST
- xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
- }
- if (format === 'binary') { //- default to responseType="blob" when supported
- if (xhr.overrideMimeType) {
- xhr.overrideMimeType('text/plain; charset=x-user-defined');
- }
- }
- if (responseType) {
- xhr.responseType = responseType;
- }
- if (withCredentials) {
- xhr.withCredentials = 'true';
- }
- if (onerror && 'onerror' in xhr) {
- xhr.onerror = onerror;
- }
- if (onprogress && xhr.upload && 'onprogress' in xhr.upload) {
- if (data) {
- xhr.upload.onprogress = function(evt) {
- onprogress.call(xhr, evt, event.loaded / event.total);
- };
- } else {
- xhr.addEventListener('progress', function(evt) {
- var totalBytes = 0;
- if (evt.lengthComputable) {
- totalBytes = evt.total;
- } else if (xhr.totalBytes) {
- totalBytes = xhr.totalBytes;
- } else {
- var rawBytes = parseInt(xhr.getResponseHeader('Content-Length-Raw'));
- if (isFinite(rawBytes)) {
- xhr.totalBytes = totalBytes = rawBytes;
- } else {
- return;
- }
- }
- onprogress.call(xhr, evt, evt.loaded / totalBytes);
- });
- }
- }
- ///
- xhr.onreadystatechange = function(evt) {
- if (xhr.readyState === 4) { // The request is complete
- if (xhr.status === 200 || // Response OK
- xhr.status === 304 || // Not Modified
- xhr.status === 308 || // Permanent Redirect
- xhr.status === 0 && root.client.cordova // Cordova quirk
- ) {
- if (onsuccess) {
- var res;
- if (format === 'xml') {
- res = evt.target.responseXML;
- } else if (format === 'text') {
- res = evt.target.responseText;
- } else if (format === 'json') {
- try {
- res = JSON.parse(evt.target.response);
- } catch(err) {
- onerror && onerror.call(xhr, evt);
- }
- }
- ///
- onsuccess.call(xhr, evt, res);
- }
- } else {
- onerror && onerror.call(xhr, evt);
- }
- }
- };
- xhr.send(data);
- return xhr;
- };
-
- /// NodeJS
- if (typeof module !== 'undefined' && module.exports) {
- var NodeFS = require('fs');
- XMLHttpRequest = require('xmlhttprequest').XMLHttpRequest;
- module.exports = root.util.request;
- }
-
-})(MIDI); \ No newline at end of file