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