X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=lib%2FMaypole.pm;h=087f2b9daae744671f8cf3af72cd4886531edab8;hb=9a7acdd3a2e0701d2fe5366e4965c030a530f860;hp=9f1af35366433899221fa6cf1fe191eb42dd8cfa;hpb=dc0c8b4a91ac443404c0a397cd53d2a78f23f97e;p=maypole.git diff --git a/lib/Maypole.pm b/lib/Maypole.pm index 9f1af35..087f2b9 100644 --- a/lib/Maypole.pm +++ b/lib/Maypole.pm @@ -38,7 +38,7 @@ The canonical example used in the Maypole documentation is the beer database: $config->uri_base("http://localhost/beerdb"); $config->template_root("/path/to/templates"); $config->rows_per_page(10); - $config->display_tables([qw[beer brewery pub style]]); + $config->display_tables([qw/beer brewery pub style/]); # table relationships $config->relationships([ @@ -199,7 +199,7 @@ __PACKAGE__->mk_classdata($_) for qw( config init_done view_object ); __PACKAGE__->mk_accessors( qw( params query objects model_class template_args output path args action template error document_encoding content_type table - headers_in headers_out stash session) + headers_in headers_out stash session user) ); __PACKAGE__->config( Maypole::Config->new() ); @@ -437,6 +437,7 @@ sub handler : method return $status unless $status == Maypole::Constants::OK(); $self->session($self->get_session); + $self->user($self->get_user); $status = $self->handler_guts; @@ -691,12 +692,30 @@ sub is_model_applicable =item get_session +Called immediately after C. + +This method should return a session, which will be stored in the request's +C attribute. + The default method is empty. =cut sub get_session { } +=item get_user + +Called immediately after C. + +This method should return a user, which will be stored in the request's C +attribute. + +The default method is empty. + +=cut + +sub get_user {} + =item call_authenticate This method first checks if the relevant model class @@ -1200,7 +1219,7 @@ calls during processing of a request. This is a brief summary: | | | |-----+ init | | ||<---+ | | - || | new | view_object: e.g + || | new | view_object: e.g. ||---------------------------------------------> Maypole::View::TT | | | | | | | | @@ -1230,6 +1249,9 @@ calls during processing of a request. This is a brief summary: | ||-----+ get_session | | | | |||<---+ | | | | || | | | + | ||-----+ get_user | | | + | |||<---+ | | | + | || | | | | ||-----+ handler_guts | | | | |||<---+ | | | | ||| class_of($table) | | | @@ -1245,14 +1267,14 @@ calls during processing of a request. This is a brief summary: | ||| | | | | |||-----+ additional_data | | | | ||||<---+ | | | - | ||| process | | fetch_objects - | |||--------------------------------->||-----+ | + | ||| process | | | + | |||--------------------------------->|| fetch_objects + | ||| | ||-----+ | | ||| | |||<---+ | | ||| | || | | ||| | || $action | ||| | ||-----+ | - | ||| | |||<---+ | - | ||| | | | + | ||| | |||<---+ | | ||| process | | | | |||------------------------------------------->|| template | ||| | | ||-----+