summaryrefslogtreecommitdiffstats
path: root/webapp/utils
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/utils')
-rw-r--r--webapp/utils/async_client.jsx26
-rw-r--r--webapp/utils/client.jsx29
-rw-r--r--webapp/utils/constants.jsx1
3 files changed, 56 insertions, 0 deletions
diff --git a/webapp/utils/async_client.jsx b/webapp/utils/async_client.jsx
index 9a5869f9a..2392b50b9 100644
--- a/webapp/utils/async_client.jsx
+++ b/webapp/utils/async_client.jsx
@@ -342,6 +342,32 @@ export function getServerAudits() {
);
}
+export function getComplianceReports() {
+ if (isCallInProgress('getComplianceReports')) {
+ return;
+ }
+
+ callTracker.getComplianceReports = utils.getTimestamp();
+ client.getComplianceReports(
+ (data, textStatus, xhr) => {
+ callTracker.getComplianceReports = 0;
+
+ if (xhr.status === 304 || !data) {
+ return;
+ }
+
+ AppDispatcher.handleServerAction({
+ type: ActionTypes.RECEIVED_SERVER_COMPLIANCE_REPORTS,
+ complianceReports: data
+ });
+ },
+ (err) => {
+ callTracker.getComplianceReports = 0;
+ dispatchError(err, 'getComplianceReports');
+ }
+ );
+}
+
export function getConfig() {
if (isCallInProgress('getConfig')) {
return;
diff --git a/webapp/utils/client.jsx b/webapp/utils/client.jsx
index ef6d496a2..69bda4303 100644
--- a/webapp/utils/client.jsx
+++ b/webapp/utils/client.jsx
@@ -413,6 +413,35 @@ export function getAudits(userId, success, error) {
});
}
+export function getComplianceReports(success, error) {
+ $.ajax({
+ url: '/api/v1/admin/compliance_reports',
+ dataType: 'json',
+ contentType: 'application/json',
+ type: 'GET',
+ success,
+ error: function onError(xhr, status, err) {
+ var e = handleError('getComplianceReports', xhr, status, err);
+ error(e);
+ }
+ });
+}
+
+export function saveComplianceReports(job, success, error) {
+ $.ajax({
+ url: '/api/v1/admin/save_compliance_report',
+ dataType: 'json',
+ contentType: 'application/json',
+ type: 'POST',
+ data: JSON.stringify(job),
+ success,
+ error: (xhr, status, err) => {
+ var e = handleError('saveComplianceReports', xhr, status, err);
+ error(e);
+ }
+ });
+}
+
export function getLogs(success, error) {
$.ajax({
url: '/api/v1/admin/logs',
diff --git a/webapp/utils/constants.jsx b/webapp/utils/constants.jsx
index 29178aca6..4ee934e11 100644
--- a/webapp/utils/constants.jsx
+++ b/webapp/utils/constants.jsx
@@ -76,6 +76,7 @@ export default {
RECEIVED_CONFIG: null,
RECEIVED_LOGS: null,
RECEIVED_SERVER_AUDITS: null,
+ RECEIVED_SERVER_COMPLIANCE_REPORTS: null,
RECEIVED_ALL_TEAMS: null,
RECEIVED_LOCALE: null,