From d9a8f186ad87e9b19da7383f88ab5eb0b614a138 Mon Sep 17 00:00:00 2001 From: jeff Date: Wed, 26 Mar 2008 15:43:08 +0000 Subject: [PATCH] fixup per call billing --- FS/FS/rate_detail.pm | 26 ++++++++++++++++++++++++++ httemplate/browse/rate_detail.html | 7 +------ httemplate/edit/rate_detail.html | 12 ++++-------- 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 ad41b40ec..533fb1e7b 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 5dde85f8b..044d5c69c 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 b9eaf657e..73d2d9b41 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(); @@ -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 04f285f37..c58fc8065 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 = ''; -- 2.11.0