For information about current developments and future releases, see:
http://maypole.perl.org/?TheRoadmap
-2.07 Mon Jan 24 20:00:00 2005
+2.08 Mon Jan 24 20:45:00 2005
+ - Added $r->config->template_extension() to set optional file extension
+ for templates (Dave Howorth)
+
+ Fixes:
+ - Maypole::Application adds plugin classes to caller's @ISA (Marcus Ramberg)
+ - FETCH_CODE_ATRIBUTES in M::M::Base should return an empty list if there
+ are no attributes
+ - M::M::CDBI will warn() about Class::DBI::FromCGI errors
+
+
+2.07 Sun Jan 16 18:45:00 2005
+ (This version was not uploaded to CPAN)
+
Internal changes:
- Removed Maypole::Model->description. It didn't work as expected and
clashed with 'description' columns in the database
undefined element
- Fixed overriding $r->template_args->{classmetadata} in M::V::Base
(Thanks to Dave Howorth for spotting the mistake)
- - FETCH_CODE_ATRIBUTES in M::M::Base should return an empty list if there
- are no attributes
- - M::M::CDBI will warn() about Class::DBI::FromCGI errors
- #9473: Maypole::Model::CDBI->related_class (Thanks David Baird)
- #9434: M::M::CDBI->search generated "uninitialized value" warnings
package Apache::MVC;
-our $VERSION = '2.07';
+our $VERSION = '2.08';
use strict;
use warnings;
use CGI::Simple;
use Maypole::Headers;
-our $VERSION = '2.07';
+our $VERSION = '2.08';
sub run {
my $self = shift;
use Maypole::Constants;
use Maypole::Headers;
-our $VERSION = '2.07';
+our $VERSION = '2.08';
__PACKAGE__->mk_classdata($_) for qw( config init_done view_object );
__PACKAGE__->mk_accessors(
use Maypole::Config;
our @ISA;
-our $VERSION = '2.07';
+our $VERSION = '2.08';
sub import {
my ( $self, @plugins ) = @_;
if ($@) { warn qq(Loading plugin "Maypole::Plugin::$_" failed: $@) }
else {
warn "Loaded plugin: Maypole::Plugin::$_" if $caller->debug;
- unshift @ISA, "Maypole::Plugin::$_";
+ push @{"${caller}::ISA"}, "Maypole::Plugin::$_";
}
}
}
# Public accessors.
__PACKAGE__->mk_accessors(
- qw( view view_options uri_base template_root model loader display_tables
- ok_tables rows_per_page dsn user pass opts application_name)
+ qw( view view_options uri_base template_root template_extension model
+ loader display_tables ok_tables rows_per_page dsn user pass opts
+ application_name)
);
# Should only be modified by model.
Contains a list of all tables, if supported by model.
+=head3 template_extension
+
+Optional template file extension.
+
=head3 template_root
This is where your application can find its templates.
$self->{provider}->include_path([ $self->paths($r) ]);
+ my $template_file = $r->template;
+ my $ext = $r->config->template_extension;
+ $template_file .= $ext if defined $ext;
+
my $output;
- if ($self->{tt}->process( $r->template, { $self->vars($r) }, \$output )) {
+ if ($self->{tt}->process($template_file, { $self->vars($r) }, \$output )) {
$r->{output} = $output;
return OK;
}