connection fee for initial N seconds support, RT#7018
[freeside.git] / httemplate / browse / rate_detail.html
index 044d5c6..3371926 100644 (file)
                            'Region',
                            'Prefix(es)',
                            'Included<BR>minutes',
+                           'Connection<BR>charge',
                            'Charge per<BR>minute',
                            'Granularity',
+                           'Usage class',
                          ],
      'fields'         => [
                            'regionname',
                            sub { shift->dest_region->prefixes_short },
-                           sub { shift->min_included.
-                                 '&nbsp;<FONT SIZE="-1">(edit)</FONT>';
-                               },
-                           sub { $money_char. shift->min_charge.
-                                 '&nbsp;<FONT SIZE="-1">(edit)</FONT>';
-                               },
+                           sub { shift->min_included. $edit_hint },
+                           $conn_charge_sub,
+                           sub { $money_char. shift->min_charge. $edit_hint },
                            sub { $granularity{ shift->sec_granularity } },
+                           'classname',
                          ],
-     'links'          => [ '', '', $edit_link,    $edit_link,    '' ],
-     'link_onclicks'  => [ '', '', $edit_onclick, $edit_onclick, '' ],
-     'align'          => 'llrrc',
+     'links'          => [ '', '', $edit_link,    $edit_link,    '', '' ],
+     'link_onclicks'  => [ '', '', $edit_onclick, $edit_onclick, '', '' ],
+     'align'          => 'llrrcc',
    )
 %>
 <%once>
 
 tie my %granularity, 'Tie::IxHash', FS::rate_detail::granularities();
+tie my %conn_secs,   'Tie::IxHash', FS::rate_detail::conn_secs();
 
 my $conf = new FS::Conf;
 my $money_char = $conf->config('money_char') || '$';
 
-my $html_init = qq(
-  <SCRIPT TYPE="text/javascript" SRC="${fsurl}elements/overlibmws.js"></SCRIPT>
-  <SCRIPT TYPE="text/javascript" SRC="${fsurl}elements/overlibmws_iframe.js"></SCRIPT>
-  <SCRIPT TYPE="text/javascript" SRC="${fsurl}elements/overlibmws_draggable.js"></SCRIPT>
-  <SCRIPT TYPE="text/javascript" SRC="${fsurl}elements/iframecontentmws.js"></SCRIPT>
-);
-
 my $join =
   ' JOIN rate_region ON ( rate_detail.dest_regionnum = rate_region.regionnum )';
 
@@ -56,8 +50,22 @@ my $edit_link = [ 'javascript:void(0);', sub { ''; } ];
 my $edit_onclick = sub {
   my $rate_detail = shift;
   my $ratedetailnum = $rate_detail->ratedetailnum;
-  my $color = '#333399';
-  qq!overlib( OLiframeContent('${p}edit/rate_detail.html?$ratedetailnum', 540, 420, 'edit_rate_detail_popup' ), CAPTION, 'Edit tax rate', STICKY, AUTOSTATUSCAP, MIDX, 0, MIDY, 0, DRAGGABLE, CLOSECLICK, BGCOLOR, '$color', CGCOLOR, '$color' ); return false;!;
+  include( '/elements/popup_link_onclick.html',
+             'action'      => "${p}edit/rate_detail.html?$ratedetailnum",
+             'actionlabel' => 'Edit rate',
+             'height'      => 420,
+             #default# 'width'       => 540,
+             #default# 'color'       => '#333399',
+         );
+};
+my $edit_hint = '&nbsp;<FONT SIZE="-1">(edit)</FONT>';
+
+my $conn_charge_sub = sub {
+   my $rate_detail = shift;
+   #return '' unless $rate_detail->conn_charge > 0 || $rate_detail->conn_sec;
+   $money_char. $rate_detail->conn_charge.
+     ($rate_detail->conn_sec ? ' for '.$conn_secs{$rate_detail->conn_sec} : '').
+     $edit_hint;
 };
 
 </%once>
@@ -66,6 +74,8 @@ my $edit_onclick = sub {
 die "access denied"
   unless $FS::CurrentUser::CurrentUser->access_right('Configuration');
 
+my $html_init = include('/elements/init_overlib.html');
+
 $cgi->param('ratenum') =~ /^(\d+)$/ or die "unparsable ratenum";
 my $ratenum = $1;
 my $rate = qsearchs('rate', { 'ratenum' => $ratenum } )