X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;ds=sidebyside;f=SL%2FLocale.pm;h=25e804333adbb1dbb072d1d9e85ac2d15011d45e;hb=e529f18ea59b9e078dbd8be695328f220ffb7cc1;hp=8495553e8fd4d1a1a1571e04184d8e36ee962920;hpb=e09e900d226835ec8d8983e0df5861157bcb2897;p=kivitendo-erp.git diff --git a/SL/Locale.pm b/SL/Locale.pm index 8495553e8..25e804333 100644 --- a/SL/Locale.pm +++ b/SL/Locale.pm @@ -80,11 +80,27 @@ sub _init { $self->{countrycode} = $country; if ($country && -d "locale/$country") { - local *IN; - if (open(IN, "<", "locale/$country/all")) { - my $code = join("", ); + if (open my $in, "<", "locale/$country/all") { + local $/ = undef; + my $code = <$in>; eval($code); - close(IN); + close($in); + } + + if (-d "locale/$country/more") { + opendir my $dh, "locale/$country/more" or die "can't open locale/$country/more: $!"; + my @files = sort grep -f "locale/$country/more/$_", readdir $dh; + close $dh; + + for my $file (@files) { + if (open my $in, "<", "locale/$country/more/$file") { + local $/ = undef; + my $code = <$in>; + eval($code); + close($in); + $self->{texts}{$_} = $self->{more_texts}{$_} for keys %{ $self->{more_texts} }; + } + } } }