Dsao_Controller_Action_Helper_AccessControl Klassenreferenz

Verwaltet Zugangsberechtigungen. Mehr ...

Aufstellung aller Elemente

Öffentliche Methoden

 preDispatch ()
 Wird von Zend vor dem Dispatchen aufgerufen.

Geschützte Attribute

 $_acl = null
 Zend_Acl, Objekt, welches alle Rollen und Ressourcen sowie Zugriffsberechtigungen enthaelt.


Ausführliche Beschreibung

Verwaltet Zugangsberechtigungen.

Autor:
DSAo-Md

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

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

Definiert in Zeile 9 der Datei AccessControl.php.


Dokumentation der Elementfunktionen

Dsao_Controller_Action_Helper_AccessControl::preDispatch (  ) 

Wird von Zend vor dem Dispatchen aufgerufen.

Rückgabe:
bool, ob aufgerufene Seite angezeit werden kann

Definiert in Zeile 23 der Datei AccessControl.php.

Benutzt Dsao_Registry::get().

00024   {
00025     // ACL-Objekt
00026     if (null === $this->_acl)
00027     {
00028       $this->_acl = Dsao_Registry::get('acl');
00029     }
00030 
00031     // Momentane Rolle
00032     $roleCurrent = $this->getActionController()->getUser()->getData('role', 'guest');
00033 
00034     // Filter
00035     $filterAcl = new Dsao_Filter_Acl($roleCurrent, $this->_acl);
00036 
00037     // Falls nach dem Filtern noch etwas vorhanden ist, darf der
00038     // Benutzer auf die aufgerufene Aktion zugreifen
00039     if ($filterAcl->filter(array($this->getActionController()->getUri())))
00040     {
00041       return true;
00042     }
00043     // Falls Benutzer nicht angemeldet, auf Login-Seite umleiten
00044     else if (!Zend_Auth::getInstance()->hasIdentity())
00045     {
00046       // Link, auf den nach erfolgreichem Login wieder umgeleitet werden soll
00047       $redirectLink = str_replace('/', '_', $this->getActionController()
00048         ->getUri()->getUriString());
00049 
00050       // Weiterleiten
00051       $this->getActionController()->forward
00052         ('login', 'login', 'user', array('redirect' => $redirectLink));
00053 
00054       return false;
00055     }
00056 
00057     // Ansonsten Fehlerseite anzeigen
00058     $this->getActionController()->forward('privileges', 'error', 'default');
00059 
00060     return false;
00061   }


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