use OpenILS::WWW::Proxy ('@sysconfdir@/opensrf_core.xml');
use OpenILS::WWW::Vandelay qw( @sysconfdir@/opensrf_core.xml );
use OpenILS::WWW::TemplateBatchBibUpdate qw( @sysconfdir@/opensrf_core.xml );
-use OpenILS::WWW::EGWeb ('@sysconfdir@/opensrf_core.xml', 'OpenILS::WWW::EGCatLoader', 'en-US');;
+use OpenILS::WWW::EGWeb ('@sysconfdir@/opensrf_core.xml', 'OpenILS::WWW::EGCatLoader', 'en_us');;
use OpenILS::WWW::IDL2js ('@sysconfdir@/opensrf_core.xml');
use OpenILS::WWW::FlatFielder;
use OpenILS::WWW::PhoneList ('@sysconfdir@/opensrf_core.xml');
sub child_init {
my $class = shift;
my $e = shift;
- my @locales = @_;
+ my %locales = @_;
# create a stub object with just enough in place
# to call init_ro_object_cache()
$stub->editor($e);
$stub->ctx($ctx);
- $stub->init_ro_object_cache();
- foreach my $locale (@locales) {
+ foreach my $locale (sort keys %locales) {
+ OpenSRF::AppSession->default_locale($locales{$locale});
$ctx->{locale} = $locale;
- OpenSRF::AppSession->default_locale($locale);
+ $stub->init_ro_object_cache();
# pre-cache various sets of objects
# known to be time-consuming to retrieve
# the first go around
- $ro_object_subs->{aou_tree}();
- $ro_object_subs->{aouct_tree}();
- $ro_object_subs->{get_ccvm}();
- $ro_object_subs->{get_authority_fields}(1);
+ $ro_object_subs->{$locale}->{aou_tree}();
+ $ro_object_subs->{$locale}->{aouct_tree}();
+ $ro_object_subs->{$locale}->{ccvm_list}();
+ $ro_object_subs->{$locale}->{get_authority_fields}(1);
}
}
$cache{map}{$hint} = {};
$locale_subs->{$get_key} = sub {
my $id = shift;
+ warn "my hint is $hint for $id";
return $cache{map}{$locale}{$hint}{$id} if $cache{map}{$locale}{$hint}{$id};
($cache{map}{$locale}{$hint}{$id}) = grep { $_->$ident_field eq $id } @{$locale_subs->{$list_key}->()};
return $cache{map}{$locale}{$hint}{$id};
my $bootstrap_config;
my @context_loaders_to_preinit = ();
-my @locales_to_preinit = ();
+my %locales_to_preinit = ();
sub import {
my ($self, $bootstrap_config, $loaders, $locales) = @_;
@context_loaders_to_preinit = split /\s+/, $loaders, -1 if defined($loaders);
- @locales_to_preinit = split /\s+/, $locales, -1 if defined($locales);
+ %locales_to_preinit = map { $_ => parse_eg_locale($_) }
+ split /\s+/, $locales, -1 if defined($locales);
}
sub child_init {
foreach my $loader (@context_loaders_to_preinit) {
eval {
$loader->use;
- $loader->child_init($e, @locales_to_preinit);
+ $loader->child_init($e, %locales_to_preinit);
};
}
return Apache2::Const::OK;