The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

CatalystX::I18N::Model::Maketext - Glues Locale::Maketext into Catalyst

SYNOPSIS

 # In your catalyst base class
 package MyApp::Catalyst;
 use Catalyst qw/CatalystX::I18N::Role::Base/;
 
 __PACKAGE__->config(
    'Model::Maketext' => {
        class           => 'MyApp::Maketext', # optional
        directories     => '/path/to/maketext/files', # optional
    },
 );


 # Create a model class
 package MyApp::Model::Maketext;
 use parent qw/CatalystX::I18N::Model::Maketext/;


 # Create a Maketext class (must be a Locale::Maketext class)
 package MyApp::Maketext;
 use parent qw/CatalystX::I18N::Maketext/;


 # In your controller class(es)
 package MyApp::Controller::Main;
 use parent qw/Catalyst::Controller/;

 sub action : Local {
     my ($self,$c) = @_;
     
     my $model = $c->model('Maketext');
     $c->stash->{title} = $model->maketext('Hello world');
     # See CatalystX::I18N::Role::Maketext for a convinient wrapper
 }

DESCRIPTION

This model glues a Locale::Maketext class (eg. CatalystX::I18N::Maketext) into you Catalyst application.

The method fail_with will be called for each missing msgid if present in your model class.

 package MyApp::Model::Maketext;
 use parent qw/CatalystX::I18N::Model::Maketext/;
 
 sub fail_with {
     my ($self,$c,$language_handle,$msgid,$params) = @_;
     # Do somenthing clever
     return $string;
 }

See Catalyst::Helper::Model::Maketext for gerating an Maketext model from the command-line.

CONFIGURATION

class

Set the Locale::Maketext class you want to use from this model.

Defaults to $APPNAME::Maketext

gettext_style

Enable gettext style. %quant(%1,document,documents) instead of [quant,_1,document,documents]

Default TRUE

directories

Array reference of directories to be searched for maketext files.

See CatalystX::I18N::Maketext for more details on the directory parameter

SEE ALSO

CatalystX::I18N::Maketext, Locale::Maketext, Locale::Maketext::Lexicon and CatalystX::I18N::Role::Maketext

AUTHOR

    Maroš Kollár
    CPAN ID: MAROS
    maros [at] k-1.com
    
    L<http://www.k-1.com>