{{tag> mrbs needs_translation_en}} {{indexmenu_n>10}} ====== MRBS - Raumbuchungssystem ====== "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. ===== Installation ===== 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. ===== Einrichtung ===== 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. ==== Grundeinstellungen ==== Standardmäßig wird als Titel **Raumbuchungssystem** angezeigt. Das kann angepasst werden. $mrbs_company = "" 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. ===== LDAP-Authentifizierung ===== 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 werden((mindestens der Eintrag unter **ldap_base_dn**)). ===== Spezielle Anpassungen ===== ==== Wochenansicht ==== 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. ==== Begriffe ==== 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"; ... ===== Zugriffsbeschränkungen ===== 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. ==== Hack Authentifizierung per http basic, authorisierung by "teacher" ==== 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) === Hack 2: Ohne Authentifizierung und ohne Authorisierung von bestimmter IP === 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: - in der mrbs_apache.conf folgenden Eintrag machen: 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 - in der datei /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; }