From: dms Date: Wed, 31 Jan 2001 14:53:48 +0000 (+0000) Subject: nickometer: there could be multiple results with the same version X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=6af40fba8110176a15a71ae15308256498916539;p=infobot.git nickometer: there could be multiple results with the same version percentage - fixed. Also don't merge same percentages together like in other list (formListReply) statements. git-svn-id: https://svn.code.sf.net/p/infobot/code/trunk@289 c11ca15a-4712-0410-83d8-924469b57eb5 --- diff --git a/blootbot/src/CommandStubs.pl b/blootbot/src/CommandStubs.pl index a9b27f9..c420031 100644 --- a/blootbot/src/CommandStubs.pl +++ b/blootbot/src/CommandStubs.pl @@ -663,12 +663,12 @@ sub do_verstats { } if (!&validChan($chan)) { - &pSReply("chan $chan is invalid."); + &msg($who, "chan $chan is invalid."); return; } if (scalar keys %ver or scalar @vernick) { - &DEBUG("verstats already in progress."); + &msg($who, "verstats already in progress for someone else."); return; } @@ -685,25 +685,24 @@ sub do_verstats { my %sorted; my $unknown = $total - $vtotal; my $perc = sprintf("%.1f", $unknown * 100 / $total); - $sorted{$perc} = "unknown/cloak - $unknown ($perc %)"; $perc =~ s/.0$//; + $sorted{$perc}{"unknown/cloak"} = "$unknown ($perc %)"; foreach (keys %ver) { my $count = scalar keys %{ $ver{$_} }; $perc = sprintf("%.01f", $count * 100 / $total); $perc =~ s/.0$//; # lame compression. - if (exists $sorted{$perc}) { - &WARN("sorted{$perc} already exists; FIXME."); - } - - $sorted{$perc} = "$_ - $count ($perc%)"; + $sorted{$perc}{$_} = "$count ($perc%)"; } ### can be compressed to a map? my @list; foreach ( sort { $b <=> $a } keys %sorted ) { - push(@list, $sorted{$_}); + my $perc = $_; + foreach (sort keys %{ $sorted{$perc} }) { + push(@list, "$_ - $sorted{$perc}{$_}"); + } } &pSReply( &formListReply(0, "IRC Client versions for $chan ", @list) );