From a7aad37ea09a6d2e37a24fff3f23513dcee8c7d6 Mon Sep 17 00:00:00 2001 From: Rowan Manning Date: Mon, 16 Sep 2013 10:26:21 +0100 Subject: [PATCH] Add a view helper for date formatting --- app.js | 3 +++ package.json | 1 + view/helper/date.js | 20 ++++++++++++++++++++ view/partial/results.html | 8 ++++---- view/partial/tasks.html | 5 +++-- 5 files changed, 31 insertions(+), 6 deletions(-) create mode 100644 view/helper/date.js diff --git a/app.js b/app.js index bc8fd97..eda8c08 100644 --- a/app.js +++ b/app.js @@ -36,6 +36,9 @@ function initApp (config, callback) { })); app.express.set('view engine', 'html'); + // View helpers + require('./view/helper/date')(hbs.registerHelper); + // Populate view locals app.express.locals({ lang: 'en', diff --git a/package.json b/package.json index bec8458..bbf04d8 100644 --- a/package.json +++ b/package.json @@ -10,6 +10,7 @@ "chalk": "~0.2", "express": "~3.4", "express-hbs": "~0.2", + "moment": "~2.2", "pa11y-webservice-client-node": "git+ssh://git@github.com:nature/pa11y-webservice-client-node.git#1.0.0-beta.2" }, "devDependencies": { diff --git a/view/helper/date.js b/view/helper/date.js new file mode 100644 index 0000000..7187593 --- /dev/null +++ b/view/helper/date.js @@ -0,0 +1,20 @@ +'use strict'; + +var moment = require('moment'); + +module.exports = helper; + +function helper (register) { + + // Format a date with Moment + register('date-format', function (context, block) { + var format = block.hash.format || 'YYYY-MM-DD HH:mm:ss'; + return moment(context).format(format); + }); + + // Get a relative date + register('date-relative', function (context) { + return moment(context).fromNow(); + }); + +}; diff --git a/view/partial/results.html b/view/partial/results.html index 6c1229f..6c45823 100644 --- a/view/partial/results.html +++ b/view/partial/results.html @@ -2,10 +2,10 @@ diff --git a/view/partial/tasks.html b/view/partial/tasks.html index 6121781..0e6f662 100644 --- a/view/partial/tasks.html +++ b/view/partial/tasks.html @@ -7,8 +7,9 @@ {{url}} ({{standard}}) {{#last_result}} -
Last run: {{date}} -
Errors: {{count.error}} +
+ Last run: {{date-format date format="DD MMM YYYY"}}
+ Errors: {{count.error}} {{/last_result}}