fixed searching

This commit is contained in:
ston1th 2018-10-16 21:44:01 +02:00
commit de20ea3a2a

View file

@ -51,9 +51,9 @@ func (i *Index) Close() error {
} }
func (i *Index) Add(title, storeTitle, search string) error { func (i *Index) Add(title, storeTitle, search string) error {
doc, _ := i.i.Document(title) doc, _ := i.i.Document(storeTitle)
if doc != nil { if doc != nil {
err := i.Delete(title) err := i.Delete(storeTitle)
if err != nil { if err != nil {
return err return err
} }
@ -77,14 +77,18 @@ func (i *Index) Search(search string) (results []core.Result, err error) {
if hit == nil { if hit == nil {
continue continue
} }
r := core.Result{Title: hit.ID} r := core.Result{StoreTitle: hit.ID}
for fragField, frags := range hit.Fragments { d, err := i.i.Document(hit.ID)
if fragField == "store_title" { if d == nil || err != nil {
for _, f := range frags { continue
r.StoreTitle += f
} }
for _, v := range d.Fields {
if v.Name() == "title" {
r.Title = string(v.Value())
break break
} }
}
for fragField, frags := range hit.Fragments {
if fragField == "title" || fragField == "search" { if fragField == "title" || fragField == "search" {
for _, f := range frags { for _, f := range frags {
r.HTML += template.HTML(f) r.HTML += template.HTML(f)