From 4f711f1e2358781d4326c1f3014f7760ba4180dc Mon Sep 17 00:00:00 2001 From: Nathan Heskew Date: Thu, 3 Jun 2010 14:36:38 -0700 Subject: [PATCH] Utilizing the IIndexManager in the SearchService instead of directly hitting the provider (since there might not be one) --HG-- branch : dev --- .../Modules/Orchard.Search/Services/SearchService.cs | 10 +++++----- .../Modules/Orchard.Search/Views/Search/Index.ascx | 5 ++++- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.Search/Services/SearchService.cs b/src/Orchard.Web/Modules/Orchard.Search/Services/SearchService.cs index 58069d0df..27c7b6fc7 100644 --- a/src/Orchard.Web/Modules/Orchard.Search/Services/SearchService.cs +++ b/src/Orchard.Web/Modules/Orchard.Search/Services/SearchService.cs @@ -6,17 +6,17 @@ namespace Orchard.Search.Services { public class SearchService : ISearchService { - private readonly IIndexProvider _indexProvider; + private readonly IIndexManager _indexManager; - public SearchService(IIndexProvider indexProvider) { - _indexProvider = indexProvider; + public SearchService(IIndexManager indexManager) { + _indexManager = indexManager; } public IEnumerable Query(string term) { - if (string.IsNullOrWhiteSpace(term)) + if (string.IsNullOrWhiteSpace(term) || !_indexManager.HasIndexProvider()) return Enumerable.Empty(); - return _indexProvider.CreateSearchBuilder("search") + return _indexManager.GetSearchIndexProvider().CreateSearchBuilder("search") .WithField("title", term) .WithField("body", term) .Search(); diff --git a/src/Orchard.Web/Modules/Orchard.Search/Views/Search/Index.ascx b/src/Orchard.Web/Modules/Orchard.Search/Views/Search/Index.ascx index 144a490d8..8811982c1 100644 --- a/src/Orchard.Web/Modules/Orchard.Search/Views/Search/Index.ascx +++ b/src/Orchard.Web/Modules/Orchard.Search/Views/Search/Index.ascx @@ -9,7 +9,10 @@ using(Html.BeginForm("index", "search", FormMethod.Get, new { @class = "search" <% } +if (!string.IsNullOrWhiteSpace(Model.Term)) { %> +

<%=T("{0} results", Model.Results.Count()) %>

<% +} + if (Model.Results.Count() > 0) { %> -

<%=T("{0} results", Model.Results.Count()) %>

<%=Html.UnorderedList(Model.Results, (r, i) => Html.DisplayForItem(r.Content).ToHtmlString(), "search-results contentItems") %><% } %> \ No newline at end of file