E-mail tasks – system description

Storage of the scheduled e-mail task master, the missing validation on save, and the configuration-driven background job that processes documents from e-mail.

Overview

The module maintains the master of scheduled e-mail tasks (name, cron expression, status). The actual processing is done by the email_task background job. Table names carry the installation's own prefix in the database.

Data model

TableRole
email_tasktask name, cron expression (default 0 0 * * *), status
emailtaskprocessing configuration of the task (belongs to another module group)

Operation

  1. The list is paged (10 rows per page) and sortable by name and status.
  2. Saving (emailtask.save) writes without field validation and answers with json.redirect.
  3. Deleting (emailtask.delete) runs without validation or reference check.

Background job

The email_task job runs at the catalog-side entry point task/emailtask::processForCronqueue; its schedule is in the template row of the cron scheduler (is_template = 1). It runs the task or tasks given by payload.email_task_id according to the emailtask configuration.

Permissions

  • Layer 1: list with base access, save and delete with base modify permission.
  • Layer 2: the header "+" button follows canAction(add); the list key (UNMAPPED) is not checked.
  • Layer 3: none.

Known limitations

No field validation; deletion does not check references.

Related topics: schedule background job