„MRBS bietet Ihnen die Möglichkeit, über einen Webserver Zeitreservierungen für Räume oder Medien in der Schule (oder außerhalb) zu verwalten. Läuft auf dem Server die Linux-Musterlösung, können alle Lehrer Räume oder Medien buchen, nachschauen, wann sie gebucht sind und verschiedene Abfragen tätigen.
(aus: http://lehrerfortbildung-bw.de/netz/muster/linux/)
Mit MRBS (Meeting-Room-Booking-Service) kann man sowohl Räume als auch Geräte buchen lassen. MRBS basiert auf php und speichert die Daten in einer Datenbank.
Das MRBS ist im Paket linuxmuster-mrbs
enthalten und wird durch
apt-get install linuxmuster-mrbs
installiert. Damit steht die Internetseite bereits unter https://server.linuxmuster.net/mrbs zur Verfügung.
Die grundlegenden Einstellungen werden in der Datei
/etc/mrbs/config.inc.php
vorgenommen. Nach der Installation ist bereits der Benutzer administrator der Administrator des MRBS und die Authentifizierung erfolgt in der Weise, dass alle Benutzer Reservierungen sehen können, Lehrer Reservierungen verändern können und der Benutzer administrator der Administrator des Raumbuchungssystems ist.
Standardmäßig wird als Titel Raumbuchungssystem angezeigt. Das kann angepasst werden.
$mrbs_company = "<Schulname>"
Das Stundenraster muss angepasst werden. Für jede Stunde ist eine Zeile der Form
$periods[] = "(1.)07:40-08:25";
anzulegen bzw. zu editieren.
Wenn man sehr viele Geräte und Räume verwalten muss, empfiehlt es sich, die Einstellung durch Umsetzen des Kommentarzeichens # auf „select“ zu ändern:
#$area_list_format = "list"; $area_list_format = "select";
Nun werden Raum- und Geräteliste als Auswahlfeld und nicht mehr als Listen ausgegeben.
Eventuell ist bei der Monatsansicht die Variable
$monthly_view_entries_details = "both";
sinnvoll.
In der Datei
/etc/mrbs/config.inc.php
gibt es einen Abschnitt „Authentication Settings“.
In der Standardeinstellung mlbw haben Lehrer Zugriff auf Buchungen, alle anderen können Buchungen nur sehen. Stellt man auf pop3, so können alle Benutzer Buchungen vornehmen. Es kann auch auf ldap gestellt werden, dann können alle Benutzer buchen.
$auth["type"] = "ldap"; # How to validate the user/password. One of "none" # "mlbw" "config" "db" "pop3" "imap" "ldap" "nis" "nw" "ext". $auth["admin"][] = "wwwadmin"; $ldap_base_dn = "ou=accounts,dc=linuxmuster,dc=lokal"; $ldap_port = 389; $ldap_v3 = true;
Die Daten sind beispielhaft und müssen an die eigene Schule angepasst werden1).
In der Standardeinstellung werden 7 Tage angezeigt, das ist für eine Schule nicht erforderlich. In der Datei
/usr/share/mrbs-1.2.5/web/week.php
kann man den Wert
$num_of_days=5;
setzen.
Die Begriffe der Sprachdatei passen nicht optimal zu den Gegebenheiten einer Schule. Die Sprachdatei
/usr/share/mrbs-xxx/web/lang.de
kann angepasst werden, z.B.:
... $vocab["period"] = "Unterrichtsstunde:"; $vocab["periods"] = "Unterrichtsstunden"; $vocab["internal"] = "planmäßig"; $vocab["external"] = "außerplanmäßig"; ...
In der Datei
/etc/mrbs/mrbs_apache.conf
ist bereits vorgesehen, den Zugriff auf das MRBS auf Lehrer einzuschränken, d.h. bereits beim Aufruf der Seite muss man sich authentifizieren. Wenn man das einschaltet, muss man allerdings Benutzernamen und Passwort 2x eingeben.
Die Einstellungen werden erst wirksam, wenn der Webserver mit
/etc/init.d/apache2 restart
neu gestartet worden ist.
Will man von zu Hause http-basic-Authentifizierung, z.B. nur für einen Lehrer einsehbaren und bearbeitbaren Plan, aber dennoch kein weiteres Passwort eingeben: -
/etc/mrbs/mrbs_apache.conf
wie oben beschrieben auf Lehrer eingeschränkt einschalten. - in der config.inc.php kann man dann ``$auth[„session“] = „http“;`` einstellen, dann weiß mrbs gleich nach der Anmeldung, wer man ist (ohne erneut nachzufragen). - Ebenso ``$auth[„type“] = „none“;`` stellen, was wiederum bedeutet, dass keine weitere überprüfung stattfindet: Lehrer haben vollen Zugriff (wie aber auch wie administrator)
Obiges noch verfeinert: Wenn man von zu Hause zwar per Login Daten ändern möchte, von der Schule von einem Lehrer-PC z.B. aber das Einloggen vermeiden will:
<Location /mrbs> AuthName "Meine Schule Raumbuchungssystem: Schuldaten eingeben" AuthType Basic AuthBasicProvider ldap AuthzLDAPAuthoritative off AuthLDAPURL ldap://10.16.1.1/dc=linuxmuster-net,dc=lokal?uid Require ldap-attribute gidNumber=10000 Require user administrator Order Allow,Deny Allow From 10.16.12.89 Satisfy Any </Location>
/usr/share/mrbs-1.2.5/web/session_http.inc
kann man noch die Zeile in der Funktion getUserName() austauschen, um den Benutzer „touch“ anzuzeigen, falls sich keiner angemeldet hat:
if (isset($PHP_AUTH_USER)) { ... } else { return "touch"; // return null; }