openrat-cms

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit 69b3bb546c4707baaf7190bc8d6de249711d3f37
parent c54b3e04345bf30c5258e4350e461413e6ba2295
Author: dankert <devnull@localhost>
Date:   Wed, 11 Nov 2009 22:09:22 +0100

Bei Weiterleitungen von Actions auch Attribut 'write' auswerten.

Diffstat:
do.php | 23++++++++++++++++-------
1 file changed, 16 insertions(+), 7 deletions(-)

diff --git a/do.php b/do.php @@ -322,34 +322,43 @@ else // Aufruf der n�chsten Subaction (falls vorhanden) if ( isset($do->actionConfig[$do->subActionName]['goto']) ) { - /* Führt zu Problemen beim Login sowie der Anzeige von Notices. + /* Achtung: Redirect fuehrt zu Problemen beim Login sowie der Anzeige von Notices */ if ( $conf['interface']['redirect'] ) { // Wenn Validierungsfehler aufgetrete sind, auf keinen Fall einen Redirect machen, da sonst - // im nächste Request die Eingabedaten fehlen. + // im naechsten Request die Eingabedaten fehlen. if ( empty($do->templateVars['errors']) ) { $subActionName = $do->actionConfig[$do->subActionName]['goto']; header( 'HTTP/1.0 303 See other'); - // Absoluten Pfad kann auch der Client erg�nzen. + // Absoluten Pfad kann auch der Client ergaenzen. header( 'Location: '.Html::url($action,$do->actionConfig[$do->subActionName]['goto'],$do->getRequestId()) ); exit; } } - */ $subActionName = $do->actionConfig[$do->subActionName]['goto']; + $do->subActionName = $subActionName; $subaction = $subActionName; - - // Auf Alias pr�fen. + + // Auf Alias pr�fen. if ( isset($do->actionConfig[$do->subActionName]['alias']) ) { $subaction = $do->actionConfig[$do->subActionName]['alias']; } Logger::trace("controller is calling next subaction '$subaction'"); - $do->$subaction(); + // Alias-Methode aufrufen. + if ( isset($do->actionConfig[$subActionName]['write']) ) + { + $subActionView = $subActionName.'View'; + $do->$subActionView(); + } + else + { + $do->$subaction(); + } } $do->setMenu(); // Menue erzeugen