diff options
author | Sheogorath | 2018-06-24 01:00:20 +0200 |
---|---|---|
committer | Sheogorath | 2018-06-24 01:00:29 +0200 |
commit | f69e77de424ea763a87a04c9d66196d9353c8690 (patch) | |
tree | 171ea2ae463a3bdf531423f0753a46482caf2b54 /lib | |
parent | 7c7cc289f2c2b2e33a32ea32a6e97ea1410cc63e (diff) |
Fix broken images in PDF caused by misconfigred server URL
As it turns out, if the serverURL can't be generated correctly, HackMD
will use relative paths in image upload. This causes broken links in
PDF.
With this commit we force absolute links during PDF creation which
hopefully fixes the problem.
Signed-off-by: Sheogorath <sheogorath@shivering-isles.com>
Diffstat (limited to '')
-rw-r--r-- | lib/response.js | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/lib/response.js b/lib/response.js index 4cfa9a74..a3c988fc 100644 --- a/lib/response.js +++ b/lib/response.js @@ -327,15 +327,18 @@ function actionInfo (req, res, note) { } function actionPDF (req, res, note) { + var url = config.serverURL || 'http://' + req.get('host') var body = note.content var extracted = models.Note.extractMeta(body) + var content = extracted.markdown var title = models.Note.decodeTitle(note.title) if (!fs.existsSync(config.tmpPath)) { fs.mkdirSync(config.tmpPath) } var path = config.tmpPath + '/' + Date.now() + '.pdf' - markdownpdf().from.string(extracted.markdown).to(path, function () { + content = content.replace(/\]\(\//g, '](' + url + '/') + markdownpdf().from.string(content).to(path, function () { var stream = fs.createReadStream(path) var filename = title // Be careful of special characters |