allow custom packages to edit service quantities also
[freeside.git] / httemplate / edit / part_pkg.cgi
index f4ebd67..8e7a6c5 100755 (executable)
@@ -29,8 +29,10 @@ if ( $cgi->param('clone') ) {
 } elsif ( $query && $query =~ /^(\d+)$/ ) {
   $part_pkg ||= qsearchs('part_pkg',{'pkgpart'=>$1});
 } else {
-  $part_pkg ||= new FS::part_pkg {};
-  $part_pkg->plan('flat');
+  unless ( $part_pkg ) {
+    $part_pkg = new FS::part_pkg {};
+    $part_pkg->plan('flat');
+  }
 }
 unless ( $part_pkg->plan ) { #backwards-compat
   $part_pkg->plan('flat');
@@ -108,7 +110,9 @@ my $thead =  "\n\n". ntable('#cccccc', 2). <<END;
 <TR><TH BGCOLOR="#dcdcdc"><FONT SIZE=-1>Quan.</FONT></TH><TH BGCOLOR="#dcdcdc">Service</TH></TR>
 END
 
-unless ( $cgi->param('clone') ) {
+#unless ( $cgi->param('clone') ) {
+#dunno why...
+unless ( 0 ) {
   #print <<END, $thead;
   print <<END, itable(), '<TR><TD VALIGN="top">', $thead;
 <BR><BR>Enter the quantity of each service this package includes.<BR><BR>
@@ -133,7 +137,9 @@ foreach my $part_svc ( @part_svc ) {
 
   push @fixups, "pkg_svc$svcpart";
 
-  unless ( defined ($cgi->param('clone')) && $cgi->param('clone') ) {
+  #unless ( defined ($cgi->param('clone')) && $cgi->param('clone') ) {
+  #dunno why...
+  unless ( 0 ) {
     print '<TR>'; # if $count == 0 ;
     print qq!<TD><INPUT TYPE="text" NAME="pkg_svc$svcpart" SIZE=4 MAXLENGTH=3 VALUE="!,
           $cgi->param("pkg_svc$svcpart") || $pkg_svc->quantity || 0,
@@ -151,7 +157,9 @@ foreach my $part_svc ( @part_svc ) {
   }
 }
 
-unless ( $cgi->param('clone') ) {
+#unless ( $cgi->param('clone') ) {
+#dunno why...
+unless ( 0 ) {
   print "</TR></TABLE></TD></TR></TABLE>";
   #print "</TR></TABLE>";
 }
@@ -279,7 +287,7 @@ tie my %plans, 'Tie::IxHash',
     },
     'fieldorder' => [ 'setup_fee', 'recur_flat', 'recur_included_hours', 'recur_hourly_charge' ],
     'setup' => 'what.setup_fee.value',
-    'recur' => '\'my $hours = $cust_pkg->seconds_since($cust_bkg->bill || 0) / 3600 - \' + what.recur_included_hours.value + \'; $hours = 0 if $hours < 0; \' + what.recur_flat.value + \' + \' + what.recur_hourly_charge.value + \' * $hours;\'',
+    'recur' => '\'my $hours = $cust_pkg->seconds_since($cust_pkg->bill || 0) / 3600 - \' + what.recur_included_hours.value + \'; $hours = 0 if $hours < 0; \' + what.recur_flat.value + \' + \' + what.recur_hourly_charge.value + \' * $hours;\'',
   },
 
   'sesmon_minute' => {
@@ -300,7 +308,7 @@ tie my %plans, 'Tie::IxHash',
     },
     'fieldorder' => [ 'setup_fee', 'recur_flat', 'recur_included_min', 'recur_minly_charge' ],
     'setup' => 'what.setup_fee.value',
-    'recur' => '\'my $min = $cust_pkg->seconds_since($cust_bkg->bill || 0) / 60 - \' + what.recur_included_min.value + \'; $min = 0 if $min < 0; \' + what.recur_flat.value + \' + \' + what.recur_minly_charge.value + \' * $min;\'',
+    'recur' => '\'my $min = $cust_pkg->seconds_since($cust_pkg->bill || 0) / 60 - \' + what.recur_included_min.value + \'; $min = 0 if $min < 0; \' + what.recur_flat.value + \' + \' + what.recur_minly_charge.value + \' * $min;\'',
 
   },