5 if ( $cgi->param('error') ) {
6 $rate_region = new FS::rate_region ( {
7 map { $_, scalar($cgi->param($_)) } fields('rate_region')
9 } elsif ( $cgi->keywords ) {
10 my($query) = $cgi->keywords;
12 $rate_region = qsearchs( 'rate_region', { 'regionnum' => $1 } );
14 $rate_region = new FS::rate_region {};
16 my $action = $rate_region->regionnum ? 'Edit' : 'Add';
25 my @rate_prefix = $rate_region->rate_prefix;
28 $countrycode = $rate_prefix[0]->countrycode;
29 foreach my $rate_prefix ( @rate_prefix ) {
30 eidiot 'multiple country codes per region not yet supported by web UI'
31 unless $rate_prefix->countrycode eq $countrycode;
37 <%= header("$action Region", menubar(
39 #'View all regions' => "${p}browse/rate_region.cgi",
43 <% if ( $cgi->param('error') ) { %>
44 <FONT SIZE="+1" COLOR="#ff0000">Error: <%= $cgi->param('error') %></FONT><BR>
47 <FORM ACTION="<%=$p1%>process/rate_region.cgi" METHOD=POST>
49 <INPUT TYPE="hidden" NAME="regionnum" VALUE="<%= $rate_region->regionnum %>">
51 <%= ntable('#cccccc') %>
53 <TH ALIGN="right">Region name</TH>
54 <TD><INPUT TYPE="text" NAME="regionname" SIZE=32 VALUE="<%= $rate_region->regionname %>"></TR>
58 <TH ALIGN="right">Country code</TH>
59 <TD><INPUT TYPE="text" NAME="countrycode" SIZE=4 MAXLENGTH=3 VALUE="<%= $countrycode %>"></TR>
64 <TH ALIGN="right">Prefixes</TH>
66 <TEXTAREA NAME="npa" WRAP=SOFT><%= join(', ', map $_->npa, @rate_prefix ) %></TEXTAREA>
76 <TH><FONT SIZE=-1>Included<BR>minutes</FONT></TH>
77 <TH><FONT SIZE=-1>Charge per<BR>minute</FONT></TH>
78 <TH><FONT SIZE=-1>Granularity</FONT></TH>
81 <% foreach my $rate ( qsearch('rate', {}) ) {
83 my $n = $rate->ratenum;
84 my $rate_detail = $rate->dest_detail($rate_region)
85 || new FS::rate_region { 'min_included' => 0,
87 'sec_granularity' => '60'
92 <TD><A HREF="<%=$p%>edit/rate.cgi?<%= $rate->ratenum %>"><%= $rate->ratename %></TD>
93 <TD><INPUT TYPE="text" SIZE=5 NAME="min_included<%=$n%>" VALUE="<%= $cgi->param("min_included$n") || $rate_detail->min_included %>"></TD>
94 <TD>$<INPUT TYPE="text" SIZE=4 NAME="min_charge<%=$n%>" VALUE="<%= sprintf('%.2f', $cgi->param("min_charge$n") || $rate_detail->min_charge ) %>"></TD>
96 <SELECT NAME="sec_granularity<%=$n%>">
97 <% foreach my $granularity ( keys %granularity ) { %>
98 <OPTION VALUE="<%=$granularity%>"<%= $granularity == ( $cgi->param("sec_granularity$n") || $rate_detail->sec_granularity ) ? ' SELECTED' : '' %>><%=$granularity{$granularity}%>
106 <BR><BR><INPUT TYPE="submit" VALUE="<%=
107 $rate_region->regionnum ? "Apply changes" : "Add region"