Dsao_Controller_Action Klassenreferenz

Grundcontroller der Applikation. Mehr ...

Klassendiagramm für Dsao_Controller_Action:

About_MastheadController About_SitemapController ErrorController Game_DeskController Hero_Dsa3Controller IndexController News_AdminController News_IndexController Scroll_OverviewController Scroll_ScrollController Scroll_ThreadController User_ListController User_LoginController User_OverviewController User_ProfileController User_RegisterController

Aufstellung aller Elemente

Öffentliche Methoden

 __call ($action, $parameters)
 Nicht vorhandene Aktionen werden abgefangen.
 __construct (Zend_Controller_Request_Abstract $request, Zend_Controller_Response_Abstract $response, array $invokeArgs=array())
 Wrapper für den Konstruktor, um Klasseneigenschaften zu initialisieren.
 forward ($action, $controller=null, $module=null, array $parameters=array())
 Interne Weiterleitung.
 getConfig ()
 Gibt Konfiguration zurück.
 getHelper ($helperName)
 Gibt Helper mit übergebenem Namen zurück.
 getLog ()
 Gibt Logger zurück.
 getModuleNavigation ()
 Gibt die Navigation des aufgerufenen Moduls zurück.
 getTranslate ()
 Gibt Sprachverwaltung zurück.
 getUri ()
 Gibt URI zurück.
 getUser ()
 Gibt das Objekt des angemeldeten Benutzers zurück.
 getView ()
 Gibt Objekt der View-Komponente zurück.
 init ()
 Initialisierung des Controllers.
 isXmlHttpRequest ()
 Wrapper für Zend_Controller_Request_Http::isXmlHttpRequest().
 postDispatch ()
 Abschließende Routinen.
 preDispatch ()
 Vor dem Dispatchen auszuführende Routinen.
 preRedirect ()
 Vor dem Weiterleiten auszuführende Controllerlogik.
 setUser (Dsao_User $user)
 Setzt Benutzerobjekt.

Geschützte Methoden

 _addJsFile ($action=null, $controller=null, $module=null)
 Fügt JavaScript-Datei hinzu.
 _getModel ($modelClass=null)
 Gibt ein angefordertes Modell zurueck.
 _gotoSimple ($action, $controller=null, $module=null, array $parameters=array(), $exit=true)
 Wrapper für die einfache Umleitung auf eine andere Seite.
 _initHelpers ()
 Initialisiert Helper.
 _setDefaultModelClass ($modelClass)
 Setzt die Standardmodellklasse.


Ausführliche Beschreibung

Grundcontroller der Applikation.

Von diesem Grundcontroller werden alle weiteren Controller abgeleitet.

Autor:
DSAo-Md

http://www.gnu.org/licenses/gpl-3.0.html GNU Public License

Version:
SVN: $Id: Action.php 519 2009-09-13 15:51:26Z saviola777 $

Definiert in Zeile 11 der Datei Action.php.


Dokumentation der Elementfunktionen

Dsao_Controller_Action::__call ( action,
parameters 
)

Nicht vorhandene Aktionen werden abgefangen.

Diese Methode leitet den Benutzer bei dem Aufruf einer nicht vorhandenen Seite auf eine Fehlerseite um.

Parameter:
$action string, Aktion
$parameters array, Parameter
Rückgabe:
void

Definiert in Zeile 58 der Datei Action.php.

00059   {
00060     // Falls nicht vorhandene Aktion aufgerufen wurde, auf Fehlerseite
00061     // weiterleiten
00062     if (substr($action, -6, 6) == 'Action')
00063     {
00064       return $this->_forward('exception', 'error', 'default');
00065     }
00066 
00067     throw new Dsao_Exception(array(
00068       'message' => 'dsao_controller_action_method_not_found',
00069       'variables' => array('method' => $action),
00070       ), 500);
00071   }

Dsao_Controller_Action::_addJsFile ( action = null,
controller = null,
module = null 
) [protected]

Fügt JavaScript-Datei hinzu.

Erzeugt aus den uebergebenen Parametern den Pfad zu der JS-Datei der Aktion, des Kontrollers oder des Moduls, relativ zu /htdocs/js und uebergibt ihn an Dsao_View_Smarty::addJsFile().

