Ver Mensaje Individual
  #11 (permalink)  
Antiguo 27/03/2011, 19:25
CyberMauher
 
Fecha de Ingreso: febrero-2010
Mensajes: 183
Antigüedad: 14 años, 9 meses
Puntos: 1
Respuesta: [Zend] Cambiar Script Desde Controlador

Cita:
Iniciado por masterpuppet Ver Mensaje
En el ejemplo esta hardcodeado, pero perfectamente lo podrias tener en el config y pasarlo por el constructor, luego para agregar o quitar seria simplemente editar el .ini

Application_Plugin_AccessCheck

Código PHP:
Ver original
  1. class Application_Plugin_AccessCheck
  2.     extends Zend_Controller_Plugin_Abstract
  3. {
  4.     ...
  5.     private $_blackList;
  6.  
  7.     public function __construct(Zend_Auth $auth, array $blackList)
  8.     {
  9.        $this->_blackList = $blackList;
  10.       ...
  11.     }
  12. }


Bootstrap
Código PHP:
Ver original
  1. class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
  2. {
  3.     public function _initPlugins()
  4.     {
  5.         $options = $this->getOptions();
  6.         $fc = Zend_Controller_Front::getInstance();        
  7.         $fc->registerPlugin(new Application_Plugin_AccessCheck(Zend_Auth::getInstance()), $options['blackList']);
  8.     }
  9. }

application.ini
Código INI:
Ver original
  1. ...
  2. blackList[] = "default:index:index"
  3. blackList[] = "users:index:list"

Creo que es preferible algo asi, a a estar en los diferentes action's comprobando para mostrar una vista u otra, tenes que pensar que en otro proyecto se te puede presentar la misma situación y para solventarlo seria tan simple como integrar el plugin, AccessCheck es candidato a estar en tu libreria .

Saludos.
Aaaah! esto si ya tiene más color y sobre todo me gusto esto "AccessCheck es candidato a estar en tu libreria".
Es al pedo dios es dios, GRACIAS A TODOS!

Me gustaría que me aclaren que significa el guión bajo que anteponen en las variables.
__________________
Le estaré agradecido por los siglos de los siglos a mi dios en PHP masterpuppet. Amen!