1
0
mirror of https://github.com/sismics/docs.git synced 2025-12-13 01:36:18 +00:00

#423: fulltext search by default

This commit is contained in:
bgamard
2020-08-28 17:33:27 +02:00
parent e474e7cd75
commit 42e61d6e1f
5 changed files with 25 additions and 16 deletions

View File

@@ -455,8 +455,8 @@ public class DocumentResource extends BaseResource {
for (String criteria : criteriaList) {
String[] params = criteria.split(":");
if (params.length != 2 || Strings.isNullOrEmpty(params[0]) || Strings.isNullOrEmpty(params[1])) {
// This is not a special criteria
query.add(criteria);
// This is not a special criteria, do a fulltext search on it
fullQuery.add(criteria);
continue;
}
@@ -588,12 +588,16 @@ public class DocumentResource extends BaseResource {
// New shared state criteria
documentCriteria.setActiveRoute(params[1].equals("me"));
break;
case "simple":
// New simple search criteria
query.add(params[1]);
break;
case "full":
// New full content search criteria
// New fulltext search criteria
fullQuery.add(params[1]);
break;
default:
query.add(criteria);
fullQuery.add(criteria);
break;
}
}

View File

@@ -173,7 +173,10 @@ angular.module('docs').controller('Document', function ($scope, $rootScope, $tim
$scope.startSearch = function () {
var search = '';
if (!_.isEmpty($scope.advsearch.search_simple)) {
search += $scope.advsearch.search_simple + ' ';
var simplesearch = _.map($scope.advsearch.search_simple.split(/\s+/), function (simple) {
return 'simple:' + simple
});
search += simplesearch.join(' ') + ' ';
}
if (!_.isEmpty($scope.advsearch.search_fulltext)) {
var fulltext = _.map($scope.advsearch.search_fulltext.split(/\s+/), function (full) {

View File

@@ -216,7 +216,7 @@ public class TestDocumentResource extends BaseJerseyTest {
Assert.assertEquals(2, searchDocuments("lang:eng", document1Token));
Assert.assertEquals(1, searchDocuments("mime:image/png", document1Token));
Assert.assertEquals(0, searchDocuments("mime:empty/void", document1Token));
Assert.assertEquals(1, searchDocuments("after:2010 before:2040-08 tag:super shared:yes lang:eng title description full:uranium", document1Token));
Assert.assertEquals(1, searchDocuments("after:2010 before:2040-08 tag:super shared:yes lang:eng simple:title simple:description full:uranium", document1Token));
// Search documents (nothing)
Assert.assertEquals(0, searchDocuments("random", document1Token));