Bei den Parametern gilt jeweils:

false = dieser Teil soll abgeschnitten werden (macht bei Modul keinen Sinn) null = für diesen Teil den Standardwert benutzen string = für diesen Teil diese Zeichenkette benutzen

Parameter:
$action bool|null|string, Aktion
$controller bool|null|string, Controller
$module bool|null|string, Modul
Rückgabe:
bool

Definiert in Zeile 108 der Datei Action.php.

Benutzt getView().

Wird benutzt von Game_DeskController::showAction().

00109   {
00110     // string, Pfad zur JavaScript-Datei
00111     $path = null;
00112 
00113     $parameters = array(
00114       'Module'      => $module,
00115       'Controller'  => $controller,
00116       'Action'      => $action
00117       );
00118 
00119     foreach ($parameters as $name => $value)
00120     {
00121       // Falls false übergeben wurde, abbrechen
00122       if (false === $value)
00123       {
00124         break;
00125       }
00126 
00127       // Slash anhängen
00128       $path .= '/';
00129 
00130       // Methodenname für Standardparameter
00131       $method = 'get'.$name.'Name';
00132 
00133       $path .= (null === $value ? $this->getRequest()->$method() : $value);
00134     }
00135 
00136     // Falls kein Pfad gebildet wurde
00137     if (!$path)
00138     {
00139       return false;
00140     }
00141 
00142     // /module/controller/action uebergeben, Endung wird automatisch
00143     // hinzugefügt
00144     return $this->getView()->addJsFile($path);
00145   }

Dsao_Controller_Action::_getModel ( modelClass = null  )  [protected]

Dsao_Controller_Action::_gotoSimple ( action,
controller = null,
module = null,
array $  parameters = array(),
exit = true 
) [protected]

Wrapper für die einfache Umleitung auf eine andere Seite.

Parameter:
$action string, Aktion
$controller string, Controller
$module string, Modul
$parameters array Parameter des URI
$exit bool, ob direkt umgeleitet werden soll
Rückgabe:
void

Definiert in Zeile 171 der Datei Action.php.

Benutzt getHelper().

Wird benutzt von User_RegisterController::confirmAction(), User_RegisterController::emailAction(), User_RegisterController::insertAction(), Game_DeskController::insertAction(), User_LoginController::loginAction(), User_LoginController::logoutAction(), User_RegisterController::passwordAction(), User_RegisterController::preDispatch() und User_RegisterController::usernameAction().

00172   {
00173     $this->getHelper('Redirector')->setExit($exit)
00174       ->gotoSimple($action, $controller, $module, $parameters);
00175   }

Dsao_Controller_Action::_initHelpers (  )  [protected]

Initialisiert Helper.

Rückgabe:
void

Definiert in Zeile 182 der Datei Action.php.

Wird benutzt von __construct().

00183   {
00184     // Falls dies nicht der erste instanziierte Controller ist
00185     if (0 !== Zend_Controller_Action_HelperBroker::getStack()->count())
00186     {
00187       return;
00188     }
00189 
00190     // Action-Helper initialisieren
00191     Zend_Controller_Action_HelperBroker::addPrefix
00192       ('Dsao_Controller_Action_Helper');
00193 
00194     // Zur Reihenfolge: alle Methoden werden in umgekehrter Reihenfolge
00195     // ausgeführt
00196 
00197     // Renderer (nach unten, damit postDispatch() als letztes ausgeführt wird)
00198     Zend_Controller_Action_HelperBroker::getStaticHelper('Renderer');
00199 
00200     // Garbage-Collector (nach unten, da unwichtig und ohne Abhängigkeiten)
00201     Zend_Controller_Action_HelperBroker::getStaticHelper('GarbageCollector');
00202 
00203     // Menü-Erstellung (braucht Benutzerobjekt)
00204     Zend_Controller_Action_HelperBroker::getStaticHelper('Menu');
00205 
00206     // History (braucht Benutzerobjekt)
00207     $this->_helpersArray['History'] =
00208       Zend_Controller_Action_HelperBroker::getStaticHelper('History');
00209 
00210     // Translator (braucht Benutzerobjekt)
00211     $this->_helpersArray['Translate'] =
00212       Zend_Controller_Action_HelperBroker::getStaticHelper('Translator');
00213 
00214     // Berechtigungsverwaltung (braucht Benutzerobjekt)
00215     Zend_Controller_Action_HelperBroker::getStaticHelper('AccessControl');
00216 
00217     // Authentifizierung (keine Abhängigkeiten, möglichst weit oben, da
00218     // spätere Änderungen auf das Benutzerobjekt keine Wirkung mehr haben)
00219     Zend_Controller_Action_HelperBroker::getStaticHelper('Auth');
00220 
00221     // Session Tokens (braucht URI-Objekt)
00222     $this->_helpersArray['SessionToken'] =
00223       Zend_Controller_Action_HelperBroker::getStaticHelper('SessionToken');
00224 
00225     // URI (kann nach oben, da es keine Abhängigkeiten hat und nur init())
00226     $this->_helpersArray['Uri'] =
00227       Zend_Controller_Action_HelperBroker::getStaticHelper('Uri');
00228   }

