summaryrefslogtreecommitdiffstats
path: root/lib/output/ebook/onFinish.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/output/ebook/onFinish.js')
-rw-r--r--lib/output/ebook/onFinish.js91
1 files changed, 0 insertions, 91 deletions
diff --git a/lib/output/ebook/onFinish.js b/lib/output/ebook/onFinish.js
deleted file mode 100644
index 7f21548..0000000
--- a/lib/output/ebook/onFinish.js
+++ /dev/null
@@ -1,91 +0,0 @@
-var path = require('path');
-
-var WebsiteGenerator = require('../website');
-var JSONUtils = require('../../json');
-var Templating = require('../../templating');
-var Promise = require('../../utils/promise');
-var error = require('../../utils/error');
-var command = require('../../utils/command');
-var writeFile = require('../helper/writeFile');
-
-var getConvertOptions = require('./getConvertOptions');
-var SUMMARY_FILE = 'SUMMARY.html';
-
-/**
- Write the SUMMARY.html
-
- @param {Output}
- @return {Output}
-*/
-function writeSummary(output) {
- var options = output.getOptions();
- var prefix = options.get('prefix');
-
- var filePath = SUMMARY_FILE;
- var engine = WebsiteGenerator.createTemplateEngine(output, filePath);
- var context = JSONUtils.encodeOutput(output);
-
- // Render the theme
- return Templating.renderFile(engine, prefix + '/summary.html', context)
-
- // Write it to the disk
- .then(function(tplOut) {
- return writeFile(output, filePath, tplOut.getContent());
- });
-}
-
-/**
- Generate the ebook file as "index.pdf"
-
- @param {Output}
- @return {Output}
-*/
-function runEbookConvert(output) {
- var logger = output.getLogger();
- var options = output.getOptions();
- var format = options.get('format');
- var outputFolder = output.getRoot();
-
- if (!format) {
- return Promise(output);
- }
-
- return getConvertOptions(output)
- .then(function(options) {
- var cmd = [
- 'ebook-convert',
- path.resolve(outputFolder, SUMMARY_FILE),
- path.resolve(outputFolder, 'index.' + format),
- command.optionsToShellArgs(options)
- ].join(' ');
-
- return command.exec(cmd)
- .progress(function(data) {
- logger.debug(data);
- })
- .fail(function(err) {
- if (err.code == 127) {
- throw error.RequireInstallError({
- cmd: 'ebook-convert',
- install: 'Install it from Calibre: https://calibre-ebook.com'
- });
- }
-
- throw error.EbookError(err);
- });
- })
- .thenResolve(output);
-}
-
-/**
- Finish the generation, generates the SUMMARY.html
-
- @param {Output}
- @return {Output}
-*/
-function onFinish(output) {
- return writeSummary(output)
- .then(runEbookConvert);
-}
-
-module.exports = onFinish;