use vars qw( @ISA @EXPORT_OK $DEBUG );
use Exporter;
use Tie::IxHash;
+use File::Slurp;
use FS::UID qw( dbh driver_name );
use FS::Conf;
use FS::Record qw(qsearchs qsearch str2time_sql);
+use FS::upgrade_journal;
use FS::svc_domain;
$FS::svc_domain::whois_hack = 1;
$conf->touch('geocode-require_nw_coordinates')
if $conf->exists('svc_broadband-require-nw-coordinates');
+ unless ( $conf->config('echeck-country') ) {
+ if ( $conf->exists('cust_main-require-bank-branch') ) {
+ $conf->set('echeck-country', 'CA');
+ } elsif ( $conf->exists('echeck-nonus') ) {
+ $conf->set('echeck-country', 'XX');
+ } else {
+ $conf->set('echeck-country', 'US');
+ }
+ }
+
upgrade_overlimit_groups($conf);
map { upgrade_overlimit_groups($conf,$_->agentnum) } qsearch('agent', {});
-
+
+ my $DIST_CONF = '/usr/local/etc/freeside/default_conf/';#DIST_CONF in Makefile
+ $conf->set($_, scalar(read_file( "$DIST_CONF/$_" )) )
+ foreach grep { ! $conf->exists($_) && -s "$DIST_CONF/$_" }
+ qw( quotation_html quotation_latex quotation_latexnotes );
+
+ # change 'fslongtable' to 'longtable'
+ foreach my $name (qw(invoice_latex quotation_latex)) {
+ my $value = join("\n",$conf->config($name));
+ if (length($value)) {
+ $value =~ s/fslongtable/longtable/g;
+ $conf->set($name, $value);
+ }
+ }
+
}
sub upgrade_overlimit_groups {
'part_svc' => [],
'part_export' => [],
+ #insert default tower_sector if not present
+ 'tower' => [],
+
+ #routernum/blocknum
+ 'svc_broadband' => [],
+
+ #set up payment gateways if needed
+ 'pay_batch' => [],
+
+ #flag monthly tax exemptions
+ 'cust_tax_exempt_pkg' => [],
+
+ #kick off tax location history upgrade
+ 'cust_bill_pkg' => [],
;
\%hash;