This commit was generated by cvs2svn to compensate for changes in r3921,
[freeside.git] / httemplate / edit / rate_region.cgi
1 <!-- mason kludge -->
2 <%
3
4 my $rate_region;
5 if ( $cgi->param('error') ) {
6   $rate_region = new FS::rate_region ( {
7     map { $_, scalar($cgi->param($_)) } fields('rate_region')
8   } );
9 } elsif ( $cgi->keywords ) {
10   my($query) = $cgi->keywords;
11   $query =~ /^(\d+)$/;
12   $rate_region = qsearchs( 'rate_region', { 'regionnum' => $1 } );
13 } else { #adding
14   $rate_region = new FS::rate_region {};
15 }
16 my $action = $rate_region->regionnum ? 'Edit' : 'Add';
17
18 my $p1 = popurl(1);
19
20 my %granularity = (
21   '6'  => '6 second',
22   '60' => 'minute',
23 );
24
25 my @rate_prefix = $rate_region->rate_prefix;
26 my $countrycode = '';
27 if ( @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;
32   }
33 }
34
35 %>
36
37 <%= header("$action Region", menubar(
38       'Main Menu' => $p,
39       #'View all regions' => "${p}browse/rate_region.cgi",
40     ))
41 %>
42
43 <% if ( $cgi->param('error') ) { %>
44 <FONT SIZE="+1" COLOR="#ff0000">Error: <%= $cgi->param('error') %></FONT><BR>
45 <% } %>
46
47 <FORM ACTION="<%=$p1%>process/rate_region.cgi" METHOD=POST>
48
49 <INPUT TYPE="hidden" NAME="regionnum" VALUE="<%= $rate_region->regionnum %>">
50
51 <%= ntable('#cccccc') %>
52 <TR>
53   <TH ALIGN="right">Region name</TH>
54   <TD><INPUT TYPE="text" NAME="regionname" SIZE=32 VALUE="<%= $rate_region->regionname %>"></TR>
55 </TR>
56
57 <TR>
58   <TH ALIGN="right">Country code</TH>
59   <TD><INPUT TYPE="text" NAME="countrycode" SIZE=4 MAXLENGTH=3 VALUE="<%= $countrycode %>"></TR>
60 </TR>
61
62
63 <TR>
64   <TH ALIGN="right">Prefixes</TH>
65   <TD>
66     <TEXTAREA NAME="npa" WRAP=SOFT><%= join(', ', map $_->npa, @rate_prefix ) %></TEXTAREA>
67   </TD>
68 </TR>
69
70 </TABLE>
71
72 <BR>
73 <%= table() %>
74 <TR>
75   <TH>Rate plan</TH>
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>
79 </TR>
80
81 <% foreach my $rate ( qsearch('rate', {}) ) {
82
83   my $n = $rate->ratenum;
84   my $rate_detail = $rate->dest_detail($rate_region)
85                     || new FS::rate_region { 'min_included'    => 0,
86                                              'min_charge'      => 0,
87                                              'sec_granularity' => '60'
88                                            };
89
90 %>
91   <TR>
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>
95     <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}%>
99         <% } %>
100       </SELECT>
101   </TR>
102 <% } %>
103
104 </TABLE>
105
106 <BR><BR><INPUT TYPE="submit" VALUE="<%= 
107   $rate_region->regionnum ? "Apply changes" : "Add region"
108 %>">
109
110     </FORM>
111   </BODY>
112 </HTML>
113
114