diff --git a/client/src/api/index.js b/client/src/api/index.js index adcc60e3..2f2dc705 100644 --- a/client/src/api/index.js +++ b/client/src/api/index.js @@ -211,8 +211,12 @@ export function validate(type, value) { } //System -export function cron() { - return fetchJson("/api/v1/system/cron") +export function cronCleanup() { + return fetchJson("/api/v1/system/cron/cleanup") +} + +export function expiryUserRoles() { + return fetchJson("/api/v1/system/expiry-user-roles") } export function rolesUnknownInManage() { diff --git a/client/src/locale/en.js b/client/src/locale/en.js index e16873f2..8c0e85ce 100644 --- a/client/src/locale/en.js +++ b/client/src/locale/en.js @@ -49,7 +49,8 @@ const en = { cron: "Cron", invite: "Invite", tokens: "API tokens", - unknownRoles: "Missing applications" + unknownRoles: "Missing applications", + expiredUserRoles: "User role expirations" }, home: { access: "SURFconext Invite", @@ -434,6 +435,11 @@ const en = { title: "Roles linked to applications unknown in Manage", searchPlaceHolder: "Search...", noRoles: "Yeah, no unknown manage applications" + }, + expiredUserRoles: { + title: "Roles to be expired the next month", + searchPlaceHolder: "Zoek...", + noResults: "Yeah, no user-roles to be expired within one month" } } diff --git a/client/src/locale/nl.js b/client/src/locale/nl.js index 3e055a6b..5ec16e06 100644 --- a/client/src/locale/nl.js +++ b/client/src/locale/nl.js @@ -49,7 +49,8 @@ const nl = { cron: "Cron", invite: "Uitnodiging", tokens: "API-tokens", - unknownRoles: "Missing applications" + unknownRoles: "Missing applications", + expiredUserRoles: "User role expirations" }, home: { access: "SURFconext Invite", @@ -434,6 +435,11 @@ const nl = { title: "Rollen gekoppeld aan applicaties die verwijderd zijn in Manage", searchPlaceHolder: "Zoek...", noRoles: "Yeah, no unknown manage applications" + }, + expiredUserRoles: { + title: "Roles to be expired the next month", + searchPlaceHolder: "Zoek...", + noRoles: "Yeah, no user-roles to be expired within one month" } } diff --git a/client/src/pages/System.js b/client/src/pages/System.js index 97552afd..48ce9a4c 100644 --- a/client/src/pages/System.js +++ b/client/src/pages/System.js @@ -12,6 +12,7 @@ import {Cron} from "../tabs/Cron"; import {RolesUnknownInManage} from "../tabs/RolesUnknownInManage"; import {Invitations} from "../tabs/Invitations"; import {ReactComponent as InvitationLogo} from "@surfnet/sds/icons/functional-icons/id-1.svg"; +import {ExpiredUserRoles} from "../tabs/ExpiredUserRoles"; export const System = () => { @@ -47,6 +48,12 @@ export const System = () => { label={I18n.t("tabs.unknownRoles")} Icon={RoleLogo}> + , + + ]; diff --git a/client/src/tabs/Cron.js b/client/src/tabs/Cron.js index af290c1a..df91de60 100644 --- a/client/src/tabs/Cron.js +++ b/client/src/tabs/Cron.js @@ -3,7 +3,7 @@ import I18n from "../locale/I18n"; import "./Cron.scss"; import {Button} from "@surfnet/sds"; import "./Users.scss"; -import {cron} from "../api"; +import {cronCleanup} from "../api"; import {isEmpty} from "../utils/Utils"; import {allExpanded, defaultStyles, JsonView} from 'react-json-view-lite'; import 'react-json-view-lite/dist/index.css'; @@ -16,7 +16,7 @@ export const Cron = () => {
{I18n.t("system.cronInfo")} - {isEmpty(results) &&