Başarısız Nasıl Zend_Controller_Plugin_Abstract yönlendirme tam url değişikliği ile çalışmış olsun? Onu devre dışı düzen Zend_layout yapıyor

0 Cevap php

Ben bir yönetici webapp.one component.basically giriş süreci one.I 'devre dışı bırakmak için bir eklenti oluşturduk bir ajax olduğu / default / index / index bir Extjs olan giriş formu olan herhangi action.Now perfoming önce giriş için var render ve düzeni ve (henüz tam ACL) veya kullanıcı oturum açmış olup olmadığını kontrol etmek.

burada kodu:

 public function  preDispatch(Zend_Controller_Request_Abstract $request) {
    parent::preDispatch($request);

    if($request->isXmlHttpRequest()){
        $ViewHelper = Zend_Controller_Action_HelperBroker::getStaticHelper("ViewRenderer");
        $ViewHelper->setNoRender(true);
        Zend_Layout::getMvcInstance()->disableLayout();

    }


    $module = $request->getModuleName();
    $controller = $request->getControllerName();
    $action = $request->getActionName();

    if(!Zend_Auth::getInstance()->hasIdentity()){
        $url = "/".$module."/".$controller."/".$action;
          $session = new Zend_Session_Namespace("myapp.auth");
        $session->requestURL = $url;
        $request->setModuleName("default");
        $request->setControllerName("index");
        $request->setActionName("index");
        $request->setDispatched();

    }
}

this seems to work but then the address bar still have the original request url. for example i've typed "myapp/admin/cpanel" in the url bar and it opens the login page on the browser while the address bar still has "myapp/admin/cpanel".at the moment the login fails because the output has some html rendering i believe is from the login page(which has been working fine when hit directly).

Herkes önce bu yaşanmıştır yoksa sadece bana bu deneyimlerini paylaşmak eğer mutluluk duyacağız wrong.I 'bir şey yapıyor değil etti.

Bu okuma için teşekkürler.

0 Cevap