use 5.014000;
use strict;
use warnings;
-use parent qw/Exporter/;
-our @EXPORT_OK = qw/generate/;
+use Gruntmaster::Page::Base pb_entry => '<tmpl_var name>';
+our @ISA = qw/Gruntmaster::Page::Base/;
our $VERSION = '0.001';
-use Fcntl qw/:flock/;
-use HTML::Template::Compiled;
-use IO::File;
-use POSIX qw/strftime/;
-use File::Basename qw/fileparse/;
-use Gruntmaster::Page::Common qw/header footer/;
-use Gruntmaster::Data qw/contest_start contest_end problem_name problem_statement/;
-
-use constant FORMATS => [qw/CPP/];
-use constant TITLE => '<tmpl_var name>';
-
-my %templates = (
+use constant TEMPLATES => {
en => <<'HTML',
-<tmpl_var statement>
+<tmpl_var ESCAPE=0 statement>
<tmpl_if cansubmit>
<h1>Submit solution</h1>
</form>
</tmpl_if>
HTML
-);
+};
-$templates{$_} = header($_, TITLE) . $templates{$_} for keys %templates;
-$templates{$_} .= footer $_ for keys %templates;
+sub _generate{
+ my ($self, $htc, $path, $lang) = @_;
-sub generate{
- $_[0] =~ m,(?:ct/([^/])+/)?pb/(\w+)\.html$,;
+ $path =~ m,(?:ct/([^/])+/)?pb/(\w+)\.html$,;
my ($contest, $id) = ($1, $2);
- my $htc = HTML::Template::Compiled->new(scalarref => \$templates{$_[1]});
$htc->param(cansubmit => 1);
if (defined $contest) {
$htc->param(cansubmit => time >= contest_start $contest && time <= contest_end $contest);
$htc->param(contest => $contest);
}
- $htc->param(formats => FORMATS);
+ $htc->param(formats => Gruntmaster::Page::Submit::FORMATS);
$htc->param(id => $id);
local $Gruntmaster::Data::contest = $contest if $contest;
$htc->param(name => problem_name $id);
$htc->param(statement => problem_statement $id);
- $htc->output
}
1