/[Frey]/branches/zimbardo/lib/Frey/Action.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /branches/zimbardo/lib/Frey/Action.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1119 by dpavlin, Tue Jun 30 10:09:43 2009 UTC revision 1160 by dpavlin, Thu Jul 2 15:56:40 2009 UTC
# Line 1  Line 1 
1  package Frey::Action;  package Frey::Action;
2  use Moose;  use Moose;
3  extends 'Frey::PPI';  extends 'Frey::PPI';
4  with 'Frey::Web';  with 'Frey::Web', 'Frey::Config';
 with 'Frey::Config';  
5    
6  use Clone qw/clone/;  use Clone qw/clone/;
7  use Data::Dump qw/dump/;  use Data::Dump qw/dump/;
# Line 133  sub select_values { Line 132  sub select_values {
132          warn "# max_value_len: $max_value_len";          warn "# max_value_len: $max_value_len";
133          #my $render = eval $class . '->render_' . $name;          #my $render = eval $class . '->render_' . $name;
134          my $call = 'render_' . $name;          my $call = 'render_' . $name;
135          my $render = $self->class->$call;          my $render = $self->class->$call if $self->class->can($call);
136          warn "## render $@";          warn "## render $@";
137    
138          if ( $#values > 3 && $render !~ m{radio} ) {          if ( $#values > 3 && $render !~ m{radio} ) {
# Line 263  sub params_form { Line 262  sub params_form {
262                  } elsif ( $attr->has_type_constraint && $attr->type_constraint->can('values') ) {                  } elsif ( $attr->has_type_constraint && $attr->type_constraint->can('values') ) {
263                          $value_html = $self->select_values( $name, $attr_type, $attr->type_constraint->values );                          $value_html = $self->select_values( $name, $attr_type, $attr->type_constraint->values );
264                  } elsif ( $class->can( $name . '_available' ) ) {                  } elsif ( $class->can( $name . '_available' ) ) {
265                          my $available = $class->$name . '_available';                          my $available = $name . '_available';
266                            $available = $class->$available;
267                          confess $@ if $@;                          confess $@ if $@;
268                          $available =~ s/^\s+//gs;                          $available =~ s/^\s+//gs;
269                          $available =~ s/\s+$//gs;                          $available =~ s/\s+$//gs;
# Line 292  sub params_form { Line 292  sub params_form {
292                          $label_title .= qq| class="required"|;                          $label_title .= qq| class="required"|;
293                          $value_html =~ s{(<\S+)\s}{$1 class=required };                          $value_html =~ s{(<\S+)\s}{$1 class=required };
294                  }                  }
                 $label =~ s/_/ /g;  
295    
296                  my $set = $name;                  my $set = $name;
297                  $set =~ s{_[^_]+$}{};                  $set =~ s{_[^_]+$}{};
# Line 310  sub params_form { Line 309  sub params_form {
309                                          </fieldset>                                          </fieldset>
310                                  |;                                  |;
311                          }                          }
312                          $label =~ s{^\Q$set\E\s+}{};                          $label =~ s{^\Q$set\E_+}{};
313                  }                  }
314    
315                    $label = $self->_label( $label );
316                  $form .= qq|$before<label for="$name"$label_title>$label</label>$value_html $after|;                  $form .= qq|$before<label for="$name"$label_title>$label</label>$value_html $after|;
317                  my $ll = length($label);                  my $ll = length($label);
318                  $label_width = $ll if $ll > $label_width;                  $label_width = $ll if $ll > $label_width;
# Line 386  sub params_form { Line 386  sub params_form {
386          return $html;          return $html;
387  }  }
388    
389    sub _label {
390            my ($self,$name) = @_;
391            my $labels = $self->class->form_labels if $self->class->can('form_labels');
392            my $label = $labels->{$name};
393            if ( ! defined $label ) {
394                    $label = $name;
395                    $label =~ s{_}{ }g;
396            }
397            return $label;
398    }
399    
400  =head1 SEE ALSO  =head1 SEE ALSO
401    
402  L<http://www.quirksmode.org/css/forms.html> for info on CSS2 forms  L<http://www.quirksmode.org/css/forms.html> for info on CSS2 forms
403    
404  =cut  =cut
405    
406    __PACKAGE__->meta->make_immutable;
407    no Moose;
408    
409  1;  1;

Legend:
Removed from v.1119  
changed lines
  Added in v.1160

  ViewVC Help
Powered by ViewVC 1.1.26