add price plan option for prepaid packages to cancel instead of suspend
[freeside.git] / FS / FS / part_pkg / prepaid.pm
index 5e7d2ba..ca4acb5 100644 (file)
@@ -1,20 +1,30 @@
 package FS::part_pkg::prepaid;
 
 use strict;
-use vars qw(@ISA %info);
+use vars qw(@ISA %info %recur_action);
+use Tie::IxHash;
 use FS::part_pkg::flat;
 
 @ISA = qw(FS::part_pkg::flat);
 
+tie %recur_action, 'Tie::IxHash',
+  'suspend' => 'suspend',
+  'cancel'  => 'cancel',
+;
+
 %info = (
   'name' => 'Prepaid, flat rate',
   'fields' => {
-    'setup_fee' => { 'name' => 'One-time setup fee for this package',
-                     'default' => 0,
-                   },
-    'recur_fee' => { 'name' => 'Initial and recharge fee for this package',
-                     'default' => 0,
-                   }
+    'setup_fee'   =>  { 'name' => 'One-time setup fee for this package',
+                        'default' => 0,
+                      },
+    'recur_fee'   =>  { 'name' => 'Initial and recharge fee for this package',
+                        'default' => 0,
+                      },
+    'recur_action' => { 'name' => 'Action to take upon reaching end of prepaid preiod',
+                        'type' => 'select',
+                       'select_options' => \%recur_action,
+                     },
   },
   'fieldorder' => [ 'setup_fee', 'recur_fee', ],
   'weight' => 25,