diff options
author | jeff <jeff> | 2008-03-26 15:43:08 +0000 |
---|---|---|
committer | jeff <jeff> | 2008-03-26 15:43:08 +0000 |
commit | d9a8f186ad87e9b19da7383f88ab5eb0b614a138 (patch) | |
tree | b09471a4504b91e2c6eb1d661d203de3293a4f18 | |
parent | 6f3d99ddb0889c3f75197b88a4cc1c785c483fe9 (diff) |
fixup per call billing
-rw-r--r-- | FS/FS/rate_detail.pm | 26 | ||||
-rw-r--r-- | httemplate/browse/rate_detail.html | 7 | ||||
-rw-r--r-- | httemplate/edit/rate_detail.html | 12 | ||||
-rw-r--r-- | httemplate/edit/rate_region.cgi | 8 |
4 files changed, 32 insertions, 21 deletions
diff --git a/FS/FS/rate_detail.pm b/FS/FS/rate_detail.pm index ad41b40..533fb1e 100644 --- a/FS/FS/rate_detail.pm +++ b/FS/FS/rate_detail.pm @@ -5,6 +5,7 @@ use vars qw( @ISA ); use FS::Record qw( qsearch qsearchs ); use FS::rate; use FS::rate_region; +use Tie::IxHash; @ISA = qw(FS::Record); @@ -189,6 +190,31 @@ sub dest_prefixes_short { =back +=head1 SUBROUTINES + +=over 4 + +=item granularities + + Returns an (ordered) hash of granularity => name pairs + +=cut + +tie my %granularities, 'Tie::IxHash', + '1', => '1 second', + '6' => '6 second', + '30' => '30 second', # '1/2 minute', + '60' => 'minute', + '0' => 'call', +; + +sub granularities { + %granularities; +} + + +=back + =head1 BUGS =head1 SEE ALSO diff --git a/httemplate/browse/rate_detail.html b/httemplate/browse/rate_detail.html index 5dde85f..044d5c6 100644 --- a/httemplate/browse/rate_detail.html +++ b/httemplate/browse/rate_detail.html @@ -36,12 +36,7 @@ %> <%once> -my %granularity = ( - '1', => '1 second', - '6' => '6 second', - '30' => '30 second', # '1/2 minute', - '60' => 'minute', -); +tie my %granularity, 'Tie::IxHash', FS::rate_detail::granularities(); my $conf = new FS::Conf; my $money_char = $conf->config('money_char') || '$'; diff --git a/httemplate/edit/rate_detail.html b/httemplate/edit/rate_detail.html index b9eaf65..73d2d9b 100644 --- a/httemplate/edit/rate_detail.html +++ b/httemplate/edit/rate_detail.html @@ -19,7 +19,7 @@ { field=>'min_charge', type=>'money', size=>4 }, { field =>'sec_granularity', type =>'select', - options => [qw( 1 6 30 60 )], + options => [ keys %granularity ], labels => \%granularity, disable_empty => 1, }, @@ -29,12 +29,7 @@ %> <%once> -tie my %granularity, 'Tie::IxHash', - '1', => '1 second', - '6' => '6 second', - '30' => '30 second', # '1/2 minute', - '60' => 'minute', -; +tie my %granularity, 'Tie::IxHash', FS::rate_detail::granularities(); </%once> @@ -46,7 +41,8 @@ die "access denied" #slightly inefficient, i suppose an edit+error callback would be better my $name = 'rate'; -if ( $cgi->keywords =~ /^(\d+)$/ +my ($keywords) = $cgi->keywords; +if ( $keywords =~ /^(\d+)$/ || $cgi->param('ratedetailnum') =~ /^(\d+)$/ ) { my $rate_detail = qsearchs('rate_detail', { 'ratedetailnum' => $1 } ) or die "unknown ratedetailnum $1"; diff --git a/httemplate/edit/rate_region.cgi b/httemplate/edit/rate_region.cgi index 04f285f..c58fc80 100644 --- a/httemplate/edit/rate_region.cgi +++ b/httemplate/edit/rate_region.cgi @@ -132,13 +132,7 @@ my $action = $rate_region->regionnum ? 'Edit' : 'Add'; my $p1 = popurl(1); -tie my %granularity, 'Tie::IxHash', - '1', => '1 second', - '6' => '6 second', - '30' => '30 second', # '1/2 minute', - '60' => 'minute', - '0' => 'call', -; +tie my %granularity, 'Tie::IxHash', FS::rate_detail::granularities(); my @rate_prefix = $rate_region->rate_prefix; my $countrycode = ''; |