Anleitung
Hier finden Sie eine genaue Anleitung zur Nutzung der PTraffic-Bibliothek.
Verzeichnis-Struktur
Für Projekte die mit der PTraffic-Bibliothek arbeiten ist es empfehlenswert ein neues Verzeichnis für die HTML-Dateien zu erstellen. Darin können dann die 3 Unterverzeichnisse "images", "javascript" und "ptf" erstellt werden. Die Verzeichnisstruktur sieht dann beispielsweise so aus:
- MeineWebsite
- images
- javascript
- ptf
Das Untervezeichnis "images" ist für alle Bilder der Website gedacht. Für die PTraffic-Bibliothek hat dieses Verzeichnis im Moment keine Relevanz, da in der Version 0.8 noch keine Funktionen für die Liniennetzpläne vorhanden sind.
Das Verzeichnis "javascript" soll alle Javascript-Dateien des Projekts enthalten.
Das Verzeichnis "ptf" soll die Tabellen des PTraffic bzw. LineMap-Draw-Projekts enthalten.
Natürlich können Sie nach Bedarf noch weitere Unterverzeichnisse erstellen, z. B. "css" für Stylesheet-Dateien oder "pdf" für PDF-Dateien etc.
In dieser Anleitung wird nachfolgend von dieser Verzeichnisstruktur ausgegängen. Wenn Sie eine andere Verzeichnisstruktur verwenden müssen Sie die Beispiele auf dieser Seite eventuell anpassen.
Dateien kopieren
Um eine Internet-Anwendung mit der PTraffic-Bibliothek zu erstellen müssen die Javascript-Dateien der PTraffic-Bibliothek und die Projekt-Dateien des PTraffic-Projekts kopiert werden.
1) Dateien der Javascript-Bibliothek kopieren
Laden Sie zunächst die Javascript-Bibliothek von der Startseite der PTraffic-Bibliothek herunter. Diese können dort als gepackte ZIP-Datei heruntergeladen werden. Entpacken Sie diese Dateien und kopieren Sie die Dateien in das Unterverzeichnis "javascript".
2) Projektdateien kopieren
Kopieren Sie nun die Projektdateien Ihres PTraffic-Projekts, also alle Dateien mit der Datei-Endung ".ptf" und die Projektdatei mit der Eindung ".ppr", in das Untervezeichnis "ptf".
Sie können zum Kopieren auch das PTraffic-Programm verwenden. Laden Sie das Projekt und wählen Sie den Menüpunkt "Projekt → Website erstellen". Im Fenster "Website erstellen" wählen Sie nun das Unterverzeichnis "ptf" aus und deaktivieren "HTML Dateien kopieren" (siehe Bild). Klicken Sie dann auf "Website erstellen". Allerdings wird dabei automatisch im Verzeichnis "ptf" ein Unterverzeichnis "images" erstellt. Dort werden - soweit vorhanden - die Bilder der Liniennetzpläne kopiert. Wenn Sie die Liniennetzpläne für Ihre Anwendung benötigen können Sie diese in das eigene Verzeichnis "images" (siehe oben) kopieren und das Unterverzeichnis "images" im Verzeichnis "ptf" anschließend löschen.
In der aktuellen Version 0.8 der PTraffic-Bibliothek sind noch keine Funktionen für Liniennetzpläne vorhanden.
PTraffic-Bibliothek einbinden
Binden Sie die Javascript-Dateien der PTraffic-Bibliothek in den Dateikopf zwischen <head> und </head> ein. Wenn Ihr Projekt mit LineMap Draw erstellt wurde wird die Datei "ptraffic_timetable.js" nicht benötigt und muss daher auch nicht eingebunden werden.
Da PTraffic in der aktuellen Version kein Unicode unterstützt muss für die Zeichencodierung der HTML-Dateien das Format “iso-8859-1” eingestellt werden. Die HTML-Datei darf daher auch nicht als Unicode-Datei gespeichert werden sondern sollte als ASCII- bzw. ANSI-Datei gespeichert werden, sonst werden Umlaute und Sonderzeichen nicht korrekt dargestellt.
Die HTML-Datei würde in HTML5 beispielsweise so aussehen:
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="iso-8859-1" />
<script src="javascript/ptraffic_text.js" type="text/javascript"></script>
<script src="javascript/ptraffic.js" type="text/javascript"></script>
<script src="javascript/ptraffic_timetable.js" type="text/javascript"></script>
<script src="javascript/publicsql.js" type="text/javascript"></script>
<title>Meine Fahrplan-Website</title>
</head>
<body>
...
</body>
</html
Initialisierung
Bevor auf die Funktionen und Variablen der PTraffic-Bibliothek zugegriffen werden kann muss diese initialisiert werden. Dazu wird die Funktion ptInit aufgerufen. Die Funktion ptInit hat folgenden Aufbau:
function ptInit(ptype, lang [, dir] [, fn])
Die Parameter haben folgende Bedeutung:
ptype: Programm mit dem die Dateien ersrtellt wurden. Mögliche Werte sind:
- withTimetable (für PTraffic-Standard; ptraffic_timetable.js muss eingebunden werden)
- withLinemap (für LineMapDraw)
- withTimetableAndLinemap (für PTraffic Pro/ProPlus; ptraffic_timetable.js muss eingebunden werden)
- withoutTimetableAndLinemap (wenn weder auf Fahrplan- noch auf Liniennetzplan-Daten zugegriffen werden muss)
lang: Sprache. gültige Werte sind (zunächst) "ger" und "eng" für deutsch und englisch.
dir: (optional) Verzeichnis in dem die PTraffic- bzw. LineMap-Draw-Dateien liegen. Wird der Parameter nicht angegeben müssen die Dateien im gleichen Verzeichnis wie die HTML-Dateien liegen
fn: (optional) Callback-Funktion. Diese wird am Ende von ptInit aufgerufen und übernimmt die weitere Verarbeitung
Der Aufruf für das Programm PTraffic Pro mit deutscher Spracheinstellung und den Projekt-Dateien im Verzeichnis "ptf" würde so aussehen:
ptInit(withTimetableAndLinemap, "ger", "ptf");
Soll direkt nach dem Aufruf auf die Bibliothek zugegriffen werden muss hierfür eine Callback-Funktion angegeben werden. Näheres dazu finden Sie unter Informationen_Callback_Funktionen.htm. Der relevante Quelltext könnte dann beispielsweise so aussehen (siehe auch Informationen_Schnelleinstieg.htm):
<div id="mydiv"> </div> <table id="mytable" border="2"> </table> <script> function show() { showTimetableForm("mydiv", "mytable"); } ptInit(withTimetableAndLinemap, 'ger', 'ptf', show); </script>
Die Funktionsbeschreibung zu ptInit finden Sie hier
Weiterführende Hinweise
Mit diesen Informationen können Sie beginnen eigene Internet-Anwendungen mit der PTraffic-Bibliothek zu schreiben.
Zur Einarbeitung sollten Sie - falls noch nicht geschehen - die Beispiele unter Informationen_Schnelleinstieg.htm durcharbeiten.
Unter Funktionen.htm finden Sie Erläuterungen zu allen Funktionen der Bibliothek. Am einfachsten zu verwenden sind Funktionen deren Name mit "show" beginnt. Diese können direkt in die Website eingebunden werden.
Für das Verständnis der anderen Funktionen sowie der Variablen (siehe Variablen.htm) sind Kenntnisse des Aufbaus der Tabellen nötig. Das Datenmodell für PTraffic und PTraffic Pro/ProPlus finden Sie als PDF-Datei unter www.ptraffic.net/ptraffic_download.htm (Überschrift "Dokumentation").
Für LineMap Draw gilt ebenfalls das Datenmodell für PTraffic Pro/ProPlus - allerdings ohne alle Tabellen die sich auf Fahrplandaten beziehen. Relevant sind die Tabellen "stations.ptf", "lines.ptf", "line_graphic.ptf" sowie alle Tabellen die mit "line_map" oder "lm" beginnen.
Zugriff mit ID
Die meisten Tabellen enthalten ein Feld mit dem Namen "ID" das einen Datensatz der Tabelle eindeutig identifiziert. Beispielsweise enthält die Tabelle "stations.ptf" die Felder "ID" und "Station". Die ersten 3 Datensätze für das Beispielprojekt "Musterdorf" haben beispielsweise folgenden Inhalt:
| ID | Station |
|---|---|
| 1 | Bahnhofstraße |
| 2 | Campingplatz |
| 3 | Cityparkplatz |
Es ist meistens besser über die ID auf den eigentlichen Inhalt - in diesem Fall auf den Stationsnamen - zuzugreifen, da die ID immer eindeutig ist. Der Stationsname kann sich jedoch auch ändern und man müsste dann den ganzen Quelltext entsprechend anpassen. Für den Zugriff auf den Namen kann dann die entsprechende Funktion, in diesem Fall getStationName, verwendet werden.