| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- /* eslint-disable
- n/handle-callback-err,
- max-len,
- no-unused-vars,
- */
- // TODO: This file was created by bulk-decaffeinate.
- // Fix any style issues and re-enable lint.
- /*
- * decaffeinate suggestions:
- * DS102: Remove unnecessary code created because of implicit returns
- * DS207: Consider shorter variations of null checks
- * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
- */
- const Settings = require('@overleaf/settings')
- const logger = require('@overleaf/logger')
- const Async = require('async')
- const UserSessionsRedis = require('../../../../app/src/Features/User/UserSessionsRedis')
- // rclient = redis.createClient(Settings.redis.web)
- const rclient = UserSessionsRedis.client()
- module.exports = {
- getUserSessions(user, callback) {
- if (callback == null) {
- callback = function () {}
- }
- return rclient.smembers(
- UserSessionsRedis.sessionSetKey(user),
- (err, result) => callback(err, result)
- )
- },
- clearUserSessions(user, callback) {
- if (callback == null) {
- callback = function () {}
- }
- const sessionSetKey = UserSessionsRedis.sessionSetKey(user)
- return rclient.smembers(sessionSetKey, (err, sessionKeys) => {
- if (err) {
- return callback(err)
- }
- if (sessionKeys.length === 0) {
- return callback(null)
- }
- const actions = sessionKeys.map(k => cb => rclient.del(k, err => cb(err)))
- return Async.series(actions, (err, results) =>
- rclient.srem(sessionSetKey, sessionKeys, err => {
- if (err) {
- return callback(err)
- }
- return callback(null)
- })
- )
- })
- },
- }
|