03. Sag Drupal, wer das Modul verwenden darf
Beschreibung des Themas: Berechtigungen
beschriebener Drupal hook: hook_perm
Die nächste Funktion, die wir schreiben werden, ist die Berechtigungsfunktion. Dazu verwenden wir den Hook _perm
. In dieser Funktion definierst Du die Namen der Berechtigungen Deines Moduls. Somit räumt die Funktion keinerlei Berechtigungen ein, sie spezifiziert nur die für dieses Modul verfügbaren Berechtigungen. Der auf diesen Berechtigungen basierende Zugriff wird in den {module}_access
Funktionen (später im Handbuch) geregelt.
<?php
/**
* Valid permissions for this module
* @return array An array of valid permissions for the onthisdate module
*/
function onthisdate_perm() {
return array('access onthisdate content');
} // function onthisdate_perm()
?>
Wenn Du ein Modul schreibst, dass detaillierte Kontrolle über die Berechtigungen haben soll, und bei dem Du für bestimmte Funktionalitäten bestimmte Berechtigungen abfragen willst, solltest Du die Berechtigungen erweitern. Zum Beispiel:
<?php
function onthisdate_perm() {
return array('access onthisdate content', 'administer onthisdate');
} // function onthisdate_perm
?>
Um diesem Handbuch zu folgen, verwende die erste Version. Später werden wir zur zweiten Version wechseln.
Wir müssen nun anpassen, wer die Berechtigung hat, Dein Modul (respektive die vom Modul generierte Ausgabe) zu sehen. Dies geschieht auf der Seite Administer » User management » Permissions (Pfad: admin/user/permissions). Zur Überprüfung der Berechtigungen verwenden wir später die Funktion user_access()
.
Die Bezeichnungen Deiner einzelnen Berechtigungen sind prinzipiell beliebig, jedoch müssen sie eindeutig innerhalb aller installierten Module sein. Ansonsten wird eine Berechtigung durch die Andere mit dem selben Namen überschrieben. Die Berechtigungsnamen sollten für gewöhnlich den Modulnamen enthalten, da dies hilft, Namenskonflikte mit anderen Modulen zu vermeiden.
Die vorgeschlagene Namenskovention für Berechtigungen ist "Aktions-Verb Modulname", also zum Beispiel:
<?php
function newmodule_perm() {
return array('access newmodule', 'create newmodule', 'administer newmodule');
} // function newmodule_perm
?>
Die Einrichtung des Moduls ist somit abgeschlossen. Du kannst den obigen Quelltext zur Moduldatei (onthisdate.module) hinzufügen. Als Nächstes werden wir Inhalt generieren.
- Anmelden oder Registrieren um Kommentare zu schreiben
Übersetzung
am 01.01.2012 - 22:27 Uhr
Hallo,
da das Menu in Drupal auch deutsch ist, sollte man die Wegbeschreibung jetzt auch eindeutschen:
Administer » User management » Permissions wird zu
Verwaltung > Benutzer > Berechtigungen