diff options
| author | ivan <ivan> | 2008-01-10 21:53:56 +0000 | 
|---|---|---|
| committer | ivan <ivan> | 2008-01-10 21:53:56 +0000 | 
| commit | 689892f05c1a1f5ea6d6728c46e1011e45c5cacb (patch) | |
| tree | 7161a1cbf44385d7eb35ab7a61b8716635a8d742 /httemplate/edit/rate_region.cgi | |
| parent | f566a9504d4c9f74a59251f10d029e08b0d98c71 (diff) | |
new rate editor
Diffstat (limited to 'httemplate/edit/rate_region.cgi')
| -rw-r--r-- | httemplate/edit/rate_region.cgi | 192 | 
1 files changed, 114 insertions, 78 deletions
diff --git a/httemplate/edit/rate_region.cgi b/httemplate/edit/rate_region.cgi index d55c0de43..47d1888e0 100644 --- a/httemplate/edit/rate_region.cgi +++ b/httemplate/edit/rate_region.cgi @@ -1,43 +1,5 @@ -<!-- mason kludge --> -% -% -%my $rate_region; -%if ( $cgi->param('error') ) { -%  $rate_region = new FS::rate_region ( { -%    map { $_, scalar($cgi->param($_)) } fields('rate_region') -%  } ); -%} elsif ( $cgi->keywords ) { -%  my($query) = $cgi->keywords; -%  $query =~ /^(\d+)$/; -%  $rate_region = qsearchs( 'rate_region', { 'regionnum' => $1 } ); -%} else { #adding -%  $rate_region = new FS::rate_region {}; -%} -%my $action = $rate_region->regionnum ? 'Edit' : 'Add'; -% -%my $p1 = popurl(1); -% -%my %granularity = ( -%  '6'  => '6 second', -%  '60' => 'minute', -%); -% -%my @rate_prefix = $rate_region->rate_prefix; -%my $countrycode = ''; -%if ( @rate_prefix ) { -%  $countrycode = $rate_prefix[0]->countrycode; -%  foreach my $rate_prefix ( @rate_prefix ) { -%    errorpage('multiple country codes per region not yet supported by web UI') -%      unless $rate_prefix->countrycode eq $countrycode; -%  } -%} -% -% - -  <% include("/elements/header.html","$action Region", menubar( -      'Main Menu' => $p, -      #'View all regions' => "${p}browse/rate_region.cgi", +      'View all regions' => "${p}browse/rate_region.html",      ))  %> @@ -47,35 +9,56 @@  <INPUT TYPE="hidden" NAME="regionnum" VALUE="<% $rate_region->regionnum %>"> +%# region info +  <% ntable('#cccccc') %> -<TR> -  <TH ALIGN="right">Region name</TH> -  <TD><INPUT TYPE="text" NAME="regionname" SIZE=32 VALUE="<% $rate_region->regionname %>"></TR> -</TR> -<TR> -  <TH ALIGN="right">Country code</TH> -  <TD><INPUT TYPE="text" NAME="countrycode" SIZE=4 MAXLENGTH=3 VALUE="<% $countrycode %>"></TR> -</TR> +  <TR> +    <TH ALIGN="right">Region name</TH> +    <TD><INPUT TYPE="text" NAME="regionname" SIZE=32 VALUE="<% $rate_region->regionname %>"></TR> +  </TR> +  <TR> +    <TH ALIGN="right">Country code</TH> +    <TD><INPUT TYPE="text" NAME="countrycode" SIZE=4 MAXLENGTH=3 VALUE="<% $countrycode %>"></TR> +  </TR> -<TR> -  <TH ALIGN="right">Prefixes</TH> -  <TD> -    <TEXTAREA NAME="npa" WRAP=SOFT><% join(', ', map $_->npa, @rate_prefix ) %></TEXTAREA> -  </TD> -</TR> +  <TR> +    <TD ALIGN="right"> +      <B>Prefixes</B> +      <BR><FONT SIZE="-1">(comma-separated)</FONT> +    </TD> +    <TD> +      <TEXTAREA NAME="npa" WRAP=SOFT><% join(', ', map $_->npa, @rate_prefix ) %></TEXTAREA> +    </TD> +  </TR>  </TABLE> +%# rate plan info +  <BR> -<% table() %> -<TR> -  <TH>Rate plan</TH> -  <TH><FONT SIZE=-1>Included<BR>minutes</FONT></TH> -  <TH><FONT SIZE=-1>Charge per<BR>minute</FONT></TH> -  <TH><FONT SIZE=-1>Granularity</FONT></TH> -</TR> + +<% include('/elements/table-grid.html') %> +%   my $bgcolor1 = '#eeeeee'; +%   my $bgcolor2 = '#ffffff'; +%   my $bgcolor = ''; + +  <TR> +    <TH CLASS="grid" BGCOLOR="#cccccc"> +      Rate plan +    </TH> +    <TH CLASS="grid" BGCOLOR="#cccccc"> +      <FONT SIZE=-1>Included<BR>minutes</FONT> +    </TH> +    <TH CLASS="grid" BGCOLOR="#cccccc"> +      <FONT SIZE=-1>Charge per<BR>minute</FONT> +    </TH> +    <TH CLASS="grid" BGCOLOR="#cccccc"> +      <FONT SIZE=-1>Granularity</FONT> +    </TH> +  </TR> +  % foreach my $rate ( qsearch('rate', {}) ) {  %  %  my $n = $rate->ratenum; @@ -85,32 +68,85 @@  %                                             'sec_granularity' => '60'  %                                           };  % -% +% if ( $bgcolor eq $bgcolor1 ) { +%   $bgcolor = $bgcolor2; +% } else { +%   $bgcolor = $bgcolor1; +% }    <TR> -    <TD><A HREF="<%$p%>edit/rate.cgi?<% $rate->ratenum %>"><% $rate->ratename %></TD> -    <TD><INPUT TYPE="text" SIZE=5 NAME="min_included<%$n%>" VALUE="<% $cgi->param("min_included$n") || $rate_detail->min_included %>"></TD> -    <TD>$<INPUT TYPE="text" SIZE=4 NAME="min_charge<%$n%>" VALUE="<% sprintf('%.2f', $cgi->param("min_charge$n") || $rate_detail->min_charge ) %>"></TD> -    <TD> -      <SELECT NAME="sec_granularity<%$n%>"> -% foreach my $granularity ( keys %granularity ) {  -          <OPTION VALUE="<%$granularity%>"<% $granularity == ( $cgi->param("sec_granularity$n") || $rate_detail->sec_granularity ) ? ' SELECTED' : '' %>><%$granularity{$granularity}%> -% }  +    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"> +      <A HREF="<%$p%>edit/rate.cgi?<% $rate->ratenum %>"><% $rate->ratename %></A> +    </TD> +    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"> +      <INPUT TYPE="text" SIZE=5 NAME="min_included<%$n%>" VALUE="<% $cgi->param("min_included$n") || $rate_detail->min_included %>"> +    </TD> + +    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"> +      $<INPUT TYPE="text" SIZE=4 NAME="min_charge<%$n%>" VALUE="<% sprintf('%.2f', $cgi->param("min_charge$n") || $rate_detail->min_charge ) %>"> +    </TD> + +    <TD CLASS="grid" BGCOLOR="<% $bgcolor %>"> +      <SELECT NAME="sec_granularity<%$n%>"> +%       foreach my $granularity ( keys %granularity ) {  +          <OPTION VALUE="<%$granularity%>"<% $granularity == ( $cgi->param("sec_granularity$n") || $rate_detail->sec_granularity ) ? ' SELECTED' : '' %>><%$granularity{$granularity}%> +%       }         </SELECT> +    </TD> +    </TR> -% }  +% }   </TABLE> -<BR><BR><INPUT TYPE="submit" VALUE="<%  -  $rate_region->regionnum ? "Apply changes" : "Add region" -%>"> - -    </FORM> -  </BODY> -</HTML> - +<BR><BR> +<INPUT TYPE="submit" VALUE="<% $rate_region->regionnum ? "Apply changes" : "Add region" %>"> + +</FORM> + +<% include('/elements/footer.html') %> + +<%init> + +die "access denied" +  unless $FS::CurrentUser::CurrentUser->access_right('Configuration'); + +my $rate_region; +if ( $cgi->param('error') ) { +  $rate_region = new FS::rate_region ( { +    map { $_, scalar($cgi->param($_)) } fields('rate_region') +  } ); +} elsif ( $cgi->keywords ) { +  my($query) = $cgi->keywords; +  $query =~ /^(\d+)$/ or die "unparsable regionnum"; +  $rate_region = qsearchs( 'rate_region', { 'regionnum' => $1 } ) +    or die "unknown regionnum $1\n"; +} else { #adding +  $rate_region = new FS::rate_region {}; +} +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', +; + +my @rate_prefix = $rate_region->rate_prefix; +my $countrycode = ''; +if ( @rate_prefix ) { +  $countrycode = $rate_prefix[0]->countrycode; +  foreach my $rate_prefix ( @rate_prefix ) { +    errorpage('multiple country codes per region not yet supported by web UI') +      unless $rate_prefix->countrycode eq $countrycode; +  } +} + +</%init>  | 
