diff --git a/dashboard/src/js/client.js b/dashboard/src/js/client.js index ac9f12afb..cd33ea495 100644 --- a/dashboard/src/js/client.js +++ b/dashboard/src/js/client.js @@ -1260,22 +1260,38 @@ angular.module('Application').service('Client', ['$http', '$interval', 'md5', 'N }).error(defaultErrorHandler(callback)); }; - Client.prototype.getUserMailbox = function (domain, userId, callback) { - get('/api/v1/mail/' + domain + '/mailboxes/' + userId).success(function(data, status) { + Client.prototype.getMailbox = function (domain, name, callback) { + get('/api/v1/mail/' + domain + '/mailboxes/' + name).success(function(data, status) { if (status !== 200) return callback(new ClientError(status, data)); callback(null, data.mailbox); }).error(defaultErrorHandler(callback)); }; - Client.prototype.enableUserMailbox = function (domain, userId, callback) { - post('/api/v1/mail/' + domain + '/mailboxes/' + userId, {}).success(function(data, status) { + Client.prototype.addMailbox = function (domain, name, userId, callback) { + var data = { + name: name, + userId: userId + }; + + post('/api/v1/mail/' + domain + '/mailboxes', data).success(function(data, status) { if (status !== 201) return callback(new ClientError(status, data)); callback(null); }).error(defaultErrorHandler(callback)); }; - Client.prototype.disableUserMailbox = function (domain, userId, callback) { - del('/api/v1/mail/' + domain + '/mailboxes/' + userId).success(function(data, status) { + Client.prototype.updateMailbox = function (domain, name, userId, callback) { + var data = { + userId: userId + }; + + post('/api/v1/mail/' + domain + '/mailboxes/' + name, data).success(function(data, status) { + if (status !== 204) return callback(new ClientError(status, data)); + callback(null); + }).error(defaultErrorHandler(callback)); + }; + + Client.prototype.removeMailbox = function (domain, name, callback) { + del('/api/v1/mail/' + domain + '/mailboxes/' + name).success(function(data, status) { if (status !== 201) return callback(new ClientError(status, data)); callback(null); }).error(defaultErrorHandler(callback)); @@ -1288,19 +1304,19 @@ angular.module('Application').service('Client', ['$http', '$interval', 'md5', 'N }).error(defaultErrorHandler(callback)); }; - Client.prototype.getAliases = function (domain, userId, callback) { - get('/api/v1/mail/' + domain + '/aliases/' + userId).success(function(data, status) { + Client.prototype.getAliases = function (domain, name, callback) { + get('/api/v1/mail/' + domain + '/aliases/' + name).success(function(data, status) { if (status !== 200) return callback(new ClientError(status, data)); callback(null, data.aliases); }).error(defaultErrorHandler(callback)); }; - Client.prototype.setAliases = function (domain, userId, aliases, callback) { + Client.prototype.setAliases = function (domain, name, aliases, callback) { var data = { aliases: aliases }; - put('/api/v1/mail/' + domain + '/aliases/' + userId, data).success(function(data, status) { + put('/api/v1/mail/' + domain + '/aliases/' + name, data).success(function(data, status) { if (status !== 202) return callback(new ClientError(status, data)); callback(null); }).error(defaultErrorHandler(callback)); @@ -1313,15 +1329,16 @@ angular.module('Application').service('Client', ['$http', '$interval', 'md5', 'N }).error(defaultErrorHandler(callback)); }; - Client.prototype.getMailingList = function (domain, groupId, callback) { - get('/api/v1/mail/' + domain + '/lists/' + groupId).success(function(data, status) { + Client.prototype.getMailingList = function (domain, name, callback) { + get('/api/v1/mail/' + domain + '/lists/' + name).success(function(data, status) { if (status !== 200) return callback(new ClientError(status, data)); callback(null, data.list); }).error(defaultErrorHandler(callback)); }; - Client.prototype.addMailingList = function (domain, groupId, callback) { + Client.prototype.addMailingList = function (domain, name, groupId, callback) { var data = { + name: name, groupId: groupId }; @@ -1331,8 +1348,19 @@ angular.module('Application').service('Client', ['$http', '$interval', 'md5', 'N }).error(defaultErrorHandler(callback)); }; - Client.prototype.removeMailingList = function (domain, groupId, callback) { - del('/api/v1/mail/' + domain + '/lists/' + groupId).success(function(data, status) { + Client.prototype.updateMailingList = function (domain, name, groupId, callback) { + var data = { + groupId: groupId + }; + + post('/api/v1/mail/' + domain + '/lists/' + name, data).success(function(data, status) { + if (status !== 204) return callback(new ClientError(status, data)); + callback(null); + }).error(defaultErrorHandler(callback)); + }; + + Client.prototype.removeMailingList = function (domain, name, callback) { + del('/api/v1/mail/' + domain + '/lists/' + name).success(function(data, status) { if (status !== 204) return callback(new ClientError(status, data)); callback(null); }).error(defaultErrorHandler(callback));