Compare commits

..

No commits in common. "53b592476714c64301125997fe473a2ad9645211" and "00198b819950af10ec967024a069c47aa8d252b6" have entirely different histories.

3 changed files with 19 additions and 54 deletions

View File

@ -23,7 +23,6 @@ export class SocketManager {
// Create Socket.IO server - CORS applies to HTTP long-polling transport // Create Socket.IO server - CORS applies to HTTP long-polling transport
const allowedOrigins = config.server.corsOrigins || ['*']; const allowedOrigins = config.server.corsOrigins || ['*'];
const io = new Server(server, { const io = new Server(server, {
maxHttpBufferSize: 1e8,
cors: { cors: {
origin: (origin, callback) => { origin: (origin, callback) => {
// Allow requests with no origin (e.g. same-origin, Postman, native apps) // Allow requests with no origin (e.g. same-origin, Postman, native apps)

View File

@ -306,41 +306,23 @@ export class SocketUser {
} }
async handlePreviewTemplateEvent(data, callback) { async handlePreviewTemplateEvent(data, callback) {
try { const result = await this.templateManager.renderTemplate(
const result = await this.templateManager.renderTemplate( data._id,
data._id, data.content,
data.content, data.testObject,
data.testObject, data.scale
data.scale );
); callback(result);
if (typeof callback === 'function') {
callback(result);
}
} catch (err) {
logger.error('Preview template event error:', err);
if (typeof callback === 'function') {
callback({ error: err.message });
}
}
} }
async handleRenderTemplatePDFEvent(data, callback) { async handleRenderTemplatePDFEvent(data, callback) {
try { const result = await this.templateManager.renderPDF(
const result = await this.templateManager.renderPDF( data._id,
data._id, data.content,
data.content, data.object,
data.object, 1
1 );
); callback(result);
if (typeof callback === 'function') {
callback(result);
}
} catch (err) {
logger.error('Render template PDF event error:', err);
if (typeof callback === 'function') {
callback({ error: err.message });
}
}
} }
async handleGenerateHostOtpEvent(data, callback) { async handleGenerateHostOtpEvent(data, callback) {
const result = await generateHostOTP(data._id); const result = await generateHostOTP(data._id);

View File

@ -407,9 +407,6 @@ export class TemplateManager {
} else { } else {
const objectType = documentTemplate?.objectType; const objectType = documentTemplate?.objectType;
const model = getModelByName(objectType); const model = getModelByName(objectType);
if (model == null) {
return { error: `Unknown object type: ${objectType}` };
}
const defaultKeys = Object.keys(model.schema.obj); const defaultKeys = Object.keys(model.schema.obj);
const defaultValues = {}; const defaultValues = {};
for (const key of defaultKeys) { for (const key of defaultKeys) {
@ -427,37 +424,24 @@ export class TemplateManager {
var templateWithParentContent; var templateWithParentContent;
var parentTemplate = documentTemplate.parent;
if (documentTemplate.parent != undefined) { if (documentTemplate.parent != undefined) {
if (typeof parentTemplate === 'string') {
parentTemplate = await getObject({
model: documentTemplateModel,
id: parentTemplate,
populate: [
{ path: 'documentSize' },
{ path: 'parent', strictPopulate: false }
],
cached: true
});
}
// Validate parent content // Validate parent content
if ( if (
parentTemplate.content == null || documentTemplate.parent.content == null ||
typeof parentTemplate.content !== 'string' typeof documentTemplate.parent.content !== 'string'
) { ) {
logger.error( logger.error(
'Parent template content is required and must be a string.', 'Parent template content is required and must be a string.',
parentTemplate.content documentTemplate.parent.content
); );
return { return {
error: error:
'Parent template content is required and must be a string.' + 'Parent template content is required and must be a string.' +
parentTemplate.content documentTemplate.parent.content
}; };
} }
templateWithParentContent = await ejs.render( templateWithParentContent = await ejs.render(
parentTemplate.content, documentTemplate.parent.content,
{ content: templateContent, fc: this.fc }, { content: templateContent, fc: this.fc },
defaultOptions defaultOptions
); );