Enhance worship export functionality: Add support for sacristan service and organ playing details in worshipController.js, improving the export format. Update filename generation logic in WorshipManagement.vue to handle potential server-side filename issues, ensuring accurate file naming during downloads.
All checks were successful
Deploy miriamgemeinde / deploy (push) Successful in 7s
All checks were successful
Deploy miriamgemeinde / deploy (push) Successful in 7s
This commit is contained in:
@@ -2683,6 +2683,8 @@ exports.exportWorships = async (req, res) => {
|
||||
const titleStr = worship.title || 'Gottesdienst';
|
||||
const organizerStr = worship.organizer || '';
|
||||
const collectionStr = worship.collection || '';
|
||||
const sacristanServiceStr = worship.sacristanService || '';
|
||||
const organPlayingStr = worship.organPlaying || '';
|
||||
|
||||
const secondCellChildren = [];
|
||||
|
||||
@@ -2717,19 +2719,39 @@ exports.exportWorships = async (req, res) => {
|
||||
}));
|
||||
}
|
||||
|
||||
// Kollekte (nicht bold, schwarz, Arial 11pt)
|
||||
if (collectionStr) {
|
||||
// Dienst (nicht bold, schwarz, Arial 11pt)
|
||||
if (sacristanServiceStr) {
|
||||
secondCellChildren.push(new TextRun({
|
||||
text: '',
|
||||
break: 1 // Zeilenumbruch
|
||||
}));
|
||||
secondCellChildren.push(new TextRun({
|
||||
text: 'Kollekte: ',
|
||||
text: 'Dienst: ',
|
||||
color: '000000',
|
||||
font: 'Arial',
|
||||
size: 22
|
||||
}));
|
||||
secondCellChildren.push(new TextRun({
|
||||
text: sacristanServiceStr,
|
||||
color: '000000',
|
||||
font: 'Arial',
|
||||
size: 22
|
||||
}));
|
||||
}
|
||||
|
||||
// Kollekte (nicht bold, schwarz, Arial 11pt)
|
||||
if (collectionStr) {
|
||||
secondCellChildren.push(new TextRun({
|
||||
text: '',
|
||||
break: 1
|
||||
}));
|
||||
secondCellChildren.push(new TextRun({
|
||||
text: 'Kollekte: ',
|
||||
color: '000000',
|
||||
font: 'Arial',
|
||||
size: 22
|
||||
}));
|
||||
secondCellChildren.push(new TextRun({
|
||||
text: collectionStr,
|
||||
color: '000000',
|
||||
font: 'Arial',
|
||||
@@ -2737,6 +2759,26 @@ exports.exportWorships = async (req, res) => {
|
||||
}));
|
||||
}
|
||||
|
||||
// Orgelspiel (nicht bold, schwarz, Arial 11pt)
|
||||
if (organPlayingStr) {
|
||||
secondCellChildren.push(new TextRun({
|
||||
text: '',
|
||||
break: 1
|
||||
}));
|
||||
secondCellChildren.push(new TextRun({
|
||||
text: 'Orgel: ',
|
||||
color: '000000',
|
||||
font: 'Arial',
|
||||
size: 22
|
||||
}));
|
||||
secondCellChildren.push(new TextRun({
|
||||
text: organPlayingStr,
|
||||
color: '000000',
|
||||
font: 'Arial',
|
||||
size: 22
|
||||
}));
|
||||
}
|
||||
|
||||
const secondCell = new TableCell({
|
||||
children: [new Paragraph({
|
||||
children: secondCellChildren,
|
||||
@@ -2802,7 +2844,7 @@ exports.exportWorships = async (req, res) => {
|
||||
const buffer = await Packer.toBuffer(doc);
|
||||
|
||||
// Dateiname generieren
|
||||
const filename = `gottesdienste_${from}_${to}_${format}.docx`;
|
||||
const filename = `gottesdienste_${from}_${to}.docx`;
|
||||
|
||||
// Response senden
|
||||
res.setHeader('Content-Type', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document');
|
||||
|
||||
Reference in New Issue
Block a user