RT# 82137 - Added ability for processing fee to be pain on seperate invoice.
[freeside.git] / FS / FS / Conf.pm
index fd05231..9e68ffc 100644 (file)
@@ -1479,6 +1479,18 @@ and customer address. Include units.',
     'per_agent'   => 1,
   },
 
+  {
+    'key'         => 'invoice_latexcouponlocation',
+    'section'     => 'invoicing',
+    'description' => 'Location of the remittance coupon.Either top or bottom of page, defaults to bottom.',
+    'type'        => 'select',
+    'select_hash' => [
+                       'bottom' => 'Bottom of page (default)',
+                       'top'    => 'Top of page',
+                     ],
+    'per_agent'   => 1,
+  },
+
   {
     'key'         => 'invoice_latexsmallfooter',
     'section'     => 'invoice_templates',
@@ -1693,6 +1705,15 @@ and customer address. Include units.',
     'type'        => 'checkbox',
   },
 
+  {
+    'key'         => 'allow_payment_receipt_noemail',
+    'section'     => 'notification',
+    'description' => 'Add option on customer edit/view page to disable emailing of payment receipts.  If this option is set to NO it will override customer specific option, so when set to NO system will not check for payment_receipt_noemail option at customer level.',
+    'type'        => 'checkbox',
+    'per_agent'   => 1,
+    'agent_bool'  => 1,
+  },
+
   {
     'key'         => 'payment_receipt',
     'section'     => 'notification',
@@ -2046,6 +2067,13 @@ and customer address. Include units.',
     ],
   },
 
+  {
+    'key'         => 'unsuspend_reason_type',
+    'section'     => 'suspension',
+    'description' => 'If set, limits automatic unsuspension to packages which were suspended for this reason type.',
+    reason_type_options('S'),
+  },
+
   {
     'key'         => 'unsuspend-always_adjust_next_bill_date',
     'section'     => 'suspension',
@@ -2646,6 +2674,25 @@ and customer address. Include units.',
     'select_enum' => [ qw(CARD DCRD CHEK DCHK) ], #BILL CASH WEST MCRD MCHK PPAL) ],
   },
 
+  {
+    'key'         => 'processing-fee',
+    'section'     => 'payments',
+    'description' => 'Fee for back end payment processing.',
+    'type'        => 'text',
+    'per_agent'   => 1,
+  },
+
+  {
+    'key'         => 'processing-fee_on_separate_invoice',
+    'section'     => 'payments',
+    'description' => 'Places the processing fee on a separate invoice by itself.  Only works with real time processing.',
+    'type'        => 'checkbox',
+    'validate'    => sub {
+                        my $conf = new FS::Conf;
+                        !$conf->config('batch-enable_payby') ? '' : 'You can not set this option while batch processing is enabled.';
+                     },
+  },
+
   {
     'key'         => 'banned_pay-pad',
     'section'     => 'credit_cards',
@@ -3804,6 +3851,11 @@ and customer address. Include units.',
     'description' => 'Enable batch processing for the specified payment types.',
     'type'        => 'selectmultiple',
     'select_enum' => [qw( CARD CHEK )],
+    'validate'    => sub {
+                        ## can not create a new invoice and pay it silently with batch processing, only realtime processing.
+                        my $conf = new FS::Conf;
+                        !$conf->exists('processing-fee_on_separate_invoice') ? '' : 'You can not enable batch processing while processing-fee_on_separate_invoice option is enabled.';
+                     },
   },
 
   {
@@ -5204,6 +5256,13 @@ and customer address. Include units.',
     'type'        => 'checkbox',
   },
 
+  {
+    'key'         => 'cdr-max_duration',
+    'section'     => 'telephony',
+    'description' => 'If set, defines a global maximum billsec/duration for (prefix-based) call rating, in seconds.  Used with questionable/dirty CDR data that may contain bad records with long billsecs/durations.',
+    'type'        => 'text',
+  },
+
   {
     'key'         => 'disable-cust-pkg_class',
     'section'     => 'packages',
@@ -5954,11 +6013,18 @@ and customer address. Include units.',
 
   {
     'key'         => 'agent-disable_counts',
-    'section'     => 'scalability',
+    'section'     => 'deprecated',
     'description' => 'On the agent browse page, disable the customer and package counts.  Typically used for very large installs when this page takes too long to render.',
     'type'        => 'checkbox',
   },
 
+  {
+    'key'         => 'config-disable_counts',
+    'section'     => 'scalability',
+    'description' => 'Disable the customer and package counts on the Agents, Packages, and Services pages. Use for very large installs where these pages take too long to render.',
+    'type'        => 'checkbox',
+  },
+
   {
     'key'         => 'tollfree-country',
     'section'     => 'telephony',