1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
| <?php
class saveVisitorPath extends Zend_Controller_Plugin_Abstract
{
/**
* object de session pour le nom d'espace system
*
* @access private
* @var object Zend_Session_Namespace object
*/
private static $session_system = null;
/**
* Sauvegarde de la requete après routage de la requete
* en surchargent la methode routeShutdown
*
* @name routeShutdown
* @access public
* @param object $request object request du front controlleur
*/
public function routeShutdown(Zend_Controller_Request_Abstract $request)
{
/**
* On recupere le nom d'espace de session "system" et on le deverouille si verouiller
*/
self::$session_system = Zen_Session::getNamespace('system');
if(self::$session_system->isLocked()) self::$session_system->unLock();
/**
* On verifie que la variable de session visitorPath existe sinon on l'initialise
*/
if(!isset(self::$session_system->visitorPath)) self::$session_system->visitorPath = array();
/**
* On recupere l'uri de l'objet de request et on l'enregistre en session
*/
if(count(self::$session_system->visitorPath)==10)
{
array_splice(self::$session_system->visitorPath, 0, 1);
}
array_push(self::$session_system->visitorPath, $request->getRequestUri());
self::$session_system->lock();
// pour test ///////////////////////////////////////////////////
print_r($this->_request);
echo '<br />_____________________________<br />';
print_r(self::$session_system->visitorPath);
////////////////////////////////////////////////////////////////
}
} |
Partager