+__END__
+
+=pod
+
+=encoding utf8
+
+=head1 NAME
+
+SL::DBConnect - Connect to database for configured client/user,
+optionally routing through DBIx::Log4perl
+
+=head1 SYNOPSIS
+
+ # Connect to default database of current user/client, disabling auto
+ # commit mode:
+ my @options_suitable_for_dbi_connect =
+ SL::DBConnect->get_connect_args(AutoCommit => 0);
+ my $dbh = SL::DBConnect->connect(@options_suitable_for_dbi_connect);
+
+ # Connect to a very specific database:
+ my $dbh = SL::DBConnect->connect('dbi:Pg:dbname=demo', 'user', 'password');
+
+=head1 FUNCTIONS
+
+=over 4
+
+=item C<connect [@dbi_args]>
+
+Connects to the database. If the configuration parameter
+C<debug.dbix_log4perl> is set then the call is made through
+L<DBIx::Log4perl/connect>. Otherwise L<DBI/connect> is called directly.
+
+In each case C<@dbi_args> is passed through as-is.
+
+If C<@dbi_args> are not given they're generated by a call to
+L</get_connect_args>.
+
+=item C<get_connect_args [%options]>
+
+Returns an array of database connection settings suitable to a call to
+L<DBI/connect> or L</connect>. The settings to use are retrieved by
+calling L<SL::DB/_register_db>.
+
+This requires that a client has been set up with
+L<SL::Auth/set_client> or that C<%::myconfig> contains legacy
+connection settings.
+
+C<%options> are optional database options like C<AutoCommit> (fourth
+parameter to L<DBI/connect>). They're merged with default settings by
+filtering them through L/get_options>.
+
+=item C<get_datestyle [$dateformat]>
+
+Returns the appropriate value for the C<SET DateStyle to...> SQL call
+depending on C<$dateformat> (e.g. C<SQL, EUROPEAN> if C<$dateformat>
+equals C<dd.mm.yy>). If C<$dateformat> is not given then it defaults
+to C<$::myconfig{dateformat}>.
+
+=item C<get_initial_sql>
+
+Returns SQL commands that should be executed right after a connection
+has been established. This is usually the call to configure the
+C<DateStyle> format used by the database.
+
+=item C<get_options [%options]>
+
+Returns a hash reference of database options (fourth parameter to
+L<DBI/connect>) merged with certain default options.
+
+=back
+
+=head1 BUGS
+
+Nothing here yet.
+
+=head1 AUTHOR
+
+Moritz Bunkus E<lt>m.bunkus@linet-services.deE<gt>
+
+=cut