@openinc/parse-server-opendash 3.29.1 → 3.29.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.
@@ -49,6 +49,7 @@ async function assignUsersAndRoles(ticket, assignedTo, fetchOptions, assigningUs
49
49
  const userNotifiedIds = [];
50
50
  for await (const assignedTo of newUsers) {
51
51
  const resipientlanguage = await (0, getUserLanguage_1.getUserLanguage)(assignedTo);
52
+ const recipientlink = await (0, getTicketLink_1.getTicketLink)(ticket, assignedTo);
52
53
  await i18next_1.default.changeLanguage(resipientlanguage);
53
54
  assignments.push(new types_1.Maintenance_Ticket_Assignment({
54
55
  ticket,
@@ -74,7 +75,7 @@ async function assignUsersAndRoles(ticket, assignedTo, fetchOptions, assigningUs
74
75
  description: i18next_1.default.t("maintenance:ticket.assignuser.notification.description", {
75
76
  username: (0, openinc_openservice_save_ticket_data_1.getUsername)(assigningUser) ?? "System",
76
77
  ticketName: ticket.get("title"),
77
- ticketLink: (0, getTicketLink_1.getTicketLink)(ticket),
78
+ ticketLink: recipientlink,
78
79
  }),
79
80
  }).save(null, { useMasterKey: true });
80
81
  userNotifiedIds.push(assignedTo.id);
@@ -96,6 +97,7 @@ async function assignUsersAndRoles(ticket, assignedTo, fetchOptions, assigningUs
96
97
  roleUser.id === assigningUser?.id)
97
98
  continue;
98
99
  const resipientlanguage = await (0, getUserLanguage_1.getUserLanguage)(roleUser);
100
+ const recipientlink = await (0, getTicketLink_1.getTicketLink)(ticket, roleUser);
99
101
  await i18next_1.default.changeLanguage(resipientlanguage);
100
102
  await new types_1.Notification({
101
103
  data: {
@@ -114,7 +116,7 @@ async function assignUsersAndRoles(ticket, assignedTo, fetchOptions, assigningUs
114
116
  username: (0, openinc_openservice_save_ticket_data_1.getUsername)(assigningUser) ?? "System",
115
117
  ticketName: ticket.get("title"),
116
118
  role: assignedTo.get("label"),
117
- ticketLink: (0, getTicketLink_1.getTicketLink)(ticket),
119
+ ticketLink: recipientlink,
118
120
  }),
119
121
  }).save(null, { useMasterKey: true });
120
122
  }
@@ -1,2 +1,7 @@
1
- import { Maintenance_Ticket } from "../../../types";
2
- export declare function getTicketLink(ticket: Maintenance_Ticket): string;
1
+ import { _User, Maintenance_Ticket } from "../../../types";
2
+ /**
3
+ * Returns the link to a ticket.
4
+ * @param ticket
5
+ * @returns
6
+ */
7
+ export declare function getTicketLink(ticket: Maintenance_Ticket, user: _User): Promise<string>;
@@ -2,14 +2,23 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.getTicketLink = getTicketLink;
4
4
  const config_1 = require("../../config");
5
- function getTicketLink(ticket) {
6
- //Get hostname from environment variable or default to localhost
5
+ /**
6
+ * Returns the link to a ticket.
7
+ * @param ticket
8
+ * @returns
9
+ */
10
+ async function getTicketLink(ticket, user) {
11
+ //Get hostname from tenant or environment variable or default to localhost
7
12
  let hostname = "localhost";
8
13
  try {
14
+ const baseurl = user.get("tenant")?.get("baseUrl");
9
15
  const publicurl = config_1.ConfigInstance.getInstance()
10
16
  .get("PARSE_PUBLIC_SERVER_URL")
11
17
  .replace("/parse", "");
12
- if (publicurl) {
18
+ if (baseurl !== undefined && baseurl !== "") {
19
+ hostname = baseurl;
20
+ }
21
+ else if (publicurl) {
13
22
  hostname = publicurl;
14
23
  }
15
24
  }
@@ -5,6 +5,7 @@ export interface TenantAttributes {
5
5
  objectId: string;
6
6
  createdAt: Date;
7
7
  updatedAt: Date;
8
+ baseUrl: string;
8
9
  dataProtectionUrl: string;
9
10
  dataSource?: Source | undefined;
10
11
  description: string;
@@ -21,6 +22,8 @@ export interface TenantAttributes {
21
22
  export declare class Tenant extends Parse.Object<TenantAttributes> {
22
23
  static className: string;
23
24
  constructor(data?: Partial<TenantAttributes>);
25
+ get baseUrl(): string;
26
+ set baseUrl(value: string);
24
27
  get dataProtectionUrl(): string;
25
28
  set dataProtectionUrl(value: string);
26
29
  get dataSource(): Source | undefined;
@@ -5,6 +5,12 @@ class Tenant extends Parse.Object {
5
5
  constructor(data) {
6
6
  super("OD3_Tenant", data);
7
7
  }
8
+ get baseUrl() {
9
+ return super.get("baseUrl");
10
+ }
11
+ set baseUrl(value) {
12
+ super.set("baseUrl", value);
13
+ }
8
14
  get dataProtectionUrl() {
9
15
  return super.get("dataProtectionUrl");
10
16
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openinc/parse-server-opendash",
3
- "version": "3.29.1",
3
+ "version": "3.29.2",
4
4
  "description": "Parse Server Cloud Code for open.INC Stack.",
5
5
  "packageManager": "pnpm@10.20.0",
6
6
  "keywords": [