|
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; |