laminas / laminas-mvc-plugin-flashmessenger

Plugin for creating and exposing flash messages via laminas-mvc controllers
https://docs.laminas.dev/laminas-mvc-plugin-flashmessenger/
BSD 3-Clause "New" or "Revised" License
10 stars 16 forks source link

Laminas\Mvc\Plugin\FlashMessenger\View\Helper don't use Laminas\Mvc\Plugin\FlashMessenger\FlashMessenger #27

Open basselin opened 2 years ago

basselin commented 2 years ago

BC Break Report

Q A
Version 1.8.0

Summary

Laminas\Mvc\Plugin\FlashMessenger\View\Helper\FlashMessenger don't use Laminas\Mvc\Plugin\FlashMessenger\FlashMessenger without config ['view_helper_config']['flashmessenger'].

Previous behavior

https://github.com/laminas/laminas-mvc-plugin-flashmessenger/blob/420a99df81432140d78799a2e7cb34931fcdd619/src/View/Helper/FlashMessengerFactory.php#L32

Current behavior

https://github.com/laminas/laminas-mvc-plugin-flashmessenger/blob/86bb1c654e5fafaf34d4deaa7dc9af721fbcb42d/src/View/Helper/FlashMessengerFactory.php#L47

How to reproduce

Config without ['view_helper_config']['flashmessenger']

Solution in FlashMessengerFactory ?

$helper = new FlashMessenger();
$helper->setPluginFlashMessenger($flashMessenger);
return helper;

Or in global Config :

[
    'view_helper_config' => [
        'flashmessenger' => [],
    ],
]
Ocramius commented 2 years ago

Hey @basselin, could you rephrase a bit? What is broken?

froschdesign commented 2 years ago

Solution in FlashMessengerFactory ?

$helper = new FlashMessenger();
$helper->setPluginFlashMessenger($flashMessenger);
return helper;

This is the correct solution.

basselin commented 2 years ago

Hi @Ocramius, The helper flashMessenger don't use the plugin service 'flashMessenger' if you don't have any configuration of "flashmessenger" in "view_helper_config" : ['view_helper_config']['flashmessenger']

Therefore, the messages no longer appear.