}
}
-# This is shamelessly stolen from pythons urlgrabber
-sub format_number {
- my $number = shift;
- my $SI = shift || 0;
- my @symbols = ('', 'k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y');
- my $step = $SI?1000:1024;
- my $thresh = 999;
- my $depth = 0;
- my $max_depth = $#symbols;
- my $format;
-
- while (($number > $thresh) and ($depth < $max_depth)) {
- $depth += 1;
- $number /= $step;
- }
-
- if ($number =~ /^[+-]?\d+$/) {
- # Integer.
- $format = '%i%s';
- } elsif ($number < 9.95) {
- $format = '%.1f%s';
- } else {
- $format = '%.0f%s';
- }
- return sprintf($format, $number, $symbols[$depth]);
-}
-
-
-
sub check_for_link {
my ($signal,$parammessage,$paramchannel,$paramnick,$paramserver) = @_;
my $server = $signal->[$paramserver];
} else {
foreach (@{$rqueue}) {
write_irssi(' %s%s: %sB/%sB done (%d%%), %sB/s up, %sB/s down',
- $_->[5]->value()?'*':' ',
- $_->[0]->value(),
- format_number($_->[2]->value()),
- format_number($_->[1]->value()),
- ($_->[2]->value()*100)/$_->[1]->value(),
- format_number($_->[3]->value()),
- format_number($_->[4]->value()));
+ $_->{'ACTIVE'}?'*':' ',
+ $_->{'NAME'},
+ $_->{'BYTES_DONE'},
+ $_->{'SIZE_BYTES'},
+ $_->{'UP_RATE'},
+ $_->{'DOWN_RATE'});
}
}
}
return bless($self, $class);
}
+# This is shamelessly stolen from pythons urlgrabber
+sub _format_number {
+ my $number = shift;
+ my $SI = shift || 0;
+ my @symbols = ('', 'k', 'M', 'G', 'T', 'P', 'E', 'Z', 'Y');
+ my $step = $SI?1000:1024;
+ my $thresh = 999;
+ my $depth = 0;
+ my $max_depth = $#symbols;
+ my $format;
+
+ while (($number > $thresh) and ($depth < $max_depth)) {
+ $depth += 1;
+ $number /= $step;
+ }
+
+ if ($number =~ /^[+-]?\d+$/) {
+ # Integer.
+ $format = '%i%s';
+ } elsif ($number < 9.95) {
+ $format = '%.1f%s';
+ } else {
+ $format = '%.0f%s';
+ }
+ return sprintf($format, $number, $symbols[$depth]);
+}
+
+
+
sub load_start {
my $self = shift;
my $talker = shift;
return undef;
}
- return $res->value();
+ my @ret = ();
+ foreach (@{$res->value()}) {
+ push @ret,
+ {
+ 'NAME' => $_->[0]->value(),
+ 'SIZE_BYTES' => _format_number($_->[1]->value()),
+ 'BYTES_DONE' => _format_number($_->[2]->value()),
+ 'UP_RATE' => _format_number($_->[3]->value()),
+ 'DOWN_RATES' => _format_number($_->[4]->value()),
+ 'ACTIVE' => $_->[5]->value(),
+ };
+ }
+
+ return \@ret;
}
sub errstr {