BEGIN {
unshift @INC, "modules/override"; # Use our own versions of various modules (e.g. YAML).
push @INC, "modules/fallback"; # Only use our own versions of modules if there's no system version.
- push @INC, "SL"; # FCGI won't find modules that are not properly named. Help it by inclduging SL
}
use CGI qw( -no_xhtml);
use English qw(-no_match_vars);
use SL::Auth;
use SL::LXDebug;
+use SL::LxOfficeConf;
use SL::Locale;
use SL::Common;
+use SL::Form;
use SL::Helper::DateTime;
-use Form;
use List::Util qw(first);
use File::Basename;
my $template = shift;
my $error_type = shift || '';
- $::locale = Locale->new($::language);
+ $::locale = Locale->new($::lx_office_conf{system}->{language});
$::form->{error} = $::locale->text('The session is invalid or has expired.') if ($error_type eq 'session');
$::form->{error} = $::locale->text('Incorrect password!.') if ($error_type eq 'password');
- $::myconfig{countrycode} = $::language;
+ $::myconfig{countrycode} = $::lx_office_conf{system}->{language};
$::form->{stylesheet} = 'css/lx-office-erp.css';
$::form->header;
}
sub pre_startup_setup {
- eval {
- package main;
- require "config/lx-erp.conf";
- };
- eval {
- package main;
- require "config/lx-erp-local.conf";
- } if -f "config/lx-erp-local.conf";
-
- read_config 'config/lx_office.conf' => %::lx_office_conf;
- _decode_recursively(\%::lx_office_conf);
+ SL::LxOfficeConf->read;
_init_environment();
eval {
# canonial globals. if it's not here, chances are it will get refactored someday.
{
no warnings 'once';
- $::menufile = "menu.ini";
- $::sendmail = "| /usr/sbin/sendmail -t";
$::lxdebug = LXDebug->new;
$::auth = SL::Auth->new;
$::form = undef;
$self->unrequire_bin_mozilla;
$::cgi = CGI->new('');
- $::locale = Locale->new($::language);
+ $::locale = Locale->new($::lx_office_conf{system}->{language});
$::form = Form->new;
%::called_subs = ();
return $self->{interface} =~ m/f(?:ast)cgi/i ? $self->{request}->GetHandles() : (\*STDIN, \*STDOUT, \*STDERR);
}
-sub _decode_recursively {
- my ($obj) = @_;
-
- while (my ($key, $value) = each %{ $obj }) {
- if (ref($value) eq 'HASH') {
- _decode_recursively($value);
- } else {
- $obj->{$key} = decode('UTF-8', $value);
- }
- }
-}
-
sub _init_environment {
my %key_map = ( lib => { name => 'PERL5LIB', append_path => 1 },
path => { name => 'PATH', append_path => 1 },