use DBI;
use HTML::Entities;
use Time::HiRes;
+use Locale::gettext;
+use POSIX;
use strict;
use warnings;
+require '../intl/Sesse::GettextizeTemplates.pm';
+
+require '../config.pm';
+-r '../config.local.pm' and require '../config.local.pm';
+
+POSIX::setlocale( &POSIX::LC_CTYPE , $ccbs::config::lang );
+POSIX::setlocale( &POSIX::LC_MESSAGES , $ccbs::config::lang );
+Locale::gettext::bindtextdomain("ccbs", "po");
+Locale::gettext::textdomain("ccbs");
our $start_time;
$start_time = [Time::HiRes::gettimeofday()];
}
-our $ccbs_dbdebug = 0;
+# Hack to get the non-templatized gettext stuff working
+*_ = sub {
+ return Locale::gettext::gettext(@_);
+};
-# Set this flag to disable any admin tasks -- it's quite crude, but hey :-)
-our $ccbs_noadmin = 0;
-
sub print_header {
print CGI::header(-type=>'text/html; charset=utf-8');
}
}
sub db_connect {
- $ccbs_dbdebug = defined(shift) ? 1 : 0;
-
- my $dbh = DBI->connect("dbi:Pg:dbname=ccbs;host=altersex.samfundet.no", "ccbs", "GeT|>>B_")
+ my $dbh = DBI->connect("dbi:Pg:dbname=ccbs;host=www.positivegaming.com", "ccbs", "GeT|>>B_")
or die "Couldn't connect to database";
$dbh->{RaiseError} = 1;
return $dbh;
$q->execute(@parms)
or die "Could not execute query: " . $dbh->errstr;
- if ($ccbs_dbdebug) {
+ if ($config::ccbs::dbdebug) {
warn $sql;
warn "params=" . join(', ', @parms);
}
my @ret = ();
while (my $ref = $q->fetchrow_hashref()) {
- if ($ccbs_dbdebug) {
+ if ($config::ccbs::dbdebug) {
my $dbstr = "";
for my $k (sort keys %$ref) {
$dbstr .= " " . $k . "=" . $ref->{$k};
my ($page, $title, $vars) = @_;
$vars->{'page'} = $page;
$vars->{'title'} = $title;
- $vars->{'public'} = $ccbs_noadmin;
+ $vars->{'public'} = $config::ccbs::noadmin;
$vars->{'timetogenerate'} = sprintf "%.3f", Time::HiRes::tv_interval($start_time);
my $config = {
INTERPOLATE => 1,
POST_CHOMP => 1,
EVAL_PERL => 1,
+ FACTORY => 'Sesse::GettextizeTemplates'
};
my $template = Template->new($config);
my $msg = shift;
ccbs::print_header();
- ccbs::process_template('user-error.tmpl', 'Feil',
+ ccbs::process_template('user-error.tmpl', _('Error'),
{ message => $msg });
exit;
}
sub admin_only {
- user_error("Beklager, databasen står i no-admin-mode.") if ($ccbs_noadmin);
+ user_error(_("Sorry, the database is in no-admin-mode.")) if ($config::ccbs::noadmin);
}
$SIG{__DIE__} = sub {
return if $msg =~ m#Win32/Registry.pm#;
ccbs::print_header();
- ccbs::process_template('error.tmpl', 'Internal Server Error',
+ ccbs::process_template('error.tmpl', _('Internal Server Error'),
{ message => HTML::Entities::encode_entities($msg) });
};