Slightly refactor

This commit is contained in:
Lukas 2021-10-12 23:24:34 +02:00
parent 792f3c7c5c
commit 30d8aadf12

View file

@ -1,5 +1,6 @@
const nodemailer = require("nodemailer"); const nodemailer = require("nodemailer");
const NotificationProvider = require("./notification-provider"); const NotificationProvider = require("./notification-provider");
const { DOWN, UP } = require("../../src/util");
class SMTP extends NotificationProvider { class SMTP extends NotificationProvider {
@ -28,33 +29,29 @@ class SMTP extends NotificationProvider {
// If custom subject is not empty, change subject for notification // If custom subject is not empty, change subject for notification
if (customsubject !== "") { if (customsubject !== "") {
// Replace "MACROS" with coresponding variable // Replace "MACROS" with coresponding variable
let replaceName = new RegExp("{NAME}", "g"); let replaceName = new RegExp("{NAME}", "g");
let replaceHostname = new RegExp("{HOSTNAME}", "g"); let replaceHostname = new RegExp("{HOSTNAME}", "g");
let replaceStatus = new RegExp("{STATUS}", "g"); let replaceStatus = new RegExp("{STATUS}", "g");
let serviceStatus; // Lets start with dummy values to simplify code
let monitorName = "Test"
let monitorHostname = "example.com"
let serviceStatus = "⚠️ Test";
if (monitorJSON !== null) { if (monitorJSON !== null) {
customsubject = customsubject.replace(replaceName,monitorJSON["name"]); monitorName = monitorJSON["name"];
customsubject = customsubject.replace(replaceHostname,monitorJSON["hostname"]); monitorHostname = monitorJSON["hostname"];
} else {
// Insert dummy values during test
customsubject = customsubject.replace(replaceName,"Test");
customsubject = customsubject.replace(replaceHostname,"example.com");
} }
if (heartbeatJSON !== null) { if (heartbeatJSON !== null) {
if (heartbeatJSON["status"] === 0) { serviceStatus = heartbeatJSON["status"] == DOWN ? "🔴 Down":"✅ Up";
serviceStatus = "🔴 Down"
} else {
serviceStatus = "✅ Up"
}
customsubject = customsubject.replace(replaceStatus,serviceStatus);
} else {
// Insert dummy values during test
customsubject = customsubject.replace(replaceStatus,"TEST");
} }
// Break replace to one by line for better readability
customsubject = customsubject.replace(replaceStatus,serviceStatus);
customsubject = customsubject.replace(replaceName,monitorName);
customsubject = customsubject.replace(replaceHostname,monitorHostname);
subject = customsubject subject = customsubject
} }