diff --git a/src/Core/Mailer/Mailer.php b/src/Core/Mailer/Mailer.php index e6dc8b6e..117714f5 100644 --- a/src/Core/Mailer/Mailer.php +++ b/src/Core/Mailer/Mailer.php @@ -19,7 +19,7 @@ * @see MailAttachment * * @method static MailMessage createMessage($subject = null, $content = null, $html = true) - * @method static boolean send(MailMessage $message) + * @method static boolean|callable send($message) * @method static MailerManager setMessageClass($messageClass) * @method static MailerAdapterInterface getAdapter() * @method static MailerManager setAdapter(MailerAdapterInterface $adapter) diff --git a/src/Core/Mailer/MailerManager.php b/src/Core/Mailer/MailerManager.php index 9acf23d5..45fc6510 100644 --- a/src/Core/Mailer/MailerManager.php +++ b/src/Core/Mailer/MailerManager.php @@ -82,11 +82,13 @@ public function send($message) { if (is_callable($message)) { - $message = $message($this->createMessage(), $this); + $msgObject = $this->createMessage(); + + $message = $message($msgObject, $this); if (!$message instanceof MailMessage) { - throw new \UnexpectedValueException(sprintf('Please return %s from your callback. ', MailMessage::class)); + $message = $msgObject; } } diff --git a/src/Core/View/Helper/Set/HelperSet.php b/src/Core/View/Helper/Set/HelperSet.php index 901d3d4d..8103d455 100644 --- a/src/Core/View/Helper/Set/HelperSet.php +++ b/src/Core/View/Helper/Set/HelperSet.php @@ -11,7 +11,6 @@ use Windwalker\Core\Mvc\MvcHelper; use Windwalker\Core\View\AbstractView; use Windwalker\Core\View\Helper\AbstractHelper; -use Windwalker\Core\View\PhpHtmlView; /** * Class HelperSet diff --git a/src/Core/Widget/Widget.php b/src/Core/Widget/Widget.php index 8de7a51c..afc9dded 100644 --- a/src/Core/Widget/Widget.php +++ b/src/Core/Widget/Widget.php @@ -14,6 +14,7 @@ use Windwalker\Core\Package\PackageHelper; use Windwalker\Core\Renderer\RendererHelper; use Windwalker\Core\Utilities\Classes\ArrayAccessTrait; +use Windwalker\Data\DataInterface; use Windwalker\Utilities\Queue\PriorityQueue; use Windwalker\Data\Data; use Windwalker\Renderer\PhpRenderer; @@ -151,11 +152,11 @@ public function render($data = array()) /** * prepareData * - * @param \Windwalker\Data\Data $data + * @param DataInterface $data * * @return void */ - protected function prepareData($data) + protected function prepareData(DataInterface $data) { } @@ -210,11 +211,11 @@ public function setRenderer(RendererInterface $renderer) /** * prepareGlobals * - * @param Data $data + * @param DataInterface $data * * @return static */ - protected function prepareGlobals(Data $data) + protected function prepareGlobals(DataInterface $data) { $data->layout = $this->layout; $data->renderer = get_class($this->renderer);