Hinweis: Sie sind auf den Seiten der Moodle 1.9 Dokumentation. Die Dokumentation der aktuellsten Moodle-Version finden Sie hier: Das Skript rolesdebug.php.

Das Skript rolesdebug.php

Aus MoodleDocs
Wechseln zu:Navigation, Suche

Baustelle.png Diese Seite ist noch nicht vollständig übersetzt.

Siehe en:The_rolesdebug.php_roles_debugging_script

Moodle1.9

Das Skript rolesdebug.php ist ein eigenständiges PHP-Skript, das sehr nützlich für das Debuggen von Problemen im Zusammenhang mit Rollen und Rechten ist. Die Ausgabe des Skripts kann von jedem mit guten Kenntnissen über das Rollen- und Rechtesystem System interpretiert werden. Sollten Sie ein "Rollen-Neuling" sein und Hilfe im Zusammenhang mit Rollen und Rechten benötigen, bitten Sie einen Rollen-Experten, Ihnen bei der Ausführung und Interpretation des Skripts zu helfen. Wenn Ihnen kein Rollen-Experte zur Verfügung steht, posten Sie einen Hilferuf im Roles and Capabilities forum im Kurs "Using Moodle" auf moodle.org. Wenn Sie das Skript ein paar Mal benutzt haben, sind auch Sie sicher bald ein Experte!

Sie können das Skript rolesdebug.php aus der Modules and Plugins Datenbank herunterladen. Zur Installation des Skripts speichern Sie es einfach im Moodle-Hauptverzeichnis (dort wo alle PHP-Skripte von Moodle gespeichert sind) oder in einem beliebigen Unterverzeichnis des Moodle-Hauptverzeichnis.

Das Skript rolesdebug.php erfordert eine Anmeldung. Es kann also nur ein angemeldeter Moodle-Nutzer das Skript benutzen. Da es sich um ein PHP-Skript handelt, sehen Sie die Ausgabe in Ihrem Browser. Es kann nur von Ihnen eingesehen werden, es sei denn, es schaut Ihnen jemand über die Schulter ;-). Außerdem gibt rolesdebug.php Ihnen nur Informationen über IHRE Rechte. Sie können es also nicht verwenden, um sich über die Rechte eines anderen Nutzers zu informieren (es sei denn, Sie können sich als diese Person einloggen.)

Das Skript rolesdebug.php gibt eine Tabelle mit einer Übersicht über die Rollenzuweisungen und Änderungen von Zugriffsrechten, die Sie in einem angegebenen Kontext betreffen, aus. Anhand dieser Tabelle können Sie sehen, wie Moodle ein Recht für eine gegebene Fähigkeit berechnet. Das Format der Tabelle wird mit vielen Beispielen im Artikel Wie Rechte berechnet werden erläutert.

Das Skript rolesdebug.php liest Rechte-Daten aus der Moodle-Datenbank aus, verändert sie aber in keiner Weise. In dieser Hinsicht ist das Skript vergleichbar mit anderen Debug-Skripts der Moodle-Standardinstallation, wie z.B. der TeX-Debugger.

Wann verwenden Sie das Skript rolesdebug.php?

Ein typische Anwendungsfall ist eine Situation, in der ein "Rollen-Experte" einem "Rollen-Neuling" bei der Lösung eines rollenspezifischen Problems hilft. Ein "Rollen-Experte" ist ein Moodle-Nutzer, der ein gutes Verständnis der im nächsten Abschnitt aufgelisteten grundlegenden Begriffe hat. Ein "Rollen-Neuling" ist ein Moodle-Nutzer, der einfache Anweisungen des "Rollen-Experten" befolgen kann. Während es durchaus vorkommen kann, dass Experte und Neuling sich am gleichen Ort befinden und Nutzerkonten auf der gleichen Moodle-Installation haben, ist das nicht zwingend notwendig. Der Experte müsste dem Neuling helfen können, ohne sich auf der Moodle-Installation des Neulings einzuloggen, indem er mit dem Neuling nur über E-Mail, Messaging oder Forumsbeiträge kommuniziert. Der Neuling könnte z.B ein Nutzer sein, der in einem Forum auf moodle.org gepostet hat, während der Experte ein Moodler ist, der gerne helfen möchte. Sogar wenn Experte und Neuling sich in der gleichen Institution befinden und beide Nutzerkonten auf der gleichen Moodle-Installation haben, kann es sein, dass der Experte nicht in der Lage ist, direkt zu helfen (z.B. indem er sich als der Neuling anmeldet oder sich mit ihm trifft - der Experte könnte z.B. ein sehr eingespannter Moodle-Administrator sein). Auch in diesem Fall hilft das Skript rolesdebug.php.

Hier ist ein typisches Szenario: Angenommen der Neuling ist ein Trainer, der eine Lernaktivität Test angelegt hat, aber aus unbekannten Gründen nicht in der Lage ist, sich die Vorschau des Tests anzusehen. Der Neuling berichtet über sein Problem in einem Forumsbeitrag auf moodle.org. Der Experte (ein hilfsbereiter Moodler ;-)) geht von einem rollenspezifischen Problem aus und bittet den Neuling folgendes zu tun:

  1. sich in Moodle einzuloggen, um das Problem zu reproduzieren
  2. das Skript rolesdebug.php aufzurufen
  3. zwei oder drei Parameter nach Anweisung einzugeben
  4. die Ausgabe von rolesdebug.php in einem Forumsbeitrag zu posten. Der Experte sieht sich die Ausgabe an und erkennt sofort das Problem.

Andere Fälle für den Einsatz des Skripts rolesdebug.php sind u.a.:

  • ein Nutzer, der sein eigenes Problem analysiert und löst
  • ein Nutzer, der das Problem eines anderen Nutzers löst, während er als dieser Nutzer eingeloggt ist

Bitte beachten Sie, dass beide Fälle äquivalent sind, da es in beiden Fällen nur einen Akteur gibt (den Experten). Der Einfachheit halber beschreibt der Artikels im folgenden nur diesen Fall und bezieht sich immer auf SIE. Unter Berücksichtigung des Hauptanwendungsfalls sollte eigentlich immer klar sein, wann "Sie" den Experten und wann den Neuling meint.

Grundlegende Begriffe

Die Interpretation der Ausgabe des Skripts rolesdebug.php ist nur mit einem guten Verständnis der unten stehenden Begriffe möglich. Wenn Ihnen einer der Begriffe unklar ist, sollten Sie sich den entsprechenden Artikel durchlesen.

Überblick über die Anwendung des Skripts

Als erstes loggen Sie sich auf Moodle ein und navigieren zu dem Kontext, der Probleme bereitet. Das könnte ein Test sein, den Moodle Sie aus irgendeinem Grund nicht durchführen lässt. Dann gehen Sie, ohne sich auszuloggen, auf die Seite rolesdebug.php (es bietet sich an, dafür einen neuen Browsertab zu verwenden). Geben Sie den relevanten Kontext ein und optional auch den Namen der Fähigkeit, die Sie analysieren möchten. Dann klicken Sie auf den Button Go. Das Skript gibt dann eine Tabelle mit einer Übersicht der Rollenzuweisungen und -überschreibungen aus, die Sie im angegebenen Kontext betreffen. Anhand dieser Tabelle können Sie sehen, warum Moodle Sie den Test nicht durchführen lässt.

Detaillierte Beschreibung der Anwendung des Skripts

Schritt 1