aboutsummaryrefslogtreecommitdiff
path: root/src/server/ApiManagers/SearchManager.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/ApiManagers/SearchManager.ts')
-rw-r--r--src/server/ApiManagers/SearchManager.ts27
1 files changed, 16 insertions, 11 deletions
diff --git a/src/server/ApiManagers/SearchManager.ts b/src/server/ApiManagers/SearchManager.ts
index f43ed6ac9..684b49eaf 100644
--- a/src/server/ApiManagers/SearchManager.ts
+++ b/src/server/ApiManagers/SearchManager.ts
@@ -38,7 +38,9 @@ export class SearchManager extends ApiManager {
subscription: '/dashsearch',
secureHandler: async ({ req, res }) => {
const solrQuery: any = {};
- ['q', 'fq', 'start', 'rows', 'sort', 'hl.maxAnalyzedChars', 'hl', 'hl.fl'].forEach(key => (solrQuery[key] = req.query[key]));
+ ['q', 'fq', 'start', 'rows', 'sort', 'hl.maxAnalyzedChars', 'hl', 'hl.fl'].forEach(key => {
+ solrQuery[key] = req.query[key];
+ });
if (solrQuery.q === undefined) {
res.send([]);
return;
@@ -102,22 +104,22 @@ export namespace SolrManager {
if (!fields) {
return;
}
- const update: any = { id: doc._id };
+ const update2: any = { id: doc._id };
let dynfield = false;
- for (const key in fields) {
+ fields.forEach((key: any) => {
const value = fields[key];
const term = ToSearchTerm(value);
if (term !== undefined) {
- const { suffix, value } = term;
+ const { suffix, value: tvalue } = term;
if (key.endsWith('modificationDate')) {
- update['modificationDate' + suffix] = value;
+ update2['modificationDate' + suffix] = tvalue;
}
- update[key + suffix] = value;
+ update2[key + suffix] = value;
dynfield = true;
}
- }
+ });
if (dynfield) {
- updates.push(update);
+ updates.push(update2);
}
}
await cursor?.forEach(updateDoc);
@@ -159,6 +161,7 @@ export namespace SolrManager {
'_l',
list => {
const results = [];
+ // eslint-disable-next-line no-restricted-syntax
for (const value of list.fields) {
const term = ToSearchTerm(value);
if (term) {
@@ -170,14 +173,15 @@ export namespace SolrManager {
],
};
- function ToSearchTerm(val: any): { suffix: string; value: any } | undefined {
+ function ToSearchTerm(valIn: any): { suffix: string; value: any } | undefined {
+ let val = valIn;
if (val === null || val === undefined) {
- return;
+ return undefined;
}
const type = val.__type || typeof val;
let suffix = suffixMap[type];
if (!suffix) {
- return;
+ return undefined;
}
if (Array.isArray(suffix)) {
@@ -187,6 +191,7 @@ export namespace SolrManager {
} else {
val = val[accessor];
}
+ // eslint-disable-next-line prefer-destructuring
suffix = suffix[0];
}