X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=lib%2FMaypole.pm;h=1665ca702573c60c9fbd9ae4a892956e72e64061;hb=271fd90b8a1b9f843853601a75a1334407ff87c4;hp=a0e50cb681a5a4ade1ab1c9a840fd1ff73093968;hpb=e5d167effaf03811f44c1059af12b87b125f6882;p=maypole.git diff --git a/lib/Maypole.pm b/lib/Maypole.pm index a0e50cb..1665ca7 100644 --- a/lib/Maypole.pm +++ b/lib/Maypole.pm @@ -6,12 +6,13 @@ use warnings; use Maypole::Config; use Maypole::Constants; -our $VERSION = '2.03'; +our $VERSION = '2.05'; __PACKAGE__->mk_classdata($_) for qw( config init_done view_object ); __PACKAGE__->mk_accessors( qw( ar params query objects model_class template_args output path - args action template error document_encoding content_type table) + args action template error document_encoding content_type table + extra_headers ) ); __PACKAGE__->config( Maypole::Config->new() ); __PACKAGE__->init_done(0); @@ -23,6 +24,7 @@ sub setup { $calling_class = ref $calling_class if ref $calling_class; { no strict 'refs'; + no warnings 'redefine'; # Naughty. *{ $calling_class . "::handler" } = @@ -72,6 +74,7 @@ sub handler { sub handler_guts { my $r = shift; $r->model_class( $r->config->model->class_of( $r, $r->{table} ) ); + my $applicable = $r->is_applicable; unless ( $applicable == OK ) { @@ -274,6 +277,10 @@ A list of remaining parts of the request path after table and action have been removed +=head3 extra_headers + +A hash containing extra headers to be set on a request. + =head3 parse_args Turns post data and query string paramaters into a hash of C.