Show
Ignore:
Timestamp:
04/30/08 01:04:07 (7 years ago)
Author:
vkgtaro
Message:
  • Messages クラスに分けるだけ分けた。
    • _conv_messages はそっちに持って行く必要があると思う。
  • Test::Spelling >_<
Location:
lang/perl/FormValidator-LazyWay/trunk
Files:
1 added
2 modified

Legend:

Unmodified
Added
Removed
  • lang/perl/FormValidator-LazyWay/trunk/lib/FormValidator/LazyWay.pm

    r10735 r10761  
    88use Perl6::Junction qw/any none/; 
    99use FormValidator::LazyWay::Rules; 
     10use FormValidator::LazyWay::Messages; 
    1011use FormValidator::LazyWay::Results; 
    1112 
     
    2021    $self->{config} = $config; 
    2122    bless $self, $class; 
    22     $self->_module_loader(); 
    23     my $messages = $self->_get_messages(); 
    24     $self->{messages}               = $messages; 
     23 
     24    $self->{messages} = FormValidator::LazyWay::Messages->new($self->{config}); 
     25 
    2526    foreach my $key ( keys %{$self->config->{constraints}} ) { 
    2627        $self->{constraints}->{$key} = $self->_make_constraints($key); 
     
    106107} 
    107108 
    108 sub _module_loader { 
    109     my $self    = shift; 
    110     my $rules = $self->config->{rules}; 
    111  
    112     for my $rule ( @{$rules} ) { 
    113         my $module = $rule; 
    114         unless ( $module =~ s/^\+// ) { 
    115             $module = __PACKAGE__ . '::Rules::' . $module; 
    116         } 
    117  
    118         $module->require or die $@; 
    119     } 
    120  
    121 } 
    122  
    123 sub _get_messages { 
    124     my $self     = shift; 
    125     my $rules  = $self->config->{rules}; 
    126     my $messages = {}; 
    127  
    128     for my $rule ( @{$rules} ) { 
    129         my $module = $rule; 
    130         unless ( $module =~ s/^\+// ) { 
    131             $module = __PACKAGE__ . '::Rules::' . $module; 
    132         } 
    133  
    134         my $module_entries = $module . '::'; 
    135  
    136         no strict 'refs'; 
    137     INTERNAL_LOOP: 
    138         foreach my $symbol ( keys %{$module_entries} ) { 
    139             next INTERNAL_LOOP unless $symbol =~ /^mes_/; 
    140             local *glob = $module_entries->{$symbol}; 
    141             if ( defined &glob ) { 
    142                 my $method = $symbol; 
    143                 $method =~ s/^mes_//; 
    144                 $messages->{ $rule . '::' . $method } = &glob; 
    145             } 
    146         } 
    147         use strict; 
    148     } 
    149  
    150     return $messages; 
    151  
    152 } 
    153  
    154109sub _make_constraints { 
    155110    my $self        = shift; 
     
    213168    my $type     = shift; 
    214169    my $lang     = shift; 
    215     my $message  = $config->{messages}{$lang}{invalid}{$label} ||  $messages->{$label}{$lang}; 
     170    my $message  = $config->{messages}{$lang}{invalid}{$label} ||  $messages->get($label, $lang); 
    216171    my $args     = $arg->{$type}{$field}{$label} || {}; 
    217172 
  • lang/perl/FormValidator-LazyWay/trunk/t/spelling.t

    r9117 r10761  
    2121Validator 
    2222validator 
    23  
     23TODO 
     24lang