Follow-up to #3607508 (the Easy Email channel).

orchestra_webform_example declares a hard dependency on orchestra_mail in its info file, because its MailHook (a hook_mail_alter) supplies the wording for the example's request_processed and request_rejected notification types. But notifications are channel-agnostic, so the example should not require one specific channel. The coupling has a real cost: uninstalling orchestra_mail cascades and uninstalls the example, deleting its workflows and purging running instances.

Fix

  • Drop the orchestra_mail dependency from orchestra_webform_example.
  • Make the orchestra_mail-specific MailHook a no-op (or not fire) when orchestra_mail is not installed, so it stays an optional enhancement rather than a requirement.
  • Ship request_processed and request_rejected content for the Easy Email channel too: easy_email.easy_email_type.orchestra_request_processed and orchestra_request_rejected (provided by the example, or by an example-specific glue), so the example works whichever channel is enabled.

Result: either channel (Orchestra Mail or Orchestra Easy Email) works with the example, and neither is mandatory, so a site can run the example on Easy Email alone.

Issue fork orchestra-3607617

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

mably created an issue. See original summary.

mably’s picture

Status: Active » Needs review

  • mably committed 8c5d74c4 on 1.x
    task: #3607617 Decouple orchestra_webform_example from orchestra_mail (...
mably’s picture

Status: Needs review » Fixed

Now that this issue is closed, review the contribution record.

As a contributor, attribute any organization that helped you, or if you volunteered your own time.

Maintainers, credit people who helped resolve this issue.

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.