add option to credit customer sales person if there is no package sales person to...
authorIvan Kohler <ivan@freeside.biz>
Thu, 13 Nov 2014 04:50:17 +0000 (20:50 -0800)
committerIvan Kohler <ivan@freeside.biz>
Thu, 13 Nov 2014 04:50:17 +0000 (20:50 -0800)
FS/FS/part_event/Action/Mixin/credit_sales_pkg_class.pm
FS/FS/part_event/Action/Mixin/pkg_sales_credit.pm [new file with mode: 0644]
FS/FS/part_event/Action/pkg_sales_credit.pm
FS/FS/part_event/Action/pkg_sales_credit_pkg.pm
FS/FS/part_event/Action/pkg_sales_credit_pkg_class.pm

index fc7a3e3..5c090ef 100644 (file)
@@ -11,12 +11,6 @@ sub option_fields {
 
   delete $option_fields{'percent'};
 
-  $option_fields{'cust_main_sales'} = {
-    'label' => "Credit the customer sales person if there is no package sales person",
-    'type'  => 'checkbox',
-    'value' => 'Y',
-  };
-
   %option_fields;
 }
 
diff --git a/FS/FS/part_event/Action/Mixin/pkg_sales_credit.pm b/FS/FS/part_event/Action/Mixin/pkg_sales_credit.pm
new file mode 100644 (file)
index 0000000..9e93397
--- /dev/null
@@ -0,0 +1,19 @@
+package FS::part_event::Action::Mixin::pkg_sales_credit;
+
+use strict;
+use NEXT;
+
+sub option_fields {
+  my $class = shift;
+  my %option_fields = $class->NEXT::option_fields;
+
+  $option_fields{'cust_main_sales'} = {
+    'label' => "Credit the customer sales person if there is no package sales person",
+    'type'  => 'checkbox',
+    'value' => 'Y',
+  };
+
+  %option_fields;
+}
+
+1;
index cca123a..e7551cd 100644 (file)
@@ -1,7 +1,8 @@
 package FS::part_event::Action::pkg_sales_credit;
+use base qw( FS::part_event::Action::Mixin::pkg_sales_credit
+             FS::part_event::Action::pkg_referral_credit );
 
 use strict;
-use base qw( FS::part_event::Action::pkg_referral_credit );
 
 sub description { 'Credit the sales person a specific amount'; }
 
index 1e3c2b3..9b13cd8 100644 (file)
@@ -1,7 +1,6 @@
 package FS::part_event::Action::pkg_sales_credit_pkg;
-
-use strict;
-use base qw( FS::part_event::Action::Mixin::credit_pkg
+use base qw( FS::part_event::Action::Mixin::pkg_sales_credit
+             FS::part_event::Action::Mixin::credit_pkg
              FS::part_event::Action::pkg_sales_credit );
 
 sub description { 'Credit the package sales person an amount based on the referred package'; }
index 600985b..c69c004 100644 (file)
@@ -1,7 +1,7 @@
 package FS::part_event::Action::pkg_sales_credit_pkg_class;
 
-use strict;
-use base qw( FS::part_event::Action::Mixin::credit_sales_pkg_class
+use base qw( FS::part_event::Action::Mixin::pkg_sales_credit
+             FS::part_event::Action::Mixin::credit_sales_pkg_class
              FS::part_event::Action::pkg_sales_credit );
 
 sub description { "Credit the package sales person an amount based on their commission percentage for the package's class"; }