Details
-
Improvement
-
Resolution: Fixed
-
Major
-
6.3
-
None
-
Unit, Integration
-
Unknown
-
N/A
-
Description
The idea is to move all the mail-related features into the xwiki-platform-mail module.
Rationale:
- Separation of concerns
- Extensibility: Ability to extend the mail feature with additional features (for example adding a default BCC field, see
XWIKI-10789)
Specifically this means:
- Moving configuration currently located in XWikiPreferences into a MailConfig page
- Moving Admin UI for Mail features into xwiki-platform-mail-ui / xwiki-platform-mail-send-ui modules
- Handle backward compatibility
TODO:
- Remove xproperties from XWikiPreferences + remove custom mapping props related to mail from xwiki.hbm.xml (there are 2: "smtp_server" and "admin_email")
- Use a database migration to copy the values ("smtp_server" and "admin_email" columns) from the mapped XWikiPreferences table (xwikipreferences) to the standard xproperties tables. Remove the 2 columns.
- Use a listener that listens to Extension installed event (ExtensionInstalledEvent) and move the properties located in xproperties for the XWikiPreferences document to the new MailConfig xproperties, and then remove the xproperties from XWikiPreferences xclass and xobjects.
- Modify the old mail sender plugin to use the new xproperties through the MailConfiguration (itself through the mail script service)
- Remove from XWikiPreferencesDocumentInitializer
- This is not core IMO and it's not required to always ensure there are mail xproperties in the wiki even if the Mail UI is not installed
- Modify WatchListNotifier to use $services.mailsender.configuration and ideally move to use the new mailsender api
- Modify shareinline.vm to use $services.mailsender.configuration and ideally move to use the new mailsender api
- new mail-ui module with MailConfig page
- Decide if we want 2 modules: one for the Admin email property + the obfuscation one and one for the Mail Sending properties. Or just one, in this case probably we would have a single page to display everything: general properties, sending properties + mail sending statuses
- Decide if we need 2 mail address properties or just one. Right now we have a "admin_email" one which is used as the from address when sending. We could have 2: one admin email + one "from" address for mail sending which would default to the admin email one if not specified.
- Remove XWiki.AdminEmailSheet page
- Edit XWiki.AdminSheet page to remove the mail section
- Check with Thomas if it's possible (or if we could implement it) for a module to contribute some template. Right now the mail displayer is in displayer_email.vm located in the platform-web module and it would be good to have it in some platform-mail module instead.
Attachments
Issue Links
- blocks
-
XWIKI-10789 Add a new BCC field for the Email feature
- Closed
- depends on
-
XWIKI-11562 Add ability to contribute new Admin categories through ConfigurableClass xobjects
- Closed
- relates to
-
XWIKI-11609 Unable to force edit some pages from Administration
- Closed
-
XWIKI-11564 Remove deprecated mail configuration
- Open
-
XWIKI-11786 Use the new Mail Sender API for the Share Page By Mail feature
- Open
-
XWIKI-11959 Use the new Mail Sender API for WatchList
- Closed
-
XWIKI-11608 Use pretty names for the Email settings from Administration
- Closed