This is a pretty substantial rewrite/refactor of the mail aliases code which re-uses a lot of the techniques/ideas of the original version, while adopting a different overall design. Some highlights:
it (to my knowledge) maintains the features of the previous mail aliases page
it keeps track of the distinction between email address fields and notes
it handles the case in which the mail aliases path in the config is bad with a user-facing error message
it fixes an issue where the color of all the divs toggles every time you hit the "contract all" button
it makes the contact link for that error message configurable via the database
Because of that last bullet point, this round of changes does contain one migration, which adds the setting "contact info" to the site_settings Django app.
The code can be tested running the site by navigating to whichever of these is applicable:
Fixes #729.
This is a pretty substantial rewrite/refactor of the mail aliases code which re-uses a lot of the techniques/ideas of the original version, while adopting a different overall design. Some highlights:
Because of that last bullet point, this round of changes does contain one migration, which adds the setting "contact info" to the
site_settings
Django app.The code can be tested running the site by navigating to whichever of these is applicable:
To preview the error message, temporarily change
MAIL_ALIASES_JSON
inbase.py
to a bad path and refresh the site.