@openinc/parse-server-opendash 3.33.0 → 3.33.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/features/config/helper/customOptions.js +8 -0
- package/dist/features/notifications/services/initEmailTransport.js +1 -0
- package/dist/features/openservice/functions/saveMessage.js +3 -0
- package/dist/features/openservice/types/MessageData.d.ts +1 -0
- package/dist/functions/openinc-mail-config.js +1 -1
- package/dist/hooks/Maintenance_Message.js +11 -0
- package/package.json +1 -1
|
@@ -336,6 +336,14 @@ exports.customoptions = {
|
|
|
336
336
|
default: "false",
|
|
337
337
|
description: "E-Mail from/sender E-Mail",
|
|
338
338
|
},
|
|
339
|
+
SMTP_REPLY_TO: {
|
|
340
|
+
env: "OPENINC_PARSE_SMTP_REPLY_TO",
|
|
341
|
+
type: "string",
|
|
342
|
+
required: false,
|
|
343
|
+
secret: false,
|
|
344
|
+
public: false,
|
|
345
|
+
description: "E-Mail reply-to address",
|
|
346
|
+
},
|
|
339
347
|
WEB_PUSH_ENABLED: {
|
|
340
348
|
env: "OPENINC_PARSE_WEB_PUSH_ENABLED",
|
|
341
349
|
type: "boolean",
|
|
@@ -19,6 +19,7 @@ async function initEmailTransport() {
|
|
|
19
19
|
port: config_1.ConfigInstance.getInstance().getNumber("SMTP_PORT"),
|
|
20
20
|
secure: config_1.ConfigInstance.getInstance().getBoolean("SMTP_SECURE"),
|
|
21
21
|
ignoreTLS: config_1.ConfigInstance.getInstance().getBoolean("SMTP_IGNORE_TLS"),
|
|
22
|
+
replyTo: config_1.ConfigInstance.getInstance().get("SMTP_REPLY_TO"),
|
|
22
23
|
};
|
|
23
24
|
if (config_1.ConfigInstance.getInstance().get("SMTP_USER") &&
|
|
24
25
|
config_1.ConfigInstance.getInstance().get("SMTP_PASS")) {
|
|
@@ -11,6 +11,9 @@ async function saveMessage(ticket, message, fetchOptions, values) {
|
|
|
11
11
|
tenant: ticket.get("tenant"),
|
|
12
12
|
user: ticket.get("user"),
|
|
13
13
|
title: message.title,
|
|
14
|
+
replyTo: message.replyToMessageId
|
|
15
|
+
? new types_1.Maintenance_Message({ id: message.replyToMessageId.toString() })
|
|
16
|
+
: undefined,
|
|
14
17
|
data: {
|
|
15
18
|
origin: { id: ticket.id, classname: ticket.className }, // default
|
|
16
19
|
...message.data,
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.init = init;
|
|
4
4
|
async function init(name) {
|
|
5
5
|
Parse.Cloud.define(name, async (request) => {
|
|
6
|
-
console.log(request);
|
|
7
6
|
if (!request.user) {
|
|
8
7
|
return { message: "Unauthorized" };
|
|
9
8
|
}
|
|
@@ -23,6 +22,7 @@ async function init(name) {
|
|
|
23
22
|
pass: "*",
|
|
24
23
|
},
|
|
25
24
|
from: process.env.OPENINC_PARSE_SMTP_FROM,
|
|
25
|
+
replyTo: process.env.OPENINC_PARSE_SMTP_REPLY_TO,
|
|
26
26
|
};
|
|
27
27
|
}
|
|
28
28
|
return { message: "Mail server not configured or disabled." };
|
|
@@ -17,4 +17,15 @@ async function init() {
|
|
|
17
17
|
(0, schema_1.afterSaveHook)(types_1.Maintenance_Message, async (request) => {
|
|
18
18
|
const { object, original, user, master } = request;
|
|
19
19
|
});
|
|
20
|
+
(0, schema_1.afterDeleteHook)(types_1.Maintenance_Message, async (request) => {
|
|
21
|
+
const { object } = request;
|
|
22
|
+
// Find and delete all messages that reply to this deleted message
|
|
23
|
+
const query = new Parse.Query(types_1.Maintenance_Message);
|
|
24
|
+
query.equalTo("replyTo", object);
|
|
25
|
+
const replyMessages = await query.find({ useMasterKey: true });
|
|
26
|
+
// Delete all reply messages (cascade deletion)
|
|
27
|
+
if (replyMessages.length > 0) {
|
|
28
|
+
await Parse.Object.destroyAll(replyMessages, { useMasterKey: true });
|
|
29
|
+
}
|
|
30
|
+
});
|
|
20
31
|
}
|