Skip to main content
Mail Notifications · Revision #6

What is the preview mail action pipeline?

What is the preview mail action pipeline?

The Preview Mail Action Pipeline is used to build a temporary \Aero\Events\Models\MailAction instance from request data to be previewed.

For example, you can add custom fields to the \Aero\Events\Models\MailAction instance:

\Aero\Admin\Pipelines\PreviewMailAction::extend(function (\Aero\Admin\Pipelines\PreviewMailAction $pipeline, \Closure $next) {
    \Aero\EmailBuilder\Facades\EmailBuilder::boot();

    $data = $pipeline->request()->validated();

    $version = \Aero\EmailBuilder\Helpers\PreviewVersion::get($data);

    $template = \Aero\EmailBuilder\Facades\EmailBuilder::getTemplate($data['id'], $version)->toArray();

    $pipeline->mailAction()->fill([
        'template_header' => $template['header'] ?? null,
        'template_body' => $template['body'] ?? null,
        'template_footer' => $template['footer'] ?? null,
        'template_settings' => $template['settings'] ?? null,
    ]);

    return $next($pipeline);
});

This example is taken from the aerocommerce/email-builder module


Parameters

Parameter Type Description
$pipeline \Aero\Admin\Pipelines\PreviewMailAction The preview mail action pipeline.
$next \Closure The next step in the pipeline.

Methods

Method Description
mailAction() Returns the temporary mail action instance being built.
request() Returns the request.