feat(assist): assist refactored

This commit is contained in:
Taha Yassine Kraiem 2022-06-14 18:01:52 +02:00
parent d4d029c525
commit ded2d980fe
2 changed files with 19 additions and 16 deletions

View file

@ -1,7 +1,7 @@
const _io = require('socket.io');
const express = require('express');
const uaParser = require('ua-parser-js');
const {extractPeerId, hasFilters, isValidSession} = require('../utils/helper');
const {extractPeerId, hasFilters, isValidSession, objectToObjectOfArrays} = require('../utils/helper');
const {geoip} = require('../utils/geoIP');
const wsRouter = express.Router();
const UPDATE_EVENT = "UPDATE_SESSION";
@ -34,20 +34,8 @@ const extractFiltersFromRequest = function (req) {
debug && console.log(`[WS]where userId=${req.query.userId}`);
filters.userID = [req.query.userId];
}
filters = {...filters, ...req.body};
let _filters = {}
for (let k of Object.keys(filters)) {
if (filters[k] !== undefined && filters[k] !== null) {
_filters[k] = filters[k];
if (!Array.isArray(_filters[k])) {
_filters[k] = [_filters[k]];
}
for (let i = 0; i < _filters[k].length; i++) {
_filters[k][i] = String(_filters[k][i]);
}
}
}
return Object.keys(_filters).length > 0 ? _filters : undefined;
filters = objectToObjectOfArrays({...filters, ...req.body});
return Object.keys(filters).length > 0 ? filters : undefined;
}
const extractProjectKeyFromRequest = function (req) {

View file

@ -51,6 +51,21 @@ const isValidSession = function (sessionInfo, filters) {
const hasFilters = function (filters) {
return filters !== undefined && Object.keys(filters).length > 0;
}
const objectToObjectOfArrays = function (obj) {
let _obj = {}
for (let k of Object.keys(obj)) {
if (obj[k] !== undefined && obj[k] !== null) {
_obj[k] = obj[k];
if (!Array.isArray(_obj[k])) {
_obj[k] = [_obj[k]];
}
for (let i = 0; i < _obj[k].length; i++) {
_obj[k][i] = String(_obj[k][i]);
}
}
}
return _obj;
}
module.exports = {
extractPeerId, request_logger, isValidSession, hasFilters
extractPeerId, request_logger, isValidSession, hasFilters, objectToObjectOfArrays
};