403Webshell
Server IP : 74.208.236.79  /  Your IP : 216.73.216.46
Web Server : Apache
System : Linux infongp-us50 4.4.400-icpu-108 #2 SMP Wed Feb 11 10:12:42 UTC 2026 x86_64
User : u93192080 ( 6162215)
PHP Version : 8.4.22
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /kunden/usr/share/doc/libsoap-lite-perl/examples/My/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /kunden/usr/share/doc/libsoap-lite-perl/examples/My/Chat.pm
package My::Chat;

my @messages;
my %users;

sub join {
  my $self = shift;
  my $class = ref($self) || $self;
  my $nick = shift      or die "User cannot join chat anonymously\n";
  !exists $users{$nick} or die "User '$nick' is already in chatroom. Choose another nick\n";
  $users{$nick} = time;
  my $messages = shift || 10;
  bless {
    _nick        => $nick,
    _users       => \%users,
    _messages    => \@messages,
    _lastmessage => ($#messages > $messages ? $#messages - $messages : -1),
  } => $class;
}

sub get {
  my $self = shift;
  my $nick = $self->{_nick};
  my @mess = grep {exists $users{$_->[0]} && $_->[0] ne $nick} @messages[($self->{_lastmessage}+1)..$#messages];
  $self->{_lastmessage} = $#messages;
  [@mess];
}

sub send {
  push @messages, [shift->{_nick} => shift, time];
  splice(@messages, 0, -12); # we'll keep only last 12 messages
}

sub whois { shift->{_users} }

sub quit { my $self = shift; delete $self->{_users}->{$self->{_nick}} }

sub DESTROY { shift->quit }

1;

Youez - 2016 - github.com/yon3zu
LinuXploit