- if (exists $self->{subs}{$text}) {
- $text = $self->{subs}{$text};
- } else {
- if ($self->{countrycode} && $self->{NLS_file}) {
- Form->error(
- "$text not defined in locale/$self->{countrycode}/$self->{NLS_file}");
+ if (!$self->{texts_reverse}) {
+ $self->{texts_reverse} = { };
+ while (my ($original, $translation) = each %{ $self->{texts} }) {
+ $original = lc $original;
+ $original =~ s/[^a-z0-9]/_/g;
+ $original =~ s/_+/_/g;
+
+ $translation = lc $translation;
+
+ $self->{texts_reverse}->{$translation} ||= [ ];
+ push @{ $self->{texts_reverse}->{$translation} }, $original;