summaryrefslogtreecommitdiff
path: root/0.2.4a/online.pl
diff options
context:
space:
mode:
Diffstat (limited to '0.2.4a/online.pl')
-rw-r--r--0.2.4a/online.pl52
1 files changed, 52 insertions, 0 deletions
diff --git a/0.2.4a/online.pl b/0.2.4a/online.pl
new file mode 100644
index 0000000..2e8bf8d
--- /dev/null
+++ b/0.2.4a/online.pl
@@ -0,0 +1,52 @@
+#!/usr/bin/perl -w
+
+use CGI; # CGI-Modul laden
+$q = new CGI;
+
+require config; # config.pm in Dokument laden
+
+print
+ $q->header(); # HTTP-Header erzeugen
+
+&secure_checkip($alias);
+&start_html("Online","online");
+&online($alias,$room);
+&list_dir("data/online/rooms/".$room);
+print
+ $q->div( "$room:" ),
+ "<font size=1 color=ffffef face=arial>";
+ foreach $online (@dir) {
+ if (-f "data/online/rooms/$room/$online") {
+ print
+ $q->a( { -href=>"main2.pl?var=alias_html&alias=$alias&tmp=$online",
+ -target=>"$online" }, "$online"), $q->br;
+ }
+ }
+print
+ "</font>",
+ $q->end_html;
+
+sub online { # Benutzer in die Onlineliste hinzufügen bzw. erneuern
+ my ($alias,$room) = @_;
+ &write_file_new("data/online/users/$alias");
+ print DATEI time;
+ close DATEI;
+ if (-e "data/online/rooms/$room") {
+ } else {
+ mkdir "data/online/rooms/$room", 0777;
+ }
+ &write_file_new("data/online/rooms/$room/$alias");
+ print DATEI time;
+ close DATEI;
+ &read_file("data/online/prove"); # Räume und Chatter auf Existenz überprüfen
+ my $provetime = <DATEI>;
+ close DATEI;
+ if ($provetime < (time - 30)) {
+ &write_file_new("data/online/prove");
+ print DATEI time;
+ close DATEI;
+ &rm_alias("data/online/users");
+ &rm_rooms;
+ }
+}
+