#!/usr/local/gnu/bin/perl


#
# erzeugt ein Formular, das einen Dozenten enthält
#

require "./veranstaltungen.ph";

print "Content-Type: text/html\n";
print "\n";
print "<HTML>\n";

# QUERY_STRING auswerten
if ($ENV{QUERY_STRING} =~ /(.*)=(.*)/) {
  $ACTION=$1;
  $UID=$2;
} else {
  print "<HEAD><TITLE>Ung&uuml;ltige Eingabe</TITLE></HEAD><BODY>\n";
  print "<H1>Ung&uuml;ltiger Zugriff</H1>\n";
  print "<P>Es wurde kein K&uuml;rzel f&uuml;r diesen\n";
  print "Eintrag mitgeliefert. Die Anfrage wird abgebrochen.</P>\n";
  print "</BODY></HTML>\n";
  exit;
}

if ($ACTION eq "change") {
  $title = "Dozenten editieren";
} elsif ($ACTION eq "delete") {
  $title = "Dozenten l&ouml;schen";
} elsif ($ACTION eq "new") {
  $title = "Dozenten hinzuf&uuml;gen";
} else {
  print "<HEAD><TITLE>Ung&uuml;ltiger Zugriff</TITLE></HEAD><BODY>\n";
  print "<H1>Ung&uuml;ltiger Zugriff</H1>\n";
  print "<P>Es wurde kein g&uuml;ltiger Modus f&uuml;r diesen\n";
  print "Eintrag mitgeliefert (gelieferter Modus=$ACTION). Die Anfrage\n";
  print "wird abgebrochen.</P>\n";
  print "</BODY></HTML>\n";
  exit;
}

print "<HEAD>\n";
print "  <TITLE>$title</TITLE>\n";
print "</HEAD>\n";
print "<BODY>\n\n";
print "<H1>$title</H1>\n\n";

# Datenbank einlesen
readDatabase("veranstaltungen.db","HTML");

# Sortierte Liste der Dozenten erzeugen
sub dozSort {
  my $erg = ($DOZENTTYP{$a} cmp $DOZENTTYP{$b});
  if ($erg==0) {$erg = ($DOZENT{$a} cmp $DOZENT{$b}); }
  return $erg;
}
@DOZKEYS = sort dozSort keys %DOZENT;

if ($ACTION eq "new") {
  $UID = "";
}

print "<FORM ACTION=\"admin.cgi?doz_$ACTION=$UID\" METHOD=POST>\n";

if ($ACTION ne "new") {
  # alte Werte als Hidden-Input mitsenden, dadurch kann später
  #  festgestellt werden, ob die Daten geändert wurden oder
  #  Konflikte aufgetreten sind.
  print "   <INPUT TYPE=HIDDEN NAME=OLD_NAME VALUE=\"$DOZENT{$UID}\"></INPUT>\n";
  print "   <INPUT TYPE=HIDDEN NAME=OLD_TYP VALUE=\"$DOZENTTYP{$UID}\"></INPUT>\n";
}
print "   <TABLE BORDER CELLPADDING=5>\n";
print "     <TR>\n";
if ($ACTION eq "new") {
  print "        <TD VALIGN=TOP><STRONG>eind. K&uuml;rzel des Dozenten:</STRONG></TD>\n";
  print "        <TD VALIGN=TOP><INPUT TYPE=TEXT NAME=UID SIZE=40></INPUT>\n";
  print "        <TD VALIGN=TOP><EM>OV</EM></TD>\n";
}
print "     </TR><TR>\n";
print "        <TD VALIGN=TOP><STRONG>Name des Dozenten:</STRONG></TD>\n";
print "        <TD VALIGN=TOP><INPUT TYPE=TEXT NAME=DOZENT SIZE=40 VALUE=\"$DOZENT{$UID}\"></INPUT>\n";
print "        <TD VALIGN=TOP><EM>Prof. Dr. Oliver Vornberger</EM></TD>\n";
print "     </TR><TR>\n";
print "        <TD VALIGN=TOP><STRONG>Typ:</STRONG></TD>\n";
print "        <TD VALIGN=TOP><SELECT NAME=DOZENTTYP>\n";
foreach ($typ=1 ; $typ<=4 ; ++$typ) {
  if ($DOZENTTYP{$UID} eq $typ) {
    print "            <OPTION SELECTED VALUE=\"$typ\">$DOZENTTYPDESC[$typ]</OPTION>\n";
  } else {
    print "            <OPTION VALUE=\"$typ\">$DOZENTTYPDESC[$typ]</OPTION>\n";
  }
}
print "        </SELECT></TD>\n";
print "        <TD VALIGN=TOP><EM>Professor</EM></TD>\n";
print "     </TR><TR><TD COLSPAN=3 ALIGN=CENTER><INPUT TYPE=SUBMIT VALUE=\"$title\"></INPUT>\n";
print "     </TR>\n";
print "  </TABLE>\n";
print "</FORM>\n";

print "</BODY>\n";
print "</HTML>\n";
