Mercurial > pub > Impl
view Lib/Engine/Output/Page.pm @ 156:8638dd1374bf
Added template property to IMPL::Web::QueryHandler::PageFormat (this allows to specify exact template (filename, ref to a scalar, ref to a file handle)).
author | wizard |
---|---|
date | Tue, 05 Oct 2010 17:20:51 +0400 |
parents | 16ada169ca75 |
children |
line wrap: on
line source
package Engine; our $Encoding; package Engine::Output::Page; use strict; use Common; use DOM; sub Print { my ($class,$Query,$Action) = @_; if (DOM::Site->can('LoadPage')) { my $pageId = $Action->RequestURI->path; DOM::Site->RegisterObject("Request",$Action); my $Page = DOM::Site->LoadPage($pageId); print $Query->header(-status => 200); undef $@; eval { $Page->Properties->{Encoding} = $Engine::Encoding; $Page->Render(*STDOUT); }; if ($@) { print $Query->start_html('Error processing template'); print $Query->p("Page: $pageId"); print $Query->p("Error: $@"); print $Query->end_html; } } else { die new Exception('The site doesn\'t support page output'); } } 1;