From 023ccbb4392b8b6a3a1b9b11b11988a0df00a898 Mon Sep 17 00:00:00 2001 From: Andre Rodrigues Date: Wed, 15 Dec 2010 10:58:21 -0800 Subject: [PATCH] Fixing RoutableService since by default there is no ISlugEventHandler implementation. --HG-- branch : dev --- .../Core/Routable/Services/RoutableService.cs | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/Orchard.Web/Core/Routable/Services/RoutableService.cs b/src/Orchard.Web/Core/Routable/Services/RoutableService.cs index b01241222..d9ee15f25 100644 --- a/src/Orchard.Web/Core/Routable/Services/RoutableService.cs +++ b/src/Orchard.Web/Core/Routable/Services/RoutableService.cs @@ -13,11 +13,11 @@ using Orchard.Core.Routable.Models; namespace Orchard.Core.Routable.Services { public class RoutableService : IRoutableService { private readonly IContentManager _contentManager; - private readonly ISlugEventHandler _slugEventHandler; + private readonly IEnumerable _slugEventHandlers; - public RoutableService(IContentManager contentManager, ISlugEventHandler slugEventHandler) { + public RoutableService(IContentManager contentManager, IEnumerable slugEventHandlers) { _contentManager = contentManager; - _slugEventHandler = slugEventHandler; + _slugEventHandlers = slugEventHandlers; } public void FixContainedPaths(IRoutableAspect part) { @@ -51,7 +51,10 @@ namespace Orchard.Core.Routable.Services { return; FillSlugContext slugContext = new FillSlugContext(model.Title); - _slugEventHandler.FillingSlugFromTitle(slugContext); + + foreach (ISlugEventHandler slugEventHandler in _slugEventHandlers) { + slugEventHandler.FillingSlugFromTitle(slugContext); + } if (!slugContext.Adjusted) { var disallowed = new Regex(@"[/:?#\[\]@!$&'()*+,;=\s\""\<\>]+"); @@ -65,7 +68,10 @@ namespace Orchard.Core.Routable.Services { slugContext.Slug = RemoveDiacritics(slugContext.Slug.Trim('.').ToLower()); } - _slugEventHandler.FilledSlugFromTitle(slugContext); + foreach (ISlugEventHandler slugEventHandler in _slugEventHandlers) { + slugEventHandler.FilledSlugFromTitle(slugContext); + } + model.Slug = slugContext.Slug; }