X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=lib%2FMaypole%2FView%2FBase.pm;h=753430a20742c292de347c35b7e7dc56ea4124a3;hb=8e96ebeddb37ef30d2e215f935e136a9170576cd;hp=5a99580e514f01a0c914f677a2b96a8028cfc47a;hpb=3cf2fea8686cea17e128789566a0cd55f2046833;p=maypole.git diff --git a/lib/Maypole/View/Base.pm b/lib/Maypole/View/Base.pm index 5a99580..753430a 100644 --- a/lib/Maypole/View/Base.pm +++ b/lib/Maypole/View/Base.pm @@ -1,4 +1,5 @@ package Maypole::View::Base; +use Class::C3; use File::Spec; use UNIVERSAL::moniker; use strict; @@ -15,7 +16,6 @@ sub paths { } my @output = (); foreach my $path (@$root) { - push(@output, $path); push(@output, ( $r->model_class @@ -23,15 +23,13 @@ sub paths { ) ); push(@output, File::Spec->catdir( $path, "custom" )); + push(@output, $path); push(@output, File::Spec->catdir( $path, "factory" )); } - return @output; + return grep( $_, @output); } - - - sub vars { my ( $self, $r ) = @_; my $class = $r->model_class; @@ -56,7 +54,7 @@ sub vars { $classmeta->{related_accessors} ||= [ $class->related($r) ]; $classmeta->{moniker} ||= $class->moniker; $classmeta->{plural} ||= $class->plural_moniker; - $classmeta->{cgi} ||= { $class->to_cgi }; + $classmeta->{cgi} ||= { $class->to_cgi } if ($r->build_form_elements); $classmeta->{stringify_column} ||= $class->stringify_column; # User-friendliness facility for custom template writers.