oomph
Version:
Object Oriented javascript models for the client and the server
48 lines (42 loc) • 1.35 kB
JavaScript
// Generated by CoffeeScript 1.9.3
(function() {
var Promise, _utilities, ajaxUtilities;
Promise = require('promise');
_utilities = require('../publicModules/utilities');
ajaxUtilities = {
httpRequest: function(method, url, args, isJson) {
return new Promise((function(_this) {
return function(resolve, reject) {
var client, params, uri;
client = new XMLHttpRequest;
uri = url;
if (method !== 'POST') {
if (args) {
uri += '?';
uri += _utilities.objectToQueryString(args);
}
client.open(method, uri);
client.send();
} else {
params = _utilities.objectToQueryString(args);
client.open(method, url);
client.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
client.send(params);
}
return client.onload = function() {
if (this.status === 200) {
if (isJson) {
return resolve(JSON.parse(this.response));
} else {
return resolve(this.response);
}
} else {
return reject(this.statusText);
}
};
};
})(this));
}
};
module.exports = ajaxUtilities;
}).call(this);