1
0
mirror of https://github.com/JuanCanham/HackMyResume.git synced 2024-12-23 05:37:23 +00:00

Support implicit PDF generation (interim).

This commit is contained in:
hacksalot 2016-01-08 09:00:43 -05:00
parent 3964d300aa
commit 46bd5d51cc
3 changed files with 27 additions and 29 deletions

View File

@ -48,27 +48,32 @@ Definition of the JRSTheme class.
this.render = (thApi && thApi.render) || undefined;
this.engine = 'jrs';
// Create theme formats (HTML and PDF)
// Create theme formats (HTML and PDF). Just add the bare minimum mix of
// properties necessary to allow JSON Resume themes to share a rendering
// path with FRESH themes.
this.formats = {
html: { outFormat: 'html', files: [
{
action: 'transform',
render: this.render,
//path: absPath,
major: true,
//orgPath: PATH.relative(thFolder, absPath),
ext: pathInfo.extname.slice(1),
//title: friendlyName( outFmt ),
//pre: outFmt,
// outFormat: outFmt || pathInfo.name,
//data: FS.readFileSync( absPath, 'utf8' ),
css: null
}
]},
pdf: { outFormat: 'pdf', files: [
{
action: 'transform',
render: this.render,
major: true,
ext: pathInfo.extname.slice(1),
css: null
}
]}
};
}
else {
throw { fluenterror: 10 };
throw { fluenterror: HACKMYSTATUS.missingPackageJSON };
}
return this;

View File

@ -37,7 +37,7 @@ Definition of the HtmlPdfCLIGenerator class.
Generate the binary PDF.
*/
onBeforeSave: function( info ) {
console.log('Called');
try {
var safe_eng = info.opts.pdf || 'wkhtmltopdf';
engines[ safe_eng ].call( this, info.mk, info.outputFile );

View File

@ -184,7 +184,6 @@ Implementation of the 'generate' verb for HackMyResume.
// If targInfo.fmt.files exists, this format is backed by a document.
// Fluent/FRESH themes are handled here.
// TODO: Make FRESH and JRS themes render on the same path
if( targInfo.fmt.files && targInfo.fmt.files.length ) {
theFormat = _fmts.filter(
function(fmt) { return fmt.name === targInfo.fmt.outFormat; })[0];
@ -193,25 +192,19 @@ Implementation of the 'generate' verb for HackMyResume.
return theFormat.gen.generate( rez, f, _opts );
}
// Otherwise this is either a) a JSON Resume theme or b) an ad-hoc format
// (JSON, YML, or PNG) that every theme gets "for free".
// else {
//
// theFormat = _fmts.filter( function(fmt) {
// return fmt.name === targInfo.fmt.outFormat;
// })[0];
//
// var outFolder = PATH.dirname( f );
// MKDIRP.sync( outFolder ); // Ensure dest folder exists;
//
// // JSON Resume themes have a 'render' method that needs to be called
// if( theme.render ) {
// return renderJRSTheme( f, outFolder, theme );
// }
// else {
// return theFormat.gen.generate( rez, f, _opts );
// }
// }
//Otherwise this is an ad-hoc format (JSON, YML, or PNG) that every theme
// gets "for free".
else {
theFormat = _fmts.filter( function(fmt) {
return fmt.name === targInfo.fmt.outFormat;
})[0];
var outFolder = PATH.dirname( f );
MKDIRP.sync( outFolder ); // Ensure dest folder exists;
return theFormat.gen.generate( rez, f, _opts );
}
}
catch( ex ) {
_err( ex );