From: Aaron Trevena Date: Wed, 29 Jun 2005 17:47:53 +0000 (+0000) Subject: applied patch for rt 13447 X-Git-Tag: 2.10~25 X-Git-Url: https://git.decadent.org.uk/gitweb/?a=commitdiff_plain;h=0df49a961d4cc7ebb6866f4e31273288ed2305bc;p=maypole.git applied patch for rt 13447 git-svn-id: http://svn.maypole.perl.org/Maypole/trunk@339 48953598-375a-da11-a14b-00016c27c3ee --- diff --git a/Changes b/Changes index 25939ee..0cf1fe5 100644 --- a/Changes +++ b/Changes @@ -2,6 +2,10 @@ This file documents the revision history for Perl extension Maypole. For information about current developments and future releases, see: http://maypole.perl.org/?TheRoadmap +2.10 July 2005 + Multiple Template Paths added ( http://rt.cpan.org/NoAuth/Bug.html?id=13447 ) + + 2.09 Mon Jan 25 22:00:00 2005 Fixes: - Fixed plugin inheritance set up by Maypole::Application, added tests diff --git a/lib/Maypole/View/Base.pm b/lib/Maypole/View/Base.pm index 312d38b..a3d9466 100644 --- a/lib/Maypole/View/Base.pm +++ b/lib/Maypole/View/Base.pm @@ -10,17 +10,27 @@ sub new { bless {}, shift } # By default, do nothing. sub paths { my ( $self, $r ) = @_; my $root = $r->config->template_root || $r->get_template_root; - return ( - $root, - ( - $r->model_class - && File::Spec->catdir( $root, $r->model_class->moniker ) - ), - File::Spec->catdir( $root, "custom" ), - File::Spec->catdir( $root, "factory" ) - ); + if(ref($root) ne 'ARRAY') { + $root = [ $root ]; + } + my @output = (); + foreach my $path (@$root) { + push(@output, $path); + push(@output, + ( + $r->model_class + && File::Spec->catdir( $path, $r->model_class->moniker ) + ) + ); + push(@output, File::Spec->catdir( $path, "custom" )); + push(@output, File::Spec->catdir( $path, "factory" )); + } + return @output; } + + + sub vars { my ( $self, $r ) = @_; my $class = $r->model_class;