sub online { &secure_checkid($alias, $tmpid); my(@away) = &prove_away($alias, $room, 'return_list'); for (;;) { for ($i = 0; $i <= $#away; $i += 2) { last if ($away[$i] eq $alias || $room eq $loginplace); } open DATEI, "; close DATEI; if ($oldstamp > time - 100) { open DATEI, "; close DATEI; my $total = time - $oldstamp + $online; open DATEI, ">data/user/counts/$alias.online"; print DATEI $total; close DATEI; } last; } unless (-d "data/online/rooms/$room") { mkdir "data/online/rooms/$room", 511; } open DATEI, ">data/online/users/$alias"; print DATEI time; close DATEI; open DATEI, ">data/online/rooms/$room/$alias"; print DATEI time; close DATEI; open DATEI, '; close DATEI; &check_online if $provetime < time - 40; print < \n END opendir ROOM, 'data/online/rooms/' . $room; my(@room) = readdir(ROOM); closedir ROOM; my $chatter = $#room - 1; print "$room ($chatter):\n"; open FILE, "; close FILE; shift @rstat; shift @rstat; open FILE, ', @rstat); close FILE; open FILE, "; close FILE; my $hierachie; foreach (@userlevels) { my($name, $level) = split(/<;/, $_, 3); if ($name eq $alias) { $hierachie = $level; last; } } my %alias; foreach (@room) { if (-f "data/online/rooms/$room/$_") { open IDENT, "data/online/ident/$_"; my @ident = ; close IDENT; chomp $ident[2]; chomp $ident[3]; $alias{$ident[2]} = [$_, $ident[3]]; } } @room = undef; foreach my $value (reverse (sort { $a <=> $b } keys %alias)) { push @room, ${$alias{$value}}[0] } foreach my $nick (@room) { if (-f "data/online/rooms/$room/$nick") { my $inside = 0; my $col = &get_ident($nick,3); foreach $_ (@away) { my($name, $awaymessage) = split(/<;/, $_, 3); if ($name eq $nick) { chomp $awaymessage; $awaymessage =~ s/=//ig; print ""; $inside = 2; } } if ($inside == 0) { foreach $_ (@userlevels) { my($name, $level) = split(/<;/, $_, 3); if ($nick eq $name) { chomp $level; $inside = 1; if ($level == 1) { print ""; last; } elsif ($level == 2) { print ""; last; } elsif ($level == 3) { print ""; last; } elsif ($level == 5) { print ""; last; } elsif ($level == 7) { print ""; last; } elsif ($level == 9) { print ""; last; } if (5 <= $hierachie) { if ($level == 6) { print ""; last; } elsif ($level == 8) { print ""; last; } elsif ($level == 10) { print ""; last; } } print ''; last; } } } if ($inside == 0) { print ''; } print "\n"; } } print '
$awaymessage
Raumbesetzer
Die Unschuld vom Land
Temporärer Wächter
Wächter
Oberwächter
Administrator
Unsichtbarer Wächter
Unsichtbarer Oberwächter
Unsichtbarer Administrator
$nick
'; } 1;