$hashref->{agentnum} = $agentnum;
local $FS::Record::conf = undef; # XXX evil hack prevents recursion
my $cv = FS::Record::qsearchs('conf', $hashref);
- if (!$cv && defined($agentnum)) {
+ if (!$cv && defined($agentnum) && $agentnum) {
$hashref->{agentnum} = '';
$cv = FS::Record::qsearchs('conf', $hashref);
}
my $self = shift;
return $self->_usecompat('config', @_) if use_confcompat;
- my($name,$agentnum)=@_;
+ my($name, $agentnum)=@_;
+
+ carp "FS::Conf->config($name, $agentnum) called"
+ if $DEBUG > 1;
+
my $cv = $self->_config($name, $agentnum) or return;
if ( wantarray ) {
my $self = shift;
return $self->_usecompat('exists', @_) if use_confcompat;
- my($name,$agentnum)=@_;
+ my($name, $agentnum)=@_;
+
+ carp "FS::Conf->exists($name, $agentnum) called"
+ if $DEBUG > 1;
+
defined($self->_config($name, $agentnum));
}
'section' => 'billing',
'description' => 'Template file for billing method expiration alerts. See the <a href="http://www.freeside.biz/mediawiki/index.php/Freeside:1.7:Documentation:Administration#Credit_cards_and_Electronic_checks">billing documentation</a> for details.',
'type' => 'textarea',
+ 'per-agent' => 1,
},
{
'section' => 'required',
'description' => 'Return address on email invoices',
'type' => 'text',
+ 'per_agent' => 1,
+ },
+
+ {
+ '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',
+ 'per_agent' => 1,
},
{
},
{
+ 'key' => 'ignore_incalculable_taxes',
+ 'section' => 'billing',
+ 'description' => 'Prefer to invoice without tax over not billing at all',
+ 'type' => 'checkbox',
+ },
+
+ {
'key' => 'welcome_email',
'section' => '',
'description' => 'Template file for welcome email. Welcome emails are sent to the customer email invoice destination(s) each time a svc_acct record is created. See the <a href="http://search.cpan.org/dist/Text-Template/lib/Text/Template.pm">Text::Template</a> documentation for details on the template substitution language. The following variables are available<ul><li><code>$username</code> <li><code>$password</code> <li><code>$first</code> <li><code>$last</code> <li><code>$pkg</code></ul>',
},
{
+ 'key' => 'global_unique-phonenum',
+ 'section' => '',
+ 'description' => 'Global phone number uniqueness control: none (usual setting - check countrycode+phonenumun uniqueness per exports), or countrycode+phonenum (all countrycode+phonenum pairs are globally unique, regardless of exports). disabled turns off duplicate checking completely and is STRONGLY NOT RECOMMENDED unless you REALLY need to turn this off.',
+ 'type' => 'select',
+ 'select_enum' => [ 'none', 'countrycode+phonenum', '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).',
'section' => 'required',
'description' => 'Your company name',
'type' => 'text',
+ 'per_agent' => 1, #XXX just FS/FS/ClientAPI/Signup.pm
},
{
'section' => 'required',
'description' => 'Your company address',
'type' => 'textarea',
+ 'per_agent' => 1,
},
{
},
{
+ 'key' => 'cust_pkg-always_show_location',
+ 'section' => 'UI',
+ 'description' => "Always display package locations, even when they're all the default service address.",
+ 'type' => 'checkbox',
+ },
+
+ {
'key' => 'svc_acct-edit_uid',
'section' => 'shell',
'description' => 'Allow UID editing.',
{
'key' => 'tax-ship_address',
'section' => 'billing',
- 'description' => 'By default, tax calculations are done based on the billing address. Enable this switch to calculate tax based on the shipping address instead. Note: Tax reports can take a long time when enabled.',
+ 'description' => 'By default, tax calculations are done based on the billing address. Enable this switch to calculate tax based on the shipping address instead.',
+ 'type' => 'checkbox',
+ }
+,
+ {
+ 'key' => 'tax-pkg_address',
+ 'section' => 'billing',
+ 'description' => 'By default, tax calculations are done based on the billing address. Enable this switch to calculate tax based on the package address instead (when present).',
'type' => 'checkbox',
},
{
'key' => 'logo.png',
'section' => 'billing', #?
- 'description' => 'An image to include in some types of invoices',
- 'type' => 'binary',
+ 'description' => 'Company logo for HTML invoices and the backoffice interface, in PNG format. Suggested size somewhere near 92x62.',
+ 'type' => 'image',
+ 'per_agent' => 1, #XXX just view/logo.cgi, which is for the global
+ #old-style editor anyway...?
},
{
'key' => 'logo.eps',
'section' => 'billing', #?
- 'description' => 'An image to include in some types of invoices',
+ 'description' => 'Company logo for printed and PDF invoices, in EPS format.',
'type' => 'binary',
+ 'per_agent' => 1, #XXX as above, kinda
},
{
'type' => 'text',
},
+ {
+ 'key' => 'cdr-charged_party-accountcode',
+ 'section' => '',
+ 'description' => 'Set the charged_party field of CDRs to the accountcode.',
+ 'type' => 'checkbox',
+ },
+
+ {
+ 'key' => 'cdr-taqua-da_rewrite',
+ 'section' => '',
+ 'description' => 'For the Taqua CDR format, a comma-separated list of directory assistance 800 numbers. Any CDRs with these numbers as "BilledNumber" will be rewritten to the "CallingPartyNumber" (and CallType "12") on import.',
+ 'type' => 'text',
+ },
+
+ {
+ 'key' => 'cust_pkg-show_autosuspend',
+ 'section' => 'UI',
+ 'description' => 'Show package auto-suspend dates. Use with caution for now; can slow down customer view for large insallations.',
+ 'type' => 'checkbox',
+ },
+
);
1;