From 630af0ed6c0af69c7df2e45aef7a87722a3c00c0 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 6 Apr 2013 13:14:47 +0200 Subject: tagging ychat-perl-legacy --- 0.8.1/modules/htdocs.pm | 127 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100755 0.8.1/modules/htdocs.pm (limited to '0.8.1/modules/htdocs.pm') diff --git a/0.8.1/modules/htdocs.pm b/0.8.1/modules/htdocs.pm new file mode 100755 index 0000000..4f1bbeb --- /dev/null +++ b/0.8.1/modules/htdocs.pm @@ -0,0 +1,127 @@ +sub htdocs { + if ($var eq 'help_html') { + &printfile('templates/help.sno', 'Alle Chatbefehle'); + } + elsif ($var eq 'logo_html') { + &start_html('Logo'); + &logo_html; + } + elsif ($var eq 'menu_html') { + &menu_html; + } + elsif ($var eq 'logs_html') { + &logs_html; + } + elsif ($var eq 'view_logs_html') { + &secure_checkid($alias, $tmpid); + &printfile("data/logs/$tmp", 'Logdatei', 'blank') if 7 <= &hierachie($alias); + } + elsif ($var eq 'superuser_html') { + &secure_checkid($alias, $tmpid); + &superuser_html; + } + elsif ($var eq 'chatiquette_html') { + &printfile('templates/chatiq.sno', 'Chatiquette'); + print $q->end_html; + } + else { + print $q->start_html(-'bgcolor', '000000'), $q->end_html; + } +} +sub menu_html { + &start_html("Men\374"); + print "
\n Von hier aus kannst du alle Untermen\374punkte des Systems erreichen:\n
\n
\n"; + &menu(); + print "\n"; +} +sub logo_html { + print qq[
\n \n \n \n \n \n \n \n \n \n \n
\n]; + print $q->end_html; +} +sub logs_html { + &start_html('Logdateien'); + &menu; + print "
\n Hier befinden sich alle Logdateien\n
\n
\n"; + if (5 <= &hierachie($alias)) { + print $q->div(qq[Folgende Logdateien des Raumes "$standardroom" k\366nnen nur von Oberw\344chtern oder h\366her gelesen werden (Sortiert nach A-Z, a-z):]), $q->br; + opendir LOGS, 'data/logs'; + my(@logs) = readdir LOGS; + closedir LOGS; + my(@sortedir) = sort(@logs); + foreach $_ (@sortedir) { + if (-f "data/logs/$_") { + print $q->a({-'href', "chat?request=htdocs&alias=$alias&var=view_logs_html&tmp=$_&tmpid=$tmpid", -'target', '_new'}, "$_"), ' '; + } + } + } + else { + print $q->div("Logdateien k\366nnen nur von Oberw\344chtern (OW) gelesen werden. Du bist jedoch ein W\344chter (W\304) oder ein", qq["Normaler Chatter". Oberw\344chter k\366nnen alles nachlesen, was \366ffentlich im Raum "Cyberbar" gechattet wurde.]), $q->hr; + } + print $q->end_html; +} +sub superuser_html { + &start_html ('Superuser'); + &menu; + print "
Hallo $alias. Du bist als "; + my $hierachie = &hierachie($alias); + if (9 <= $hierachie) { + print $q->b('Administrator'), ' (AD) eingetragen.

', $q->br; + } + elsif (7 <= $hierachie) { + print $q->b("Oberw\344chter"), ' (OW) eingetragen.
', $q->br; + } + elsif (5 <= $hierachie) { + print $q->b("W\344chter"), " (W\304) eingetragen.
", $q->br; + } + else { + print $q->b('normaler Chatter'), ' (NC) eingetragen.
', $q->br; + } + open FILE, 'data/hierachie'; + my(@hierachie) = ; + close FILE; + my @ows, @was, @ads; + foreach $_ (@hierachie) { + my($name, $level) = split(/<;/, $_, 3); + chomp $level; + if ($level == 5) { + push @was, $name; + } + elsif ($level == 7) { + push @ows, $name; + } + elsif ($level == 9) { + push @ads, $name; + } + if (3 <= $hierachie) { + if ($level == 6) { + push @was, "$name!"; + } + elsif ($level == 8) { + push @ows, "$name!"; + } + elsif ($level == 10) { + push @ads, "$name!"; + } + } + } + my $nads = $#ads + 1; + print '
', $q->b('AD'), "s ($nads St\374ck)"; + foreach $_ (@ads) { + print $q->font({-'color', 'ffa500'}, ' ' . $_); + } + my $nrow = $#ows + 1; + print '


', $q->b('OW'), "s ($nrow St\374ck)"; + foreach $_ (@ows) { + print $q->font({-'color', 'ffa500'}, ' ' . $_); + } + my $nrwa = $#was + 1; + print '

', $q->br, '
', $q->b("W\304"), "s ($nrwa St\374ck)"; + foreach $_ (@was) { + print $q->font({-'color', 'FFA500'}, ' ' . $_); + } + print qq[
\n Die jeweiligen F\344higkeiten der Oberw\344chter (OW) und der W\344chter (W\304) sind unter\n "Chat-Befehle"\n dokumentiert. Versteckte Superuser k\366nnen nur von anderen Superusern auf\ndieser Liste eingesehen werden!\n
\n\n\n]; +} +sub menu { + print "
\n Profil \344ndern\n Optionen\n Benutzer\n Befehle\n Board\n Superuser\n Logs\n Statistik\n Chatiquette\n
\n
\n"; +} +1; -- cgit v1.2.3