Skip to content

Commit

Permalink
feat: extend Apprise JSON notification functionality with programmati…
Browse files Browse the repository at this point in the history
…c data (#1355)

* Fixed incorrect generic deleted notification text

* Added custom "event_source" header for json notifs

* Added internal reference data to event notifs

* Added event listeners to shopping list items

* Fixed type issues

* moved JSON event source k:v pairs to message body

* added hook for all supported custom endpoints
fixed bug that excluded non-custom notification types

* created event_source class to replace loosely-typed dict

* fixed silent error when dispatching a null task

* moved url updates to static function

* added unit tests for event_source url manipulation

* removed array from event bus (it's unsupported)
  • Loading branch information
michael-genson committed Jun 15, 2022
1 parent 3030e3e commit 754e77c
Show file tree
Hide file tree
Showing 42 changed files with 296 additions and 54 deletions.
2 changes: 1 addition & 1 deletion mealie/lang/messages/af-ZA.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/ar-SA.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/bg-BG.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/ca-ES.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/cs-CZ.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/da-DK.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} blev opdateret",
"generic-created-with-url": "{name} er oprettet, {url}",
"generic-updated-with-url": "{name} er blevet opdateret, {url}",
"generic-deleted": "{name} er oprettet"
"generic-deleted": "{name} er slettet"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/de-DE.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} wurde aktualisiert",
"generic-created-with-url": "{name} wurde erstellt, {url}",
"generic-updated-with-url": "{name} wurde aktualisiert, {url}",
"generic-deleted": "{name} wurde erstellt"
"generic-deleted": "{name} wurde gelöscht"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/el-GR.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/en-GB.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/en-US.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/es-ES.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/fi-FI.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/fr-CA.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/fr-FR.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} a été mis à jour",
"generic-created-with-url": "{name} a été créé, {url}",
"generic-updated-with-url": "{name} a été mis à jour, {url}",
"generic-deleted": "{name} a été créé"
"generic-deleted": "{name} a été supprimée"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/he-IL.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/hu-HU.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/it-IT.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} è stato aggiornato",
"generic-created-with-url": "{name} è stato creato, {url}",
"generic-updated-with-url": "{name} è stato aggiornato, {url}",
"generic-deleted": "{name} è stato creato"
"generic-deleted": "{name} è stato cancellato"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/ja-JP.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/ko-KR.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/nl-NL.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/no-NO.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/pl-PL.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/pt-BR.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/pt-PT.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/ro-RO.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/ru-RU.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/sk-SK.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/sr-SP.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/sv-SE.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/tr-TR.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/uk-UA.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} оновлено",
"generic-created-with-url": "{name} створено, {url}",
"generic-updated-with-url": "{name} оновлено, {url}",
"generic-deleted": "{name} створено"
"generic-deleted": "{name} видалено"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/vi-VN.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/zh-CN.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
2 changes: 1 addition & 1 deletion mealie/lang/messages/zh-TW.json
Expand Up @@ -17,6 +17,6 @@
"generic-updated": "{name} was updated",
"generic-created-with-url": "{name} has been created, {url}",
"generic-updated-with-url": "{name} has been updated, {url}",
"generic-deleted": "{name} has been created"
"generic-deleted": "{name} has been deleted"
}
}
5 changes: 4 additions & 1 deletion mealie/routes/groups/controller_cookbooks.py
Expand Up @@ -8,7 +8,7 @@
from mealie.routes._base.mixins import HttpRepo
from mealie.schema import mapper
from mealie.schema.cookbook import CreateCookBook, ReadCookBook, RecipeCookBook, SaveCookBook, UpdateCookBook
from mealie.services.event_bus_service.event_bus_service import EventBusService
from mealie.services.event_bus_service.event_bus_service import EventBusService, EventSource
from mealie.services.event_bus_service.message_types import EventTypes

router = APIRouter(prefix="/groups/cookbooks", tags=["Groups: Cookbooks"])
Expand Down Expand Up @@ -53,6 +53,7 @@ def create_one(self, data: CreateCookBook):
self.deps.acting_user.group_id,
EventTypes.cookbook_created,
msg=self.t("notifications.generic-created", name=val.name),
event_source=EventSource(event_type="create", item_type="cookbook", item_id=val.id, slug=val.slug),
)
return val

Expand Down Expand Up @@ -94,6 +95,7 @@ def update_one(self, item_id: str, data: CreateCookBook):
self.deps.acting_user.group_id,
EventTypes.cookbook_updated,
msg=self.t("notifications.generic-updated", name=val.name),
event_source=EventSource(event_type="update", item_type="cookbook", item_id=val.id, slug=val.slug),
)

return val
Expand All @@ -106,5 +108,6 @@ def delete_one(self, item_id: str):
self.deps.acting_user.group_id,
EventTypes.cookbook_deleted,
msg=self.t("notifications.generic-deleted", name=val.name),
event_source=EventSource(event_type="delete", item_type="cookbook", item_id=val.id, slug=val.slug),
)
return val

0 comments on commit 754e77c

Please sign in to comment.