From 81d58bfd8e793347c8ded5a562b0f84a06f5b6c5 Mon Sep 17 00:00:00 2001 From: Eduard Urbach Date: Tue, 4 Jul 2017 14:34:58 +0200 Subject: [PATCH] Improved search --- jobs/search-index/search-index.go | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/jobs/search-index/search-index.go b/jobs/search-index/search-index.go index fd52dfe6..0edb8450 100644 --- a/jobs/search-index/search-index.go +++ b/jobs/search-index/search-index.go @@ -28,22 +28,23 @@ func updateAnimeIndex() { } for anime := range animeStream { + if anime.Title.Canonical != "" { + animeSearchIndex.TextToID[strings.ToLower(anime.Title.Canonical)] = anime.ID + } + if anime.Title.Romaji != "" { animeSearchIndex.TextToID[strings.ToLower(anime.Title.Romaji)] = anime.ID } - if anime.Title.English != "" { - animeSearchIndex.TextToID[strings.ToLower(anime.Title.English)] = anime.ID - } - - // Make sure we only include Japanese titles that actually contain unicode letters - // because otherwise they might overlap with the English titles. - if anime.Title.Japanese != "" && arn.ContainsUnicodeLetters(anime.Title.Japanese) { + // Make sure we only include Japanese titles that + // don't overlap with the English titles. + if anime.Title.Japanese != "" && animeSearchIndex.TextToID[strings.ToLower(anime.Title.Japanese)] == "" { animeSearchIndex.TextToID[strings.ToLower(anime.Title.Japanese)] = anime.ID } - if anime.Title.Canonical != "" { - animeSearchIndex.TextToID[strings.ToLower(anime.Title.Canonical)] = anime.ID + // Same with English titles, don't overwrite other stuff. + if anime.Title.English != "" && animeSearchIndex.TextToID[strings.ToLower(anime.Title.English)] == "" { + animeSearchIndex.TextToID[strings.ToLower(anime.Title.English)] = anime.ID } for _, synonym := range anime.Title.Synonyms {