use base qw/Maypole::Model::CDBI/;
use strict;
use warnings;
+use Data::Dumper;
# Overide list to add display_columns to cgi
# Perhaps do this in AsForm?
-
sub list : Exported {
use Data::Dumper;
my ($self, $r) = @_;
$r->template_args->{classmetadata}{cgi} = { $self->to_cgi(@cols) };
}
+# Override view to make inputs and process form to add to related
+sub view : Exported {
+ my ($self, $r, $obj) = @_;
+ $self->_croak( "Object method only") unless $obj;
+
+ if ($r->params->{submit}) {
+ my @related = $obj->add_to_from_cgi($r, { required => [$self->related ]});
+ if (my $errs = $obj->cgi_update_errors) {
+ $r->template_args->{errors} = $errs;
+ }
+ }
+
+ # Inputs to add to related on the view page
+ # Now done on the view template
+ # my %cgi = $self->to_cgi($self->related);
+ #$r->template_args->{classmetadata}{cgi} = \%cgi ;
+}
+
+
+# Template switcheroo bug bit me -- was seeing view page but the view action was never
+# being executed after an edit.
+sub do_edit : Exported {
+ my ($self, $r) = (shift, shift);
+ $self->SUPER::do_edit($r, @_);
+ if (my $obj = $r->object) {
+ my $url = $r->config->uri_base . "/" . $r->table . "/view/" . $obj->id;
+ $r->redirect_request(url => $url);
+ }
+}
+
+sub metadata: Exported {}
+
+
1;