From 3e671f56ad5748a9710ac8b08ff77c0d1494fd5e Mon Sep 17 00:00:00 2001 From: Biarity Date: Thu, 19 Apr 2018 10:16:03 +1000 Subject: [PATCH] OR filtering tests - multiple properties (#8) --- Sieve/Models/SieveModel.cs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Sieve/Models/SieveModel.cs b/Sieve/Models/SieveModel.cs index 8eaacbf..29ead9c 100644 --- a/Sieve/Models/SieveModel.cs +++ b/Sieve/Models/SieveModel.cs @@ -27,7 +27,19 @@ namespace Sieve.Models var value = new List(); foreach (var filter in Filters.Split(',')) { - value.Add(new FilterTerm(filter)); + if (filter.StartsWith("(")) + { + var filterOpAndVal = filter.Substring(filter.LastIndexOf(")") + 1); + filter = filter.Replace(subfilterOpAndVal, "").Replace("(", "").Replace(")",""); + foreach (var subfilter in filter.Split("|")) + { + value.Add(new FilterTerm(subfilter + filterOpAndVal)) + } + } + else + { + value.Add(new FilterTerm(filter)); + } } return value; }