-sub get_user_dbh {
- my ($self, $login, %params) = @_;
- my $may_fail = delete $params{may_fail};
-
- my %user = $self->read_user(login => $login);
- my $dbh = SL::DBConnect->connect(
- $user{dbconnect},
- $user{dbuser},
- $user{dbpasswd},
- {
- pg_enable_utf8 => $::locale->is_utf8,
- AutoCommit => 0
- }
- );
-
- if (!$may_fail && !$dbh) {
- $::form->error($::locale->text('The connection to the authentication database failed:') . "\n" . $DBI::errstr);
- }
-
- if ($user{dboptions} && $dbh) {
- $dbh->do($user{dboptions}) or $::form->dberror($user{dboptions});
- }
-
- return $dbh;
-}
-