+ {
+ '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',
+ 'description' => 'URL to use as source for the "Custom" tab in the View Customer page. The custnum will be appended.',
+ 'type' => 'text',
+ },
+
+ {
+ 'key' => 'cust_main-custom_title',
+ 'section' => 'UI',
+ 'description' => 'Title for the "Custom" tab in the View Customer page.',
+ 'type' => 'text',
+ },
+
+ {
+ 'key' => 'part_pkg-default_suspend_bill',
+ 'section' => 'billing',
+ 'description' => 'Default the "Continue recurring billing while suspended" flag to on for new package definitions.',
+ 'type' => 'checkbox',
+ },
+
+ {
+ 'key' => 'qual-alt-address-format',
+ 'section' => 'UI',
+ 'description' => 'Enable the alternate address format (location type, number, and kind) on qualifications',
+ 'type' => 'checkbox',
+ },
+
+ {
+ 'key' => 'note-classes',
+ 'section' => 'UI',
+ 'description' => 'Use customer note classes',
+ 'type' => 'select',
+ 'select_hash' => [
+ 0 => 'Disabled',
+ 1 => 'Enabled',
+ 2 => 'Enabled, with tabs',
+ ],
+ },
+
+ {
+ 'key' => 'svc_acct-cf_privatekey-message',
+ 'section' => '',
+ 'description' => 'For internal use: HTML displayed when cf_privatekey field is set.',
+ 'type' => 'textarea',
+ },
+
+ {
+ 'key' => 'menu-prepend_links',
+ 'section' => 'UI',
+ 'description' => 'Links to prepend to the main menu, one per line, with format "URL Link Label (optional ALT popup)".',
+ 'type' => 'textarea',
+ },
+
+ {
+ 'key' => 'cust_main-external_links',
+ 'section' => 'UI',
+ 'description' => 'External links available in customer view, one per line, with format "URL Link Label (optional ALT popup)". The URL will have custnum appended.',
+ 'type' => 'textarea',
+ },
+
+ {
+ 'key' => 'svc_phone-did-summary',
+ 'section' => 'invoicing',
+ 'description' => 'Enable DID activity summary for past 30 days on invoices, showing # DIDs activated/deactivated/ported-in/ported-out and total minutes usage',
+ 'type' => 'checkbox',
+ },
+
+ {
+ 'key' => 'opensips_gwlist',
+ 'section' => 'telephony',
+ 'description' => 'For svc_phone OpenSIPS dr_rules export, gwlist column value, per-agent',
+ 'type' => 'text',
+ 'per_agent' => 1,
+ 'agentonly' => 1,
+ },
+
+ {
+ 'key' => 'opensips_description',
+ 'section' => 'telephony',
+ 'description' => 'For svc_phone OpenSIPS dr_rules export, description column value, per-agent',
+ 'type' => 'text',
+ 'per_agent' => 1,
+ 'agentonly' => 1,
+ },
+
+ {
+ 'key' => 'opensips_route',
+ 'section' => 'telephony',
+ 'description' => 'For svc_phone OpenSIPS dr_rules export, routeid column value, per-agent',
+ 'type' => 'text',
+ 'per_agent' => 1,
+ 'agentonly' => 1,
+ },
+
+ {
+ 'key' => 'cust_bill-no_recipients-error',
+ 'section' => 'invoicing',
+ 'description' => 'For customers with no invoice recipients, throw a job queue error rather than the default behavior of emailing the invoice to the invoice_from address.',
+ 'type' => 'checkbox',
+ },
+
+ {
+ 'key' => 'cust_main-status_module',
+ 'section' => 'UI',
+ 'description' => 'Which module to use for customer status display. The "Classic" module (the default) considers accounts with cancelled recurring packages but un-cancelled one-time charges Inactive. The "Recurring" module considers those customers Cancelled. Similarly for customers with suspended recurring packages but one-time charges.', #other differences?
+ 'type' => 'select',
+ 'select_enum' => [ 'Classic', 'Recurring' ],
+ },
+
+ {
+ 'key' => 'username-pound',
+ 'section' => 'username',
+ 'description' => 'Allow the pound character (#) in usernames.',
+ 'type' => 'checkbox',
+ },
+