213 lines
5.3 KiB
JavaScript
213 lines
5.3 KiB
JavaScript
// const path = require("path");
|
|
// const moment = require("moment");
|
|
// require("dotenv").config({
|
|
// path: path.resolve(
|
|
// process.cwd(),
|
|
// `.env.${process.env.NODE_ENV || "development"}`
|
|
// ),
|
|
// });
|
|
// var _ = require("lodash");
|
|
// const Handlebars = require("handlebars");
|
|
// const phone = require("phone");
|
|
// var Dinero = require("dinero.js");
|
|
// Dinero.defaultCurrency = "CAD";
|
|
// Dinero.globalLocale = "en-CA";
|
|
|
|
// //Usage: {{moment appointments_by_pk.start format="dddd, DD MMMM YYYY"}}
|
|
|
|
// Handlebars.registerHelper("round", function (context, block) {
|
|
// if (context && context.hash) {
|
|
// block = _.cloneDeep(context);
|
|
// context = undefined;
|
|
// }
|
|
// try {
|
|
// return context.toFixed(2);
|
|
// } catch {
|
|
// return context;
|
|
// }
|
|
// });
|
|
|
|
// Handlebars.registerHelper("dinerof", function (context, block) {
|
|
// if (context && context.hash) {
|
|
// block = _.cloneDeep(context);
|
|
// context = undefined;
|
|
// }
|
|
// var amount = Dinero(context);
|
|
// if (context) {
|
|
// return amount.toFormat();
|
|
// }
|
|
// return "";
|
|
// });
|
|
|
|
// Handlebars.registerHelper("phonef", function (context, block) {
|
|
// if (context && context.hash) {
|
|
// block = _.cloneDeep(context);
|
|
// context = undefined;
|
|
// }
|
|
// var ph = phone(context)[0];
|
|
// if (context) {
|
|
// return ph;
|
|
// }
|
|
// return "";
|
|
// });
|
|
|
|
// Handlebars.registerHelper("partType", function (context, block) {
|
|
// if (!context) return "";
|
|
|
|
// switch (context.toUpperCase()) {
|
|
// case "PAA":
|
|
// return "Aftermarket";
|
|
// case "PAE":
|
|
// return "Existing";
|
|
// case "PAN":
|
|
// return "OEM";
|
|
// case "PAO":
|
|
// return "Other";
|
|
// case "PAS":
|
|
// return "Sublet";
|
|
// case "PASL":
|
|
// return "Sublet";
|
|
// case "PAL":
|
|
// return "LKQ";
|
|
// case "PAM":
|
|
// return "Remanufactured";
|
|
// case "PAC":
|
|
// return "Chrome";
|
|
// case "PAP":
|
|
// return "OEM Partial";
|
|
// case "PAR":
|
|
// return "Record";
|
|
// default:
|
|
// return context;
|
|
// }
|
|
// });
|
|
|
|
// Handlebars.registerHelper("lbrType", function (context, block) {
|
|
// if (!context) return "";
|
|
|
|
// switch (context.toUpperCase()) {
|
|
// case "LAA":
|
|
// return "Aluminum";
|
|
// case "LAB":
|
|
// return "Body";
|
|
// case "LAD":
|
|
// return "Diagnostic";
|
|
// case "LAF":
|
|
// return "Frame";
|
|
// case "LAG":
|
|
// return "Glass";
|
|
// case "LAM":
|
|
// return "Mechanical";
|
|
// case "LAR":
|
|
// return "Refinish";
|
|
// case "LAS":
|
|
// return "Structural";
|
|
// case "LAU":
|
|
// return "Detail";
|
|
|
|
// default:
|
|
// return context;
|
|
// }
|
|
// });
|
|
|
|
// Handlebars.registerHelper("objectKeys", function (obj, block) {
|
|
// var accum = "";
|
|
|
|
// obj &&
|
|
// Object.keys(obj).map((key) => {
|
|
// accum += block.fn({ key, value: obj[key] });
|
|
// });
|
|
// return accum;
|
|
// });
|
|
|
|
// Handlebars.registerHelper("dinero", function (context, block) {
|
|
// if (context && context.hash) {
|
|
// block = _.cloneDeep(context);
|
|
// context = undefined;
|
|
// }
|
|
// var amount = Dinero({
|
|
// amount: Math.round((context || 0) * 100),
|
|
// currency: "CAD",
|
|
// });
|
|
// return amount.toFormat();
|
|
// });
|
|
|
|
// Handlebars.registerHelper("moment", function (context, block) {
|
|
// if (context && context.hash) {
|
|
// block = _.cloneDeep(context);
|
|
// context = undefined;
|
|
// }
|
|
|
|
// if (!!!context) return "";
|
|
|
|
// var date = moment(context);
|
|
|
|
// if (block.hash.timezone) {
|
|
// date.tz(block.hash.timezone);
|
|
// }
|
|
|
|
// var hasFormat = false;
|
|
|
|
// // Reset the language back to default before doing anything else
|
|
// date.locale("en");
|
|
|
|
// for (var i in block.hash) {
|
|
// if (i === "format") {
|
|
// hasFormat = true;
|
|
// } else if (date[i]) {
|
|
// date = date[i](block.hash[i]);
|
|
// } else {
|
|
// console.log('moment.js does not support "' + i + '"');
|
|
// }
|
|
// }
|
|
|
|
// if (hasFormat) {
|
|
// date = date.format(block.hash.format);
|
|
// }
|
|
// return date;
|
|
// });
|
|
|
|
// Handlebars.registerHelper("duration", function (context, block) {
|
|
// if (context && context.hash) {
|
|
// block = _.cloneDeep(context);
|
|
// context = 0;
|
|
// }
|
|
// var duration = moment.duration(context);
|
|
// var hasFormat = false;
|
|
|
|
// // Reset the language back to default before doing anything else
|
|
// duration = duration.lang("en");
|
|
|
|
// for (var i in block.hash) {
|
|
// if (i === "format") {
|
|
// hasFormat = true;
|
|
// } else if (duration[i]) {
|
|
// duration = duration[i](block.hash[i]);
|
|
// } else {
|
|
// console.log('moment.js duration does not support "' + i + '"');
|
|
// }
|
|
// }
|
|
|
|
// if (hasFormat) {
|
|
// duration = duration.format(block.hash.format);
|
|
// }
|
|
// return duration;
|
|
// });
|
|
|
|
exports.render = (req, res) => {
|
|
// //Perform request validation
|
|
// let view;
|
|
// console.log("[HJS Render] New Render Request.");
|
|
// //console.log("[HJS Render] Context", req.body.context);
|
|
// if (req.body.context.bodyshop.template_header) {
|
|
// console.log("[HJS Render] Including Header");
|
|
// //view = req.body.view;
|
|
// view = `${req.body.context.bodyshop.template_header}${req.body.view}`;
|
|
// } else {
|
|
// console.log("[HJS Render] No header to include.");
|
|
// view = req.body.view;
|
|
// }
|
|
// var template = Handlebars.compile(view);
|
|
// res.send(template(req.body.context));
|
|
};
|