2015-12-06 21:19:55 +00:00
|
|
|
/**
|
|
|
|
Underscore template generate for FluentCV.
|
|
|
|
@license MIT. Copyright (c) 2015 James M. Devlin / FluentDesk.
|
|
|
|
*/
|
|
|
|
|
|
|
|
(function() {
|
|
|
|
|
|
|
|
var _ = require('underscore');
|
|
|
|
|
|
|
|
module.exports = function( json, jst, format, cssInfo, opts ) {
|
|
|
|
|
|
|
|
// Tweak underscore's default template delimeters
|
2015-12-07 21:39:59 +00:00
|
|
|
var delims = opts.themeObj.delimeters || opts.template;
|
|
|
|
if( opts.themeObj.delimeters ) {
|
|
|
|
delims = _.mapObject( delims, function(val,key) {
|
|
|
|
return new RegExp( val, "ig")
|
|
|
|
});
|
|
|
|
}
|
|
|
|
_.templateSettings = delims;
|
2015-12-06 21:19:55 +00:00
|
|
|
|
|
|
|
// Strip {# comments #}
|
2015-12-07 21:39:59 +00:00
|
|
|
jst = jst.replace( delims.comment, '');
|
2015-12-06 21:19:55 +00:00
|
|
|
// Compile and run the template. TODO: avoid unnecessary recompiles.
|
2015-12-07 21:39:59 +00:00
|
|
|
var compiled = _.template(jst);
|
2015-12-08 02:24:14 +00:00
|
|
|
|
2015-12-09 03:22:33 +00:00
|
|
|
var mr = json.markdownify();
|
|
|
|
|
2015-12-07 21:39:59 +00:00
|
|
|
var ret = compiled({
|
2015-12-09 03:22:33 +00:00
|
|
|
r: json.markdownify(),
|
2015-12-07 21:39:59 +00:00
|
|
|
filt: opts.filters,
|
|
|
|
cssInfo: cssInfo,
|
|
|
|
headFragment: opts.headFragment || ''
|
|
|
|
});
|
|
|
|
return ret;
|
2015-12-06 21:19:55 +00:00
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
}());
|