Scheduled email handler: Make rescheduling after webform entity update optional

Created on 18 June 2024, about 1 year ago

Problem/Motivation

Currently, every time a webform is updated, all of its scheduled emails are marked as needing to be rescheduled at the next cron run. See webform_scheduled_email_entity_update(). This can be disruptive and even cause all previously-scheduled-for-send emails to not go out if the next cron run happens after the scheduled send date and the ignore_past setting is TRUE.

It would be nice if this reschedule-after-webform-update behavior was optional so:
1. People might be more aware of this default behavior from the outset (I was not expecting it).
2. Those of us who do not need it and/or find it disruptive could turn it off.

Steps to reproduce

1. Queue up some scheduled emails for send.
2. Make a small update to the webform.
3. See that all scheduled emails are now marked WebformScheduledEmailManagerInterface::SUBMISSION_RESCHEDULE.

Proposed resolution

Make rescheduling after webform entity update optional.

Remaining tasks

Idea acceptance, patch/MR, review.

User interface changes

New option either in the webform or handler's config.

API changes

None.

Data model changes

None.

✨ Feature request
Status

Active

Version

6.2

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States chrisolof

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Production build 0.71.5 2024