aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorgroditi <groditi@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7>2008-02-02 18:40:58 +0000
committergroditi <groditi@03d0b0b2-0e1a-0410-a411-fdb2f4bd65d7>2008-02-02 18:40:58 +0000
commitaee256be57519750d0e0a41a759069c4c1192409 (patch)
tree72c108c972f0afc74d065f3b8d2ee9d364250800
parent13427367a812499857225b741a6aec2a15194aba (diff)
downloadreaction-aee256be57519750d0e0a41a759069c4c1192409.tar.gz
reaction-aee256be57519750d0e0a41a759069c4c1192409.zip
the forwards on basic_page and basic_model_action were breaking config merging at the push viewport stage
-rw-r--r--lib/Reaction/UI/Controller/Collection.pm8
-rw-r--r--lib/Reaction/UI/Controller/Collection/CRUD.pm12
2 files changed, 10 insertions, 10 deletions
diff --git a/lib/Reaction/UI/Controller/Collection.pm b/lib/Reaction/UI/Controller/Collection.pm
index 77a0005..bdc43a6 100644
--- a/lib/Reaction/UI/Controller/Collection.pm
+++ b/lib/Reaction/UI/Controller/Collection.pm
@@ -47,17 +47,17 @@ sub object :Chained('base') :PathPart('id') :CaptureArgs(1) {
sub list :Chained('base') :PathPart('') :Args(0) {
my ($self, $c) = @_;
- $c->forward(basic_page => [{ collection => $self->get_collection($c) }]);
+ $self->basic_page($c, [{ collection => $self->get_collection($c) }]);
}
sub view :Chained('object') :Args(0) {
my ($self, $c) = @_;
- $c->forward(basic_page => [{ model => $c->stash->{object} }]);
+ $self->basic_page($c, [{ model => $c->stash->{object} }]);
}
-sub basic_page : Private {
+sub basic_page {
my ($self, $c, $vp_args) = @_;
- my $action_name = $c->stack->[-2]->name;
+ my $action_name = $c->stack->[-1]->name;
return $self->push_viewport
(
$self->action_viewport_map->{$action_name},
diff --git a/lib/Reaction/UI/Controller/Collection/CRUD.pm b/lib/Reaction/UI/Controller/Collection/CRUD.pm
index 877f118..3c8c8dd 100644
--- a/lib/Reaction/UI/Controller/Collection/CRUD.pm
+++ b/lib/Reaction/UI/Controller/Collection/CRUD.pm
@@ -56,12 +56,12 @@ sub create :Chained('base') :PathPart('create') :Args(0) {
next_action => 'list',
on_apply_callback => sub { $self->after_create_callback($c => @_); },
};
- $c->forward( basic_model_action => [$vp_args]);
+ $self->basic_model_action( $c, [$vp_args]);
}
sub delete_all :Chained('base') :PathPart('delete_all') :Args(0) {
my ($self, $c) = @_;
- $c->forward(basic_model_action => [{ next_action => 'list'}]);
+ $self->basic_model_action( $c, [{ next_action => 'list'}]);
}
sub after_create_callback {
@@ -76,7 +76,7 @@ sub update :Chained('object') :Args(0) {
my @cap = @{$c->req->captures};
pop(@cap); # object id
my $vp_args = { next_action => [ $self, 'redirect_to', 'list', \@cap ]};
- $c->forward(basic_model_action => [$vp_args]);
+ $self->basic_model_action( $c, [$vp_args]);
}
sub delete :Chained('object') :Args(0) {
@@ -85,16 +85,16 @@ sub delete :Chained('object') :Args(0) {
my @cap = @{$c->req->captures};
pop(@cap); # object id
my $vp_args = { next_action => [ $self, 'redirect_to', 'list', \@cap ]};
- $c->forward(basic_model_action => [$vp_args]);
+ $self->basic_model_action( $c, [$vp_args]);
}
-sub basic_model_action :Private {
+sub basic_model_action {
my ($self, $c, $vp_args) = @_;
my $target = exists $c->stash->{object} ?
$c->stash->{object} : $self->get_collection($c);
- my $cat_action_name = $c->stack->[-2]->name;
+ my $cat_action_name = $c->stack->[-1]->name;
my $im_action_name = join('', (map{ ucfirst } split('_', $cat_action_name)));
return $self->push_viewport
(