65 lines
3.9 KiB
TypeScript
65 lines
3.9 KiB
TypeScript
import {Notification} from "./notifications";
|
|
import {HelperFunctions} from "../utils/HelperFunctions.class";
|
|
import {Composer} from "../utils/email/composer";
|
|
|
|
export class NotificationUtils {
|
|
public static IMPORT_INDICATORS: Notification = new Notification('IMPORT', ['monitor'], 'User ((__user__)) has imported new indicators in ((__stakeholder__)) profile', 'section')
|
|
public static CREATE_STAKEHOLDER: Notification = new Notification('CREATE', ['monitor'], 'User ((__user__)) has created a new profile', 'stakeholder')
|
|
public static EDIT_STAKEHOLDER: Notification = new Notification('EDIT', ['monitor'], 'User ((__user__)) has updated ((__stakeholder__)) profile', 'stakeholder')
|
|
public static CREATE_INDICATOR: Notification = new Notification('CREATE', ['monitor'], 'User ((__user__)) has created a new indicator in ((__stakeholder__)) profile', 'indicator');
|
|
public static EDIT_INDICATOR: Notification = new Notification('EDIT', ['monitor'], 'User ((__user__)) has updated an indicator in ((__stakeholder__)) profile', 'indicator');
|
|
public static DELETE_INDICATOR: Notification = new Notification('DELETE', ['monitor'], 'User ((__user__)) has deleted an indicator in ((__stakeholder__)) profile', 'indicator');
|
|
public static INVITE_MONITOR_MANAGER: Notification = new Notification('INVITE_MANAGER', ['monitor'], null, 'user');
|
|
public static INVITE_MONITOR_MEMBER: Notification = new Notification('INVITE_MEMBER', ['monitor'], null, 'user');
|
|
|
|
public static importIndicators(user: string, stakeholder: string): Notification {
|
|
let notification: Notification = HelperFunctions.copy(this.IMPORT_INDICATORS);
|
|
notification.message = notification.message.replace('((__user__))', user);
|
|
notification.message = notification.message.replace('((__stakeholder__))', stakeholder);
|
|
return notification;
|
|
}
|
|
|
|
public static createStakeholder(user: string): Notification {
|
|
let notification: Notification = HelperFunctions.copy(this.CREATE_STAKEHOLDER);
|
|
notification.message = notification.message.replace('((__user__))', user);
|
|
return notification;
|
|
}
|
|
|
|
public static editStakeholder(user: string, stakeholder: string): Notification {
|
|
let notification: Notification = HelperFunctions.copy(this.EDIT_STAKEHOLDER);
|
|
notification.message = notification.message.replace('((__user__))', user);
|
|
notification.message = notification.message.replace('((__stakeholder__))', stakeholder);
|
|
return notification;
|
|
}
|
|
|
|
public static createIndicator(user: string, stakeholder: string): Notification {
|
|
let notification: Notification = HelperFunctions.copy(this.CREATE_INDICATOR);
|
|
notification.message = notification.message.replace('((__user__))', user);
|
|
notification.message = notification.message.replace('((__stakeholder__))', stakeholder);
|
|
return notification;
|
|
}
|
|
|
|
public static editIndicator(user: string, stakeholder: string): Notification {
|
|
let notification: Notification = HelperFunctions.copy(this.EDIT_INDICATOR);
|
|
notification.message = notification.message.replace('((__user__))', user);
|
|
notification.message = notification.message.replace('((__stakeholder__))', stakeholder);
|
|
return notification;
|
|
}
|
|
|
|
public static deleteIndicator(user: string, stakeholder: string): Notification {
|
|
let notification: Notification = HelperFunctions.copy(this.DELETE_INDICATOR);
|
|
notification.message = notification.message.replace('((__user__))', user);
|
|
notification.message = notification.message.replace('((__stakeholder__))', stakeholder);
|
|
return notification;
|
|
}
|
|
|
|
public static invite(name: string,role: "manager" | "member", user, invitation: string): Notification {
|
|
let notification: Notification = HelperFunctions.copy(this.INVITE_MONITOR_MANAGER);
|
|
if(role === "member") {
|
|
notification = HelperFunctions.copy(this.INVITE_MONITOR_MEMBER);
|
|
}
|
|
notification.message = Composer.composeMessageForMonitorDashboard(name, role, user, invitation);
|
|
return notification;
|
|
}
|
|
}
|