mirror of
https://github.com/xuthus83/pigallery2.git
synced 2024-11-03 21:04:03 +08:00
47 lines
1.2 KiB
TypeScript
47 lines
1.2 KiB
TypeScript
import {NotificationDTO, NotificationType} from '../../common/entities/NotificationDTO';
|
|
import {Request} from 'express';
|
|
|
|
export class NotificationManager {
|
|
public static notifications: NotificationDTO[] = [];
|
|
public static HasNotification: NotificationDTO[] =
|
|
[
|
|
{
|
|
type: NotificationType.info,
|
|
message: 'There are unhandled server notification. Login as Administrator to handle them.'
|
|
}
|
|
];
|
|
|
|
|
|
public static error(message: string, details?: any, req?: Request) {
|
|
const noti: NotificationDTO = {
|
|
type: NotificationType.error,
|
|
message: message,
|
|
details: details
|
|
};
|
|
if (req) {
|
|
noti.request = {
|
|
method: req.method,
|
|
url: req.url,
|
|
statusCode: req.statusCode
|
|
};
|
|
}
|
|
NotificationManager.notifications.push(noti);
|
|
}
|
|
|
|
public static warning(message: string, details?: any, req?: Request) {
|
|
const noti: NotificationDTO = {
|
|
type: NotificationType.warning,
|
|
message: message,
|
|
details: details
|
|
};
|
|
if (req) {
|
|
noti.request = {
|
|
method: req.method,
|
|
url: req.url,
|
|
statusCode: req.statusCode
|
|
};
|
|
}
|
|
NotificationManager.notifications.push(noti);
|
|
}
|
|
}
|