On Tue, Aug 19, 2008 at 03:22:17AM -0700, pvechi wrote:

Hi,

I use the following setup without problems.

in bootstrap:

Zend_Layout::startMvc(array(
    'layoutPath' => ROOT_DIR . 'application/modules/default/layouts',
    'layout' => 'main',
    'pluginClass' => 'WHEREEVERYOURLIBSARE_Layout_ModuleLayoutDirectory'
));

and the WHEREEVERYOURLIBSARE_Layout_ModulesLayoutDirectory is:

require_once ('Zend/Controller/Plugin/Abstract.php');

class WHEREEVERYOURLIBSARE_Layout_ModuleLayoutDirectory extends 
Zend_Layout_Controller_Plugin_Layout
{

    public function preDispatch (Zend_Controller_Request_Abstract $request)
    {
        $moduleName = $request->getModuleName();
        switch ($moduleName) {
            case $moduleName:
                $this->_moduleChange($moduleName);
                break;
        }
    }

    protected function _moduleChange ($moduleName)
    {
        
$this->getLayout()->setLayoutPath(dirname(dirname($this->getLayout()->getLayoutPath()))
        . DIRECTORY_SEPARATOR . $moduleName . '/layouts');
    }
}


I put the pluginclass at my own library/ folder.

Happy coding
Mario

-- 
-----BEGIN GEEK CODE BLOCK-----
Version: 3.12
GCS/CM d- s++: a+ C++++>$ UBL*++++$ P++ L+++ E--- W+++ N+ o-- K- w O- M-
V-- PS++ PE++ Y PGP+++ t--- 5 X++++ R++ tv- b+++ DI D++++  G++ e* h----
r+++ y++++
------END GEEK CODE BLOCK------

Attachment: signature.asc
Description: Digital signature

Reply via email to