Viewing File: /usr/local/cpanel/base/frontend/jupiter/mail/authentication/services/manageService.js
/*
# mail/authentication/services/manageService.js Copyright(c) 2020 cPanel, L.L.C.
# All rights reserved.
# copyright@cpanel.net http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited
*/
/* global require: false, define: false */
/* jshint -W098 */
define(
[
"angular",
"cjt/io/api",
"cjt/io/uapi-request",
"cjt/io/uapi", // IMPORTANT: Load the driver so its ready
],
function(angular, API, APIREQUEST) {
var app = angular.module("App");
function manageServiceFactory($q) {
var manageService = {};
var links = [];
manageService.get_providers = function() {
var deferred = $q.defer();
var apiCall = new APIREQUEST.Class();
apiCall.initialize("ExternalAuthentication", "configured_modules");
API.promise(apiCall.getRunArguments())
.done(function(response) {
response = response.parsedResponse;
if (response.status) {
deferred.resolve(response);
} else {
deferred.reject(response.error);
}
});
return deferred.promise;
};
manageService.get_links = function() {
return links;
};
manageService.fetch_links = function(username) {
var deferred = $q.defer();
var apiCall = new APIREQUEST.Class();
apiCall.initialize("ExternalAuthentication", "get_authn_links");
if (username) {
apiCall.addArgument("username", username);
}
API.promise(apiCall.getRunArguments())
.done(function(response) {
response = response.parsedResponse;
if (response.status) {
deferred.resolve(response);
} else {
deferred.reject(response.error);
}
});
deferred.promise.then(function(result) {
links = result.data;
});
return deferred.promise;
};
manageService.unlink = function(provider_id, subject_unique_identifier, username) {
var deferred = $q.defer();
var apiCall = new APIREQUEST.Class();
apiCall.initialize("ExternalAuthentication", "remove_authn_link");
apiCall.addArgument("provider_id", provider_id);
apiCall.addArgument("subject_unique_identifier", subject_unique_identifier);
apiCall.addArgument("username", username);
API.promise(apiCall.getRunArguments())
.done(function(response) {
response = response.parsedResponse;
if (response.status) {
deferred.resolve(response);
} else {
deferred.reject(response.error);
}
});
return deferred.promise;
};
return manageService;
}
manageServiceFactory.$inject = ["$q"];
return app.factory("manageService", manageServiceFactory);
});
Back to Directory
File Manager