#!/usr/bin/perl # # Treeview-Script by F.Luettgens ### use strict; use CGI; my $nodefile = 'nodes.js';                      # Use absolute Path! chomp((my $goto) = $ENV{"QUERY_STRING"}); #my $cgi = __FILE__ =~ m/.*$/; my $cgi = "tree.cgi"; my $confquery = new CGI; my @configs = $confquery->param; my $newlink = new CGI; my @entries = $newlink->param; sub showconfig {        open(NODES,$nodefile);        my @scriptfile = ;        close(NODES);        print ("Treeview Konfiguration\n");        print ("


\n");
        print ("@scriptfile\n");
        print ("
\n\n"); } sub new {        print ("Neue Kategorie hinzufuegen  (Nicht fertig)
\n");        print ("Neuen Link hinzufuegen

\n");     print ("Back"); } sub newlink {        print("
\n");        print("Bezeichner:
\n");        print("Link:
\n");        print("Position: (z.B 1,5 fuer Kategorie 1, Position 5)
\n");        print("Target-Frame:
\n");     print("
\n");        print("


\n\n"); } sub savelink {        my $newlink_name = $newlink->param('newlink_name');        my $newlink_link = $newlink->param('newlink_link');        my $newlink_posi = $newlink->param('newlink_posi');        (my $kategorie, my $sub_kategorie) = split(/\,/, $newlink_posi);        my $newlink_frame = $newlink->param('newlink_frame');        open(NEWNODE,">>.nodes.dat");        print NEWNODE ("aux$kategorie = gLnk\(\"Rh\"\, \"$newlink_frame\"\, \"$newlink_link\"\)\)");        close (NEWNODE);        rebuild(); } sub config {        print("
\n");        print("\n");        print("  Tree komplett bauen oder erst auf Abruf? (Standart: 0)
\n");        print("\n");        print("  Text hervorheben?
\n");        print("  Highlight Schrift-Farbe (z.B white oder #FFFFFF)
\n");        print("  Highlight Hintergrund-Farbe (z.B white oder #FFFFFF)
\n");        print("  Pfad zum Icons Verzeichniss
\n");        print("\n");        print("  Speichern des Trees per Cookie?
\n");        print("\n");        print("  Alle Nodes ausgeklappt starten?
\n");        print("\n");        print("  Frames nutzen?
\n");        print("\n");        print("  Icons nutzen?
\n");        print("\n");        print("  Text links nutzen?
\n");        print("\n");        print("  Zeilenumbruch?
\n");        print("  Kommentar
\n");        print("
\n");        print("


\n\n"); } sub saveconfig {        my $use_buildall = $confquery->param('buildall');        my $use_highlight = $confquery->param('highlight');        my $highlightcolor = $confquery->param('highlight_color');        my $highlight_bg = $confquery->param('highlight_bg');        my $iconpath = $confquery->param('iconpath');        my $use_preserved = $confquery->param('preservedstate');        my $use_startallopen = $confquery->param('startallopen');        my $use_frames = $confquery->param('useframes');        my $use_icons = $confquery->param('useicons');        my $use_textlinks = $confquery->param('usetextlinks');        my $use_wraptext = $confquery->param('wraptext');        my $comment = $confquery->param('comment');        open(CONFIG_HEAD,">.config.dat");     if ($use_buildall eq '0') {            print CONFIG_HEAD ("BUILDALL = 0\n")     } elsif ($use_buildall eq '1') {         print CONFIG_HEAD ("BUILDALL = 1\n")     }     if ($use_highlight eq '0') {                print CONFIG_HEAD ("HIGHLIGHT = 0\n")        } elsif ($use_highlight eq '1') {                print CONFIG_HEAD ("HIGHLIGHT = 1\n")        }        if ($use_preserved eq '0') {                print CONFIG_HEAD ("PRESERVESTATE = 0\n")        } elsif ($use_preserved eq '1') {                print CONFIG_HEAD ("PRESERVESTATE = 1\n")        }        if ($use_startallopen eq '0') {                print CONFIG_HEAD ("STARTALLOPEN = 0\n")        } elsif ($use_startallopen eq '1') {                print CONFIG_HEAD ("STARTALLOPEN = 1\n")        }        if ($use_frames eq '0') {                print CONFIG_HEAD ("USEFRAMES = 0\n")        } elsif ($use_frames eq '1') {                print CONFIG_HEAD ("USEFRAMES = 1\n")        }        if ($use_icons eq '0') {                print CONFIG_HEAD ("USEICONS = 0\n")        } elsif ($use_icons eq '1') {                print CONFIG_HEAD ("USEICONS = 1\n")        }        if ($use_textlinks eq '0') {                print CONFIG_HEAD ("USETEXTLINKS = 0\n")        } elsif ($use_textlinks eq '1') {                print CONFIG_HEAD ("USETEXTLINKS = 1\n")        }        if ($use_wraptext eq '0') {                print CONFIG_HEAD ("WRAPTEXT = 0\n")        } elsif ($use_wraptext eq '1') {                print CONFIG_HEAD ("WRAPTEXT = 1\n")        }     print CONFIG_HEAD ("HIGHLIGHT_COLOR = $highlightcolor\n");     print CONFIG_HEAD ("HIGHLIGHT_BG =  $highlight_bg\n");     print CONFIG_HEAD ("ICONPATH = $iconpath\n");     print CONFIG_HEAD ("\# $comment\n");        close(CONFIG_HEAD);        rebuild(); } sub rebuild {        open(CONFIG_HEAD,".config.dat");        my @header = ;        close(CONFIG_HEAD);        open(NEWNODES,".nodes.dat");        my @entries = ;        close(NEWNODES);        open(FINAL_CONFIG,">$nodefile");        print FINAL_CONFIG @header;        print FINAL_CONFIG @entries;        close (FINAL_CONFIG); } print ("Content-Type: text/html\n\n"); print ("\n"); print ("\n"); print ("Treeview Builder Script\n"); print ("\n"); print ("\n"); print ("\n"); print ("\n"); print ("

\n"); if (($goto) eq 'show') {        showconfig();        print ("Back"); } elsif (($goto) eq 'newlink') {        newlink();        print ("Back"); } elsif (($goto) eq 'config') {        config();        print ("Back"); } elsif (($goto) eq 'saveconfig') {        saveconfig();        print ("Back"); } elsif (($goto) eq 'safelink') {        safelink();        print ("Back"); } elsif (($goto) eq 'new') {        new(); } else {        print ("Config anzeigen");        print ("
\n");        print ("Treeview anpassen");        print ("
\n");        print ("Einen neuen Eintrag hinzufuegen");        print ("
\n"); } print ("\n"); print ("\n");