Merge pull request #314 from romainneutron/flash-messages

[3.8] Add simpler behavior for flash messages
This commit is contained in:
Romain Neutron
2013-02-25 07:27:47 -08:00
2 changed files with 35 additions and 0 deletions

View File

@@ -518,6 +518,30 @@ class Application extends SilexApplication
);
}
/**
* Adds a flash message for type.
*
* @param string $type
* @param string $message
*/
public function addFlash($type, $message)
{
return $this['session']->getFlashBag()->add($type, $message);
}
/**
* Gets and clears flash from the stack.
*
* @param string $type
* @param array $default Default value if $type does not exist.
*
* @return array
*/
public function getFlash($type, array $default = array())
{
return $this['session']->getFlashBag()->get($type, $default);
}
/**
* Tell if current a session is open
*

View File

@@ -228,6 +228,17 @@ class ApplicationTest extends \PhraseanetPHPUnitAbstract
$this->assertEquals($ret, $app->url($route));
}
public function addSetFlash()
{
$app = new Application('test');
$this->assertEquals(array(), $app->getFlash('hello'));
$this->assertEquals('BOUM', $app->getFlash('hello', 'BOUM'));
$app->setFlash('notice', 'BAMBA');
$this->assertEquals(array('BAMBA'), $app->getFlash('notice'));
}
private function getAppThatReturnLocale()
{
$app = new Application('test');