]> iEval git - plack-app-gruntmaster.git/blobdiff - lib/Gruntmaster/Page/Common.pm
Move header / footer to a separate module and update MANIFEST
[plack-app-gruntmaster.git] / lib / Gruntmaster / Page / Common.pm
diff --git a/lib/Gruntmaster/Page/Common.pm b/lib/Gruntmaster/Page/Common.pm
new file mode 100644 (file)
index 0000000..5ed4050
--- /dev/null
@@ -0,0 +1,47 @@
+package Gruntmaster::Page::Common;
+
+use 5.014000;
+use strict;
+use warnings;
+use parent qw/Exporter/;
+our @EXPORT_OK = qw/header footer/;
+
+my %header_templates = (
+  en => <<'HTML',
+<!DOCTYPE html>
+<title>TITLE_GOES_HERE</title>
+<link rel="stylesheet" href="/gm.css">
+<script src="/jquery-2.0.3.min.js"></script>
+<script src="/view.js"></script>
+<meta charset="utf-8">
+
+<span id="admin"></span>
+<div id="title"><span class="i">i</span><span class="Eval">Eval</span></div>
+<div id="subtitle">TITLE_GOES_HERE</div>
+
+<nav><ul><li><a href="/">Home</a><li><a href="/log/">View job log</a><li><a href="/submit.var">Submit job</a><li><a href="/pb/">Problem list</a><li><a href="/ct/">Contests</a></ul></nav>
+
+HTML
+);
+
+my %footer_templates = (
+  en => <<'HTML',
+
+<footer>
+Dilmom: Why don't you call your product the Gruntmaster 6000?
+Dilbert: What kind of product do you see when you imagine a Gruntmaster 6000?
+Dilmom: Well, it's a stripped-down version of the Gruntmaster 9000, of course. But it's software-upgradeable.
+</footer>
+HTML
+);
+
+sub header{
+  my ($language, $title) = @_;
+  $header_templates{$language} =~ s/TITLE_GOES_HERE/$title/ger;
+}
+
+sub footer{
+  $footer_templates{$_[0]};
+}
+
+1;
This page took 0.024666 seconds and 4 git commands to generate.