X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FConf.pm;h=0d891be250e761c11faf0efcf6c4d795fa73810a;hb=8c2973184d9e8e357f433b7380c7884454cc0293;hp=0cbf78baef49cb1833abd1db8cb6d12b0b159183;hpb=7ea8e16cf847c607bf917cb3b31110d18104a343;p=freeside.git diff --git a/FS/FS/Conf.pm b/FS/FS/Conf.pm index 0cbf78bae..0d891be25 100644 --- a/FS/FS/Conf.pm +++ b/FS/FS/Conf.pm @@ -976,6 +976,55 @@ worry that config_items is freeside-specific and icky. }, { + 'key' => 'invoice_latextopmargin', + 'section' => 'invoicing', + 'description' => 'Optional LaTeX invoice topmargin setting. Include units.', + 'type' => 'text', + 'per_agent' => 1, + 'validate' => sub { shift =~ + /^-?\d*\.?\d+(in|mm|cm|pt|em|ex|pc|bp|dd|cc|sp)$/ + ? '' : 'Invalid LaTex length'; + }, + }, + + { + 'key' => 'invoice_latexheadsep', + 'section' => 'invoicing', + 'description' => 'Optional LaTeX invoice headsep setting. Include units.', + 'type' => 'text', + 'per_agent' => 1, + 'validate' => sub { shift =~ + /^-?\d*\.?\d+(in|mm|cm|pt|em|ex|pc|bp|dd|cc|sp)$/ + ? '' : 'Invalid LaTex length'; + }, + }, + + { + 'key' => 'invoice_latexaddresssep', + 'section' => 'invoicing', + 'description' => 'Optional LaTeX invoice separation between invoice header +and customer address. Include units.', + 'type' => 'text', + 'per_agent' => 1, + 'validate' => sub { shift =~ + /^-?\d*\.?\d+(in|mm|cm|pt|em|ex|pc|bp|dd|cc|sp)$/ + ? '' : 'Invalid LaTex length'; + }, + }, + + { + 'key' => 'invoice_latextextheight', + 'section' => 'invoicing', + 'description' => 'Optional LaTeX invoice textheight setting. Include units.', + 'type' => 'text', + 'per_agent' => 1, + 'validate' => sub { shift =~ + /^-?\d*\.?\d+(in|mm|cm|pt|em|ex|pc|bp|dd|cc|sp)$/ + ? '' : 'Invalid LaTex length'; + }, + }, + + { 'key' => 'invoice_latexnotes', 'section' => 'invoicing', 'description' => 'Notes section for LaTeX typeset PostScript invoices.', @@ -1008,6 +1057,53 @@ worry that config_items is freeside-specific and icky. }, { + 'key' => 'invoice_latexextracouponspace', + 'section' => 'invoicing', + 'description' => 'Optional LaTeX invoice textheight space to reserve for a tear off coupon. Include units.', + 'type' => 'text', + 'per_agent' => 1, + 'validate' => sub { shift =~ + /^-?\d*\.?\d+(in|mm|cm|pt|em|ex|pc|bp|dd|cc|sp)$/ + ? '' : 'Invalid LaTex length'; + }, + }, + + { + 'key' => 'invoice_latexcouponfootsep', + 'section' => 'invoicing', + 'description' => 'Optional LaTeX invoice separation between tear off coupon and footer. Include units.', + 'type' => 'text', + 'per_agent' => 1, + 'validate' => sub { shift =~ + /^-?\d*\.?\d+(in|mm|cm|pt|em|ex|pc|bp|dd|cc|sp)$/ + ? '' : 'Invalid LaTex length'; + }, + }, + + { + 'key' => 'invoice_latexcouponamountenclosedsep', + 'section' => 'invoicing', + 'description' => 'Optional LaTeX invoice separation between total due and amount enclosed line. Include units.', + 'type' => 'text', + 'per_agent' => 1, + 'validate' => sub { shift =~ + /^-?\d*\.?\d+(in|mm|cm|pt|em|ex|pc|bp|dd|cc|sp)$/ + ? '' : 'Invalid LaTex length'; + }, + }, + { + 'key' => 'invoice_latexcoupontoaddresssep', + 'section' => 'invoicing', + 'description' => 'Optional LaTeX invoice separation between invoice data and the to address (usually invoice_latexreturnaddress). Include units.', + 'type' => 'text', + 'per_agent' => 1, + 'validate' => sub { shift =~ + /^-?\d*\.?\d+(in|mm|cm|pt|em|ex|pc|bp|dd|cc|sp)$/ + ? '' : 'Invalid LaTex length'; + }, + }, + + { 'key' => 'invoice_latexreturnaddress', 'section' => 'invoicing', 'description' => 'Return address for LaTeX typeset PostScript invoices.', @@ -1015,6 +1111,22 @@ worry that config_items is freeside-specific and icky. }, { + 'key' => 'invoice_latexverticalreturnaddress', + 'section' => 'invoicing', + 'description' => 'Place the return address under the company logo rather than beside it.', + 'type' => 'checkbox', + 'per_agent' => 1, + }, + + { + 'key' => 'invoice_latexcouponaddcompanytoaddress', + 'section' => 'invoicing', + 'description' => 'Add the company name to the To address on the remittance coupon because the return address does not contain it.', + 'type' => 'checkbox', + 'per_agent' => 1, + }, + + { 'key' => 'invoice_latexsmallfooter', 'section' => 'invoicing', 'description' => 'Optional small footer for multi-page LaTeX typeset PostScript invoices.', @@ -2082,6 +2194,14 @@ worry that config_items is freeside-specific and icky. }, { + 'key' => 'global_unique-pbx_title', + 'section' => '', + 'description' => 'Global phone number uniqueness control: enabled (usual setting - svc_pbx.title must be unique), or disabled turns off duplicate checking for this field.', + 'type' => 'select', + 'select_enum' => [ 'enabled', 'disabled' ], + }, + + { 'key' => 'svc_external-skip_manual', 'section' => 'UI', 'description' => 'When provisioning svc_external services, skip manual entry of id and title fields in the UI. Usually used in conjunction with an export that populates these fields (i.e. artera_turbo).', @@ -2131,7 +2251,12 @@ worry that config_items is freeside-specific and icky. } }, }, - + { + 'key' => 'ticket_system-force_default_queueid', + 'section' => '', + 'description' => 'Disallow queue selection when creating new tickets from customer view.', + 'type' => 'checkbox', + }, { 'key' => 'ticket_system-selfservice_queueid', 'section' => '', @@ -3382,6 +3507,22 @@ worry that config_items is freeside-specific and icky. }, { + 'key' => 'cdr-charged_party-field', + 'section' => '', + 'description' => 'Set the charged_party field of CDRs to this field.', + 'type' => 'select-sub', + 'options_sub' => sub { my $fields = FS::cdr->table_info->{'fields'}; + map { $_ => $fields->{$_}||$_ } + grep { $_ !~ /^(acctid|charged_party)$/ } + FS::Schema::dbdef->table('cdr')->columns; + }, + 'option_sub' => sub { my $f = shift; + FS::cdr->table_info->{'fields'}{$f} || $f; + }, + }, + + #probably deprecate in favor of cdr-charged_party-field above + { 'key' => 'cdr-charged_party-accountcode', 'section' => '', 'description' => 'Set the charged_party field of CDRs to the accountcode.', @@ -3466,6 +3607,14 @@ worry that config_items is freeside-specific and icky. }, { + 'key' => 'mc-outbound_packages', + 'section' => '', + 'description' => "Don't use this.", + 'type' => 'select-part_pkg', + 'multiple' => 1, + }, + + { 'key' => 'disable-cust-pkg_class', 'section' => 'UI', 'description' => 'Disable the two-step dropdown for selecting package class and package, and return to the classic single dropdown.', @@ -3638,6 +3787,40 @@ worry that config_items is freeside-specific and icky. 'type' => 'checkbox', }, + { + 'key' => 'cust_main-exports', + 'section' => '', + 'description' => 'Export(s) to call on cust_main insert, modification and deletion.', + 'type' => 'select-sub', + 'multiple' => 1, + 'options_sub' => sub { + require FS::Record; + require FS::part_export; + my @part_export = + map { qsearch( 'part_export', {exporttype => $_ } ) } + keys %{FS::part_export::export_info('cust_main')}; + map { $_->exportnum => $_->exporttype.' to '.$_->machine } @part_export; + }, + 'option_sub' => sub { + require FS::Record; + require FS::part_export; + my $part_export = FS::Record::qsearchs( + 'part_export', { 'exportnum' => shift } + ); + $part_export + ? $part_export->exporttype.' to '.$part_export->machine + : ''; + }, + }, + + { + 'key' => 'cust_tag-location', + 'section' => 'UI', + 'description' => 'Location where customer tags are displayed.', + 'type' => 'select', + 'select_enum' => [ 'misc_info', 'top' ], + }, + { key => "apacheroot", section => "deprecated", description => "DEPRECATED", type => "text" }, { key => "apachemachine", section => "deprecated", description => "DEPRECATED", type => "text" }, { key => "apachemachines", section => "deprecated", description => "DEPRECATED", type => "text" },