ip to log, filter ip on global logs

merge-requests/208/head
fatchan 5 years ago
parent 31bec034ba
commit b4cfbe572d
  1. 2
      db/db.js
  2. 3
      models/forms/actionhandler.js
  3. 6
      models/pages/globalmanage/logs.js
  4. 9
      views/pages/globalmanagelogs.pug

@ -5,8 +5,6 @@ const { MongoClient, ObjectId, Int32 } = require('mongodb')
module.exports = { module.exports = {
client,
connect: async () => { connect: async () => {
if (module.exports.client) { if (module.exports.client) {
throw new Error('Mongo already connected'); throw new Error('Mongo already connected');

@ -269,9 +269,10 @@ module.exports = async (req, res, next) => {
postIds: [], postIds: [],
actions: modlogActions, actions: modlogActions,
date: logDate, date: logDate,
user: logUser,
showUser: req.body.show_name || logUser === 'Unregistered User' ? true : false, showUser: req.body.show_name || logUser === 'Unregistered User' ? true : false,
message: message, message: message,
user: logUser,
ip: res.locals.ip.hash,
}; };
} }
//push each post id //push each post id

@ -2,6 +2,7 @@
const { Modlogs } = require(__dirname+'/../../../db/') const { Modlogs } = require(__dirname+'/../../../db/')
, pageQueryConverter = require(__dirname+'/../../../helpers/pagequeryconverter.js') , pageQueryConverter = require(__dirname+'/../../../helpers/pagequeryconverter.js')
, decodeQueryIP = require(__dirname+'/../../../helpers/decodequeryip.js')
, limit = 50; , limit = 50;
module.exports = async (req, res, next) => { module.exports = async (req, res, next) => {
@ -17,6 +18,10 @@ module.exports = async (req, res, next) => {
if (uri && !Array.isArray(uri)) { if (uri && !Array.isArray(uri)) {
filter.board = uri; filter.board = uri;
} }
const ipMatch = decodeQueryIP(req.query);
if (ipMatch) {
filter.ip = ipMatch;
}
let logs, maxPage; let logs, maxPage;
try { try {
@ -36,6 +41,7 @@ module.exports = async (req, res, next) => {
queryString, queryString,
username, username,
uri, uri,
ip: ipMatch ? req.query.ip : null,
logs, logs,
page, page,
maxPage, maxPage,

@ -21,6 +21,9 @@ block content
.row .row
.label Username .label Username
input(type='text' name='username' value=username) input(type='text' name='username' value=username)
.row
.label IP
input(type='text' name='ip' value=ip)
input(type='submit', value='Filter') input(type='submit', value='Filter')
h4.no-m-p Global Logs: h4.no-m-p Global Logs:
if logs && logs.length > 0 if logs && logs.length > 0
@ -30,6 +33,7 @@ block content
th Date th Date
th Board th Board
th User th User
th IP
th Actions th Actions
th Post IDs th Post IDs
th Log Message th Log Message
@ -48,6 +52,11 @@ block content
| #{log.user} | #{log.user}
| |
a(href=`?username=${log.user}`) [+] a(href=`?username=${log.user}`) [+]
td
- const ipSub = log.ip.slice(-10);
a(href=`recent.html?ip=${encodeURIComponent(ipSub)}`) #{ipSub}
|
a(href=`?ip=${encodeURIComponent(ipSub)}`) [+]
td #{log.actions} td #{log.actions}
td #{log.postIds} td #{log.postIds}
td #{log.message || '-'} td #{log.message || '-'}

Loading…
Cancel
Save