add flat_delayed plan
authorivan <ivan>
Thu, 25 Apr 2002 09:47:25 +0000 (09:47 +0000)
committerivan <ivan>
Thu, 25 Apr 2002 09:47:25 +0000 (09:47 +0000)
FS/FS/part_pkg.pm
httemplate/edit/part_pkg.cgi

index e8cc677..0cb766e 100644 (file)
@@ -59,6 +59,8 @@ inherits from FS::Record.  The following fields are currently supported:
 
 =item recurtax - Recurring fee tax exempt flag, empty or `Y'
 
+=item taxclass - Texas tax class flag, empty or "none", "access", or "hosting"
+
 =item plan - Price plan
 
 =item plandata - Price plan data
@@ -196,6 +198,8 @@ sub check {
 
     $r =~ /^\s*\d*\.?\d*\s*$/
 
+      or $r =~ /^\$sdate += 86400 \* \s*\d+\s*; \s*\d*\.?\d*\s*$/
+
       or $r =~ /^my \$mnow = \$sdate; my \(\$sec,\$min,\$hour,\$mday,\$mon,\$year\) = \(localtime\(\$sdate\) \)\[0,1,2,3,4,5\]; my \$mstart = timelocal\(0,0,0,1,\$mon,\$year\); my \$mend = timelocal\(0,0,0,1, \$mon == 11 \? 0 : \$mon\+1, \$year\+\(\$mon==11\)\); \$sdate = \$mstart; \( \$part_pkg->freq \- 1 \) \* \d*\.?\d* \/ \$part_pkg\-\>freq \+ \d*\.?\d* \/ \$part_pkg\-\>freq \* \(\$mend\-\$mnow\) \/ \(\$mend\-\$mstart\) ;\s*$/
 
       or $r =~ /^my \$mnow = \$sdate; my \(\$sec,\$min,\$hour,\$mday,\$mon,\$year\) = \(localtime\(\$sdate\) \)\[0,1,2,3,4,5\]; \$sdate = timelocal\(0,0,0,1,\$mon,\$year\); \s*\d*\.?\d*\s*;\s*$/
@@ -227,6 +231,7 @@ sub check {
       || $self->ut_anything('plandata')
       || $self->ut_enum('setuptax', [ '', 'Y' ] )
       || $self->ut_enum('recurtax', [ '', 'Y' ] )
+      || $self->ut_enum('texastax', [ '', 'none', 'access', 'hosting' ] )
       || $self->ut_enum('disabled', [ '', 'Y' ] )
     ;
 }
@@ -288,7 +293,7 @@ sub payby {
 
 =head1 VERSION
 
-$Id: part_pkg.pm,v 1.10 2002-04-19 01:16:39 ivan Exp $
+$Id: part_pkg.pm,v 1.11 2002-04-25 09:47:25 ivan Exp $
 
 =head1 BUGS
 
index 60319f9..dea02f1 100755 (executable)
@@ -174,6 +174,24 @@ tie my %plans, 'Tie::IxHash',
     'recur' => 'what.recur_fee.value',
   },
 
+  'flat_delayed' => {
+    'name' => 'Free for X days, then flat rate (anniversary billing)',
+    'fields' =>  {
+      'free_days' => { 'name' => 'Initial free days',
+                       'default' => 0,
+                     },
+      'setup_fee' => { 'name' => 'Setup fee for this package',
+                       'default' => 0,
+                     },
+      'recur_fee' => { 'name' => 'Recurring fee for this package',
+                       'default' => 0,
+                      },
+    },
+    'fieldorder' => [ 'free_days', 'setup_fee', 'recur_fee' ],
+    'setup' => 'what.setup_fee.value',
+    'recur' => '\'$sdate += 86400 * \' + what.free_days.value + \'; \' + what.recur_fee.value',
+  },
+
   'prorate' => {
     'name' => 'First partial month pro-rated, then flat-rate (1st of month billing)',
     'fields' =>  {