method attr for Action vp
wreis [Tue, 22 Jul 2008 13:30:21 +0000 (13:30 +0000)]
lib/Reaction/UI/ViewPort/Action.pm
lib/Reaction/UI/Widget/Action.pm
share/skin/default/layout/action.tt

index 2198085..fba28cf 100644 (file)
@@ -20,9 +20,12 @@ use aliased 'Reaction::UI::ViewPort::Field::Mutable::ChooseMany';
 use aliased 'Reaction::UI::ViewPort::Field::Mutable::File';
 #use aliased 'Reaction::UI::ViewPort::Field::Mutable::TimeRange';
 
+use Reaction::Types::Core qw/NonEmptySimpleStr/;
+
 class Action is Object, which {
   has model  => (is => 'ro', isa => 'Reaction::InterfaceModel::Action', required => 1);
   #has '+model' => (isa => 'Reaction::InterfaceModel::Action');
+  has method => ( isa => NonEmptySimpleStr, is => 'rw', default => sub { 'post' } );
 
   has next_action       => (is => 'rw', isa => 'ArrayRef');
   has on_apply_callback => (is => 'rw', isa => 'CodeRef');
index f55726c..fa62596 100644 (file)
@@ -4,9 +4,9 @@ use Reaction::UI::WidgetClass;
 
 class Action is 'Reaction::UI::Widget::Object', which {
 
-  #before fragment widget {
-  #  arg form_id => $_{viewport}->location;
-  #};
+  after fragment widget {
+    arg 'method' => $_{viewport}->method;
+  };
 
   implements fragment ok_button_fragment {
     if (grep { $_ eq 'ok' } $_{viewport}->accept_events) {
index 67d6c37..0fefbe8 100644 (file)
@@ -1,6 +1,6 @@
 =for layout widget
 
-  <form action="" method="post" enctype="multipart/form-data">
+  <form action="" method="[% method %]" enctype="multipart/form-data">
     [% header  %]
     [% field_list  %]
     [% buttons %]