use strict;
use vars qw(
@ISA @EXPORT_OK $DEBUG $me $cgi $dbh $freeside_uid $user
- $conf_dir $secrets $datasrc $db_user $db_pass %callback @callback
+ $conf_dir $cache_dir $secrets $datasrc $db_user $db_pass %callback @callback
$driver_name $AutoCommit $callback_hack $use_confcompat
);
use subs qw(
$freeside_uid = scalar(getpwnam('freeside'));
-$conf_dir = "%%%FREESIDE_CONF%%%";
+$conf_dir = "%%%FREESIDE_CONF%%%";
+$cache_dir = "%%%FREESIDE_CACHE%%%";
$AutoCommit = 1; #ours, not DBI
$use_confcompat = 1;
warn "$me forksuidsetup connected to database with handle $dbh\n" if $DEBUG;
warn "$me forksuidsetup loading schema\n" if $DEBUG;
- use FS::Schema qw(reload_dbdef);
+ use FS::Schema qw(reload_dbdef dbdef);
reload_dbdef("$conf_dir/dbdef.$datasrc")
unless $FS::Schema::setup_hack;
warn "$me forksuidsetup deciding upon config system to use\n" if $DEBUG;
- my $confcount = 0;
+ if ( ! $FS::Schema::setup_hack && dbdef->table('conf') ) {
- my $sth = $dbh->prepare("SELECT COUNT(*) FROM conf");
- if ( $sth ) {
- if ( $sth->execute ) {
- $confcount = $sth->fetchrow_arrayref->[0];
+ my $sth = $dbh->prepare("SELECT COUNT(*) FROM conf") or die $dbh->errstr;
+ $sth->execute or die $sth->errstr;
+ my $confcount = $sth->fetchrow_arrayref->[0];
+
+ if ($confcount) {
+ $use_confcompat = 0;
+ }else{
+ warn "NO CONFIGURATION RECORDS FOUND";
}
- }
- if ($confcount) {
- $use_confcompat = 0;
- }else{
- warn "NO CONFIGURATION RECORDS FOUND";
+ } else {
+ warn "NO CONFIGURATION TABLE FOUND";
}
unless ( $callback_hack ) {