mirror of
https://github.com/TheAnachronism/docspell.git
synced 2025-06-23 19:08:26 +00:00
Add support for more generic notification
This is a start to have different kinds of notifications. It is possible to be notified via e-mail, matrix or gotify. It also extends the current "periodic query" for due items by allowing notification over different channels. A "generic periodic query" variant is added as well.
This commit is contained in:
46
modules/webapp/src/main/elm/Messages/Data/ChannelType.elm
Normal file
46
modules/webapp/src/main/elm/Messages/Data/ChannelType.elm
Normal file
@ -0,0 +1,46 @@
|
||||
{-
|
||||
Copyright 2020 Eike K. & Contributors
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
-}
|
||||
|
||||
|
||||
module Messages.Data.ChannelType exposing (Texts, de, gb)
|
||||
|
||||
import Data.ChannelType exposing (ChannelType)
|
||||
|
||||
|
||||
type alias Texts =
|
||||
ChannelType -> String
|
||||
|
||||
|
||||
gb : Texts
|
||||
gb ct =
|
||||
case ct of
|
||||
Data.ChannelType.Matrix ->
|
||||
"Matrix"
|
||||
|
||||
Data.ChannelType.Gotify ->
|
||||
"Gotify"
|
||||
|
||||
Data.ChannelType.Mail ->
|
||||
"E-Mail"
|
||||
|
||||
Data.ChannelType.Http ->
|
||||
"HTTP request"
|
||||
|
||||
|
||||
de : Texts
|
||||
de ct =
|
||||
case ct of
|
||||
Data.ChannelType.Matrix ->
|
||||
"Matrix"
|
||||
|
||||
Data.ChannelType.Gotify ->
|
||||
"Gotify"
|
||||
|
||||
Data.ChannelType.Mail ->
|
||||
"E-Mail"
|
||||
|
||||
Data.ChannelType.Http ->
|
||||
"HTTP Request"
|
78
modules/webapp/src/main/elm/Messages/Data/EventType.elm
Normal file
78
modules/webapp/src/main/elm/Messages/Data/EventType.elm
Normal file
@ -0,0 +1,78 @@
|
||||
{-
|
||||
Copyright 2020 Eike K. & Contributors
|
||||
|
||||
SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
-}
|
||||
|
||||
|
||||
module Messages.Data.EventType exposing
|
||||
( Texts
|
||||
, de
|
||||
, gb
|
||||
)
|
||||
|
||||
import Data.EventType exposing (EventType(..))
|
||||
|
||||
|
||||
type alias Texts =
|
||||
{ name : String
|
||||
, info : String
|
||||
}
|
||||
|
||||
|
||||
gb : EventType -> Texts
|
||||
gb et =
|
||||
case et of
|
||||
TagsChanged ->
|
||||
{ name = "Tags changed"
|
||||
, info = "Whenever a tag on an item is added or removed"
|
||||
}
|
||||
|
||||
SetFieldValue ->
|
||||
{ name = "Set field value"
|
||||
, info = "Whenever a custom field is set to a value"
|
||||
}
|
||||
|
||||
DeleteFieldValue ->
|
||||
{ name = "Delete field value"
|
||||
, info = "Whenever a custom field is removed"
|
||||
}
|
||||
|
||||
JobSubmitted ->
|
||||
{ name = "Job submitted"
|
||||
, info = "Whenever a new job is submitted"
|
||||
}
|
||||
|
||||
JobDone ->
|
||||
{ name = "Job done"
|
||||
, info = "Whenever a new job finished"
|
||||
}
|
||||
|
||||
|
||||
de : EventType -> Texts
|
||||
de et =
|
||||
case et of
|
||||
TagsChanged ->
|
||||
{ name = "Tags geändert"
|
||||
, info = "Wenn ein tag hinzugefügt oder entfernt wird"
|
||||
}
|
||||
|
||||
SetFieldValue ->
|
||||
{ name = "Benutzerfeldwert ändert"
|
||||
, info = "Wenn für ein Benutzerfeld ein Wert gesetzt wird"
|
||||
}
|
||||
|
||||
DeleteFieldValue ->
|
||||
{ name = "Benutzerfeldwert entfernt"
|
||||
, info = "Wenn der Wert für ein Benuzterfeld entfernt wird"
|
||||
}
|
||||
|
||||
JobSubmitted ->
|
||||
{ name = "Auftrag gestartet"
|
||||
, info = "Wenn ein neuer Auftrag gestartet wird"
|
||||
}
|
||||
|
||||
JobDone ->
|
||||
{ name = "Auftrag beendet"
|
||||
, info = "Wenn ein Auftrag beendet wurde"
|
||||
}
|
Reference in New Issue
Block a user