| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 | 
							- <?php
 
- /*
 
-  * This file is part of the Symfony package.
 
-  *
 
-  * (c) Fabien Potencier <fabien@symfony.com>
 
-  *
 
-  * For the full copyright and license information, please view the LICENSE
 
-  * file that was distributed with this source code.
 
-  */
 
- namespace Symfony\Component\HttpFoundation\Session\Flash;
 
- /**
 
-  * AutoExpireFlashBag flash message container.
 
-  *
 
-  * @author Drak <drak@zikula.org>
 
-  */
 
- class AutoExpireFlashBag implements FlashBagInterface
 
- {
 
-     private $name = 'flashes';
 
-     private $flashes = ['display' => [], 'new' => []];
 
-     private $storageKey;
 
-     /**
 
-      * @param string $storageKey The key used to store flashes in the session
 
-      */
 
-     public function __construct(string $storageKey = '_symfony_flashes')
 
-     {
 
-         $this->storageKey = $storageKey;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function getName()
 
-     {
 
-         return $this->name;
 
-     }
 
-     public function setName(string $name)
 
-     {
 
-         $this->name = $name;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function initialize(array &$flashes)
 
-     {
 
-         $this->flashes = &$flashes;
 
-         // The logic: messages from the last request will be stored in new, so we move them to previous
 
-         // This request we will show what is in 'display'.  What is placed into 'new' this time round will
 
-         // be moved to display next time round.
 
-         $this->flashes['display'] = \array_key_exists('new', $this->flashes) ? $this->flashes['new'] : [];
 
-         $this->flashes['new'] = [];
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function add(string $type, $message)
 
-     {
 
-         $this->flashes['new'][$type][] = $message;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function peek(string $type, array $default = [])
 
-     {
 
-         return $this->has($type) ? $this->flashes['display'][$type] : $default;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function peekAll()
 
-     {
 
-         return \array_key_exists('display', $this->flashes) ? $this->flashes['display'] : [];
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function get(string $type, array $default = [])
 
-     {
 
-         $return = $default;
 
-         if (!$this->has($type)) {
 
-             return $return;
 
-         }
 
-         if (isset($this->flashes['display'][$type])) {
 
-             $return = $this->flashes['display'][$type];
 
-             unset($this->flashes['display'][$type]);
 
-         }
 
-         return $return;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function all()
 
-     {
 
-         $return = $this->flashes['display'];
 
-         $this->flashes['display'] = [];
 
-         return $return;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function setAll(array $messages)
 
-     {
 
-         $this->flashes['new'] = $messages;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function set(string $type, $messages)
 
-     {
 
-         $this->flashes['new'][$type] = (array) $messages;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function has(string $type)
 
-     {
 
-         return \array_key_exists($type, $this->flashes['display']) && $this->flashes['display'][$type];
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function keys()
 
-     {
 
-         return array_keys($this->flashes['display']);
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function getStorageKey()
 
-     {
 
-         return $this->storageKey;
 
-     }
 
-     /**
 
-      * {@inheritdoc}
 
-      */
 
-     public function clear()
 
-     {
 
-         return $this->all();
 
-     }
 
- }
 
 
  |