From fac92f9b5053d9f11dc1d72c81d290acd888cd63 Mon Sep 17 00:00:00 2001 From: Sarah Vaupel Date: Sat, 14 May 2022 00:34:22 +0200 Subject: [PATCH] feat(workflows): implement archive and list page actions --- .../utils/navigation/menu/de-de-formal.msg | 2 + .../uniworx/utils/navigation/menu/en-eu.msg | 2 + src/Foundation/Navigation.hs | 52 +++++++++++++++++++ 3 files changed, 56 insertions(+) diff --git a/messages/uniworx/utils/navigation/menu/de-de-formal.msg b/messages/uniworx/utils/navigation/menu/de-de-formal.msg index 69bc2b39d..b082c1571 100644 --- a/messages/uniworx/utils/navigation/menu/de-de-formal.msg +++ b/messages/uniworx/utils/navigation/menu/de-de-formal.msg @@ -127,11 +127,13 @@ MenuWorkflowInstanceWorkflows: Laufende Workflows MenuWorkflowInstanceInitiate: Workflow starten MenuWorkflowInstanceEdit: Bearbeiten MenuWorkflowWorkflowList: Laufende Workflows +MenuWorkflowWorkflowArchive: Archivierte Workflows MenuWorkflowWorkflowEdit: Editieren MenuWorkflowWorkflowDelete: Löschen MenuGlobalWorkflowInstanceList: Systemweite Workflows MenuTopWorkflowInstanceList !ident-ok: Workflows MenuTopWorkflowWorkflowList: Laufende Workflows +MenuTopWorkflowWorkflowArchive: Archivierte Workflows MenuTopWorkflowWorkflowListHeader !ident-ok: Workflows MenuGlossary: Begriffsverzeichnis MenuVersion: Versionsgeschichte diff --git a/messages/uniworx/utils/navigation/menu/en-eu.msg b/messages/uniworx/utils/navigation/menu/en-eu.msg index 3a4a45a16..00b3ba02c 100644 --- a/messages/uniworx/utils/navigation/menu/en-eu.msg +++ b/messages/uniworx/utils/navigation/menu/en-eu.msg @@ -128,11 +128,13 @@ MenuWorkflowInstanceWorkflows: Running workflows MenuWorkflowInstanceInitiate: Start workflow MenuWorkflowInstanceEdit: Edit MenuWorkflowWorkflowList: Running workflows +MenuWorkflowWorkflowArchive: Archived workflows MenuWorkflowWorkflowEdit: Edit MenuWorkflowWorkflowDelete: Delete MenuGlobalWorkflowInstanceList: System-wide workflows MenuTopWorkflowInstanceList: Workflows MenuTopWorkflowWorkflowList: Running workflows +MenuTopWorkflowWorkflowArchive: Archived workflows MenuTopWorkflowWorkflowListHeader: Workflows MenuGlossary: Glossary MenuVersion: Version history diff --git a/src/Foundation/Navigation.hs b/src/Foundation/Navigation.hs index 8c6c51b14..d3078f080 100644 --- a/src/Foundation/Navigation.hs +++ b/src/Foundation/Navigation.hs @@ -2636,6 +2636,32 @@ pageActions route | Just (rScope, WorkflowInstanceR win WIEditR) <- route ^? _Wo , navChildren = [] } ] +pageActions route | Just (rScope, WorkflowWorkflowListR) <- route ^? _WorkflowScopeRoute = return + [ NavPageActionPrimary + { navLink = NavLink + { navLabel = MsgMenuWorkflowWorkflowArchive + , navRoute = _WorkflowScopeRoute # (rScope, WorkflowWorkflowArchiveR) + , navAccess' = NavAccessTrue + , navType = NavTypeLink { navModal = False } + , navQuick' = mempty + , navForceActive = False + } + , navChildren = [] + } + ] +pageActions route | Just (rScope, WorkflowWorkflowArchiveR) <- route ^? _WorkflowScopeRoute = return + [ NavPageActionPrimary + { navLink = NavLink + { navLabel = MsgMenuWorkflowWorkflowList + , navRoute = _WorkflowScopeRoute # (rScope, WorkflowWorkflowListR) + , navAccess' = NavAccessTrue + , navType = NavTypeLink { navModal = False } + , navQuick' = mempty + , navForceActive = False + } + , navChildren = [] + } + ] pageActions route | Just (rScope, WorkflowWorkflowR cID WWWorkflowR) <- route ^? _WorkflowScopeRoute = return [ NavPageActionSecondary { navLink = NavLink @@ -2671,6 +2697,32 @@ pageActions TopWorkflowInstanceListR = return , navChildren = [] } ] +pageActions TopWorkflowWorkflowListR = return + [ NavPageActionPrimary + { navLink = NavLink + { navLabel = MsgMenuTopWorkflowWorkflowArchive + , navRoute = TopWorkflowWorkflowArchiveR + , navAccess' = NavAccessTrue + , navType = NavTypeLink { navModal = False } + , navQuick' = mempty + , navForceActive = False + } + , navChildren = [] + } + ] +pageActions TopWorkflowWorkflowArchiveR = return + [ NavPageActionPrimary + { navLink = NavLink + { navLabel = MsgMenuTopWorkflowWorkflowList + , navRoute = TopWorkflowWorkflowListR + , navAccess' = NavAccessTrue + , navType = NavTypeLink { navModal = False } + , navQuick' = mempty + , navForceActive = False + } + , navChildren = [] + } + ] pageActions _ = return [] submissionList :: ( MonadIO m