Dsao_Controller_Action::_setDefaultModelClass ( modelClass  )  [protected]

Setzt die Standardmodellklasse.

Parameter:
$modelClass string, Modellklasse, ohne führendes 'Dsao_Model_'
Rückgabe:
Dsao_Controller_Abstract, fließendes Interface

Definiert in Zeile 236 der Datei Action.php.

Wird benutzt von User_RegisterController::preDispatch(), User_ProfileController::preDispatch(), User_LoginController::preDispatch(), Scroll_ThreadController::preDispatch(), Scroll_ScrollController::preDispatch(), Scroll_OverviewController::preDispatch(), News_AdminController::preDispatch(), Hero_Dsa3Controller::preDispatch(), Game_DeskController::preDispatch(), News_IndexController::preDispatch() und About_SitemapController::preDispatch().

00237   {
00238     $this->_modelClassDefault = $modelClass;
00239 
00240     return $this;
00241   }

Dsao_Controller_Action::forward ( action,
controller = null,
module = null,
array $  parameters = array() 
)

Interne Weiterleitung.

Parameter:
$action string, Aktion
$controller string, Controller
$module string, Modul
$parameters array, Parameter

Definiert in Zeile 251 der Datei Action.php.

00252   {
00253     $this->_forward($action, $controller, $module, $parameters);
00254   }

Dsao_Controller_Action::getConfig (  )  [final]

Gibt Konfiguration zurück.

Rückgabe:
Dsao_Config, Konfiguration

Definiert in Zeile 261 der Datei Action.php.

00262   {
00263     return $this->_config;
00264   }

Dsao_Controller_Action::getHelper ( helperName  )  [final]

Gibt Helper mit übergebenem Namen zurück.

Parameter:
$helperName string, Helper-Name
Rückgabe:
Zend_Controller_Action_Helper_Abstract, Helper

Definiert in Zeile 272 der Datei Action.php.

Wird benutzt von _gotoSimple(), Scroll_ScrollController::deleteAction(), Game_DeskController::deleteAction(), User_ProfileController::editAction(), Game_DeskController::editAction(), getTranslate(), getUri(), Game_DeskController::insertAction(), User_LoginController::logoutAction(), User_LoginController::passwordAction(), ErrorController::postDispatch(), News_IndexController::preDispatch(), IndexController::preDispatch(), About_SitemapController::preDispatch(), About_MastheadController::preDispatch(), Scroll_ScrollController::sendAction(), Scroll_ThreadController::showAction() und Game_DeskController::showAction().

00273   {
00274     $helperName = (string) $helperName;
00275 
00276     // Falls Helper noch nicht in Array vorhanden
00277     if (!isset($this->_helpersArray[$helperName]))
00278     {
00279       // Falls Helper-Broker noch nicht initialisiert
00280       if (null === $this->_helper)
00281       {
00282         // Bei der Instanziierung des Helper-Brokers werden alle Helper
00283         // neu initialisiert, allerdings ist während dessen das $_helper-
00284         // Objekt des Controllers leer. Also müssen wir über diesen Umweg
00285         // an die Helper herankommen.
00286         // Es werden nur schon vorhandene zurückgegeben, da ansonsten keine
00287         // Bindung an den Controller gegeben wäre
00288         $this->_helpersArray[$helperName] =
00289           Zend_Controller_Action_HelperBroker::getExistingHelper($helperName);
00290       }
00291       else
00292       {
00293         $this->_helpersArray[$helperName] = $this->_helper
00294           ->getHelper($helperName);
00295       }
00296     }
00297 
00298     return $this->_helpersArray[$helperName];
00299   }

