From 18bb84748886cc5cdff576d9b90e182549481ab5 Mon Sep 17 00:00:00 2001 From: myates Date: Fri, 11 Sep 2015 14:19:52 +1000 Subject: [PATCH 01/11] Force empty value attribute on default option label in taxonomy and query element dropdown lists. --- .../Modules/Orchard.DynamicForms/Drivers/QueryElementDriver.cs | 2 +- .../Orchard.DynamicForms/Drivers/TaxonomyElementDriver.cs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Drivers/QueryElementDriver.cs b/src/Orchard.Web/Modules/Orchard.DynamicForms/Drivers/QueryElementDriver.cs index d3ae2754b..112c554a1 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Drivers/QueryElementDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Drivers/QueryElementDriver.cs @@ -136,7 +136,7 @@ namespace Orchard.DynamicForms.Drivers { var runtimeValues = GetRuntimeValues(element); if (!String.IsNullOrWhiteSpace(optionLabel)) { - yield return new SelectListItem { Text = displayType != "Design" ? _tokenizer.Replace(optionLabel, tokenData) : optionLabel }; + yield return new SelectListItem { Text = displayType != "Design" ? _tokenizer.Replace(optionLabel, tokenData) : optionLabel, Value = string.Empty }; } if (queryId == null) diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Drivers/TaxonomyElementDriver.cs b/src/Orchard.Web/Modules/Orchard.DynamicForms/Drivers/TaxonomyElementDriver.cs index 8a566b69a..937a406ac 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Drivers/TaxonomyElementDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Drivers/TaxonomyElementDriver.cs @@ -138,7 +138,7 @@ namespace Orchard.DynamicForms.Drivers { var runtimeValues = GetRuntimeValues(element); if (!String.IsNullOrWhiteSpace(optionLabel)) { - yield return new SelectListItem { Text = displayType != "Design" ? _tokenizer.Replace(optionLabel, tokenData) : optionLabel }; + yield return new SelectListItem { Text = displayType != "Design" ? _tokenizer.Replace(optionLabel, tokenData) : optionLabel, Value = string.Empty }; } if (taxonomyId == null) From 92b7ad75549421fc40e7f9b6124e15e554183c84 Mon Sep 17 00:00:00 2001 From: myates Date: Fri, 11 Sep 2015 17:15:42 +1000 Subject: [PATCH 02/11] Issue 20377 - Ensure comment tokens available to antispam module. --- .../Orchard.AntiSpam/Controllers/AdminController.cs | 4 ++-- .../Orchard.AntiSpam/Drivers/SpamFilterPartDriver.cs | 7 +------ .../Handlers/SpamFilterPartHandler.cs | 12 ++++++++++-- .../Orchard.AntiSpam/Services/DefaultSpamService.cs | 1 + 4 files changed, 14 insertions(+), 10 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.AntiSpam/Controllers/AdminController.cs b/src/Orchard.Web/Modules/Orchard.AntiSpam/Controllers/AdminController.cs index 36863d2fb..6af7eb3ae 100644 --- a/src/Orchard.Web/Modules/Orchard.AntiSpam/Controllers/AdminController.cs +++ b/src/Orchard.Web/Modules/Orchard.AntiSpam/Controllers/AdminController.cs @@ -144,7 +144,7 @@ namespace Orchard.AntiSpam.Controllers { if (spam != null) { spam.As().Status = SpamStatus.Spam; _spamService.ReportSpam(spam.As()); - Services.ContentManager.Publish(spam); + Services.ContentManager.Unpublish(spam); } return this.RedirectLocal(returnUrl, "~/"); @@ -158,7 +158,7 @@ namespace Orchard.AntiSpam.Controllers { var spam = Services.ContentManager.Get(id, VersionOptions.Latest); if (spam != null) { spam.As().Status = SpamStatus.Ham; - _spamService.ReportSpam(spam.As()); + _spamService.ReportHam(spam.As()); Services.ContentManager.Publish(spam); } diff --git a/src/Orchard.Web/Modules/Orchard.AntiSpam/Drivers/SpamFilterPartDriver.cs b/src/Orchard.Web/Modules/Orchard.AntiSpam/Drivers/SpamFilterPartDriver.cs index addcada23..ed2abeac5 100644 --- a/src/Orchard.Web/Modules/Orchard.AntiSpam/Drivers/SpamFilterPartDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.AntiSpam/Drivers/SpamFilterPartDriver.cs @@ -1,6 +1,5 @@ using System; using Orchard.AntiSpam.Models; -using Orchard.AntiSpam.Services; using Orchard.AntiSpam.Settings; using Orchard.ContentManagement.Drivers; using Orchard.ContentManagement.Handlers; @@ -8,11 +7,9 @@ using Orchard.Localization; namespace Orchard.AntiSpam.Drivers { public class SpamFilterPartDriver : ContentPartDriver { - private readonly ISpamService _spamService; private const string TemplateName = "Parts/SpamFilter"; - public SpamFilterPartDriver(IOrchardServices services, ISpamService spamService) { - _spamService = spamService; + public SpamFilterPartDriver(IOrchardServices services) { T = NullLocalizer.Instance; Services = services; } @@ -25,8 +22,6 @@ namespace Orchard.AntiSpam.Drivers { } protected override DriverResult Editor(SpamFilterPart part, ContentManagement.IUpdateModel updater, dynamic shapeHelper) { - part.Status = _spamService.CheckForSpam(part); - if (part.Settings.GetModel().DeleteSpam) { updater.AddModelError("Spam", T("Spam detected.")); } diff --git a/src/Orchard.Web/Modules/Orchard.AntiSpam/Handlers/SpamFilterPartHandler.cs b/src/Orchard.Web/Modules/Orchard.AntiSpam/Handlers/SpamFilterPartHandler.cs index 887672386..de0cdaab0 100644 --- a/src/Orchard.Web/Modules/Orchard.AntiSpam/Handlers/SpamFilterPartHandler.cs +++ b/src/Orchard.Web/Modules/Orchard.AntiSpam/Handlers/SpamFilterPartHandler.cs @@ -1,5 +1,5 @@ using Orchard.AntiSpam.Models; - +using Orchard.AntiSpam.Services; using Orchard.AntiSpam.Settings; using Orchard.ContentManagement.Handlers; using Orchard.Data; @@ -7,14 +7,22 @@ using Orchard.Data; namespace Orchard.AntiSpam.Handlers { public class SpamFilterPartHandler : ContentHandler { private readonly ITransactionManager _transactionManager; + private readonly ISpamService _spamService; public SpamFilterPartHandler( IRepository repository, - ITransactionManager transactionManager + ITransactionManager transactionManager, + ISpamService spamService ) { _transactionManager = transactionManager; + _spamService = spamService; + Filters.Add(StorageFilter.For(repository)); + OnCreating((context, part) => { + part.Status = _spamService.CheckForSpam(part); + }); + OnPublishing((context, part) => { if (part.Status == SpamStatus.Spam) { if (part.Settings.GetModel().DeleteSpam) { diff --git a/src/Orchard.Web/Modules/Orchard.AntiSpam/Services/DefaultSpamService.cs b/src/Orchard.Web/Modules/Orchard.AntiSpam/Services/DefaultSpamService.cs index 970ca1f51..2ff30c9e3 100644 --- a/src/Orchard.Web/Modules/Orchard.AntiSpam/Services/DefaultSpamService.cs +++ b/src/Orchard.Web/Modules/Orchard.AntiSpam/Services/DefaultSpamService.cs @@ -126,6 +126,7 @@ namespace Orchard.AntiSpam.Services { CommentAuthorEmail = _tokenizer.Replace(settings.CommentAuthorEmailPattern, data), CommentAuthorUrl = _tokenizer.Replace(settings.CommentAuthorUrlPattern, data), CommentContent = _tokenizer.Replace(settings.CommentContentPattern, data), + CommentType = part.ContentItem.ContentType.ToLower() }; if(workContext.HttpContext != null) { From 3f6dfa3dec1e804bb384662486f0bdf1a6037a94 Mon Sep 17 00:00:00 2001 From: mvarblow Date: Sat, 12 Sep 2015 20:54:54 -0400 Subject: [PATCH 03/11] Fixed typo in Sites.Config comment. --- src/Orchard.Web/Config/Sites.config | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Orchard.Web/Config/Sites.config b/src/Orchard.Web/Config/Sites.config index b64e22c3f..852db503e 100644 --- a/src/Orchard.Web/Config/Sites.config +++ b/src/Orchard.Web/Config/Sites.config @@ -8,7 +8,7 @@