X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FConf.pm;h=6ad3fcb823fc1c0f7a656cf4e54b617a49b11c69;hb=05419e3838b401019fed034f97e63e3d7e83b539;hp=485dea9903c7a842c60897ad3415152260a19e00;hpb=1d5c8cc1f28fb2a1a02c77cd08f55d02914f5179;p=freeside.git diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index 485dea990..6ad3fcb82 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -482,7 +482,14 @@ worry that config_items is freeside-specific and icky. { 'key' => 'deletecustomers', 'section' => 'UI', - 'description' => 'Enable customer deletions. Be very careful! Deleting a customer will remove all traces that this 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.', + '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', + }, + + { + '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? 'type' => 'checkbox', }, @@ -640,6 +647,13 @@ worry that config_items is freeside-specific and icky. 'type' => 'text', }, + { + 'key' => 'invoice_subject', + 'section' => 'billing', + 'description' => 'Subject: header on email invoices. Defaults to "Invoice". The following substitutions are available: $name, $name_short, $invoice_number, and $invoice_date.', + 'type' => 'text', + }, + { 'key' => 'invoice_template', 'section' => 'required', @@ -1183,6 +1197,13 @@ worry that config_items is freeside-specific and icky. 'type' => 'checkbox', }, + { + 'key' => 'username-colon', + 'section' => 'username', + 'description' => 'Allow the colon character (:) in usernames.', + 'type' => 'checkbox', + }, + { 'key' => 'safe-part_bill_event', 'section' => 'UI', @@ -1556,8 +1577,8 @@ worry that config_items is freeside-specific and icky. { 'key' => 'paymentforcedtobatch', - 'section' => 'UI', - 'description' => 'Causes per customer payment entry to be forced to a batch processor rather than performed realtime.', + 'section' => 'deprecated', + 'description' => 'See batch-enable_payby and realtime-disable_payby. Used to (for CHEK): Cause per customer payment entry to be forced to a batch processor rather than performed realtime.', 'type' => 'checkbox', }, @@ -1584,6 +1605,14 @@ worry that config_items is freeside-specific and icky. 'select_enum' => [ 'Framed-IP-Address', 'Framed-Address' ], }, + #http://dev.coova.org/svn/coova-chilli/doc/dictionary.chillispot + { + 'key' => 'radius-chillispot-max', + 'section' => '', + 'description' => 'Enable ChilliSpot (and CoovaChilli) Max attributes, specifically ChilliSpot-Max-{Input,Output,Total}-{Octets,Gigawords}.', + 'type' => 'checkbox', + }, + { 'key' => 'svc_acct-alldomains', 'section' => '', @@ -1612,6 +1641,24 @@ worry that config_items is freeside-specific and icky. 'type' => 'textarea', }, + { + 'key' => 'credit_card-recurring_billing_flag', + 'section' => 'billing', + 'description' => 'This controls when the system passes the "recurring_billing" flag on credit card transactions. If supported by your processor (and the Business::OnlinePayment processor module), passing the flag indicates this is a recurring transaction and may turn off the CVV requirement. ', + 'type' => 'select', + 'select_hash' => [ + 'actual_oncard' => 'Default/classic behavior: set the flag if a customer has actual previous charges on the card.', + 'transaction_is_recur' => 'Set the flag if the transaction itself is recurring, irregardless of previous charges on the card.', + ], + }, + + { + 'key' => 'credit_card-recurring_billing_acct_code', + 'section' => 'billing', + 'description' => 'When the "recurring billing" flag is set, also set the "acct_code" to "rebill". Useful for reporting purposes with supported gateways (PlugNPay, others?)', + 'type' => 'checkbox', + }, + { 'key' => 'cvv-save', 'section' => 'billing', @@ -1841,11 +1888,62 @@ worry that config_items is freeside-specific and icky. { 'key' => 'hylafax', - 'section' => '', + 'section' => 'billing', 'description' => 'Options for a HylaFAX server to enable the FAX invoice destination. They should be in the form of a space separated list of arguments to the Fax::Hylafax::Client::sendfax subroutine. You probably shouldn\'t override things like \'docfile\'. *Note* Only supported when using typeset invoices (see the invoice_latex configuration option).', 'type' => [qw( checkbox textarea )], }, + { + 'key' => 'cust_bill-ftpformat', + 'section' => 'billing', + 'description' => 'Enable FTP of raw invoice data - format.', + 'type' => 'select', + 'select_enum' => [ '', 'default', 'billco', ], + }, + + { + 'key' => 'cust_bill-ftpserver', + 'section' => 'billing', + 'description' => 'Enable FTP of raw invoice data - server.', + 'type' => 'text', + }, + + { + 'key' => 'cust_bill-ftpusername', + 'section' => 'billing', + 'description' => 'Enable FTP of raw invoice data - server.', + 'type' => 'text', + }, + + { + 'key' => 'cust_bill-ftppassword', + 'section' => 'billing', + 'description' => 'Enable FTP of raw invoice data - server.', + 'type' => 'text', + }, + + { + 'key' => 'cust_bill-ftpdir', + 'section' => 'billing', + 'description' => 'Enable FTP of raw invoice data - server.', + 'type' => 'text', + }, + + { + 'key' => 'cust_bill-spoolformat', + 'section' => 'billing', + 'description' => 'Enable spooling of raw invoice data - format.', + 'type' => 'select', + 'select_enum' => [ '', 'default', 'billco', ], + }, + + { + 'key' => 'cust_bill-spoolagent', + 'section' => 'billing', + 'description' => 'Enable per-agent spooling of raw invoice data.', + 'type' => 'checkbox', + }, + { 'key' => 'svc_acct-usage_suspend', 'section' => 'billing', @@ -1863,7 +1961,7 @@ worry that config_items is freeside-specific and icky. { 'key' => 'svc_acct-usage_threshold', 'section' => 'billing', - 'description' => 'The threshold (expressed as percentage) of acct.seconds or acct.up|down|totalbytes at which a warning message is sent to a service holder. Typically used in conjunction with prepaid packages and freeside-sqlradius-radacctd. Defaults to 80.', + 'description' => 'The threshold (expressed as percentage) of acct.seconds or acct.up|down|totalbytes at which a warning message is sent to a service holder. Typically used in conjunction with prepaid packages and freeside-sqlradius-radacctd.', 'type' => 'text', }, @@ -1966,12 +2064,55 @@ worry that config_items is freeside-specific and icky. }, { - 'key' => 'batch-enable', + 'key' => 'postal_invoice-fee_pkgpart', 'section' => 'billing', + 'description' => 'This allows selection of a package to insert on invoices for customers with postal invoices selected.', + 'type' => 'select-sub', + 'options_sub' => sub { require FS::Record; + require FS::part_pkg; + map { $_->pkgpart => $_->pkg } + FS::Record::qsearch('part_pkg', { disabled=>'' } ); + }, + 'option_sub' => sub { require FS::Record; + require FS::part_pkg; + my $part_pkg = FS::Record::qsearchs( + 'part_pkg', { 'pkgpart'=>shift } + ); + $part_pkg ? $part_pkg->pkg : ''; + }, + }, + + { + 'key' => 'postal_invoice-recurring_only', + 'section' => 'billing', + 'description' => 'The postal invoice fee is omitted on invoices without recurring charges when this is set', + 'type' => 'checkbox', + }, + + { + 'key' => 'batch-enable', + 'section' => 'deprecated', #make sure batch-enable_payby is set for + #everyone before removing 'description' => 'Enable credit card and/or ACH batching - leave disabled for real-time installations.', 'type' => 'checkbox', }, + { + 'key' => 'batch-enable_payby', + 'section' => 'billing', + 'description' => 'Enable batch processing for the specified payment types.', + 'type' => 'selectmultiple', + 'select_enum' => [qw( CARD CHEK )], + }, + + { + 'key' => 'realtime-disable_payby', + 'section' => 'billing', + 'description' => 'Disable realtime processing for the specified payment types.', + 'type' => 'selectmultiple', + 'select_enum' => [qw( CARD CHEK )], + }, + { 'key' => 'batch-default_format', 'section' => 'billing', @@ -2174,8 +2315,6 @@ worry that config_items is freeside-specific and icky. 'type' => 'checkbox', }, - - { 'key' => 'cust_main-require_phone', 'section' => '', @@ -2197,16 +2336,16 @@ worry that config_items is freeside-specific and icky. 'type' => 'select-sub', 'options_sub' => sub { require FS::Record; require FS::reason_type; - map { $_->typenum => $_->type } + map { $_->typenum => $_->type } FS::Record::qsearch('reason_type', { class=>'R' } ); - }, + }, 'option_sub' => sub { require FS::Record; require FS::reason_type; - my $reason_type = FS::Record::qsearchs( - 'reason_type', { 'typenum' => shift } - ); + my $reason_type = FS::Record::qsearchs( + 'reason_type', { 'typenum' => shift } + ); $reason_type ? $reason_type->type : ''; - }, + }, }, { @@ -2216,16 +2355,16 @@ worry that config_items is freeside-specific and icky. 'type' => 'select-sub', 'options_sub' => sub { require FS::Record; require FS::reason_type; - map { $_->typenum => $_->type } + map { $_->typenum => $_->type } FS::Record::qsearch('reason_type', { class=>'R' } ); - }, + }, 'option_sub' => sub { require FS::Record; require FS::reason_type; - my $reason_type = FS::Record::qsearchs( - 'reason_type', { 'typenum' => shift } - ); + my $reason_type = FS::Record::qsearchs( + 'reason_type', { 'typenum' => shift } + ); $reason_type ? $reason_type->type : ''; - }, + }, }, { @@ -2235,16 +2374,16 @@ worry that config_items is freeside-specific and icky. 'type' => 'select-sub', 'options_sub' => sub { require FS::Record; require FS::reason_type; - map { $_->typenum => $_->type } + map { $_->typenum => $_->type } FS::Record::qsearch('reason_type', { class=>'R' } ); - }, + }, 'option_sub' => sub { require FS::Record; require FS::reason_type; - my $reason_type = FS::Record::qsearchs( - 'reason_type', { 'typenum' => shift } - ); + my $reason_type = FS::Record::qsearchs( + 'reason_type', { 'typenum' => shift } + ); $reason_type ? $reason_type->type : ''; - }, + }, }, { @@ -2261,7 +2400,7 @@ worry that config_items is freeside-specific and icky. { 'key' => 'card_masking_method', 'section' => 'UI', - 'description' => 'Digits to display when masking credit cards. Note that the first six digits are necessary to canonically identify the credit card type (Visa/MC, Amex, Discover, Maestro, etc.) in all cases. The first four digits can identify the most common credit card types in most cases (Visa/MC, Amex, and Discover). The first two digits can distinguish between Visa/MC and Amex.', + 'description' => 'Digits to display when masking credit cards. Note that the first six digits are necessary to canonically identify the credit card type (Visa/MC, Amex, Discover, Maestro, etc.) in all cases. The first four digits can identify the most common credit card types in most cases (Visa/MC, Amex, and Discover). The first two digits can distinguish between Visa/MC and Amex. Note: You should manually remove stored paymasks if you change this value on an existing database, to avoid problems using stored cards.', 'type' => 'select', 'select_hash' => [ '' => '123456xxxxxx1234', @@ -2290,19 +2429,89 @@ worry that config_items is freeside-specific and icky. }, { - 'key' => 'disable_acl_changes', - 'section' => '', - 'description' => 'Disable all ACL changes, for demos.', + 'key' => 'cust_main-edit_agent_custid', + 'section' => 'UI', + 'description' => 'Enable editing of the agent_custid field.', 'type' => 'checkbox', }, { - 'key' => 'cust_main-edit_agent_custid', + 'key' => 'cust_main-default_areacode', 'section' => 'UI', - 'description' => 'Enable editing of the agent_custid field.', + 'description' => 'Default area code for customers.', + 'type' => 'text', + }, + + { + 'key' => 'cust_bill-max_same_services', + 'section' => 'billing', + 'description' => 'Maximum number of the same service to list individually on invoices before condensing to a single line listing the number of services. Defaults to 5.', + 'type' => 'text', + }, + + { + 'key' => 'suspend_email_admin', + 'section' => '', + 'description' => 'Destination admin email address to enable suspension notices', + 'type' => 'text', + }, + + { + 'key' => 'email_report-subject', + 'section' => '', + 'description' => 'Subject for reports emailed by freeside-fetch. Defaults to "Freeside report".', + 'type' => 'text', + }, + + { + 'key' => 'sg-multicustomer_hack', + 'section' => '', + 'description' => "Don't use this.", 'type' => 'checkbox', }, + { + 'key' => 'sg-ping_username', + 'section' => '', + 'description' => "Don't use this.", + 'type' => 'text', + }, + + { + 'key' => 'sg-ping_password', + 'section' => '', + 'description' => "Don't use this.", + 'type' => 'text', + }, + + { + 'key' => 'sg-login_username', + 'section' => '', + 'description' => "Don't use this.", + 'type' => 'text', + }, + + { + 'key' => 'queued-max_kids', + 'section' => '', + 'description' => 'Maximum number of queued processes. Defaults to 10.', + 'type' => 'text', + }, + + { + 'key' => 'cancelled_cust-noevents', + 'section' => 'billing', + 'description' => "Don't run events for cancelled customers", + 'type' => 'checkbox', + }, + + { + 'key' => 'svc_broadband-manage_link', + 'section' => 'UI', + 'description' => 'URL for svc_broadband "Manage Device" link. The following substitutions are available: $ip_addr.', + 'type' => 'text', + }, + ); 1;