[TYPO3-mvc] How to replace deprecated method	FlashMessageContainer->add()
    Dirk Wenzel 
    wenzel at webfox03.de
       
    Sun Jan 19 23:56:39 CET 2014
    
    
  
Hi Steffen,
thank you for your hint.
In the meantime I decided to use the 'magic' __call method. It should be 
called if the method is not available (this means not implemented or not 
callable for instance because it is private):
My AbstractController class now contains this:
    /**
    * Provides a method addFlashMessage which is not available before
    * TYPO3 version 6.2
    * This method can be removed if version 6.1 is not supported anymore.
    *
    * @param string $name
    * @param array $arguments
    * @return void
    */
   public function __call($name, array $arguments) {
     if($name == 'addFlashMessage') {
       $this->controllerContext->getFlashMessageQueue()->addMessage(new 
\TYPO3\CMS\Core\Messaging\FlashMessage(current($arguments)));
     }
   }
It does the trick for 6.1 and should not be called under 6.2 (not tested 
yet)
Cheers
Dirk
Am 19.01.14 23:40, schrieb Steffen Müller:
> Hi.
>
> On 19.01.2014 14:10 Dirk Wenzel wrote:
>> Great! I was just about to add this method to my abstract controller
>> class. Now I can make it fit the 6.2 method (and make it available under
>> 6.1 too).
>
> Add it as a public method. This ensures your extension works in 6.1 and
> 6.2 in parallel. Otherwise you could end up in PHP Fatal errors
> PHP Fatal error:  Access level to BlogController::addFlashMessage() must
> be public
    
    
More information about the TYPO3-project-typo3v4mvc
mailing list