ACP event log

This commit is contained in:
calzoneman 2014-02-07 10:45:28 -06:00
parent afa17165f7
commit 0a480515d7
6 changed files with 101 additions and 2 deletions

View file

@ -16,6 +16,10 @@ var util = require("./utilities");
var Config = require("./config");
var Server = require("./server");
function eventUsername(user) {
return user.name + "@" + user.ip;
}
function handleAnnounce(user, data) {
var sv = Server.getServer();
@ -24,10 +28,14 @@ function handleAnnounce(user, data) {
text: data.content,
from: user.name
});
Logger.eventlog.log("[acp] " + eventUsername(user) + " opened announcement `" +
data.title + "`");
}
function handleAnnounceClear(user) {
Server.getServer().announce(null);
Logger.eventlog.log("[acp] " + eventUsername(user) + " cleared announcement");
}
function handleGlobalBan(user, data) {
@ -39,6 +47,8 @@ function handleGlobalBan(user, data) {
return;
}
Logger.eventlog.log("[acp] " + eventUsername(user) + " global banned " + data.ip);
db.listGlobalBans(function (err, bans) {
if (err) {
user.socket.emit("errMessage", {
@ -68,6 +78,9 @@ function handleGlobalBanDelete(user, data) {
return;
}
Logger.eventlog.log("[acp] " + eventUsername(user) + " un-global banned " +
data.ip);
db.listGlobalBans(function (err, bans) {
if (err) {
user.socket.emit("errMessage", {
@ -144,6 +157,8 @@ function handleSetRank(user, data) {
msg: err
});
} else {
Logger.eventlog.log("[acp] " + eventUsername(user) + " set " + name +
"'s global_rank to " + rank);
user.socket.emit("acp-set-rank", data);
}
});
@ -181,6 +196,9 @@ function handleResetPassword(user, data) {
return;
}
Logger.eventlog.log("[acp] " + eventUsername(user) + " initialized a " +
"password recovery for " + name);
user.socket.emit("errMessage", {
msg: "Reset link: " + Config.get("http.domain") +
"/account/passwordrecover/" + hash
@ -229,6 +247,7 @@ function handleDeleteChannel(user, data) {
}
db.channels.drop(name, function (err) {
Logger.eventlog.log("[acp] " + eventUsername(user) + " deleted channel " + name);
if (err) {
user.socket.emit("errMessage", {
msg: err
@ -262,6 +281,8 @@ function handleForceUnload(user, data) {
users.forEach(function (u) {
u.kick("Channel shutting down");
});
Logger.eventlog.log("[acp] " + eventUsername(user) + " forced unload of " + name);
}
function init(user) {
@ -295,7 +316,7 @@ function init(user) {
}
user.socket.emit("acp-gbanlist", flat);
});
Logger.eventlog.log("[acp] Initialized ACP for " + user.name + "@" + user.ip);
Logger.eventlog.log("[acp] Initialized ACP for " + eventUsername(user));
}
module.exports.init = init;

View file

@ -370,6 +370,7 @@ function handleDeleteChannel(req, res) {
});
return;
}
db.channels.drop(name, function (err) {
if (!err) {
Logger.eventlog.log("[channel] " + loginName + "@" +
@ -688,6 +689,7 @@ function handlePasswordRecover(req, res) {
}
db.deletePasswordReset(hash);
Logger.eventlog.log("[account] " + ip + " recovered password for " + row.name);
sendJade(res, "account-passwordrecover", {
recovered: true,

View file

@ -100,6 +100,13 @@ function handleReadHttplog(req, res) {
readLog(res, path.join(__dirname, "..", "..", "http.log"), 1048576);
}
/**
* Handles a request to read the event log
*/
function handleReadEventlog(req, res) {
readLog(res, path.join(__dirname, "..", "..", "events.log"), 1048576);
}
/**
* Handles a request to read a channel log
*/
@ -117,6 +124,7 @@ module.exports = {
app.get("/acp/syslog", checkAdmin(handleReadSyslog));
app.get("/acp/errlog", checkAdmin(handleReadErrlog));
app.get("/acp/httplog", checkAdmin(handleReadHttplog));
app.get("/acp/eventlog", checkAdmin(handleReadEventlog));
app.get("/acp/chanlog/:name", checkAdmin(handleReadChanlog));
}
};