Powered by Rexx! Entwurf und Entwicklung
eines Web-basierten Terminkalenders


Inhalt

WML-Version

Hinweis: HTML-Version ist ebenfalls verfügbar bei Thomas Jungmann!

4. Skripte

TC-Shell

login.cgi

Das "login.cgi"-Skript setzt die benötigten Umgebungsvariablen bevor es das "login.rxx"-Skript mit dem entsprechenden Rexx-Interpreter ausführt. Die Umgebungsvariablen dürfen nicht zur Laufzeit der eigentlichen "---.rxx"-Skipte gesetzt werden, da offenbar der Rexx-Interpreter damit nicht klar kommt. Diese Vorgehensweise ist (ungewollt :)) ein erster Schritt gewesen, die eigentlichen Implementationsabhängigen und Konfigurationstechnischen Informationen in eine separate Datei auszulagern. Neben den Pfaden der benutzten Bibliotheken kann auch der Pfad des Rexx-Interpreters hier einmalig angegeben/geändert werden (dank an Thomas Jungmann, Martin Rüschhoff und Carsten Mjartan für die freundliche Hilfe!).

diary.cgi

Das Einloggen und das Ausloggen wird von "login.rxx"-Skript abgearbeitet. Beim Einloggen wird der User Authentifiziert und bei erfolg eine Session-Identifier nach dem Random-Verfahren generiert. Mit Hilfe des Session-Identifiers (eine zwölfstellige Zahl) lässt sich der User bei jeder weiteren Anfrage eindeutig identifizieren, so daß eine weitere Authentifizierung nicht mehr notwendig ist. Beim Ausloggen wird der Session-Identifier aus der Session-DB unwiederruflich gelöscht und der Benutzer muss sich bei einer weiteren Anfrage erneut einloggen.


Rexx

login.rxx

übernimmt die selben Funktionen wie das "login.cgi". Die beiden Skripte unterscheiden sich lediglich in dem anschliessend aufgerufenen Skript, d.h. das "login.cgi" startet anschliessend mit dem entsprechenden Rexx-Interpreter das "login.rxx" und das "diary.cgi" startet "diary.rxx".

diary.rxx

Alle Anfragen der Benutzer werden von diesem Skript abgefangen und entsprechende Schritte eingeleitet. Die mit der Anfrage gesendet Informationen werden ohne Überprüfüng abgearbeitet. Lediglich die Session-ID wird validiert und anschliessend die gewünschten Informationen (passend zur Session!) angezeigt. Anhand der SessionID wird der User ermittelt und dessen Daten werden dann entsprechend seinen gewünschten Anzeigeoptionen auf dem mobilen Endgerät angezeigt. Die Modifikation der Daten bzw. das Anlegen von neuen Terminen wird nicht angeboten, aufgrund der relativ schlechten Eingabemöglichkeiten und des dadurch entstandenen Zeitverlustes, sowie der höheren "Surf"-Kosten der meisten mobilen Endgeräte.


Ednan Masovic
Last modified: November 2000