Folderstree mit PERL: Dokumentation

Das serverseitige PERL-Programm navigation.pl von Mario Lang beruht auf einer frühen Version des clientseitigen Javascripts von Marcelino Alves Martins und wurde von Reinfried O. Peter erweitert.

Format der Datenfiles

Die Datenfiles sind hierarchisch aufgebaute ASCII-Files und entsprechen dem voll geöffneten Baum.

Für jeden Knoten ist eine Zeile vorzusehen, wobei zwischen Foldern und Dokumenten unterschieden wird.
Der Gesamtbaum wird durch

   foldersTree = gFld("Text"[, "Link"[, "Target"]]))
  
definiert, Folder durch
   level = insFld(parent_level, gFld("Text", ["Link"[, "Target"]]))
  
und Dokumente durch
   insDoc(parent_level, gLnk("Text"[, "Link"[, "Target"]]))
  

level kann dabei die Werte auxn, parent_level die Werte foldersTree und auxn annehmen, wobei n (derzeit) kleiner als 20 sein muß.

Link ist entweder ein URL oder ein absoluter Pfad, mit Target kann ein Zielfenster angegeben werden, das vom Default-Zielfenster, das im Aufruf übergeben wird, abweicht, wobei eine leere Targetangabe (, "") ein neues Fenster öffnet (entspricht also , "_blank").

Die " und die Leerzeichen nach den Beistrichen sind notwendig!

Die Angaben in eckigen Klammern sind optional, ist für einen Folder aber auch ein Link definiert, dann löst das Anklicken des Folder- oder „+“-Icons nicht nur das Öffnen des Folders, sondern auch diesen Link aus.

Aufruf

conf=
Der Pfad zum Konfigurationsfile
Falls die Adresse der Datei www.host.tugraz.at/pfad/datei lautet, dann hat der Aufruf mit www.host.tugraz.at/cgi-bin/navigation.pl?conf=/pfad/datei zu erfolgen
face=
Die Schriftart für das Navigationsfenster
Default-Wert = Arial,Helvetica
background=
Das Hintergrundbild
bgcolor=
Die Hintergrundfarbe
Default-Wert = 666666
color=
Die Farbe der Icons und der Schrift (black/white/blue)
Default-Wert = white
target=
Das Default-Zielfenster für die Links
Default-Wert = _blank
onemain=
gibt an, ob immer nur 1 Hauptmenü geöffnet sein soll (0/1)
Default-Wert = 0
nohead=
gibt an, ob die „Kopfzeile&ldquot - bestehend aus nicht angezeigt werden soll (nohead=1) oder doch
Default-Wert = 0 (anzeigen)
find=
gibt an, ob in der „Kopfzeile“ auch angezeigt werden soll, damit wird die Suchfunktion des Browsers gestartet (unterstützt aber nicht jeder Browser)
Default-Wert = 0 (nicht zeigen)
noicon=
gibt an, ob die Icons im Baum auch angezeigt werden sollen oder ob nur der Baum und der Text angezeigt werden soll
Default-Wert = 0 (zeigen)

Source-Code

Den aktuellen Source-Code können Sie hier herunterladen.

Beispiel

Das Konfigurationsfile folderstree.txt

foldersTree = gFld("<B>HTML-Text1</B>", "optionaler Link")
aux1 = insFld(foldersTree, gFld("HTML-Text2", "optionaler Link"))
 aux2 = insFld(aux1, gFld("HTML-Text3", "optionaler Link"))
  aux3 = insFld(aux2, gFld("HTML-Text4", "optionaler Link"))
   insDoc(aux3, gLnk("HTML-Text5", "Link"))
   insDoc(aux3, gLnk("HTML-Text6", "Link"))
  aux3 = insFld(aux2, gFld("HTML-Text7", "optionaler Link"))
   insDoc(aux3, gLnk("HTML-Text8", "Link"))
   insDoc(aux3, gLnk("HTML-Text9", "Link"))
 aux2 = insFld(aux1, gFld("HTML-Text10", "optionaler Link"))
  insDoc(aux2, gLnk("HTML-Text11", "Link"))
  insDoc(aux2, gLnk("HTML-Text12", "Link"))
insDoc(foldersTree, gLnk("HTML-Text13", "Link"))
insDoc(foldersTree, gLnk("<IMG ALIGN=center SRC=/smiley.gif BORDER=0>", "Link"))

liefert mit dem Aufruf von /cgi-bin/navigation.pl?conf=/dienste/homepage/lokal/cgi/folderstree.txt&bgcolor=66CCFF&color=blue folgenden Baum.