my $ref = shift;
my $out;
- while (my $k = sort keys %$ref) {
+ foreach my $k (sort keys %$ref) {
$out .= "${k}=>$ref->{$k}, ";
}
$out =~ s/, $// if $out;
}
}
return '-(ve)' if $t < 0;
- my ($d,$h,$m,$s);
+ my ($y,$d,$h,$m,$s);
my $out = '';
+ $y = int $t / (86400*365);
+ $out .= sprintf ("%s${y}y", $adds?' ':'') if $y;
+ $t -= $y * 86400 * 365;
$d = int $t / 86400;
$out .= sprintf ("%s${d}d", $adds?' ':'') if $d;
$t -= $d * 86400;
sub basecall
{
- my ($r) = $_[0] =~ m{^((?:[\w\d]+/)?[\w\d]+(?:/[\w\d]+)?)(?:-\d+)?(?:-\#)?$};
+ my ($r) = $_[0] =~ m{^((?:[\w\d]+/)?[\w\d]+(?:/[\w\d]+)*)(?:-\d+)?(?:-\#)?$};
return $r;
}
sub normalise_call
{
- my ($c, $ssid) = $_[0] =~ m|^((?:[\w\d]+/)?[\d\w]+(?:/[\w\d]+)?)(?:-(\d+))?(?:-\#)?$|;
+ my ($c, $ssid) = $_[0] =~ m|^((?:[\w\d]+/)?[\d\w]+(?:/[\w\d]+)*)(?:-(\d+))?(?:-\#)?$|;
my $ncall = $c;
$ssid += 0;
$ncall .= "-$ssid" if $ssid;