diff --git a/src/mail.js b/src/mail.js index 08940295c..a8667b73c 100644 --- a/src/mail.js +++ b/src/mail.js @@ -667,7 +667,8 @@ function configureMail(mailFqdn, mailDomain, callback) { }); } -function getEventlog(page, perPage, callback) { +function getEventlog(search, page, perPage, callback) { + assert.strictEqual(typeof search, 'string'); assert.strictEqual(typeof page, 'number'); assert.strictEqual(typeof perPage, 'number'); assert.strictEqual(typeof callback, 'function'); @@ -675,7 +676,7 @@ function getEventlog(page, perPage, callback) { addons.getServiceDetails('mail', 'CLOUDRON_MAIL_TOKEN', function (error, addonDetails) { if (error) return callback(error); - request.get(`https://${addonDetails.ip}:3000/eventlog?access_token=${addonDetails.token}&page=${page}&per_page=${perPage}`, { json: true, rejectUnauthorized: false }, function (error, response) { + request.get(`https://${addonDetails.ip}:3000/eventlog?access_token=${addonDetails.token}&search=${search}&page=${page}&per_page=${perPage}`, { json: true, rejectUnauthorized: false }, function (error, response) { if (error) return callback(new BoxError(BoxError.MAIL_ERROR, `Error getting eventlog: ${error.message}`)); if (response.statusCode !== 200) return callback(new BoxError(BoxError.MAIL_ERROR, `Error getting eventlog. Status code: ${response.statusCode} message: ${response.body}`)); diff --git a/src/routes/mail.js b/src/routes/mail.js index b14566c09..8a130ba8a 100644 --- a/src/routes/mail.js +++ b/src/routes/mail.js @@ -362,7 +362,7 @@ function getEventlog(req, res, next) { var perPage = typeof req.query.per_page !== 'undefined'? parseInt(req.query.per_page) : 25; if (!perPage || perPage < 0) return next(new HttpError(400, 'per_page query param has to be a positive number')); - mail.getEventlog(page, perPage, function (error, result) { + mail.getEventlog(req.query.search || '', page, perPage, function (error, result) { if (error) return next(BoxError.toHttpError(error)); next(new HttpSuccess(200, { eventlogs: result }));