mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-23 17:19:37 +02:00
Add missing ip matcher endpoint hit when opening project dashboard react (#12015)
* Add missing ip matcher endpoint hit when opening project dashboard react * Add error logger on the catch block GitOrigin-RevId: 0f69de329b1290a4f0f98ef00dda050fb09d5a08
This commit is contained in:
@@ -245,6 +245,9 @@ NotificationsBuilder.promises = {
|
||||
dropboxDuplicateProjectNames(userId) {
|
||||
return promisifyAll(dropboxDuplicateProjectNames(userId))
|
||||
},
|
||||
ipMatcherAffiliation: function (userId) {
|
||||
return promisifyAll(ipMatcherAffiliation(userId))
|
||||
},
|
||||
}
|
||||
|
||||
module.exports = NotificationsBuilder
|
||||
|
||||
@@ -20,6 +20,7 @@ const { User } = require('../../models/User')
|
||||
const UserPrimaryEmailCheckHandler = require('../User/UserPrimaryEmailCheckHandler')
|
||||
const UserController = require('../User/UserController')
|
||||
const LimitationsManager = require('../Subscription/LimitationsManager')
|
||||
const NotificationsBuilder = require('../Notifications/NotificationsBuilder')
|
||||
|
||||
/** @typedef {import("./types").GetProjectsRequest} GetProjectsRequest */
|
||||
/** @typedef {import("./types").GetProjectsResponse} GetProjectsResponse */
|
||||
@@ -283,6 +284,19 @@ async function projectListReactPage(req, res, next) {
|
||||
)
|
||||
}
|
||||
|
||||
// in v2 add notifications for matching university IPs
|
||||
if (Settings.overleaf != null && req.ip !== user.lastLoginIp) {
|
||||
NotificationsBuilder.promises
|
||||
.ipMatcherAffiliation(user._id)
|
||||
.create(req.ip)
|
||||
.catch(err => {
|
||||
logger.error(
|
||||
{ err },
|
||||
'failed to create institutional IP match notification'
|
||||
)
|
||||
})
|
||||
}
|
||||
|
||||
const hasPaidAffiliation = userAffiliations.some(
|
||||
affiliation => affiliation.licence && affiliation.licence !== 'free'
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user