use NEXT;
use File::MMagic::XS qw(:compat);
-our $VERSION = '2.12';
+our $VERSION = '2.13';
our $mmagic = File::MMagic::XS->new();
# proposed privacy conventions:
user session)
);
-__PACKAGE__->config( Maypole::Config->new() );
+__PACKAGE__->config( Maypole::Config->new({additional => { }, request_options => { }, view_options => { },}) );
__PACKAGE__->init_done(0);
# We run additional_data for every request
$self->additional_data;
+ # process request with model if applicable and template not set.
if ($applicable) {
- eval { $self->model_class->process($self) };
- if ( my $error = $@ ) {
- $status = $self->call_exception($error, "model");
- if ( $status != OK ) {
- $self->warn("caught model error: $error");
- return $self->debug ?
- $self->view_object->error($self, $error) : ERROR;
+ unless ($self->{template}) {
+ eval { $self->model_class->process($self) };
+ if ( my $error = $@ ) {
+ $status = $self->call_exception($error, "model");
+ if ( $status != OK ) {
+ $self->warn("caught model error: $error");
+ return $self->debug ?
+ $self->view_object->error($self, $error) : ERROR;
+ }
}
}
} else {
sub __get_mime_type {
my $self = shift;
my $type = 'text/html';
- if ($self->path =~ m/.*\.(\w{3,4})$/) {
+ if ($self->path =~ m/.*\.(\w{2,4})$/) {
$type = $filetypes{$1};
} else {
my $output = $self->output;