dotkernel/dot-controller-plugin-mail

DotKernel mail controller plugin component

2.9.2 2024-03-25 16:09 UTC

This package is auto-updated.

Last update: 2024-12-03 06:16:09 UTC


README

Caution

Security-Only Maintenance Mode

This package is considered feature-complete, and is now in security-only maintenance mode.

OSS Lifecycle GitHub license PHP from Packagist (specify version)

dot-controller-plugin-mail

Mail controller plugin for easy access to dot-mail service from any controller.

Installation

Run the following command in your project's root directory

$ composer require dotkernel/dot-controller-plugin-mail

This will also install packages dotkernel/dot-controller and 'dotkernel/dot-mail as dependencies. Next, make sure you merge the ConfigProvider to your application's configuration.

Usage

Because multiple mail services can be defined in the dot-mail module, there can also be requested as controller plugins by following the convention

//calling this plugins without parameters, will return the mail service instead, otherwise will use parameters to send directly the e-mail
$this->sendMail(); //will return the default mail service

$this->sendMailYourMailService(); //will return the mail service named your_mail_service

Controller mail plugins are invokable. To send an email you can use the following 2 methods

  • $this->sendMail(array $mailConfig) - will send a mail through a mail service configured based on the $mailConfig param. The array parameter valid keys are body, subject, to, from, cc, bcc, attachments. The body parameter can be specified as an array too in which case the $body[0] should be the template name to use as mail template and $body[1] should be optionally the template parameters.

  • $this->sendMail($body, $subject, $to, $from, $cc, $bcc, $attachments) - the parameters have the same meaning as in the previous method