Öffentliche Methoden | |
| postDispatch () | |
| Führt letzte Operationen vor und das Rendern selbst durch. | |
Definiert in Zeile 9 der Datei Renderer.php.
| Dsao_Controller_Action_Helper_Renderer::postDispatch | ( | ) |
Führt letzte Operationen vor und das Rendern selbst durch.
Definiert in Zeile 17 der Datei Renderer.php.
Benutzt Dsao_Registry::getModel() und Dsao_View_Smarty::sprintf().
00018 { 00019 // Falls umgeleitet wurde oder noch Aktionen ausgeführt werden 00020 // sollen, abbrechen 00021 if ($this->getResponse()->isRedirect() || 00022 !$this->getRequest()->isDispatched()) 00023 { 00024 return; 00025 } 00026 00027 // Falls Aufruf eine Ajax-Anfrage ist 00028 if ($this->getActionController()->isXmlHttpRequest()) 00029 { 00030 // Rendern (Ajax-Antwort erstellen) 00031 $this->getActionController()->getView()->render(); 00032 00033 // Nachrichten übergeben 00034 $this->getActionController()->getView()->getAjaxResponse() 00035 ->setMessages($this->getActionController()->getLog()->getEvents()); 00036 00037 // Antwort abschicken 00038 $this->getActionController()->getResponse() 00039 ->setHeader('Content-Type', $this->getActionController()->getView() 00040 ->getAjaxResponse()->getContentType()) 00041 ->setBody($this->getActionController()->getView() 00042 ->getAjaxResponse()->getContent()); 00043 00044 return; 00045 } 00046 00047 // Ungelesene Schriftrollen 00048 00049 // Anzahl ungelesener Schriftrollen, int 00050 $scrollsUnread = 0; 00051 00052 // Falls Benutzer angemeldet ist, Anzahl ungelesener Schriftrollen laden 00053 if ($this->getActionController()->getUser()->isValid()) 00054 { 00055 $scrollsUnread = Dsao_Registry::getModel() 00056 ->getUnreadScrolls($this->getActionController()->getUser()->getId()); 00057 00058 // string, Anzeige der Anzahl der ungelesenen Schriftrollen im 00059 // oberen Menue 00060 $scrollsUnreadMenuString = Dsao_View_Smarty::sprintf 00061 ('status_bar_top_unread_sr', array('scrollsUnread' => $scrollsUnread)); 00062 00063 $this->getActionController()->getView()->assign 00064 ('scrollsUnreadMenuString', $scrollsUnreadMenuString); 00065 } 00066 00067 // Aktuelle Revisionsnummer ggf. laden 00068 00069 // int, Nummer der verwendeten Revision 00070 $currentRevisionNumber = 0; 00071 00072 //null|string, Datei, die aktuelle Revision enthalten soll 00073 $currentRevisionNumberFile = $this->getActionController()->getConfig() 00074 ->revisionFile; 00075 00076 // Falls Datei mit aktueller Revisionsnummer vorhanden ist 00077 if ($currentRevisionNumberFile && is_file($currentRevisionNumberFile)) 00078 { 00079 $currentRevisionNumber = file_get_contents($currentRevisionNumberFile); 00080 } 00081 00082 // Modul-Navigation 00083 $this->getActionController()->getView() 00084 ->setModuleNavigation($this->getActionController()->getModuleNavigation()); 00085 00086 // Strings fuer Modul, Controller und Aktion zuweisen 00087 $action = $this->getRequest()->getActionName(); 00088 $controller = $this->getRequest()->getControllerName(); 00089 $module = $this->getRequest()->getModuleName(); 00090 00091 $this->getActionController()->getView()->assign(array 00092 ( 00093 // Aktion 00094 'action' => $action, 00095 // Controller 00096 'controller' => $controller, 00097 // Aktuelle Revisionsnummer 00098 'currentRevisionNumber' => $currentRevisionNumber, 00099 // Browsertitel 00100 'headerTitle' => $module.'_'.$controller.'_'.$action, 00101 // Meldungen 00102 'messages' => 00103 $this->getActionController()->getLog()->getEvents(), 00104 // Modulname 00105 'module' => $module, 00106 // ungelesene Schriftrollen 00107 'scrollsUnread' => $scrollsUnread, 00108 // Translator 00109 'translate' => $this->getActionController() 00110 ->getHelper('Translator')->getTranslate(), 00111 // URI-Generator 00112 'uri' => $this->getActionController()->getUri(), 00113 // Benutzer 00114 'user' => $this->getActionController()->getUser(), 00115 )); 00116 00117 $this->getActionController()->getView()->render(); 00118 }
1.5.7.1