- if (scalar $event->args() != 1) { # old.
- $ver = join ' ', $event->args();
- $ver =~ s/^VERSION //;
- } else { # new.
- $ver = ($event->args())[0];
- }
-
- if (grep /^\Q$nick\E$/i, @vernick) {
- &WARN("nick $nick found in vernick; skipping.");
- return;
- }
- push(@vernick, $nick);
-
- if ($ver =~ /bitchx/i) {
- $ver{bitchx}{$nick} = $ver;
- } elsif ($ver =~ /xc\!|xchat/i) {
- $ver{xchat}{$nick} = $ver;
- } elsif ($ver =~ /irssi/i) {
- $ver{irssi}{$nick} = $ver;
- } elsif ($ver =~ /epic/i) {
- $ver{epic}{$nick} = $ver;
- } elsif ($ver =~ /mirc/i) {
- $ver{mirc}{$nick} = $ver;
- } elsif ($ver =~ /ircle/i) {
- $ver{ircle}{$nick} = $ver;
- } elsif ($ver =~ /ircII/i) {
- $ver{ircII}{$nick} = $ver;
- } elsif ($ver =~ /sirc /i) {
- $ver{sirc}{$nick} = $ver;
- } elsif ($ver =~ /kvirc/i) {
- $ver{kvirc}{$nick} = $ver;
- } elsif ($ver =~ /eggdrop/i) {
- $ver{eggdrop}{$nick} = $ver;
- } elsif ($ver =~ /xircon/i) {
- $ver{xircon}{$nick} = $ver;
- } else {
- $ver{other}{$nick} = $ver;
+ if ( scalar $event->args() != 1 ) { # old.
+ $ver = join ' ', $event->args();
+ $ver =~ s/^VERSION //;
+ }
+ else { # new.
+ $ver = ( $event->args() )[0];
+ }
+
+ if ( grep /^\Q$nick\E$/i, @vernick ) {
+ &WARN("nick $nick found in vernick ($ver); skipping.");
+ return;
+ }
+ push( @vernick, $nick );
+
+ &DEBUG("on_crversion: Got '$ver' from $nick");
+
+ if ( $ver =~ /bitchx/i ) {
+ $ver{bitchx}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /infobot/i ) {
+ $ver{infobot}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /(xc\!|xchat)/i ) {
+ $ver{xchat}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /irssi/i ) {
+ $ver{irssi}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /(epic|Third Eye)/i ) {
+ $ver{epic}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /(ircII|PhoEniX)/i ) {
+ $ver{ircII}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /mirc/i ) {
+ # Apparently, mIRC gets the reply as "VERSION " and doesnt like the
+ # space, so mirc matching is considered bugged.
+ $ver{mirc}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /ircle/i ) {
+ $ver{ircle}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /chatzilla/i ) {
+ $ver{chatzilla}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /pirch/i ) {
+ $ver{pirch}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /sirc /i ) {
+ $ver{sirc}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /kvirc/i ) {
+ $ver{kvirc}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /eggdrop/i ) {
+ $ver{eggdrop}{$nick} = $ver;
+
+ }
+ elsif ( $ver =~ /xircon/i ) {
+ $ver{xircon}{$nick} = $ver;
+
+ }
+ else {
+ &DEBUG("verstats: other: $nick => '$ver'.");
+ $ver{other}{$nick} = $ver;