Browse Source

Fixing an issue with lucene equality searching, strings weren't handled correctly.

pull/4023/head
mike12345567 5 years ago
parent
commit
65358cf10d
  1. 8
      packages/server/src/api/controllers/row/internalSearch.js

8
packages/server/src/api/controllers/row/internalSearch.js

@ -148,12 +148,16 @@ class QueryBuilder {
}
if (this.query.equal) {
build(this.query.equal, (key, value) => {
return value ? `${key}:${luceneEscape(value.toLowerCase())}` : null
const escapedValue = luceneEscape(value.toLowerCase())
// have to do the or to manage straight values, or strings
return value ? `(${key}:${escapedValue} OR ${key}:"${escapedValue}")` : null
})
}
if (this.query.notEqual) {
build(this.query.notEqual, (key, value) => {
return value ? `!${key}:${luceneEscape(value.toLowerCase())}` : null
const escapedValue = luceneEscape(value.toLowerCase())
// have to do the or to manage straight values, or strings
return value ? `(!${key}:${escapedValue} OR !${key}:"${escapedValue}")` : null
})
}
if (this.query.empty) {

Loading…
Cancel
Save