Add a hack for now to just add/remove mail domains as part of domains API

This commit is contained in:
Girish Ramakrishnan
2018-01-25 10:46:41 -08:00
parent 90c867da82
commit c1cb2eda00

View File

@@ -1134,18 +1134,28 @@ angular.module('Application').service('Client', ['$http', '$interval', 'md5', 'N
}).error(defaultErrorHandler(callback));
};
Client.prototype.addMailDomain = function (domain, callback) {
post('/api/v1/mail', { domain: domain }).success(function (data, status) {
if (status !== 201) return callback(new ClientError(status, data));
callback(null);
}).error(defaultErrorHandler(callback)); // this doesn't call defaultErrorHandler till we fix domains code to use this directly
};
Client.prototype.addDomain = function (domain, provider, config, fallbackCertificate, callback) {
var data = {
domain: domain,
provider: provider,
config: config
};
var that = this;
if (fallbackCertificate) data.fallbackCertificate = fallbackCertificate;
// hack until we fix the domains.js
post('/api/v1/domains', data).success(function (data, status) {
if (status !== 201 || typeof data !== 'object') return callback(new ClientError(status, data));
callback(null, data);
that.addMailDomain(domain, callback);
}).error(defaultErrorHandler(callback));
};
@@ -1163,6 +1173,22 @@ angular.module('Application').service('Client', ['$http', '$interval', 'md5', 'N
}).error(defaultErrorHandler(callback));
};
Client.prototype.removeMailDomain = function (domain, password, callback) {
var config = {
data: {
password: password
},
headers: {
'Content-Type': 'application/json'
}
};
del('/api/v1/mail/' + domain, config).success(function (data, status) {
if (status !== 204) return callback(new ClientError(status, data));
callback(null);
}).error(callback); // this doesn't call defaultErrorHandler since we want to handle 404
};
Client.prototype.removeDomain = function (domain, password, callback) {
var config = {
data: {
@@ -1173,10 +1199,13 @@ angular.module('Application').service('Client', ['$http', '$interval', 'md5', 'N
}
};
del('/api/v1/domains/' + domain, config).success(function (data, status) {
if (status !== 204) return callback(new ClientError(status, data));
callback(null);
}).error(defaultErrorHandler(callback));
this.removeMailDomain(domain, password, function () {
// hack: ignore errors until we fix the domains.js
del('/api/v1/domains/' + domain, config).success(function (data, status) {
if (status !== 204) return callback(new ClientError(status, data));
callback(null);
}).error(defaultErrorHandler(callback));
});
};
// Email