1 | "use strict";
|
2 | var Handlebars = require("handlebars");
|
3 | function isFunction(functionToCheck) {
|
4 | var getType = {};
|
5 | return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
|
6 | }
|
7 | exports.initPartials = function (partials) {
|
8 | partials.forEach(function (partial) {
|
9 | Handlebars.registerPartial(partial.name, partial.content);
|
10 | });
|
11 | };
|
12 | exports.initTemplateHelpers = function (helpers) {
|
13 | helpers.forEach(function (helper) {
|
14 | Handlebars.registerHelper(helper.name, helper.func);
|
15 | });
|
16 | };
|
17 | exports.initHelpers = function () {
|
18 | Handlebars.registerHelper('times', function (n, block) {
|
19 | var accum = '';
|
20 | for (var i = 0; i < n; ++i) {
|
21 | accum += block.fn(i);
|
22 | }
|
23 | return accum;
|
24 | });
|
25 | Handlebars.registerHelper('for', function (from, to, incr, block) {
|
26 | var accum = '';
|
27 | for (var i = from; i < to; i += incr) {
|
28 | accum += block.fn(i);
|
29 | }
|
30 | return accum;
|
31 | });
|
32 | Handlebars.registerHelper('limitedEach', function (context, block) {
|
33 | var ret = '';
|
34 | var count = parseInt(block.hash.count);
|
35 | for (var i = 0, j = count; i < j; i++) {
|
36 | ret = ret + block.fn(context[i], {
|
37 | data: {
|
38 | last: i === count - 1,
|
39 | first: i === 0,
|
40 | index: 1
|
41 | }
|
42 | });
|
43 | }
|
44 | return ret;
|
45 | });
|
46 | };
|
47 |
|
\ | No newline at end of file |