From a0175b512995f0a9c685e215a6c93346ea642b8c Mon Sep 17 00:00:00 2001 From: Suha Can Date: Wed, 15 Sep 2010 15:31:24 -0700 Subject: [PATCH] - Readding Orchard.Search --HG-- branch : dev --- .../Orchard.Search/Filters/SearchFilter.cs | 17 +++++++++----- .../{Module.txt_ => Module.txt} | 0 .../Orchard.Search/Orchard.Search.csproj | 10 ++++---- .../ViewModels/SearchResultViewModel.cs | 6 ++--- .../ViewModels/SearchSettingsViewModel.cs | 5 ++-- .../ViewModels/SearchViewModel.cs | 3 +-- .../Parts/Search.SiteSettings.ascx | 23 ------------------- .../Parts/Search.SiteSettings.cshtml | 22 ++++++++++++++++++ .../Orchard.Search/Views/Search/Index.ascx | 17 -------------- .../Orchard.Search/Views/Search/Index.cshtml | 15 ++++++++++++ .../Orchard.Search/Views/SearchForm.ascx | 8 ------- .../Orchard.Search/Views/SearchForm.cshtml | 9 ++++++++ src/Orchard.sln | 13 +++++++++++ 13 files changed, 82 insertions(+), 66 deletions(-) rename src/Orchard.Web/Modules/Orchard.Search/{Module.txt_ => Module.txt} (100%) delete mode 100644 src/Orchard.Web/Modules/Orchard.Search/Views/EditorTemplates/Parts/Search.SiteSettings.ascx create mode 100644 src/Orchard.Web/Modules/Orchard.Search/Views/EditorTemplates/Parts/Search.SiteSettings.cshtml delete mode 100644 src/Orchard.Web/Modules/Orchard.Search/Views/Search/Index.ascx create mode 100644 src/Orchard.Web/Modules/Orchard.Search/Views/Search/Index.cshtml delete mode 100644 src/Orchard.Web/Modules/Orchard.Search/Views/SearchForm.ascx create mode 100644 src/Orchard.Web/Modules/Orchard.Search/Views/SearchForm.cshtml diff --git a/src/Orchard.Web/Modules/Orchard.Search/Filters/SearchFilter.cs b/src/Orchard.Web/Modules/Orchard.Search/Filters/SearchFilter.cs index 1808581d7..5dad632b5 100644 --- a/src/Orchard.Web/Modules/Orchard.Search/Filters/SearchFilter.cs +++ b/src/Orchard.Web/Modules/Orchard.Search/Filters/SearchFilter.cs @@ -1,15 +1,20 @@ using System.Web.Mvc; using Orchard.Mvc.Filters; -using Orchard.Mvc.ViewModels; -using Orchard.Search.ViewModels; namespace Orchard.Search.Filters { public class SearchFilter : FilterProvider, IResultFilter { - public void OnResultExecuting(ResultExecutingContext filterContext) { - var viewModel = filterContext.Controller.ViewData.Model as BaseViewModel; + private readonly IWorkContextAccessor _workContextAccessor; - if (viewModel != null) - viewModel.Zones.AddRenderPartial("search", "SearchForm", viewModel is SearchViewModel ? viewModel : new SearchViewModel()); + public SearchFilter(IWorkContextAccessor workContextAccessor) { + _workContextAccessor = workContextAccessor; + } + + public void OnResultExecuting(ResultExecutingContext filterContext) { + dynamic search = filterContext.Controller.ViewData.Model; + var workContext = _workContextAccessor.GetContext(filterContext); + + if (search != null) + workContext.Page.Search.Add(search); } public void OnResultExecuted(ResultExecutedContext filterContext) { diff --git a/src/Orchard.Web/Modules/Orchard.Search/Module.txt_ b/src/Orchard.Web/Modules/Orchard.Search/Module.txt similarity index 100% rename from src/Orchard.Web/Modules/Orchard.Search/Module.txt_ rename to src/Orchard.Web/Modules/Orchard.Search/Module.txt diff --git a/src/Orchard.Web/Modules/Orchard.Search/Orchard.Search.csproj b/src/Orchard.Web/Modules/Orchard.Search/Orchard.Search.csproj index 22128d21f..4ae7b77ef 100644 --- a/src/Orchard.Web/Modules/Orchard.Search/Orchard.Search.csproj +++ b/src/Orchard.Web/Modules/Orchard.Search/Orchard.Search.csproj @@ -49,7 +49,7 @@ 3.5 - + 3.5 @@ -90,14 +90,16 @@ - - - + + + + +