Dsao_Controller_Action::getLog (  )  [final]

Dsao_Controller_Action::getModuleNavigation (  ) 

Gibt die Navigation des aufgerufenen Moduls zurück.

Rückgabe:
array, Navigation

Definiert in Zeile 316 der Datei Action.php.

Benutzt _getModel().

00317   {
00318     return $this->_getModel()->getModuleNavigation();
00319   }

Dsao_Controller_Action::getTranslate (  )  [final]

Gibt Sprachverwaltung zurück.

Rückgabe:
Zend_Translate, Sprachverwaltung

Definiert in Zeile 326 der Datei Action.php.

Benutzt getHelper().

Wird benutzt von User_ProfileController::editAction() und Game_DeskController::showAction().

00327   {
00328     return $this->getHelper('Translate')->getTranslate();
00329   }

Dsao_Controller_Action::getUri (  )  [final]

Dsao_Controller_Action::getUser (  )  [final]

Dsao_Controller_Action::getView (  )  [final]

Dsao_Controller_Action::init (  )  [final]

Initialisierung des Controllers.

Die Methode initialisiert u.a. Smarty und die Sprachverwaltung.

Rückgabe:
void

Definiert in Zeile 368 der Datei Action.php.

Benutzt isXmlHttpRequest().

00369   {
00370     // Smarty instanziieren (braucht Translator)
00371     $this->_smarty = new Dsao_View_Smarty($this->isXmlHttpRequest());
00372 
00373     // Falls Ajax-Anfrage
00374     if ($this->isXmlHttpRequest())
00375     {
00376       // Falls bei der Anfrage eine Callback-Funktion uebergeben wurde
00377       if ($this->_request->getParam('callbackHandler'))
00378       {
00379         $this->_smarty->getAjaxResponse()->setCallbackHandler
00380           ($this->_request->getParam('callbackHandler'));
00381       }
00382     }
00383   }

Dsao_Controller_Action::isXmlHttpRequest (  ) 

Wrapper für Zend_Controller_Request_Http::isXmlHttpRequest().

Rückgabe:
bool, ob Ajax-Anfrage vorliegt

Definiert in Zeile 390 der Datei Action.php.

Wird benutzt von Game_DeskController::deleteAction(), Game_DeskController::editAction(), init(), Game_DeskController::insertAction() und Game_DeskController::showAction().

00391   {
00392     // Falls Eigenschaft noch nicht initialisiert
00393     if (null === $this->_isXmlHttpRequest)
00394     {
00395       $this->_isXmlHttpRequest = $this->_request->isXmlHttpRequest();
00396     }
00397 
00398     return (bool) $this->_isXmlHttpRequest;
00399   }

Dsao_Controller_Action::postDispatch (  ) 

Abschließende Routinen.

Rückgabe:
void

Erneute Implementation in ErrorController, Hero_Dsa3Controller, User_ProfileController und User_RegisterController.

Definiert in Zeile 406 der Datei Action.php.

00407   {}

Dsao_Controller_Action::preRedirect (  ) 

Vor dem Weiterleiten auszuführende Controllerlogik.

Kann vom Controller ueberladen werden, um vor dem Ausfuehren einer Weiterleitung ausgefuehrt zu werden.

Rückgabe:
void

Definiert in Zeile 423 der Datei Action.php.

00424   {}

Dsao_Controller_Action::setUser ( Dsao_User user  ) 

Setzt Benutzerobjekt.

Parameter:
$user Dsao_User, Angemeldeter Benutzer
Rückgabe:
void

Definiert in Zeile 432 der Datei Action.php.

00433   {
00434     $this->_user = $user;
00435   }


Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Datei:

Erzeugt am Fri Sep 18 19:04:12 2009 für DSA online - Morgendaemmerung von  doxygen 1.5.7.1