X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=FS%2FFS%2FConf.pm;h=2d7990906a76cd3c5cfdd5de3f2bcd1741860f31;hb=c847496da20e68be23c37d56b78fdfe33f0dfd33;hp=321ba0b89ce7ed599785558ba1c4bd18ac13a5b3;hpb=97bd512eba99c5d3b6c6f5ae5bfeaa48eeee1cd4;p=freeside.git diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index 321ba0b89..2d7990906 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -14,7 +14,6 @@ use FS::conf; use FS::Record qw(qsearch qsearchs); use FS::UID qw(dbh datasrc use_confcompat); use FS::Misc::Invoicing qw( spool_formats ); -use FS::Misc::Geo; $base_dir = '%%%FREESIDE_CONF%%%'; @@ -718,6 +717,18 @@ my %batch_gateway_options = ( }, ); +my @cdr_formats = ( + '' => '', + 'default' => 'Default', + 'source_default' => 'Default with source', + 'accountcode_default' => 'Default plus accountcode', + 'description_default' => 'Default with description field as destination', + 'basic' => 'Basic', + 'simple' => 'Simple', + 'simple2' => 'Simple with source', + 'accountcode_simple' => 'Simple with accountcode', +); + # takes the reason class (C, R, S) as an argument sub reason_type_options { my $reason_class = shift; @@ -749,6 +760,15 @@ sub reason_type_options { 'type' => 'text', }, + { + 'key' => 'event_log_level', + 'section' => 'notification', + 'description' => 'Store events in the internal log if they are at least this severe. "info" is the default, "debug" is very detailed and noisy.', + 'type' => 'select', + 'select_enum' => [ '', 'debug', 'info', 'notice', 'warning', 'error', ], + # don't bother with higher levels + }, + { 'key' => 'log_sent_mail', 'section' => 'notification', @@ -758,8 +778,8 @@ sub reason_type_options { { 'key' => 'alert_expiration', - 'section' => 'notification', - 'description' => 'Enable alerts about billing method expiration (i.e. expiring credit cards).', + 'section' => 'deprecated', + 'description' => 'Enable alerts about credit card expiration. This is obsolete and no longer works.', 'type' => 'checkbox', 'per_agent' => 1, }, @@ -774,7 +794,7 @@ sub reason_type_options { { 'key' => 'alerter_msgnum', - 'section' => 'notification', + 'section' => 'deprecated', 'description' => 'Template to use for credit card expiration alerts.', %msg_template_options, }, @@ -845,6 +865,13 @@ sub reason_type_options { 'type' => 'checkbox', }, + { + 'key' => 'anniversary-rollback', + 'section' => 'billing', + 'description' => 'When billing an anniversary package ordered after the 28th, roll the anniversary date back to the 28th instead of forward into the following month.', + 'type' => 'checkbox', + }, + { 'key' => 'encryption', 'section' => 'billing', @@ -907,7 +934,19 @@ sub reason_type_options { 'type' => 'text', 'per_agent' => 1, }, - + + { + 'key' => 'billco-account_num', + 'section' => 'billing', + 'description' => 'The data to place in the "Transaction Account No" / "TRACCTNUM" field.', + 'type' => 'select', + 'select_hash' => [ + 'invnum-date' => 'Invoice number - Date (default)', + 'display_custnum' => 'Customer number', + ], + 'per_agent' => 1, + }, + { 'key' => 'next-bill-ignore-time', 'section' => 'billing', @@ -976,6 +1015,14 @@ sub reason_type_options { 'select_enum' => [ '', qw( USD AUD CAD DKK EUR GBP ILS JPY NZD ) ], }, + { + 'key' => 'currency', + 'section' => 'billing', + 'description' => 'Currency', + 'type' => 'select', + 'select_enum' => [ '', qw( USD AUD CAD DKK EUR GBP ILS JPY NZD XAF ) ], + }, + { 'key' => 'business-batchpayment-test_transaction', 'section' => 'billing', @@ -1010,12 +1057,15 @@ sub reason_type_options { 'select_hash' => [ '%b %o, %Y' => 'Mon DDth, YYYY', '%e %b %Y' => 'DD Mon YYYY', + '%m/%d/%Y' => 'MM/DD/YYYY', + '%d/%m/%Y' => 'DD/MM/YYYY', + '%Y/%m/%d' => 'YYYY/MM/DD', ], }, { 'key' => 'deletecustomers', - 'section' => 'UI', + 'section' => 'deprecated', 'description' => 'Enable customer deletions. Be very careful! Deleting a customer will remove all traces that the customer ever existed! It should probably only be used when auditing a legacy database. Normally, you cancel all of a customers\' packages if they cancel service.', 'type' => 'checkbox', }, @@ -1023,13 +1073,13 @@ sub reason_type_options { { 'key' => 'deleteinvoices', 'section' => 'UI', - 'description' => 'Enable invoices deletions. Be very careful! Deleting an invoice will remove all traces that the invoice ever existed! Normally, you would apply a credit against the invoice instead.', #invoice voiding? + 'description' => 'Enable invoices deletions. Be very careful! Deleting an invoice will remove all traces that the invoice ever existed! Normally, you would void or apply a credit against the invoice instead.', 'type' => 'checkbox', }, { 'key' => 'deletepayments', - 'section' => 'billing', + 'section' => 'deprecated', 'description' => 'Enable deletion of unclosed payments. Really, with voids this is pretty much not recommended in any situation anymore. Be very careful! Only delete payments that were data-entry errors, not adjustments. Optionally specify one or more comma-separated email addresses to be notified when a payment is deleted.', 'type' => [qw( checkbox text )], }, @@ -1135,6 +1185,13 @@ sub reason_type_options { 'type' => 'checkbox', }, + { + 'key' => 'svc_acct-ip_addr', + 'section' => '', + 'description' => 'Enable IP address management on login services like for broadband services.', + 'type' => 'checkbox', + }, + { 'key' => 'exclude_ip_addr', 'section' => '', @@ -1472,7 +1529,7 @@ and customer address. Include units.', 'section' => 'invoicing', 'description' => 'Optional default invoice term, used to calculate a due date printed on invoices.', 'type' => 'select', - 'select_enum' => [ '', 'Payable upon receipt', 'Net 0', 'Net 3', 'Net 9', 'Net 10', 'Net 15', 'Net 20', 'Net 21', 'Net 30', 'Net 45', 'Net 60', 'Net 90' ], + 'select_enum' => [ '', 'Payable upon receipt', 'Net 0', 'Net 3', 'Net 9', 'Net 10', 'Net 15', 'Net 18', 'Net 20', 'Net 21', 'Net 30', 'Net 45', 'Net 60', 'Net 90' ], }, { @@ -1483,19 +1540,37 @@ and customer address. Include units.', }, { - 'key' => 'invoice_include_aging', + 'key' => 'invoice_sections', 'section' => 'invoicing', - 'description' => 'Show an aging line after the prior balance section. Only valud when invoice_sections is enabled.', + 'description' => 'Split invoice into sections and label according to package category when enabled.', 'type' => 'checkbox', + 'per_agent' => 1, }, { - 'key' => 'invoice_sections', + 'key' => 'invoice_include_aging', 'section' => 'invoicing', - 'description' => 'Split invoice into sections and label according to package category when enabled.', + 'description' => 'Show an aging line after the prior balance section. Only valid when invoice_sections is enabled.', 'type' => 'checkbox', }, + { + 'key' => 'invoice_sections_by_location', + 'section' => 'invoicing', + 'description' => 'Divide invoice into sections according to service location. Currently, this overrides sectioning by package category.', + 'type' => 'checkbox', + 'per_agent' => 1, + }, + + #quotations seem broken-ish with sections ATM? + #{ + # 'key' => 'quotation_sections', + # 'section' => 'invoicing', + # 'description' => 'Split quotations into sections and label according to package category when enabled.', + # 'type' => 'checkbox', + # 'per_agent' => 1, + #}, + { 'key' => 'usage_class_as_a_section', 'section' => 'invoicing', @@ -1593,6 +1668,7 @@ and customer address. Include units.', 'section' => 'required', 'description' => 'Print command for paper invoices, for example `lpr -h\'', 'type' => 'text', + 'per_agent' => 1, }, { @@ -1647,6 +1723,21 @@ and customer address. Include units.', 'type' => 'text', }, + { + 'key' => 'sip_passwordmin', + 'section' => 'telephony', + 'description' => 'Minimum SIP password length (default 6)', + 'type' => 'text', + }, + + { + 'key' => 'sip_passwordmax', + 'section' => 'telephony', + 'description' => 'Maximum SIP password length (default 8) (don\'t set this over 12 if you need to import or export crypt() passwords)', + 'type' => 'text', + }, + + { 'key' => 'password-noampersand', 'section' => 'password', @@ -1963,6 +2054,13 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'show_ship_company', + 'section' => 'UI', + 'description' => 'Turns on display/collection of a "service company name" field for customers.', + 'type' => 'checkbox', + }, + { 'key' => 'show_ss', 'section' => 'UI', @@ -2038,7 +2136,7 @@ and customer address. Include units.', 'key' => 'locale', 'section' => 'UI', 'description' => 'Default locale', - 'type' => 'select', + 'type' => 'select-sub', 'options_sub' => sub { map { $_ => FS::Locales->description($_) } FS::Locales->locales; }, @@ -2052,7 +2150,7 @@ and customer address. Include units.', 'section' => 'self-service', 'description' => 'Acceptable payment types for the signup server', 'type' => 'selectmultiple', - 'select_enum' => [ qw(CARD DCRD CHEK DCHK LECB PREPAY BILL COMP) ], + 'select_enum' => [ qw(CARD DCRD CHEK DCHK LECB PREPAY PPAL BILL COMP) ], }, { @@ -2113,10 +2211,17 @@ and customer address. Include units.', { 'key' => 'signup_server-default_svcpart', 'section' => 'self-service', - 'description' => 'Default service definition for the signup server - only necessary for services that trigger special provisioning widgets (such as DID provisioning).', + 'description' => 'Default service definition for the signup server - only necessary for services that trigger special provisioning widgets (such as DID provisioning or domain selection).', 'type' => 'select-part_svc', }, + { + 'key' => 'signup_server-default_domsvc', + 'section' => 'self-service', + 'description' => 'If specified, the default domain svcpart for signup (useful when domain is set to selectable choice).', + 'type' => 'text', + }, + { 'key' => 'signup_server-mac_addr_svcparts', 'section' => 'self-service', @@ -2208,6 +2313,12 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'selfservice-timeout', + 'section' => 'self-service', + 'description' => 'Timeout for the self-service login cookie, in seconds. Defaults to 1 hour.', + }, + { 'key' => 'backend-realtime', 'section' => 'billing', @@ -2426,7 +2537,7 @@ and customer address. Include units.', 'section' => 'billing', 'description' => 'Available payment types.', 'type' => 'selectmultiple', - 'select_enum' => [ qw(CARD DCRD CHEK DCHK LECB BILL CASH WEST MCRD COMP) ], + 'select_enum' => [ qw(CARD DCRD CHEK DCHK LECB BILL CASH WEST MCRD PPAL COMP) ], }, { @@ -2434,7 +2545,7 @@ and customer address. Include units.', 'section' => 'UI', 'description' => 'Default payment type. HIDE disables display of billing information and sets customers to BILL.', 'type' => 'select', - 'select_enum' => [ '', qw(CARD DCRD CHEK DCHK LECB BILL CASH WEST MCRD COMP HIDE) ], + 'select_enum' => [ '', qw(CARD DCRD CHEK DCHK LECB BILL CASH WEST MCRD PPAL COMP HIDE) ], }, { @@ -2889,7 +3000,7 @@ and customer address. Include units.', { 'key' => 'network_monitoring_system', 'section' => 'network_monitoring', - 'description' => 'Networking monitoring system (NMS) integration. Torrus_Internal uses the built-in Torrus ticketing system (see the integrated networking monitoring system installation instructions).', + 'description' => 'Networking monitoring system (NMS) integration. Torrus_Internal uses the built-in Torrus ticketing system (see the integrated networking monitoring system installation instructions).', 'type' => 'select', 'select_enum' => [ '', qw(Torrus_Internal) ], }, @@ -3219,6 +3330,14 @@ and customer address. Include units.', 'per_agent' => 1, }, + { + 'key' => 'ics-confirm_template', + 'section' => '', + 'description' => 'Confirmation email template for uploading to ICS invoice printing. Text::Template format, with variables "%count" and "%sum".', + 'type' => 'textarea', + 'per_agent' => 1, + }, + { 'key' => 'svc_acct-usage_suspend', 'section' => 'billing', @@ -3303,7 +3422,7 @@ and customer address. Include units.', { 'key' => 'cust_pkg-show_fcc_voice_grade_equivalent', 'section' => 'UI', - 'description' => "Show a field on package definitions for assigning a DS0 equivalency number suitable for use on FCC form 477.", + 'description' => "Show fields on package definitions for FCC Form 477 classification", 'type' => 'checkbox', }, @@ -3344,8 +3463,8 @@ and customer address. Include units.', { 'key' => 'echeck-nonus', - 'section' => 'billing', - 'description' => 'Disable ABA-format account checking for Electronic Check payment info', + 'section' => 'deprecated', + 'description' => 'Deprecated; see echeck-country instead. Used to disable ABA-format account checking for Electronic Check payment info', 'type' => 'checkbox', }, @@ -3469,7 +3588,7 @@ and customer address. Include units.', { 'key' => 'postal_invoice-recurring_only', 'section' => 'billing', - 'description' => 'The postal invoice fee is omitted on invoices without reucrring charges when this is set.', + 'description' => 'The postal invoice fee is omitted on invoices without recurring charges when this is set.', 'type' => 'checkbox', }, @@ -3502,7 +3621,7 @@ and customer address. Include units.', 'section' => 'billing', 'description' => 'Default format for batches.', 'type' => 'select', - 'select_enum' => [ 'csv-td_canada_trust-merchant_pc_batch', + 'select_enum' => [ 'NACHA', 'csv-td_canada_trust-merchant_pc_batch', 'csv-chase_canada-E-xactBatch', 'BoM', 'PAP', 'paymentech', 'ach-spiritone', 'RBC' ] @@ -3564,9 +3683,9 @@ and customer address. Include units.', 'section' => 'billing', 'description' => 'Fixed (unchangeable) format for electronic check batches.', 'type' => 'select', - 'select_enum' => [ 'csv-td_canada_trust-merchant_pc_batch', 'BoM', 'PAP', - 'paymentech', 'ach-spiritone', 'RBC', 'td_eft1464', - 'eft_canada' + 'select_enum' => [ 'NACHA', 'csv-td_canada_trust-merchant_pc_batch', 'BoM', + 'PAP', 'paymentech', 'ach-spiritone', 'RBC', + 'td_eft1464', 'eft_canada' ] }, @@ -3601,7 +3720,7 @@ and customer address. Include units.', { 'key' => 'batchconfig-paymentech', 'section' => 'billing', - 'description' => 'Configuration for Chase Paymentech batching, five lines: 1. BIN, 2. Terminal ID, 3. Merchant ID, 4. Username, 5. Password (for batch uploads)', + 'description' => 'Configuration for Chase Paymentech batching, six lines: 1. BIN, 2. Terminal ID, 3. Merchant ID, 4. Username, 5. Password (for batch uploads), 6. Flag to send recurring indicator.', 'type' => 'textarea', }, @@ -3620,18 +3739,39 @@ and customer address. Include units.', }, { - 'key' => 'batch-manual_approval', + 'key' => 'batchconfig-eft_canada', 'section' => 'billing', - 'description' => 'Allow manual batch closure, which will approve all payments that do not yet have a status. This is not advised, but is needed for payment processors that provide a report of rejected rather than approved payments.', - 'type' => 'checkbox', + 'description' => 'Configuration for EFT Canada batching, four lines: 1. SFTP username, 2. SFTP password, 3. Transaction code, 4. Number of days to delay process date. If you are using separate per-agent batches (batch-spoolagent), you must set this option separately for each agent, as the global setting will be ignored.', + 'type' => 'textarea', + 'per_agent' => 1, }, { - 'key' => 'batchconfig-eft_canada', + 'key' => 'batchconfig-nacha-destination', 'section' => 'billing', - 'description' => 'Configuration for EFT Canada batching, four lines: 1. SFTP username, 2. SFTP password, 3. Transaction code, 4. Number of days to delay process date.', - 'type' => 'textarea', - 'per_agent' => 1, + 'description' => 'Configuration for NACHA batching, Destination (9 digit transit routing number).', + 'type' => 'text', + }, + + { + 'key' => 'batchconfig-nacha-destination_name', + 'section' => 'billing', + 'description' => 'Configuration for NACHA batching, Destination (Bank Name, up to 23 characters).', + 'type' => 'text', + }, + + { + 'key' => 'batchconfig-nacha-origin', + 'section' => 'billing', + 'description' => 'Configuration for NACHA batching, Origin (your 10-digit company number, IRS tax ID recommended).', + 'type' => 'text', + }, + + { + 'key' => 'batch-manual_approval', + 'section' => 'billing', + 'description' => 'Allow manual batch closure, which will approve all payments that do not yet have a status. This is not advised unless needed for specific payment processors that provide a report of rejected rather than approved payments.', + 'type' => 'checkbox', }, { @@ -3698,20 +3838,6 @@ and customer address. Include units.', 'type' => 'text', }, - { - 'key' => 'cust_main-skeleton_tables', - 'section' => '', - 'description' => 'Tables which will have skeleton records inserted into them for each customer. Syntax for specifying tables is unfortunately a tricky perl data structure for now.', - 'type' => 'textarea', - }, - - { - 'key' => 'cust_main-skeleton_custnum', - 'section' => '', - 'description' => 'Customer number specifying the source data to copy into skeleton tables for new customers.', - 'type' => 'text', - }, - { 'key' => 'cust_main-enable_birthdate', 'section' => 'UI', @@ -3762,6 +3888,20 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'fuzzy-fuzziness', + 'section' => 'UI', + 'description' => 'Set the "fuzziness" of fuzzy searching (see the String::Approx manpage for details). Defaults to 10%', + 'type' => 'text', + }, + + { + 'key' => 'enable_fuzzy_on_exact', + 'section' => 'UI', + 'description' => 'Enable approximate customer searching even when an exact match is found.', + 'type' => 'checkbox', + }, + { 'key' => 'pkg_referral', 'section' => '', 'description' => 'Enable package-specific advertising sources.', @@ -3892,6 +4032,19 @@ and customer address. Include units.', 'per_agent' => 1, }, + { + 'key' => 'cust_bill-line_item-date_style-non_monthly', + 'section' => 'billing', + 'description' => 'If set, override cust_bill-line_item-date_style for non-monthly charges.', + 'type' => 'select', + 'select_hash' => [ '' => 'Default', + 'start_end' => 'STARTDATE-ENDDATE', + 'month_of' => 'Month of MONTHNAME', + 'X_month' => 'DATE_DESC MONTHNAME', + ], + 'per_agent' => 1, + }, + { 'key' => 'cust_bill-line_item-date_description', 'section' => 'billing', @@ -3931,7 +4084,7 @@ and customer address. Include units.', 'type' => 'select', 'multiple' => 1, 'select_hash' => [ - 'address1' => 'Billing address', + 'address' => 'Billing or service address', ], }, @@ -4021,6 +4174,13 @@ and customer address. Include units.', 'type' => [ qw(checkbox text) ], }, + { + 'key' => 'previous_balance-section', + 'section' => 'invoicing', + 'description' => 'Show previous invoice balances in a separate invoice section. Does not require invoice_sections to be enabled.', + 'type' => 'checkbox', + }, + { 'key' => 'previous_balance-summary_only', 'section' => 'invoicing', @@ -4042,6 +4202,13 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'previous_balance-payments_since', + 'section' => 'invoicing', + 'description' => 'Instead of showing payments (and credits) applied to the invoice, show those received since the previous invoice date.', + 'type' => 'checkbox', + }, + { 'key' => 'balance_due_below_line', 'section' => 'invoicing', @@ -4049,6 +4216,25 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'always_show_tax', + 'section' => 'invoicing', + 'description' => 'Show a line for tax on the invoice even when the tax is zero. Optionally provide text for the tax name to show.', + 'type' => [ qw(checkbox text) ], + }, + + { + 'key' => 'address_standardize_method', + 'section' => 'UI', #??? + 'description' => 'Method for standardizing customer addresses.', + 'type' => 'select', + 'select_hash' => [ '' => '', + 'usps' => 'U.S. Postal Service', + 'ezlocate' => 'EZLocate', + 'tomtom' => 'TomTom', + ], + }, + { 'key' => 'usps_webtools-userid', 'section' => 'UI', @@ -4063,6 +4249,27 @@ and customer address. Include units.', 'type' => 'text', }, + { + 'key' => 'tomtom-userid', + 'section' => 'UI', + 'description' => 'TomTom geocoding service API key. See the TomTom website to obtain a key. This is recommended for addresses in the United States only.', + 'type' => 'text', + }, + + { + 'key' => 'ezlocate-userid', + 'section' => 'UI', + 'description' => 'User ID for EZ-Locate service. See the TomTom website for access and pricing information.', + 'type' => 'text', + }, + + { + 'key' => 'ezlocate-password', + 'section' => 'UI', + 'description' => 'Password for EZ-Locate service.', + 'type' => 'text' + }, + { 'key' => 'cust_main-auto_standardize_address', 'section' => 'UI', @@ -4080,9 +4287,9 @@ and customer address. Include units.', { 'key' => 'census_year', 'section' => 'UI', - 'description' => 'The year to use in census tract lookups', + 'description' => 'The year to use in census tract lookups. NOTE: you need to select 2012 or 2013 for Year 2010 Census tract codes. A selection of 2011 provides Year 2000 Census tract codes. Use the freeside-censustract-update tool if exisitng customers need to be changed.', 'type' => 'select', - 'select_enum' => [ qw( 2012 2011 2010 ) ], + 'select_enum' => [ qw( 2013 2012 2011 ) ], }, { @@ -4090,7 +4297,12 @@ and customer address. Include units.', 'section' => 'UI', 'description' => 'The method to use to look up tax district codes.', 'type' => 'select', - 'select_hash' => [ FS::Misc::Geo::get_district_methods() ], + #'select_hash' => [ FS::Misc::Geo::get_district_methods() ], + #after RT#13763, using FS::Misc::Geo here now causes a dependancy loop :/ + 'select_hash' => [ + '' => '', + 'wa_sales' => 'Washington sales tax', + ], }, { @@ -4213,6 +4425,13 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'part_pkg-delay_start', + 'section' => '', + 'description' => 'Enabled "delayed start" option for packages.', + 'type' => 'checkbox', + }, + { 'key' => 'mcp_svcpart', 'section' => '', @@ -4408,6 +4627,31 @@ and customer address. Include units.', 'per_agent' => 1, }, + { + 'key' => 'selfservice-menu_disable', + 'section' => 'self-service', + 'description' => 'Disable the selected menu entries in the self-service menu', + 'type' => 'selectmultiple', + 'select_enum' => [ #false laziness w/myaccount_menu.html + 'Overview', + 'Purchase', + 'Purchase additional package', + 'Recharge my account with a credit card', + 'Recharge my account with a check', + 'Recharge my account with a prepaid card', + 'View my usage', + 'Create a ticket', + 'Setup my services', + 'Change my information', + 'Change billing address', + 'Change service address', + 'Change payment information', + 'Change password(s)', + 'Logout', + ], + 'per_agent' => 1, + }, + { 'key' => 'selfservice-menu_skipblanks', 'section' => 'self-service', @@ -4493,23 +4737,6 @@ and customer address. Include units.', 'type' => 'text', }, - { - 'key' => 'selfservice-bulk_format', - 'section' => 'deprecated', - 'description' => 'Parameter arrangement for selfservice bulk features', - 'type' => 'select', - 'select_enum' => [ '', 'izoom-soap', 'izoom-ftp' ], - 'per_agent' => 1, - }, - - { - 'key' => 'selfservice-bulk_ftp_dir', - 'section' => 'deprecated', - 'description' => 'Enable bulk ftp provisioning in this folder', - 'type' => 'text', - 'per_agent' => 1, - }, - { 'key' => 'signup-no_company', 'section' => 'self-service', @@ -4538,6 +4765,17 @@ and customer address. Include units.', 'type' => 'text', }, + { + 'key' => 'svc_phone-radius-password', + 'section' => 'telephony', + 'description' => 'Password when exporting svc_phone records to RADIUS', + 'type' => 'select', + 'select_hash' => [ + '' => 'Use default from svc_phone-radius-default_password config', + 'countrycode_phonenum' => 'Phone number (with country code)', + ], + }, + { 'key' => 'svc_phone-radius-default_password', 'section' => 'telephony', @@ -4652,6 +4890,13 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'cdr-taqua-callerid_rewrite', + 'section' => 'telephony', + 'description' => 'For the Taqua CDR format, pull Caller ID blocking information from secondary CDRs.', + 'type' => 'checkbox', + }, + { 'key' => 'cdr-asterisk_australia_rewrite', 'section' => 'telephony', @@ -4659,6 +4904,13 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'cdr-gsm_tap3-sender', + 'section' => 'telephony', + 'description' => 'GSM TAP3 Sender network (5 letter code)', + 'type' => 'text', + }, + { 'key' => 'cust_pkg-show_autosuspend', 'section' => 'UI', @@ -4702,6 +4954,13 @@ and customer address. Include units.', 'type' => 'text', }, + { + 'key' => 'queue-no_history', + 'section' => '', + 'description' => "Don't recreate the h_queue and h_queue_arg tables on upgrades. This can save disk space for large installs, especially when using prepaid or multi-process billing. After turning this option on, drop the h_queue and h_queue_arg tables, run freeside-dbdef-create and restart Apache and Freeside.", + 'type' => 'checkbox', + }, + { 'key' => 'cancelled_cust-noevents', 'section' => 'billing', @@ -4719,7 +4978,7 @@ and customer address. Include units.', { 'key' => 'svc_broadband-manage_link', 'section' => 'UI', - 'description' => 'URL for svc_broadband "Manage Device" link. The following substitutions are available: $ip_addr.', + 'description' => 'URL for svc_broadband "Manage Device" link. The following substitutions are available: $ip_addr and $mac_addr.', 'type' => 'text', }, @@ -4818,7 +5077,7 @@ and customer address. Include units.', { 'key' => 'pkg-balances', 'section' => 'billing', - 'description' => 'Enable experimental package balances. Not recommended for general use.', + 'description' => 'Enable per-package balances.', 'type' => 'checkbox', }, @@ -4927,13 +5186,6 @@ and customer address. Include units.', 'select_enum' => [ 'misc_info', 'top' ], }, - { - 'key' => 'maestro-status_test', - 'section' => 'UI', - 'description' => 'Display a link to the maestro status test page on the customer view page', - 'type' => 'checkbox', - }, - { 'key' => 'cust_main-custom_link', 'section' => 'UI', @@ -5019,7 +5271,7 @@ and customer address. Include units.', { 'key' => 'svc_phone-did-summary', 'section' => 'invoicing', - 'description' => 'Enable DID activity summary on invoices, showing # DIDs activated/deactivated/ported-in/ported-out and total minutes usage, covering period since last invoice.', + 'description' => 'Experimental feature to enable DID activity summary on invoices, showing # DIDs activated/deactivated/ported-in/ported-out and total minutes usage, covering period since last invoice.', 'type' => 'checkbox', }, @@ -5071,6 +5323,13 @@ and customer address. Include units.', 'type' => 'text', }, + { + 'key' => 'invoice_payment_details', + 'section' => 'invoicing', + 'description' => 'When displaying payments on an invoice, show the payment method used, including the check or credit card number. Credit card numbers will be masked.', + 'type' => 'checkbox', + }, + { 'key' => 'cust_main-status_module', 'section' => 'UI', @@ -5079,17 +5338,17 @@ and customer address. Include units.', 'select_enum' => [ 'Classic', 'Recurring' ], }, - { - 'key' => 'cust_main-print_statement_link', - 'section' => 'UI', - 'description' => 'Show a link to download a current statement for the customer.', + { + 'key' => 'username-pound', + 'section' => 'username', + 'description' => 'Allow the pound character (#) in usernames.', 'type' => 'checkbox', }, { - 'key' => 'username-pound', + 'key' => 'username-exclamation', 'section' => 'username', - 'description' => 'Allow the pound character (#) in usernames.', + 'description' => 'Allow the exclamation character (!) in usernames.', 'type' => 'checkbox', }, @@ -5207,6 +5466,19 @@ and customer address. Include units.', $cdr_type ? $cdr_type->cdrtypename : ''; }, }, + + { + 'key' => 'cdr-minutes_priority', + 'section' => 'telephony', + 'description' => 'Priority rule for assigning included minutes to CDRs.', + 'type' => 'select', + 'select_hash' => [ + '' => 'No specific order', + 'time' => 'Chronological', + 'rate_high' => 'Highest rate first', + 'rate_low' => 'Lowest rate first', + ], + }, { 'key' => 'brand-agent', @@ -5229,6 +5501,22 @@ and customer address. Include units.', 'type' => 'checkbox', }, + { + 'key' => 'selfservice-default_cdr_format', + 'section' => 'self-service', + 'description' => 'Format for showing outbound CDRs in self-service. The per-package option overrides this.', + 'type' => 'select', + 'select_hash' => \@cdr_formats, + }, + + { + 'key' => 'selfservice-default_inbound_cdr_format', + 'section' => 'self-service', + 'description' => 'Format for showing inbound CDRs in self-service. The per-package option overrides this. Leave blank to avoid showing these CDRs.', + 'type' => 'select', + 'select_hash' => \@cdr_formats, + }, + { 'key' => 'logout-timeout', 'section' => 'UI', @@ -5254,6 +5542,13 @@ and customer address. Include units.', 'type' => 'text', }, + { + 'key' => 'report-cust_pay-select_time', + 'section' => 'UI', + 'description' => 'Enable time selection on payment and refund reports.', + 'type' => 'checkbox', + }, + { key => "apacheroot", section => "deprecated", description => "DEPRECATED", type => "text" }, { key => "apachemachine", section => "deprecated", description => "DEPRECATED", type => "text" }, { key => "apachemachines", section => "deprecated", description => "DEPRECATED", type => "text" },