use vars qw($base_dir @config_items @base_items @card_types $DEBUG);
use strict;
+use vars qw( $base_dir @config_items @base_items @card_types @invoice_terms
+ $DEBUG
+ );
use Carp;
use IO::File;
use File::Basename;
'key' => $_,
'base_key' => $proto->key,
'section' => $proto->section,
- 'description' => 'Alternate ' . $proto->description . ' See the <a href="http://www.freeside.biz/mediawiki/index.php/Freeside:2.1:Documentation:Administration#Invoice_templates">billing documentation</a> for details.',
+ 'description' => 'Alternate ' . $proto->description . ' See the <a href="http://www.freeside.biz/mediawiki/index.php/Freeside:3:Documentation:Administration#Invoice_templates">billing documentation</a> for details.',
'type' => $proto->type,
};
} &$listmaker($base);
logo.eps
);
+@invoice_terms = (
+ '',
+ 'Payable upon receipt',
+ 'Net 0', 'Net 3', 'Net 5', 'Net 7', 'Net 9', 'Net 10', 'Net 14',
+ 'Net 15', 'Net 18', 'Net 20', 'Net 21', 'Net 25', 'Net 30', 'Net 45',
+ 'Net 60', 'Net 90'
+);
+
my %msg_template_options = (
'type' => 'select-sub',
'options_sub' => sub {
'select_enum' => [ '', qw( USD AUD CAD DKK EUR GBP ILS JPY NZD ) ],
},
+ {
+ 'key' => 'business-onlinepayment-verification',
+ 'section' => 'billing',
+ 'description' => 'Run a $1 authorization (followed by a void) to verify new credit card information.',
+ 'type' => 'checkbox',
+ },
+
{
'key' => 'currency',
'section' => 'billing',
{
'key' => 'invoice_template',
'section' => 'invoicing',
- 'description' => 'Text template file for invoices. Used if no invoice_html template is defined, and also seen by users using non-HTML capable mail clients. See the <a href="http://www.freeside.biz/mediawiki/index.php/Freeside:2.1:Documentation:Administration#Plaintext_invoice_templates">billing documentation</a> for details.',
+ 'description' => 'Text template file for invoices. Used if no invoice_html template is defined, and also seen by users using non-HTML capable mail clients. See the <a href="http://www.freeside.biz/mediawiki/index.php/Freeside:3:Documentation:Administration#Plaintext_invoice_templates">billing documentation</a> for details.',
'type' => 'textarea',
},
'description' => 'Optional default invoice term, used to calculate a due date printed on invoices.',
'type' => 'select',
'per_agent' => 1,
- 'select_enum' => [
- '', 'Payable upon receipt', 'Net 0', 'Net 3', 'Net 5', 'Net 7', 'Net 9', 'Net 10', 'Net 14',
- 'Net 15', 'Net 18', 'Net 20', 'Net 21', 'Net 25', 'Net 30', 'Net 45',
- 'Net 60', 'Net 90'
- ], },
+ 'select_enum' => \@invoice_terms,
+ },
{
'key' => 'invoice_show_prior_due_date',
{
'key' => 'ticket_system',
'section' => 'ticketing',
- 'description' => 'Ticketing system integration. <b>RT_Internal</b> uses the built-in RT ticketing system (see the <a href="http://www.freeside.biz/mediawiki/index.php/Freeside:2.1:Documentation:RT_Installation">integrated ticketing installation instructions</a>). <b>RT_External</b> accesses an external RT installation in a separate database (local or remote).',
+ 'description' => 'Ticketing system integration. <b>RT_Internal</b> uses the built-in RT ticketing system (see the <a href="http://www.freeside.biz/mediawiki/index.php/Freeside:3:Documentation:RT_Installation">integrated ticketing installation instructions</a>). <b>RT_External</b> accesses an external RT installation in a separate database (local or remote).',
'type' => 'select',
#'select_enum' => [ '', qw(RT_Internal RT_Libs RT_External) ],
'select_enum' => [ '', qw(RT_Internal RT_External) ],
'type' => 'checkbox',
},
+ {
+ 'key' => 'invoice-all_pkg_addresses',
+ 'section' => 'invoicing',
+ 'description' => 'Show all package addresses on invoices, even the default.',
+ 'type' => 'checkbox',
+ },
+
{
'key' => 'invoice-unitprice',
'section' => 'invoicing',
'usps' => 'U.S. Postal Service',
'uscensus' => 'U.S. Census Bureau',
'ezlocate' => 'EZLocate',
- 'tomtom' => 'TomTom',
'melissa' => 'Melissa WebSmart',
'freeside' => 'Freeside web service (support contract required)',
],
'type' => 'text',
},
- {
- 'key' => 'tomtom-userid',
- 'section' => 'UI',
- 'description' => 'TomTom geocoding service API key. See <a href="http://www.tomtom.com/">the TomTom website</a> to obtain a key. This is recommended for addresses in the United States only.',
- 'type' => 'text',
- },
-
{
'key' => 'ezlocate-userid',
'section' => 'UI',
'type' => 'checkbox',
},
+ {
+ 'key' => 'cdr-userfield_dnis_rewrite',
+ 'section' => 'telephony',
+ 'description' => 'If the CDR userfield contains "DNIS=" followed by a sequence of digits, use that as the destination number for the call.',
+ 'type' => 'checkbox',
+ },
+
+ {
+ 'key' => 'cdr-intl_to_domestic_rewrite',
+ 'section' => 'telephony',
+ 'description' => 'Strip the "011" international prefix from CDR destination numbers if the rest of the number is 7 digits or shorter, and so probably does not contain a country code.',
+ 'type' => 'checkbox',
+ },
+
{
'key' => 'cdr-gsm_tap3-sender',
'section' => 'telephony',
{
'key' => 'tax-cust_exempt-groups-require_individual_nums',
'section' => 'deprecated',
- 'description' => 'Deprecated: see tax-cust_exempt-groups-number_requirement',
+ 'description' => 'Deprecated: see tax-cust_exempt-groups-num_req',
'type' => 'checkbox',
},
'rate_low' => 'Lowest rate first',
],
},
+
+ {
+ 'key' => 'cdr-lrn_lookup',
+ 'section' => 'telephony',
+ 'description' => 'Look up LRNs of destination numbers for exact matching to the terminating carrier. This feature requires a Freeside support contract.',
+ 'type' => 'checkbox',
+ },
{
'key' => 'brand-agent',