[Bug 42870] New: Add plugin hook for email transports
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 Bug ID: 42870 Summary: Add plugin hook for email transports Initiative type: --- Sponsorship --- status: Product: Koha Version: Main Hardware: All OS: All Status: NEW Severity: enhancement Priority: P5 - low Component: Architecture, internals, and plumbing Assignee: koha-bugs@lists.koha-community.org Reporter: dcook@prosentient.com.au QA Contact: testopia@bugs.koha-community.org Target Milestone: --- I'm proposing to add a plugin hook for email transports (e.g. email_transport), so that Koha::SMTP::Server can use a transport supplied by a Koha Plugin rather than Email::Sender::Transport::SMTP::Persistent in Koha::SMTP::Server::transport(). This would enable us to quickly add options for newer SMTP authentication methods (see bug 38338 regarding SMTP XOAUTH2) or to use APIs for sending emails (see bug 42179 for using Microsoft Graph API for sending email). -- You are receiving this mail because: You are watching all bug changes. You are the assignee for the bug.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://bugs.koha-community | |.org/bugzilla3/show_bug.cgi | |?id=38338, | |https://bugs.koha-community | |.org/bugzilla3/show_bug.cgi | |?id=42179 Assignee|koha-bugs@lists.koha-commun |dcook@prosentient.com.au |ity.org | -- You are receiving this mail because: You are watching all bug changes. You are the assignee for the bug.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Summary|Add plugin hook for email |Make email transports |transports |pluggable -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #1 from David Cook <dcook@prosentient.com.au> --- When I first wrote this (10 minutes ago), I was thinking plugin hook, but... we could actually use Module::Pluggable for this like we do in Koha/SuggestionEngine.pm and Koha/RecordProcess.pm, but taken a step further. Instead of just using a "Koha::<Functionality>" search_path, we can use "Koha::<Functionality>,Koha::Plugin::<Functionality>". We just need to ensure that we have Koha::Plugin::* within our @INC. We can honour existing Koha::Plugin functionality by handling the Koha plugin logic (around installed, enabled, methods, etc) within a helper function within the "hook". But then that being said... it would be up to the plugin author to implement that, and that's messy. Really we could just couple Module::Pluggable "Koha::Email::Transport" AND Koha Plugins with the email_transport hook. Put them in a hash, and then use configuration in the smtp_servers table to choose which one to go with. It does mean a database change, but a very light one... and one which can lead to a lot of possibility -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #2 from David Cook <dcook@prosentient.com.au> --- I could avoid the database change if I just put everything in the plugin, but then that is short-term thinking, because it would be nice to have multiple transports defined in Koha core. So this is a balance of short-term flexibility and innovation while also supporting long-term sustainability. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Patch complexity|--- |Small patch Status|NEW |ASSIGNED -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #3 from David Cook <dcook@prosentient.com.au> --- Created attachment 200617 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=200617&action=edit Bug 42870: [DO NOT PUSH] DBIC result set changes Patch from commit 721b78b -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #4 from David Cook <dcook@prosentient.com.au> --- Created attachment 200618 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=200618&action=edit Bug 42870: Add email transport config to smtp_servers This change adds a `smtp_servers.config` JSON database column, and adds a "transport_module" method to Koha::STMP::Server, which allow staff users to designate which module they want to use for their email transport for each SMTP Server that they set up. The default transport is the same email transport we've been using for years. The alternatives are supplied by Koha Plugins implementing the new_email_transport() method. These transports have access to the Koha::SMTP::Server object, which also means they can take advantage of this new `smtp_servers.config` field to store additional configuration they might need. This change also comes with a Koha Plugin bundled with it. This plugin is fully operational and just replicates the current "Default" behaviour. It serves as a model from which to build your own Koha Plugins. Test plan: 0. Apply the patch 1. perl /usr/share/koha/bin/devel/install_plugins.pl \ --include Koha::Plugin::Core::Email::Transport::SMTP::Basic 1. restart_all 2. Go to Administration > SMTP servers and click "New SMTP server" 3. Note a new field "Transport module:" which has options of "Default" and "Basic SMTP Email Transport" available in a select list. 4. Fill in the details however you like (ideally using a real functional SMTP server) 5. Click "Submit" 6. Note the "Transport module:" displaying under "Current default configuration" 7. Click on "Edit" next to your SMTP server 8. Change the "Transport module" and click "Submit" 9. Note that the module changes with the modification 10. If possible, try to send an email by going to a patron record (e.g. http://localhost:8081/cgi-bin/koha/members/notices.pl?borrowernumber=51) and clicking "More" and clicking "Send welcome notice" 11. As your Koha instance user (ie using koha-shell), run the following: perl /usr/share/koha/bin/cronjobs/process_message_queue.pl -v 12. If you have a valid SMTP server configured, it should send the email using your selected email transport module -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #5 from David Cook <dcook@prosentient.com.au> --- Note that you can also define an email transport using koha-conf.xml: Just add something like this to your <smtp_server> element: <config>{"transport_module":"Basic SMTP Email Transport"}</config> -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://bugs.koha-community | |.org/bugzilla3/show_bug.cgi | |?id=42871 -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #6 from David Cook <dcook@prosentient.com.au> --- (Oh I also have an idea about trying to localize dependencies within plugins, so that we could do things like take advantage of a newer "Email::Sender::Transport::SMTP::Persistent" for instance to grease the wheels until we can get the newer version at the OS level... keen to try out local @INC...but not today...) -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #7 from David Cook <dcook@prosentient.com.au> --- I also need to remember to add the proposed hook to the wiki... -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://bugs.koha-community | |.org/bugzilla3/show_bug.cgi | |?id=42922, | |https://bugs.koha-community | |.org/bugzilla3/show_bug.cgi | |?id=42923 -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #8 from David Cook <dcook@prosentient.com.au> --- (In reply to David Cook from comment #7)
I also need to remember to add the proposed hook to the wiki...
And added: https://wiki.koha-community.org/wiki/Koha_Plugin_Hooks#Under_development_hoo... -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |Needs Signoff --- Comment #9 from David Cook <dcook@prosentient.com.au> --- Thought that I'd marked this as "Needs Signoff" but must've missed it. Too many tabs open sometimes... -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|Needs Signoff |ASSIGNED --- Comment #10 from David Cook <dcook@prosentient.com.au> --- Actually, maybe back to Assigned, since I think this wouldn't pass the QA tools as is. It needs more documentation and possibly a tidy as well. Could do a little unit test as well. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #11 from David Cook <dcook@prosentient.com.au> --- I've submitted a pull request for koha-testing-docker to add a Dovecot container integrated with Keycloak for testing XOAUTH2. Instructions are on the PR: https://gitlab.com/koha-community/koha-testing-docker/-/merge_requests/606 They're based off the work I did testing the C SASL plugin "simple-sasl-xoauth2" https://github.com/minusdavid/simple-sasl-xoauth2/wiki#dovecot-smtp-submissi... -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #200617|0 |1 is obsolete| | Attachment #200618|0 |1 is obsolete| | -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #12 from David Cook <dcook@prosentient.com.au> --- Created attachment 201198 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=201198&action=edit Bug 42870: [DO NOT PUSH] DBIC result set changes Patch from commit 81ed90c -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #13 from David Cook <dcook@prosentient.com.au> --- Created attachment 201199 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=201199&action=edit Bug 42870: Add email transport config to smtp_servers This change adds a `smtp_servers.config` JSON database column, and adds a "transport_module" method to Koha::STMP::Server, which allow staff users to designate which module they want to use for their email transport for each SMTP Server that they set up. The default transport is the same email transport we've been using for years. The alternatives are supplied by Koha Plugins implementing the new_email_transport() method. These transports have access to the Koha::SMTP::Server object, which also means they can take advantage of this new `smtp_servers.config` field to store additional configuration they might need. This change also comes with a Koha Plugin bundled with it. This plugin is fully operational and just replicates the current "Default" behaviour. It serves as a model from which to build your own Koha Plugins. Test plan: 0. Apply the patch and run "sudo koha-upgrade-schema kohadev" 1. perl /usr/share/koha/bin/devel/install_plugins.pl \ --include Koha::Plugin::Core::Email::Transport::SMTP::Basic 1. restart_all 2. Go to Administration > SMTP servers and click "New SMTP server" 3. Note a new field "Transport module:" which has options of "Default" and "Basic SMTP Email Transport" available in a select list. 4. Fill in the details however you like (ideally using a real functional SMTP server) 5. Click "Submit" 6. Note the "Transport module:" displaying under "Current default configuration" 7. Click on "Edit" next to your SMTP server 8. Change the "Transport module" and click "Submit" 9. Note that the module changes with the modification 10. If possible, try to send an email by going to a patron record (e.g. http://localhost:8081/cgi-bin/koha/members/notices.pl?borrowernumber=51) and clicking "More" and clicking "Send welcome notice" 11. As your Koha instance user (ie using koha-shell), run the following: perl /usr/share/koha/bin/cronjobs/process_message_queue.pl -v 12. If you have a valid SMTP server configured, it should send the email using your selected email transport module -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #14 from David Cook <dcook@prosentient.com.au> --- I've added some documentation, made some tweaks, and added a WIP XOAUTH2 plugin. I'd like to cache the access token, use encryption for secrets in smtp_servers.config, add support for the refresh_token grant, and create an interactive plugin page that lets you use the authorization code grant to get an access token and refresh token - if you're not able to use client credential grants (like with Google). -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #15 from David Cook <dcook@prosentient.com.au> --- I am thinking maybe it is best if I move the plugins out of this patch set as it's adding more complication than is neccessary for this change. I can do that tonight or tomorrow night I think. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |In Discussion -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #16 from David Cook <dcook@prosentient.com.au> --- Btw if people want an even simpler version of this, I'll take out the 2 embedded plugins. No problem. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #17 from Olivier Hubert <olivier.hubert@inlibro.com> --- Created attachment 201963 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=201963&action=edit Bug 42870: added field for JSON configuration and fixed XOAUTH2 plugin Test plan with SMTP LOGIN (basic SMTP): 0. Apply the patch. 1. Upgrade the database by running sudo koha-upgrade-schema kohadev 2. perl /usr/share/koha/bin/devel/install_plugins.pl \ --include Koha::Plugin::Core::Email::Transport::SMTP::Basic 3. perl build-resources.PL 4. restart_all 5. Go to Administration > Plugins, locate the line for the Basic SMTP Email Transport plugin, then click on "Actions" and click "Enable" 6. Go to Administration > SMTP servers and click "New SMTP server" 7. Note a new field "Transport module:" which has options of "Default" and "Basic SMTP Email Transport" available in a select list. 8. Fill in the details however you like (ideally using a real functional SMTP server) 9. Click "Submit" 10. Note the "Transport module:" displaying under "Current default configuration" 11. Click on "Edit" next to your SMTP server 12. Change the "Transport module" and click "Submit" 13. Note that the module changes with the modification 14. If possible, try to send an email by going to a patron record (e.g. http://localhost:8081/cgi-bin/koha/members/notices.pl?borrowernumber=51) updating the primary email, clicking "More" and clicking "Send welcome notice". 15. As your Koha instance user (ie using koha-shell), run the following: perl /usr/share/koha/bin/cronjobs/process_message_queue.pl -v 16. If you have a valid SMTP server configured, it should send the email using your selected email transport module Test plan with SMTP XOAUTH2: 0. Apply the patch. 1. Upgrade the database by running sudo koha-upgrade-schema kohadev 2. perl /usr/share/koha/bin/devel/install_plugins.pl \ --include Koha::Plugin::Core::Email::Transport::SMTP::XOAUTH2 3. perl build-resources.PL 4. Ensure you have at least Authen-SASL-2.18 installed, by running sudo cpanm Authen::SASL 5. restart_all 6. Go to Administration > Plugins, locate the line for the XOAUTH2 SMTP Email Transport plugin, then click on "Actions" and click "Enable" 7. Go to Administration > SMTP servers and click "New SMTP server" 8. Note a new field "Transport module:" which has options of "Default" and "XOAUTH2 SMTP Email Transport" available in a select list. 9. Fill in the details however you like (ideally using a real functional SMTP server) 10. Click "Submit" 11. Note the "Transport module:" displaying under "Current default configuration" 12. Click on "Edit" next to your SMTP server 13. Change the "Transport module" and click "Submit" 14. Note that the module changes with the modification 15. If possible, try to send an email by going to a patron record (e.g. http://localhost:8081/cgi-bin/koha/members/notices.pl?borrowernumber=51) updating the primary email, clicking "More" and clicking "Send welcome notice". 16. As your Koha instance user (ie using koha-shell), run the following: perl /usr/share/koha/bin/cronjobs/process_message_queue.pl -v 17. If you have a valid SMTP server configured, it should send the email using your selected email transport module -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #18 from David Cook <dcook@prosentient.com.au> --- Comment on attachment 201963 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=201963 Bug 42870: added field for JSON configuration and fixed XOAUTH2 plugin Review of attachment 201963: --> (https://bugs.koha-community.org/bugzilla3/page.cgi?id=splinter.html&bug=42870&attachment=201963) ----------------------------------------------------------------- ::: koha-tmpl/intranet-tmpl/prog/en/modules/admin/smtp_servers.tt @@ +129,5 @@
+ <li> + <label for="config" class="json">Configuration: </label> + <textarea name="config" id="config" cols="75" rows="10"></textarea> + <div class="hint" + >Server's configuration, in JSON. <button class="more btn btn-light" data-target="config"><i class="fa fa-caret-down"></i> [% tp("Show more information", "More") | html %]</button></div
Ideally, I'd rather not use a blob of JSON in the UI. I originally intended for the plugin to handle this via the Koha Plugin UI. Part of the reason is that I want the Koha Plugin to encrypt its secrets and not show/store them in plain text. My thinking there was that since we're passing the smtp_server object to the plugin, it can do a lookup against the smtp_server entry to use its "config" column. I made it JSON for the flexibility at the storage end during this more experimental stage, but I really really want to avoid that at the UI end. @@ +241,5 @@
[% END %] </li> + <li> + <label for="config" class="json">Configuration: </label> + <textarea name="config" id="config" cols="75" rows="10">[%- smtp_server.config | html -%]</textarea>
I haven't tried this out, but the "html" filter should escape double quotes, which would be a problem for maintenance of config. @@ +572,5 @@
+ const xoauth2_defaults = { + grant_type: "client_credentials", + client_id: "<enter client id>", + client_secret: "<enter client secret>", + scope: "https://outlook.office365.com/.default",
I'm on the fence about defaulting to a Microsoft scope here. I think this would be better placed in the Koha Manual. @@ +573,5 @@
+ grant_type: "client_credentials", + client_id: "<enter client id>", + client_secret: "<enter client secret>", + scope: "https://outlook.office365.com/.default", + token_url: "<enter complete token URL, with tenant ID if relevant>",
Tenant ID is also a Microsoft concept. ::: lib/Koha/Plugin/Core/Email/Transport/SMTP/XOAUTH2.pm @@ +91,5 @@
$sasl->callback(auth => $smtp_server->user_name); $sasl->callback(authname => $smtp_server->user_name); + $sasl->callback(user => $smtp_server->user_name); + $sasl->callback(pass => sub {
So you've improved and worsened the plugin by making this change hehe. If you look at https://metacpan.org/pod/Authen::SASL::Perl::XOAUTH2 you'll see it uses "user" and "pass" callbacks whereas Authen::SASL::XS uses user, auth, password, and pass callbacks. Maybe I should add a PR to Authen::SASL::Perl to get them to harmonize their callback mappings with the rest of Authen::SASL... looks like the older Authen::SASL::Cyrus also uses user, auth, password, and pass: https://metacpan.org/release/ADAMSON/Authen-SASL-Cyrus-0.13/source/Cyrus.xs#... Trying to remember why I included authname. Maybe because Cyrus SASL uses SASL_CB_USER, SASL_CB_PASS, SASL_CB_AUTHNAME in the C libraries. Maybe because technically it is an option: https://github.com/perl-authen-sasl/perl-authen-sasl-xs/blob/master/XS.xs#L8... -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #19 from David Cook <dcook@prosentient.com.au> --- Comment on attachment 201963 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=201963 Bug 42870: added field for JSON configuration and fixed XOAUTH2 plugin Review of attachment 201963: --> (https://bugs.koha-community.org/bugzilla3/page.cgi?id=splinter.html&bug=42870&attachment=201963) ----------------------------------------------------------------- ::: koha-tmpl/intranet-tmpl/prog/en/modules/admin/smtp_servers.tt @@ +241,5 @@
[% END %] </li> + <li> + <label for="config" class="json">Configuration: </label> + <textarea name="config" id="config" cols="75" rows="10">[%- smtp_server.config | html -%]</textarea>
And yet... that's how identity_providers.tt is. Something weird is going on there... I'll review... -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #20 from David Cook <dcook@prosentient.com.au> --- Thanks for taking a look at this, Olivier! I might tweak the callback names a bit further just to make sure we have maximum capability, and then double-check a few things. I suppose having that JSON configuration there makes things more immediately usable but I think it's better handled by the XOAUTH2 plugin... I can look at moving that over... -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #21 from David Cook <dcook@prosentient.com.au> --- Sorry ran out of time on this one but I'll revisit next week. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 Paul Derscheid <paul.derscheid@lmscloud.de> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |paul.derscheid@lmscloud.de -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #22 from David Cook <dcook@prosentient.com.au> --- Taking a look at Olivier's patch... and yeah it's a good point about XOAUTH.pm. I need to improve that one. But I don't think changing smtp_server.pl and smtp_servers.tt is a good idea yet. Especially considering we still need to design for bug 42834 I'm thinking... I've tried to do too much here after all. I'll strip it back. -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #23 from David Cook <dcook@prosentient.com.au> --- Ok I've incorporated "user" and "pass" into XOAUTH2. I'm going to get rid of the smtp_servers.config for now and split out the plugins... -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #24 from David Cook <dcook@prosentient.com.au> --- The only reason I wanted to make this pluggable is because no one was really engaging with this topic. But if we don't get some more people engaging here before the end of the year then it's pointless anyway. And I'm loathe to waste my time working on something if no one is going to engage with the topic... Of course one of these days (or rather nights) I'll have to make it to a dev meeting and try to get some progress moving on it... -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 Olivier Hubert <olivier.hubert@inlibro.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |olivier.hubert@inlibro.com -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://bugs.koha-community | |.org/bugzilla3/show_bug.cgi | |?id=26129 -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |26129 Referenced Bugs: https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=26129 [Bug 26129] Add a new 'configurations' table -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 David Cook <dcook@prosentient.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- See Also| |https://bugs.koha-community | |.org/bugzilla3/show_bug.cgi | |?id=43285 -- You are receiving this mail because: You are watching all bug changes.
https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=42870 --- Comment #25 from David Cook <dcook@prosentient.com.au> --- So I've created "Bug 43285 - Add Koha Plugin JS ESM module registry and loader" but in the meantime we could just use the existing intranet_js hook or one of the other existing plugin hooks to get Javascript to work with Tomas's "configurations" table from bug 26129. -- So my priority... get bug 26129 to Passed QA then pushed... then refactor bug 42870 to add the "new_email_transport" Koha Plugin hook, and add "Transport module" in smtp_servers.tt To support built-in email transport modules, I'll add a Module::Pluggable option as well. -- That way Olivier could keep moving forward with bug 38338 (either as a plugin or as a core dev) and I could also provide a separate standalone XOAUTH2 Koha Plugin. -- You are receiving this mail because: You are watching all bug changes.
participants (1)
-
bugzilla-daemon@bugs.koha-community.org