View on
MetaCPAN is shutting down
For details read Perl NOC. After June 25th this page will redirect to
Gerda Shank > HTML-FormHandler-0.40013 > HTML::FormHandler::TraitFor::I18N



Annotate this POD


New  2
Open  1
View/Report Bugs
Source   Latest Release: HTML-FormHandler-0.40068


HTML::FormHandler::TraitFor::I18N - localization


version 0.40013

language_handle, _build_language_handle

Holds a Locale::Maketext (or other duck_type class with a 'maketext' method) language handle. The language handle is used to localize the error messages in the field's 'add_error' method. It's also used in various places in rendering to localize labels and button values, etc.

The builder for this attribute gets the Locale::Maketext language handle from the environment variable $ENV{LANGUAGE_HANDLE}:

    $ENV{LANGUAGE_HANDLE} = HTML::FormHandler::I18N->get_handle('en_en');

...or creates a default language handler using HTML::FormHandler::I18N. You can pass in an existing Locale::MakeText subclass instance or create one in a builder.

In a form class:

    sub _build_language_handle { MyApp::I18N::abc_de->new }

Passed into new or process:

    my $lh = MyApp::I18N::abc_de->new;
    my $form = MyApp::Form->new( language_handle => $lh );

If you do not set the language_handle, then Locale::Maketext and/or I18N::LangTags may guess, with unexpected results.

You can use non-Locale::Maketext language handles, such as Data::Localize. There's an example of building a Data::Localize language handle in t/xt/locale_data_localize.t in the distribution.

If you don't want a particular error message to go through localization, you can use 'push_errors' and 'push_form_errors' instead of 'add_error' and 'add_form_errors'.

Example of getting the language handle from the Catalyst context (where the Catalyst context is passed in with 'ctx'):

    has '+language_handle' => ( builder => 'get_language_handle_from_ctx' );
    sub get_language_handle_from_ctx {
        my $self = shift;
        return MyApp::I18N->get_handle(
            @{ $self->ctx->languages } );


FormHandler Contributors - see HTML::FormHandler


This software is copyright (c) 2012 by Gerda Shank.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

syntax highlighting: