diff options
author | edenc <edenc@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7> | 2008-03-14 17:54:22 +0000 |
---|---|---|
committer | edenc <edenc@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7> | 2008-03-14 17:54:22 +0000 |
commit | 7893faa878977199e71b3011627dcb49d88ed555 (patch) | |
tree | 0bb7523ce356c21ba6950728834aca278664be22 /lib/Reaction/UI/ViewPort/Field/Mutable/File.pm | |
parent | 7c29dd38a5e43d6395a9d94c4667a66a9a499e8b (diff) | |
download | reaction-7893faa878977199e71b3011627dcb49d88ed555.tar.gz reaction-7893faa878977199e71b3011627dcb49d88ed555.zip |
fixes for File fields
Diffstat (limited to 'lib/Reaction/UI/ViewPort/Field/Mutable/File.pm')
-rw-r--r-- | lib/Reaction/UI/ViewPort/Field/Mutable/File.pm | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/lib/Reaction/UI/ViewPort/Field/Mutable/File.pm b/lib/Reaction/UI/ViewPort/Field/Mutable/File.pm index f7d391f..ffbcbc9 100644 --- a/lib/Reaction/UI/ViewPort/Field/Mutable/File.pm +++ b/lib/Reaction/UI/ViewPort/Field/Mutable/File.pm @@ -1,16 +1,16 @@ package Reaction::UI::ViewPort::Field::Mutable::File; +use Reaction::Types::File qw/Upload/; use Reaction::Class; -use Reaction::Types::File; class File is 'Reaction::UI::ViewPort::Field', which { - does 'Reaction::UI::ViewPort::Field::Role::Mutable'; + does 'Reaction::UI::ViewPort::Field::Role::Mutable::Simple'; - has '+value' => (isa => 'Upload'); + has '+value' => (isa => Upload); override apply_our_events => sub { my ($self, $ctx, $events) = @_; - my $value_key = join(':', $self->location, 'value'); + my $value_key = $self->event_id_for('value_string'); if (my $upload = $ctx->req->upload($value_key)) { local $events->{$value_key} = $upload; return super(); @@ -19,6 +19,13 @@ class File is 'Reaction::UI::ViewPort::Field', which { } }; + implements adopt_value_string => sub { + my($self) = @_; + $self->value($self->value_string) if $self->value_string; + }; + + overrides _value_string_from_value => sub { '' }; + }; 1; |