-
Notifications
You must be signed in to change notification settings - Fork 4
Description
We talked about default Django messages (temporary notifications) in #163.
Another topic we had from the offsite was how to treat notifications against build/project/organization state. For example, the exact issue that spawned the conversation was a user support request about a subscription that had ended. This users was just reading a stale notification about subscription renewal though, which is a common problem we've noticed.
The main problem we have with a few of our notifications are that we are not retracting the notification once the underlying condition/state is resolved. We discussed how to do this with Django messages and agreed it would be too hacky.
We also have had a few discussions about build detail page notifications and warnings, and we want the ability to output multiple message types on the build detail page -- info, warning, and error -- as well as the ability to show the user multiple messages on the build detail page.
Where we landed with our discussion on these notifications was:
- We want a JSON field on Build, Project, and Organization, which would be a list of notifications
- This data structure would:
- Have an id or some easy way to lookup/override a particular message (that is, revoke a warning about subscription failure if the subscription state changes to active)
- Probably reference a class/constant for the actual error message. This object would define metadata like:
- Subject line (for nicer display but not required)
- Translate string template (“Your project %s has no config file”)
- Icon (?)
These messages would replace Django sticky/persistent messages, though we may still decide to use sticky/persistent messages for the top header bell/notification menu.
It would make sense to start with the Build and build detail page first, as this is where we've wanted this the longest.