30 |
|
|
31 |
=cut |
=cut |
32 |
|
|
33 |
|
our $site_dbh; |
34 |
|
|
35 |
sub dbh { |
sub dbh { |
36 |
my $self = shift; |
my $self = shift; |
37 |
|
|
38 |
my $site = shift || $self->site || confess "no site"; |
my $site = shift || $self->site || confess "no site"; |
39 |
|
|
40 |
|
return $site_dbh->{$site} if $site_dbh->{$site}; |
41 |
|
|
42 |
my $config = Jifty->config->app('strix') or die "need strix config"; |
my $config = Jifty->config->app('strix') or die "need strix config"; |
43 |
my $database = $config->{database} or die "no strix.database in config"; |
my $database = $config->{database} or die "no strix.database in config"; |
44 |
|
|
53 |
|
|
54 |
my $dbh = DBI->connect( $dsn, $database->{user}, $database->{passwd} ) or die $DBI::errstr; |
my $dbh = DBI->connect( $dsn, $database->{user}, $database->{passwd} ) or die $DBI::errstr; |
55 |
|
|
56 |
|
$site_dbh->{$site} = $dbh; |
57 |
|
|
58 |
|
warn "## site_dbh = ",dump( $site_dbh ); |
59 |
|
|
60 |
return $dbh; |
return $dbh; |
61 |
} |
} |
62 |
|
|