my $zip_to = "60446";
my $zip_from = "60187";
my $weight = 2.26";
my $package = Net::UPS::Package->new();
$package -> weight($weight);
#dumped here
my $services = $ups->shop_for_rates($zip_from, $zip_to, $package);
while (my $service = shift @$services ) {
$message .= sprintf("%-22s => \$.2f", $service->label, $service->total_charges);
if ( my $days = $service->guaranteed_days ) {
sprintf("(delivers in %d day%s)\n", $days, ($days > 1) ? "s" : "");
} else {
"\n";
}
}
####
$VAR1 = '60446';
$VAR2 = '43214';
$VAR3 = bless( [
undef,
undef,
undef,
undef,
undef,
undef,
'2.26'
], 'Net::UPS::Package' );
####
sub shop_for_rates {
my $self = shift;
my ($from, $to, $packages, $args) = @_;
unless ( $from && $to && $packages ) {
croak "shop_for_rates(): usage error";
}
unless ( ref $from ) {
$from = Net::UPS::Address->new(postal_code=>$from);
}
unless ( ref $to ) {
$to = Net::UPS::Address->new(postal_code=>$to);
}
unless ( ref $packages eq 'ARRAY' ) {
$packages = [$packages];
}
$args ||= {};
$args->{mode} = "shop";
$args->{service}||= "GROUND";
return [sort{$a->total_charges <=>$b->total_charges} @{$self->request_rate($from, $to, $packages, $args)}];
}