From 932cd5cfdba309b1c70682c0f1731ac173298432 Mon Sep 17 00:00:00 2001 From: Sarah Vaupel Date: Mon, 16 Dec 2019 14:07:17 +0100 Subject: [PATCH] feat(tou): implement Terms of Use (tou) route --- messages/uniworx/de-de-formal.msg | 2 + messages/uniworx/en-eu.msg | 4 +- routes | 1 + src/Foundation.hs | 11 +++++ src/Handler/Info.hs | 8 ++++ stack.yaml.lock | 43 +++++++++++++++++-- .../i18n/terms-of-use/de-de-formal.hamlet | 5 +++ templates/i18n/terms-of-use/en.hamlet | 5 +++ 8 files changed, 74 insertions(+), 5 deletions(-) create mode 100644 templates/i18n/terms-of-use/de-de-formal.hamlet create mode 100644 templates/i18n/terms-of-use/en.hamlet diff --git a/messages/uniworx/de-de-formal.msg b/messages/uniworx/de-de-formal.msg index 07ecf66f7..18f1d62c3 100644 --- a/messages/uniworx/de-de-formal.msg +++ b/messages/uniworx/de-de-formal.msg @@ -492,6 +492,7 @@ InfoHeading: Informationen VersionHeading: Versionsgeschichte ImpressumHeading: Impressum DataProtHeading: Datenschutzerklärung +TermsUseHeading: Nutzungsbedingungen SystemMessageHeading: Uni2work Statusmeldung SystemMessageListHeading: Uni2work Statusmeldungen NotificationSettingsHeading displayName@Text: Benachrichtigungs-Einstellungen für #{displayName} @@ -1104,6 +1105,7 @@ MenuHome: Aktuell MenuInformation: Informationen MenuImpressum: Impressum MenuDataProt: Datenschutz +MenuTermsUse: Nutzungsbedingungen MenuVersion: Versionsgeschichte MenuInstance: Instanz-Identifikation MenuHealth: Instanz-Zustand diff --git a/messages/uniworx/en-eu.msg b/messages/uniworx/en-eu.msg index 3c8a5716b..377416b63 100644 --- a/messages/uniworx/en-eu.msg +++ b/messages/uniworx/en-eu.msg @@ -490,6 +490,7 @@ InfoHeading: Information VersionHeading: Version history ImpressumHeading: Imprint DataProtHeading: Data protection +TermsUseHeading: Terms of use SystemMessageHeading: Uni2work system message SystemMessageListHeading: Uni2work system message NotificationSettingsHeading displayName: Notification settings for #{displayName} @@ -1103,6 +1104,7 @@ MenuHome: Home MenuInformation: Information MenuImpressum: Imprint MenuDataProt: Data protection +MenuTermsUse: Terms of use MenuVersion: Version history MenuInstance: Instance identification MenuHealth: Instance health @@ -2180,4 +2182,4 @@ Deficit: Deficit MetricNoSamples: No samples MetricName: Name -MetricValue: Value \ No newline at end of file +MetricValue: Value diff --git a/routes b/routes index 469ec0297..6db3e14ab 100644 --- a/routes +++ b/routes @@ -63,6 +63,7 @@ /info InfoR GET !free /info/lecturer InfoLecturerR GET !lecturer /info/data DataProtR GET !free +/info/termsofuse TermsUseR GET !free /info/allocation InfoAllocationR GET !free /info/glossary GlossaryR GET !free /impressum ImpressumR GET !free diff --git a/src/Foundation.hs b/src/Foundation.hs index 3014250a6..d21b3e8db 100644 --- a/src/Foundation.hs +++ b/src/Foundation.hs @@ -1758,6 +1758,7 @@ instance YesodBreadcrumbs UniWorX where breadcrumb InfoR = i18nCrumb MsgMenuInformation Nothing breadcrumb InfoLecturerR = i18nCrumb MsgInfoLecturerTitle $ Just InfoR breadcrumb DataProtR = i18nCrumb MsgMenuDataProt $ Just InfoR + breadcrumb TermsUseR = i18nCrumb MsgMenuTermsUse $ Just InfoR breadcrumb InfoAllocationR = i18nCrumb MsgBreadcrumbAllocationInfo $ Just InfoR breadcrumb ImpressumR = i18nCrumb MsgMenuImpressum $ Just InfoR breadcrumb VersionR = i18nCrumb MsgMenuVersion $ Just InfoR @@ -1978,6 +1979,14 @@ defaultLinks = fmap catMaybes . mapM runMaybeT $ -- Define the menu items of the , menuItemModal = False , menuItemAccessCallback' = return True } + , return MenuItem + { menuItemType = Footer + , menuItemLabel = MsgMenuTermsUse + , menuItemIcon = Nothing + , menuItemRoute = SomeRoute TermsUseR + , menuItemModal = False + , menuItemAccessCallback' = return True + } , return MenuItem { menuItemType = Footer , menuItemLabel = MsgMenuImpressum @@ -3066,6 +3075,8 @@ pageHeading (InfoR) = Just $ i18nHeading MsgInfoHeading pageHeading (DataProtR) = Just $ i18nHeading MsgDataProtHeading +pageHeading (TermsUseR) + = Just $ i18nHeading MsgTermsUseHeading pageHeading (ImpressumR) = Just $ i18nHeading MsgImpressumHeading pageHeading (VersionR) diff --git a/src/Handler/Info.hs b/src/Handler/Info.hs index 69aa8437b..656d75b52 100644 --- a/src/Handler/Info.hs +++ b/src/Handler/Info.hs @@ -32,6 +32,14 @@ getDataProtR = -- do $(i18nWidgetFile "data-protection") +-- | Nutzungsbedingungen +getTermsUseR :: Handler Html +getTermsUseR = + siteLayoutMsg' MsgMenuTermsUse $ do + setTitleI MsgTermsUseHeading + $(i18nWidgetFile "terms-of-use") + + -- | Allgemeine Informationen getInfoR :: Handler Html getInfoR = -- do diff --git a/stack.yaml.lock b/stack.yaml.lock index 3758cb266..3a7017a21 100644 --- a/stack.yaml.lock +++ b/stack.yaml.lock @@ -138,12 +138,33 @@ packages: original: hackage: HaXml-1.25.5 - completed: - hackage: esqueleto-3.0.0@sha256:efd84fd11ceaf0ae4e1b0c6236122b1f213c2c6f2f4f58e30f03eddc2ec3f423,5248 + hackage: persistent-2.10.4@sha256:16c4c0823dd5e16bac4d607895ab0f4febd0626c020e5755ed1a52bf04068148,4738 pantry-tree: - size: 1127 - sha256: 74e43834d5cc468acc3cb6e8a81567ebfbb5350a3e07ae01dd7f30d6255274a1 + size: 2094 + sha256: b40d1783b539ddbbceaa827bf286d0b3bfcf76ca19e604c9d510b2a64008714e original: - hackage: esqueleto-3.0.0 + hackage: persistent-2.10.4 +- completed: + hackage: persistent-postgresql-2.10.1@sha256:ea53a0f1f4223b4884b5e19511325367879560d2432a02a976aa4da57c5fb760,2871 + pantry-tree: + size: 740 + sha256: 3cdbc757b1cebb65542fb919369be238b3f120adc45f023084a8b64c214d9675 + original: + hackage: persistent-postgresql-2.10.1 +- completed: + hackage: persistent-template-2.7.3@sha256:ac3e5e8c48e968b927bbf4e97162c52e7e417d69b05efeb1c581d7c682e043d2,2703 + pantry-tree: + size: 560 + sha256: fdfb2a721eb9c9831d7381d36bc52de0808a008ed3d553b6490080f337249684 + original: + hackage: persistent-template-2.7.3 +- completed: + hackage: esqueleto-3.2.3@sha256:5e1e0a8600e2744127ef4bb5956fa84ae6bc1fc337c7b8726fabb7ca53e2d9b3,5466 + pantry-tree: + size: 1461 + sha256: f6215274a43addd339f8bc89f1ca0e8fdfb08180b13d779ae8f7e360acc4c473 + original: + hackage: esqueleto-3.2.3 - completed: hackage: HaskellNet-SSL-0.3.4.1@sha256:3ca14dd69460a380cf69aed40654fb10c4c03e344632b6a9986568c87feda157,1843 pantry-tree: @@ -242,6 +263,20 @@ packages: sha256: 9ed161eadfda5b1eb36cfcf077146f7b66db1da69f1041fc720aea287ec021b0 original: hackage: generic-lens-1.2.0.0 +- completed: + hackage: prometheus-metrics-ghc-1.0.0@sha256:0f4ecbefa810bd847e66c498ab3387bf21e426525a7c9a94841973c582719ba3,1231 + pantry-tree: + size: 293 + sha256: 8a6d6ef3235ab980e867f64b712b5d38f1a84c3ac4920f5b4c3b3e63bcdf6ec9 + original: + hackage: prometheus-metrics-ghc-1.0.0 +- completed: + hackage: wai-middleware-prometheus-1.0.0@sha256:1625792914fb2139f005685be8ce519111451cfb854816e430fbf54af46238b4,1314 + pantry-tree: + size: 307 + sha256: 6d64803c639ed4c7204ea6fab0536b97d3ee16cdecb9b4a883cd8e56d3c61402 + original: + hackage: wai-middleware-prometheus-1.0.0 snapshots: - completed: size: 498180 diff --git a/templates/i18n/terms-of-use/de-de-formal.hamlet b/templates/i18n/terms-of-use/de-de-formal.hamlet new file mode 100644 index 000000000..fb4b29664 --- /dev/null +++ b/templates/i18n/terms-of-use/de-de-formal.hamlet @@ -0,0 +1,5 @@ +$newline never +
+

Stand 16.12.2019 +

+ TODO Nutzungsbedingungen diff --git a/templates/i18n/terms-of-use/en.hamlet b/templates/i18n/terms-of-use/en.hamlet new file mode 100644 index 000000000..3f4be608c --- /dev/null +++ b/templates/i18n/terms-of-use/en.hamlet @@ -0,0 +1,5 @@ +$newline never +

+

Last changed on 16.12.2019 +

+ TODO Terms of use