omnifilter
Version:
"Awesome filters applied to personal images"
81 lines (72 loc) • 2.11 kB
JavaScript
var handleSuccess = function(callback) {
return function(res) {
callback(null, res.data);
};
};
var handleFailure = function(callback) {
return function(res) {
callback(res);
};
};
module.exports = exports = function(app) {
app.factory('cfResource', ['$http', '$window', 'userAuth', function($http, $window, userAuth) {
var Resource = function(resourceName) {
this.resourceName = resourceName;
};
Resource.prototype.getAll = function(callback) {
$http({
method: 'GET',
url: 'http://localhost:3000' + this.resourceName + 'getAll',
headers: {
token: userAuth.getToken()
}
})
.then(handleSuccess(callback), handleFailure(callback));
};
Resource.prototype.create = function(data, callback) {
$http({
method: 'POST',
url: 'http://localhost:3000' + this.resourceName,
data: data,
headers: {
token: userAuth.getToken()
}
})
.then(handleSuccess(callback), handleFailure(callback));
};
Resource.prototype.update = function(data, callback) {
$http({
method: 'PUT',
url: 'http://localhost:3000' + this.resourceName + '/' + data._id,
data: data,
headers: {
token: userAuth.getToken()
}
})
.then(handleSuccess(callback), handleFailure(callback));
};
Resource.prototype.delete = function(data, callback) {
$http({
method: 'DELETE',
url: 'http://localhost:3000' + this.resourceName + '/' + data._id,
headers: {
token: userAuth.getToken()
}
})
.then(handleSuccess(callback), handleFailure(callback));
};
Resource.prototype.verify = function(callback) {
$http({
method: 'GET',
url: 'http://localhost:3000/verify',
headers: {
token: $window.localStorage.token
}
})
.then(handleSuccess(callback), handleFailure(callback));
};
return function(resourceName) {
return new Resource(resourceName);
};
}]);
};