|
|
@ -1,25 +1,45 @@ |
|
|
|
console.log("Welcome to Uptime Kuma ") |
|
|
|
console.log("Importing libraries") |
|
|
|
const express = require("express"); |
|
|
|
console.log("Welcome to Uptime Kuma") |
|
|
|
|
|
|
|
const { sleep, debug } = require("../src/util"); |
|
|
|
|
|
|
|
console.log("Importing Node libraries") |
|
|
|
const fs = require("fs"); |
|
|
|
const http = require("http"); |
|
|
|
|
|
|
|
console.log("Importing 3rd-party libraries") |
|
|
|
debug("Importing express"); |
|
|
|
const express = require("express"); |
|
|
|
debug("Importing socket.io"); |
|
|
|
const { Server } = require("socket.io"); |
|
|
|
debug("Importing dayjs"); |
|
|
|
const dayjs = require("dayjs"); |
|
|
|
debug("Importing redbean-node"); |
|
|
|
const { R } = require("redbean-node"); |
|
|
|
debug("Importing jsonwebtoken"); |
|
|
|
const jwt = require("jsonwebtoken"); |
|
|
|
const Monitor = require("./model/monitor"); |
|
|
|
const fs = require("fs"); |
|
|
|
const { getSettings } = require("./util-server"); |
|
|
|
const { Notification } = require("./notification") |
|
|
|
debug("Importing http-graceful-shutdown"); |
|
|
|
const gracefulShutdown = require("http-graceful-shutdown"); |
|
|
|
const Database = require("./database"); |
|
|
|
const { sleep } = require("../src/util"); |
|
|
|
const args = require("args-parser")(process.argv); |
|
|
|
debug("Importing prometheus-api-metrics"); |
|
|
|
const prometheusAPIMetrics = require("prometheus-api-metrics"); |
|
|
|
|
|
|
|
console.log("Importing this project modules"); |
|
|
|
debug("Importing Monitor"); |
|
|
|
const Monitor = require("./model/monitor"); |
|
|
|
debug("Importing Settings"); |
|
|
|
const { getSettings, setSettings } = require("./util-server"); |
|
|
|
debug("Importing Notification"); |
|
|
|
const { Notification } = require("./notification"); |
|
|
|
debug("Importing Database"); |
|
|
|
const Database = require("./database"); |
|
|
|
|
|
|
|
const { basicAuth } = require("./auth"); |
|
|
|
const { login } = require("./auth"); |
|
|
|
const passwordHash = require("./password-hash"); |
|
|
|
|
|
|
|
const args = require("args-parser")(process.argv); |
|
|
|
|
|
|
|
const version = require("../package.json").version; |
|
|
|
const hostname = args.host || "0.0.0.0" |
|
|
|
const hostname = process.env.HOST || args.host || "0.0.0.0" |
|
|
|
const port = parseInt(process.env.PORT || args.port || 3001); |
|
|
|
|
|
|
|
console.info("Version: " + version) |
|
|
@ -405,13 +425,32 @@ let indexHTML = fs.readFileSync("./dist/index.html").toString(); |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
socket.on("getSettings", async (type, callback) => { |
|
|
|
socket.on("getSettings", async (callback) => { |
|
|
|
try { |
|
|
|
checkLogin(socket) |
|
|
|
|
|
|
|
callback({ |
|
|
|
ok: true, |
|
|
|
data: await getSettings(type), |
|
|
|
data: await getSettings("general"), |
|
|
|
}); |
|
|
|
|
|
|
|
} catch (e) { |
|
|
|
callback({ |
|
|
|
ok: false, |
|
|
|
msg: e.message, |
|
|
|
}); |
|
|
|
} |
|
|
|
}); |
|
|
|
|
|
|
|
socket.on("setSettings", async (data, callback) => { |
|
|
|
try { |
|
|
|
checkLogin(socket) |
|
|
|
|
|
|
|
await setSettings("general", data) |
|
|
|
|
|
|
|
callback({ |
|
|
|
ok: true, |
|
|
|
msg: "Saved" |
|
|
|
}); |
|
|
|
|
|
|
|
} catch (e) { |
|
|
|