%# -*-html-*- %# %# Common Mason machinery for Odin web services %# %# (c) 2015 Mark Wooding %# %#----- Licensing notice ---------------------------------------------------- %# %# This file is part of the `odin.gg' service, `odin-cgi'. %# %# `odin-cgi' is free software; you can redistribute it and/or modify %# it under the terms of the GNU Affero General Public License as %# published by the Free Software Foundation; either version 3 of the %# License, or (at your option) any later version. %# %# `odin-cgi' is distributed in the hope that it will be useful, %# but WITHOUT ANY WARRANTY; without even the implied warranty of %# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the %# GNU Affero General Public License for more details. %# %# You should have received a copy of the GNU Affero General Public %# License along with `odin-cgi'; if not, see %# . %# <%perl> Odin::set_mason_failproc $m; Odin::cgi_who $r; Odin::fetch_cookies $r; $r->content_type("text/html; charset=utf8"); $m->call_next; %# <%method wrapper>\ % $r->header_out(Status => $status) if defined $status; <& SELF:header &> \ % defined $title ? $m->print($title) : $m->comp("SELF:title"); <% $m->content %> <%args> $status => undef $title => undef %# <%method title>(Untitled page) <%method header> %# <%method error>\ <&| SELF:wrapper, status => $status, title => $title // $m->content &>\

\ % if (defined $title) { Error: <% $title %>\ % } else { Error\ % }

<% $m->content %> <%args> $status => 500 $title => undef %# <%init> Odin::update_now; %# <%once> use utf8; use Odin;