|
|
@ -45,7 +45,6 @@ async function searchInContent(data) {
|
|
|
|
|
|
|
|
|
|
|
|
async function doSearch(type, searchIn) {
|
|
|
|
async function doSearch(type, searchIn) {
|
|
|
|
if (searchIn.includes(data.searchIn)) {
|
|
|
|
if (searchIn.includes(data.searchIn)) {
|
|
|
|
await recordSearch(data.query);
|
|
|
|
|
|
|
|
return await plugins.hooks.fire('filter:search.query', {
|
|
|
|
return await plugins.hooks.fire('filter:search.query', {
|
|
|
|
index: type,
|
|
|
|
index: type,
|
|
|
|
content: data.query,
|
|
|
|
content: data.query,
|
|
|
@ -95,13 +94,6 @@ async function searchInContent(data) {
|
|
|
|
return Object.assign(returnData, metadata);
|
|
|
|
return Object.assign(returnData, metadata);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
async function recordSearch(query) {
|
|
|
|
|
|
|
|
const cleanedQuery = String(query).trim().toLowerCase().substr(0, 255);
|
|
|
|
|
|
|
|
if (cleanedQuery.length > 2) {
|
|
|
|
|
|
|
|
await db.sortedSetIncrBy('searches:all', 1, cleanedQuery);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
async function filterAndSort(pids, data) {
|
|
|
|
async function filterAndSort(pids, data) {
|
|
|
|
if (data.sortBy === 'relevance' && !data.replies && !data.timeRange && !data.hasTags && !plugins.hooks.hasListeners('filter:search.filterAndSort')) {
|
|
|
|
if (data.sortBy === 'relevance' && !data.replies && !data.timeRange && !data.hasTags && !plugins.hooks.hasListeners('filter:search.filterAndSort')) {
|
|
|
|
return pids;
|
|
|
|
return pids;
|
|
|
|