Merge branch 'FREESIDE_3_BRANCH' of ssh://git.freeside.biz/home/git/freeside into...
authorChristopher Burger <burgerc@freeside.biz>
Tue, 12 Dec 2017 19:58:01 +0000 (14:58 -0500)
committerChristopher Burger <burgerc@freeside.biz>
Tue, 12 Dec 2017 19:58:01 +0000 (14:58 -0500)
FS/FS/cust_pkg.pm
httemplate/edit/process/change-cust_pkg.html
httemplate/misc/change_pkg.cgi

index 91c5bd3..b2cc874 100644 (file)
@@ -2363,13 +2363,16 @@ sub change {
     $same_pkgpart = 0;
   }
 
+  if ($opt->{'waive_setup'}) { $self->set('waive_setup', $opt->{'waive_setup'}) }
+  else { $self->set('waive_setup', ''); }
+
   # Before going any further here: if the package is still in the pre-setup
   # state, it's safe to modify it in place. No need to charge/credit for 
   # partial period, transfer usage pools, copy invoice details, or change any
   # dates. We DO need to "transfer" services (from the package to itself) to
   # check their validity on the new pkgpart.
   if ( ! $self->setup and ! $opt->{cust_pkg} and ! $opt->{cust_main} ) {
-    foreach ( qw( locationnum pkgpart quantity refnum salesnum ) ) {
+    foreach ( qw( locationnum pkgpart quantity refnum salesnum waive_setup ) ) {
       if ( length($opt->{$_}) ) {
         $self->set($_, $opt->{$_});
       }
index 046a979..e1b220e 100644 (file)
@@ -27,7 +27,7 @@ my $cust_pkg = qsearchs({
 die 'unknown pkgnum' unless $cust_pkg;
 
 my %change = map { $_ => scalar($cgi->param($_)) }
-                 qw( locationnum pkgpart quantity );
+                 qw( locationnum pkgpart quantity waive_setup);
 
 $change{'keep_dates'} = 1;
 
@@ -68,7 +68,8 @@ unless ($error) {
         $change_to->pkgpart      == $change{'pkgpart'} and
         $change_to->locationnum  == $change{'locationnum'} and
         $change_to->quantity     == $change{'quantity'} and
-        $change_to->contract_end == $change{'contract_end'}
+        $change_to->contract_end == $change{'contract_end'} and
+        $change_to->waive_setup  == $change{'waive_setup'}
       ) {
         %change = ( 'cust_pkg' => $change_to );
       }
index e74747e..94f32e6 100755 (executable)
 </TABLE>
 </BR>
 
+% my $discount_cust_pkg = $curuser->access_right('Discount customer package');
+% my $waive_setup_fee   = $curuser->access_right('Waive setup fee');
+%
+% if ( $discount_cust_pkg || $waive_setup_fee ) {
+  <FONT CLASS="fsinnerbox-title"><% mt('Discounting') |h %></FONT>
+  <% ntable("#cccccc") %>
+
+%   if ( $waive_setup_fee ) {
+      <TR>
+        <TH ALIGN="right"><% mt('Waive setup fee') |h %> </TH>
+        <TD COLSPAN=6><INPUT TYPE="checkbox" NAME="waive_setup" VALUE="Y"></TD>
+      </TR>
+%   }
+
+  </TABLE><BR>
+
+% }
 
 <FONT CLASS="fsinnerbox-title"><% mt('Location') |h %></FONT>
 <% ntable('#cccccc') %>