Browse Source

Merge pull request #4082 from mfilser/board_search_remove_limit

Board search remove limit
Lauri Ojansivu 3 years ago
parent
commit
b09e5b2680
1 changed files with 38 additions and 29 deletions
  1. 38 29
      models/boards.js

+ 38 - 29
models/boards.js

@@ -941,42 +941,51 @@ Boards.helpers({
   },
 
   searchLists(term) {
-    check(term, Match.OneOf(String, null, undefined));
-
-    const query = { boardId: this._id };
-    if (this.isTemplatesBoard()) {
-      query.type = 'template-list';
-      query.archived = false;
-    } else {
-      query.type = { $nin: ['template-list'] };
+    let ret = null;
+    if (term) {
+      check(term, Match.OneOf(String));
+      term = term.trim();
     }
-    const projection = { limit: 10, sort: { createdAt: -1 } };
-
     if (term) {
-      const regex = new RegExp(term, 'i');
+      const query = { boardId: this._id };
+      if (this.isTemplatesBoard()) {
+        query.type = 'template-list';
+        query.archived = false;
+      } else {
+        query.type = { $nin: ['template-list'] };
+      }
+      const projection = { sort: { createdAt: -1 } };
 
-      query.$or = [{ title: regex }, { description: regex }];
-    }
+      if (term) {
+        const regex = new RegExp(term, 'i');
 
-    return Lists.find(query, projection);
+        query.$or = [{ title: regex }, { description: regex }];
+      }
+
+      ret = Lists.find(query, projection);
+    }
+    return ret;
   },
 
   searchCards(term, excludeLinked) {
-    check(term, Match.OneOf(String, null, undefined));
-
-    const query = { boardId: this._id };
-    if (excludeLinked) {
-      query.linkedId = null;
-    }
-    if (this.isTemplatesBoard()) {
-      query.type = 'template-card';
-      query.archived = false;
-    } else {
-      query.type = { $nin: ['template-card'] };
+    let ret = null;
+    if (term) {
+      check(term, Match.OneOf(String));
+      term = term.trim();
     }
-    const projection = { limit: 10, sort: { createdAt: -1 } };
-
     if (term) {
+      const query = { boardId: this._id };
+      if (excludeLinked) {
+        query.linkedId = null;
+      }
+      if (this.isTemplatesBoard()) {
+        query.type = 'template-card';
+        query.archived = false;
+      } else {
+        query.type = { $nin: ['template-card'] };
+      }
+      const projection = { sort: { createdAt: -1 } };
+
       const regex = new RegExp(term, 'i');
 
       query.$or = [
@@ -984,9 +993,9 @@ Boards.helpers({
         { description: regex },
         { customFields: { $elemMatch: { value: regex } } },
       ];
+      ret = Cards.find(query, projection);
     }
-
-    return Cards.find(query, projection);
+    return ret;
   },
   // A board alwasy has another board where it deposits subtasks of thasks
   // that belong to itself.