From e1bf110ec872156a32fc7e71422acb3cdba79d9c Mon Sep 17 00:00:00 2001 From: Yan Maniez Date: Thu, 13 Jun 2019 23:26:00 +0200 Subject: [PATCH] Comparers --- .../ViewModels/Library/FilterViewModel.cs | 18 ++++++------------ 1 file changed, 6 insertions(+), 12 deletions(-) diff --git a/AideDeJeu/AideDeJeu/ViewModels/Library/FilterViewModel.cs b/AideDeJeu/AideDeJeu/ViewModels/Library/FilterViewModel.cs index c3e64913..62d988fd 100644 --- a/AideDeJeu/AideDeJeu/ViewModels/Library/FilterViewModel.cs +++ b/AideDeJeu/AideDeJeu/ViewModels/Library/FilterViewModel.cs @@ -361,18 +361,12 @@ namespace AideDeJeu.ViewModels.Library using (var context = await StoreViewModel.GetLibraryContextAsync()) { return context.Monsters.Where(monster => - monster != null && - monster.Family == this.Family && - monster.Type.Contains(type) && - (string.IsNullOrEmpty(size) || (monster.Size != null && monster.Size.Equals(size))) && - (string.IsNullOrEmpty(source) || (monster.Source != null && monster.Source.Contains(source))) && - (string.IsNullOrEmpty(terrain) || (monster.Terrain != null && monster.Terrain.Contains(terrain))) && - challengeComparer.Compare(monster.Challenge, minChallenge) >= 0 && - challengeComparer.Compare(monster.Challenge, maxChallenge) <= 0 && - ( - (Helpers.RemoveDiacritics(monster.Name).ToLower().Contains(Helpers.RemoveDiacritics(SearchText ?? string.Empty).ToLower())) || - (Helpers.RemoveDiacritics(monster.AltNameText ?? string.Empty).ToLower().Contains(Helpers.RemoveDiacritics(SearchText ?? string.Empty).ToLower())) - ) + MatchEquals(monster.Family, this.Family) && + MatchContains(monster.Type, type) && + MatchEquals(monster.Size, size) && + MatchContains(monster.Terrain, terrain) && + MatchRange(monster.Challenge, minChallenge, maxChallenge, challengeComparer) && + MatchSearch(monster) ).OrderBy(monster => Helpers.RemoveDiacritics(monster.Name)).ToList(); } }