Dsao_Controller_Action_Helper_Auth Klassenreferenz

Helper, der den Benutzer authentifiziert. Mehr ...

Aufstellung aller Elemente

Öffentliche Methoden

 init ()
 Initialisiert Klassenvariablen.
 postDispatch ()
 Serialisiert angemeldeten Benutzer ggf.

Geschützte Attribute

 $_auth = null
 Zend_Auth, Objekt, welches die Authentifizierung des Benutzers uebernimmt.
 $_user = null
 Dsao_User, Objekt, welches alle Daten des aktuellen Benutzers enthaelt.


Ausführliche Beschreibung

Helper, der den Benutzer authentifiziert.

Autor:
DSAo-Md

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

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

Definiert in Zeile 9 der Datei Auth.php.


Dokumentation der Elementfunktionen

Dsao_Controller_Action_Helper_Auth::init (  ) 

Initialisiert Klassenvariablen.

Rückgabe:
void

Definiert in Zeile 27 der Datei Auth.php.

Benutzt Dsao_Registry::getModel().

00028   {
00029     // Falls Authentifizierungsobjekt noch nicht initialisiert
00030     if (null === $this->_auth)
00031     {
00032       $this->_auth = Zend_Auth::getInstance();
00033 
00034       // Falls Benutzer nicht angemeldet, pruefen, ob Autologin-Cookie vorhanden
00035       if (null === $this->_auth->getIdentity())
00036       {
00037         // Versuchen, den Benutzer mit Daten aus Cookie anzumelden
00038         Dsao_Registry::getModel('User_Login')->cookieLogin();
00039       }
00040     }
00041 
00042     // Benutzer aus Session laden
00043     if ($this->_auth->hasIdentity())
00044     {
00045       $this->_user = @unserialize($this->_auth->getIdentity());
00046     }
00047     else
00048     {
00049       $this->_user = new Dsao_User();
00050     }
00051 
00052     // Falls bei der Serialisierung ein Fehler aufgetreten ist, Session löschen
00053     if (!is_object($this->_user))
00054     {
00055       Zend_Session::destroy();
00056 
00057       throw new Dsao_Exception
00058         ('dsao_controller_action_helper_auth_unserialization_error');
00059     }
00060 
00061     // Benutzer in Registry speichern
00062     Dsao_Registry::set('user', $this->_user);
00063 
00064     // Benutzer in Controller schreiben
00065     $this->getActionController()->setUser($this->_user);
00066   }

Dsao_Controller_Action_Helper_Auth::postDispatch (  ) 

Serialisiert angemeldeten Benutzer ggf.

neu.

Rückgabe:
void

Definiert in Zeile 73 der Datei Auth.php.

00074   {
00075     // Benutzer ggf. neu serialisieren
00076     if ($this->_user->getReserialize())
00077     {
00078       // Neu in Session schreiben
00079       $this->_auth->getStorage()->write(serialize($this->_user));
00080     }
00081   }


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