update generate.js

send cover letter to docx on download
This commit is contained in:
Kyle Belanger 2025-02-14 16:18:51 -05:00
parent 9ef73adffb
commit 9cb5bbf0bb

View file

@ -68,10 +68,15 @@ router.post('/download', async (req, res) => {
try { try {
const { coverLetterText } = req.body; const { coverLetterText } = req.body;
const outputFilename = path.join(__dirname, '../uploads/cover_letter.docx'); // Generate .docx file dynamically
generateCoverLetter(coverLetterText, outputFilename); const docBuffer = await generateCoverLetter(coverLetterText);
// Set response headers for file download
res.setHeader('Content-Disposition', 'attachment; filename="cover_letter.docx"');
res.setHeader('Content-Type', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document');
res.send(docBuffer);
res.json({downloadLink: '/uploads/cover_letter.docx'});
} catch (error) { } catch (error) {
console.error(error); console.error(error);
res.status(500).json({ error: 'Error generating document' }); res.status(500).json({ error: 'Error generating document' });
@ -133,10 +138,7 @@ function generateCoverLetter(rawText, outputFilename) {
], ],
}); });
Packer.toBuffer(doc).then((buffer) => { return Packer.toBuffer(doc);
fs.writeFileSync(outputFilename, buffer);
console.log(`Cover letter saved to ${outputFilename}`);
}).catch(error => console.error("Error generating document:", error));
} }