Lines 18-27
package Koha::I18N;
Link Here
|
18 |
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
18 |
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
19 |
|
19 |
|
20 |
use Modern::Perl; |
20 |
use Modern::Perl; |
21 |
use base qw(Locale::Maketext); |
21 |
use base qw(Locale::Maketext Exporter); |
22 |
|
22 |
|
23 |
use C4::Templates; |
23 |
use CGI; |
24 |
use C4::Context; |
24 |
use C4::Languages; |
25 |
|
25 |
|
26 |
use Locale::Maketext::Lexicon { |
26 |
use Locale::Maketext::Lexicon { |
27 |
'en' => ['Auto'], |
27 |
'en' => ['Auto'], |
Lines 31-52
use Locale::Maketext::Lexicon {
Link Here
|
31 |
. '/misc/translator/po/*-messages.po' |
31 |
. '/misc/translator/po/*-messages.po' |
32 |
], |
32 |
], |
33 |
'_AUTO' => 1, |
33 |
'_AUTO' => 1, |
|
|
34 |
'_style' => 'gettext', |
34 |
}; |
35 |
}; |
35 |
|
36 |
|
36 |
sub get_handle_from_context { |
37 |
our @EXPORT = qw( gettext ); |
37 |
my ($class, $cgi, $interface) = @_; |
38 |
|
38 |
|
39 |
my %language_handles; |
39 |
my $lh; |
40 |
|
40 |
my $lang = C4::Templates::getlanguage($cgi, $interface); |
41 |
sub get_language_handle { |
41 |
if ($lang) { |
42 |
my $cgi = new CGI; |
42 |
$lh = $class->get_handle($lang) |
43 |
my $language = C4::Languages::getlanguage; |
43 |
or die "No language handle for '$lang'"; |
44 |
|
44 |
} else { |
45 |
if (not exists $language_handles{$language}) { |
45 |
$lh = $class->get_handle() |
46 |
$language_handles{$language} = __PACKAGE__->get_handle($language) |
46 |
or die "Can't get a language handle"; |
47 |
or die "No language handle for '$language'"; |
47 |
} |
48 |
} |
48 |
|
49 |
|
49 |
return $lh; |
50 |
return $language_handles{$language}; |
|
|
51 |
} |
52 |
|
53 |
sub gettext { |
54 |
my $lh = get_language_handle; |
55 |
$lh->maketext(@_); |
50 |
} |
56 |
} |
51 |
|
57 |
|
52 |
1; |
58 |
1; |