Spaces:
Running
Running
feat: support showWatermark parameter for dynamic footer
Browse files
server.js
CHANGED
|
@@ -19,11 +19,13 @@ app.get('/', (req, res) => {
|
|
| 19 |
app.post('/api/generate_pdf', async (req, res) => {
|
| 20 |
let browser = null;
|
| 21 |
try {
|
| 22 |
-
const { html } = req.body;
|
| 23 |
if (!html) {
|
| 24 |
return res.status(400).json({ error: 'Missing html content' });
|
| 25 |
}
|
| 26 |
|
|
|
|
|
|
|
| 27 |
// Launch Chrome
|
| 28 |
// We use the installed 'chromium' from apt-get
|
| 29 |
browser = await puppeteer.launch({
|
|
@@ -58,7 +60,7 @@ app.post('/api/generate_pdf', async (req, res) => {
|
|
| 58 |
headerTemplate: '<div></div>', // Empty header
|
| 59 |
footerTemplate: `
|
| 60 |
<div style="font-size: 10px; font-family: Arial, sans-serif; color: #999; width: 100%; padding: 0 15mm; display: flex; justify-content: space-between; align-items: center;">
|
| 61 |
-
<div style="flex: 1; text-align: left;">
|
| 62 |
<div style="flex: 1; text-align: right;"><span class="pageNumber"></span> / <span class="totalPages"></span></div>
|
| 63 |
</div>
|
| 64 |
`,
|
|
|
|
| 19 |
app.post('/api/generate_pdf', async (req, res) => {
|
| 20 |
let browser = null;
|
| 21 |
try {
|
| 22 |
+
const { html, showWatermark } = req.body;
|
| 23 |
if (!html) {
|
| 24 |
return res.status(400).json({ error: 'Missing html content' });
|
| 25 |
}
|
| 26 |
|
| 27 |
+
const brandText = showWatermark !== false ? 'Powered by XWX AI Chat Exporter' : '';
|
| 28 |
+
|
| 29 |
// Launch Chrome
|
| 30 |
// We use the installed 'chromium' from apt-get
|
| 31 |
browser = await puppeteer.launch({
|
|
|
|
| 60 |
headerTemplate: '<div></div>', // Empty header
|
| 61 |
footerTemplate: `
|
| 62 |
<div style="font-size: 10px; font-family: Arial, sans-serif; color: #999; width: 100%; padding: 0 15mm; display: flex; justify-content: space-between; align-items: center;">
|
| 63 |
+
<div style="flex: 1; text-align: left;">${brandText}</div>
|
| 64 |
<div style="flex: 1; text-align: right;"><span class="pageNumber"></span> / <span class="totalPages"></span></div>
|
| 65 |
</div>
|
| 66 |
`,
|