Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/matsuyoshi30/harbor.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormatsuyoshi <sfbgwm30@gmail.com>2021-10-25 17:24:27 +0300
committermatsuyoshi <sfbgwm30@gmail.com>2021-10-25 17:25:25 +0300
commitd18377c4d8e3e179086c7bb263f39edfb9b3d60b (patch)
tree4cbe334ec4f6e5afd08930aaff482f61808951eb
parent2a14420ed48e4457486f84eaeb8edd5ec0d7d9ea (diff)
remove duplicate results
-rw-r--r--assets/js/search.js46
1 files changed, 23 insertions, 23 deletions
diff --git a/assets/js/search.js b/assets/js/search.js
index 58d0ec7..a2ffc4e 100644
--- a/assets/js/search.js
+++ b/assets/js/search.js
@@ -61,33 +61,33 @@ const renderResults = (results) => {
return
}
- let instance = new Mark(document.querySelector('#searchResults'))
- results.forEach((result) => {
- let isBody = result.field === "body"
+ let arr = results[0].result
+ if (results.length > 1) {
+ arr.concat(results[1].result)
+ }
+ arr.filter((element, index, self) =>
+ self.findIndex(e => e.id === element.id) === index)
- // TODO: create array remove duplicate docs
- result.result.forEach((result) => {
- let resultPage = document.createElement('div')
- resultPage.className = 'searchResultPage'
+ let instance = new Mark(document.querySelector('#searchResults'))
+ arr.forEach((result) => {
+ let resultPage = document.createElement('div')
+ resultPage.className = 'searchResultPage'
- let resultTitle = document.createElement('a')
- resultTitle.className = 'searchResultTitle'
- resultTitle.href = result.doc.href
- resultTitle.innerHTML = result.doc.title
- resultPage.append(resultTitle)
+ let resultTitle = document.createElement('a')
+ resultTitle.className = 'searchResultTitle'
+ resultTitle.href = result.doc.href
+ resultTitle.innerHTML = result.doc.title
+ resultPage.append(resultTitle)
- if (isBody) {
- let resultBody = document.createElement('div')
- resultBody.className = 'searchResultBody'
- let matchPos = result.doc.body.indexOf(query)
- let bodyStartPos = matchPos - BODY_LENGTH / 2 > 0 ? matchPos - BODY_LENGTH / 2 : 0
- resultBody.innerHTML = result.doc.body.substr(bodyStartPos, BODY_LENGTH)
- resultPage.append(resultBody)
- }
- searchResults.append(resultPage)
+ let resultBody = document.createElement('div')
+ resultBody.className = 'searchResultBody'
+ let matchPos = result.doc.body.indexOf(query)
+ let bodyStartPos = matchPos - BODY_LENGTH / 2 > 0 ? matchPos - BODY_LENGTH / 2 : 0
+ resultBody.innerHTML = result.doc.body.substr(bodyStartPos, BODY_LENGTH)
+ resultPage.append(resultBody)
+ searchResults.append(resultPage)
- instance.mark(query)
- })
+ instance.mark(query)
})
}