From 83429f4000d13ce03b6c66dd0353db27b10772a0 Mon Sep 17 00:00:00 2001 From: Daniel Stolt Date: Thu, 11 Jun 2015 16:11:30 +0300 Subject: [PATCH 01/14] Restoring commit: Render fieldset as a fieldset in the editor canvas (by Bertrand Le Roy). --- .../Views/LayoutEditor.Template.Fieldset.cshtml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Views/LayoutEditor.Template.Fieldset.cshtml b/src/Orchard.Web/Modules/Orchard.DynamicForms/Views/LayoutEditor.Template.Fieldset.cshtml index 5ef0a3592..75bf01620 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Views/LayoutEditor.Template.Fieldset.cshtml +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Views/LayoutEditor.Template.Fieldset.cshtml @@ -13,8 +13,13 @@ @Display(New.LayoutEditor_Template_Properties(ElementTypeName: "fieldset", Items: additionalItems))
  • +
    + {{element.legend}} +
    + +
    +
    Drag an element from the toolbox and drop it here to add content.
    - @Display(New.LayoutEditor_Template_Children()) \ No newline at end of file From e3a9758331540c9d01abc52ab665d678e0cf5597 Mon Sep 17 00:00:00 2001 From: Bertrand Le Roy Date: Thu, 11 Jun 2015 20:47:37 -0700 Subject: [PATCH 02/14] Add a break element that renders the hr tag. --- .../Orchard.Layouts/Drivers/BreakElementDriver.cs | 7 +++++++ .../Modules/Orchard.Layouts/Elements/Break.cs | 11 +++++++++++ .../Modules/Orchard.Layouts/Orchard.Layouts.csproj | 5 +++++ .../Orchard.Layouts/Views/Elements/Break.cshtml | 5 +++++ 4 files changed, 28 insertions(+) create mode 100644 src/Orchard.Web/Modules/Orchard.Layouts/Drivers/BreakElementDriver.cs create mode 100644 src/Orchard.Web/Modules/Orchard.Layouts/Elements/Break.cs create mode 100644 src/Orchard.Web/Modules/Orchard.Layouts/Views/Elements/Break.cshtml diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/BreakElementDriver.cs b/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/BreakElementDriver.cs new file mode 100644 index 000000000..78f50f382 --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/BreakElementDriver.cs @@ -0,0 +1,7 @@ +using Orchard.Layouts.Elements; +using Orchard.Layouts.Framework.Drivers; + +namespace Orchard.Layouts.Drivers { + public class BreakElementDriver : ElementDriver { + } +} \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Elements/Break.cs b/src/Orchard.Web/Modules/Orchard.Layouts/Elements/Break.cs new file mode 100644 index 000000000..7bb6b0276 --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Elements/Break.cs @@ -0,0 +1,11 @@ +namespace Orchard.Layouts.Elements { + public class Break : ContentElement { + public override string ToolboxIcon { + get { return "\uf068"; } + } + + public override bool HasEditor { + get { return false; } + } + } +} \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj b/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj index 03cbfeea1..a3debb909 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj @@ -314,9 +314,11 @@ + + @@ -530,6 +532,9 @@ + + + 10.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Views/Elements/Break.cshtml b/src/Orchard.Web/Modules/Orchard.Layouts/Views/Elements/Break.cshtml new file mode 100644 index 000000000..83954162b --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Views/Elements/Break.cshtml @@ -0,0 +1,5 @@ +@using Orchard.Layouts.Helpers +@{ + var tagBuilder = TagBuilderExtensions.CreateElementTagBuilder(Model, "hr"); +} +@tagBuilder.ToHtmlString() From 9466d914382e06c47fe10fdc9a5fa93bef0adf92 Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Fri, 12 Jun 2015 13:28:53 +0300 Subject: [PATCH 03/14] #5379: Improved LayoutPartDriver to safely handle recursive layout rendering. This prevents a SO exception when you for example have a Projection element that renders content including the content item rendering that Projection element. --- .../Drivers/LayoutPartDriver.cs | 30 +++++++++++++++++-- .../Orchard.Layouts/Orchard.Layouts.csproj | 4 +++ .../Views/Parts.Layout.Recursive.cshtml | 1 + .../Parts.Layout.Summary.Recursive.cshtml | 1 + 4 files changed, 34 insertions(+), 2 deletions(-) create mode 100644 src/Orchard.Web/Modules/Orchard.Layouts/Views/Parts.Layout.Recursive.cshtml create mode 100644 src/Orchard.Web/Modules/Orchard.Layouts/Views/Parts.Layout.Summary.Recursive.cshtml diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/LayoutPartDriver.cs b/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/LayoutPartDriver.cs index d229f2f04..d58f4c13c 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/LayoutPartDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/LayoutPartDriver.cs @@ -1,4 +1,5 @@ using System; +using System.Collections.Generic; using System.Linq; using Orchard.ContentManagement; using Orchard.ContentManagement.Drivers; @@ -11,6 +12,7 @@ using Orchard.Layouts.Helpers; using Orchard.Layouts.Models; using Orchard.Layouts.Services; using Orchard.Layouts.ViewModels; +using Orchard.Logging; namespace Orchard.Layouts.Drivers { public class LayoutPartDriver : ContentPartDriver { @@ -22,6 +24,7 @@ namespace Orchard.Layouts.Drivers { private readonly IShapeDisplay _shapeDisplay; private readonly ILayoutModelMapper _mapper; private readonly ILayoutEditorFactory _layoutEditorFactory; + private readonly HashSet _stack; public LayoutPartDriver( ILayoutSerializer serializer, @@ -30,7 +33,7 @@ namespace Orchard.Layouts.Drivers { ILayoutManager layoutManager, Lazy contentPartDisplay, IShapeDisplay shapeDisplay, - ILayoutModelMapper mapper, + ILayoutModelMapper mapper, ILayoutEditorFactory layoutEditorFactory) { _serializer = serializer; @@ -41,22 +44,45 @@ namespace Orchard.Layouts.Drivers { _shapeDisplay = shapeDisplay; _mapper = mapper; _layoutEditorFactory = layoutEditorFactory; + _stack = new HashSet(); + + Logger = NullLogger.Instance; } + public ILogger Logger { get; set; } + protected override DriverResult Display(LayoutPart part, string displayType, dynamic shapeHelper) { return Combined( ContentShape("Parts_Layout", () => { + if (DetectRecursion(part, "Parts_Layout")) + return shapeHelper.Parts_Layout_Recursive(); + var elements = _layoutManager.LoadElements(part); var layoutRoot = _elementDisplay.DisplayElements(elements, part, displayType: displayType); return shapeHelper.Parts_Layout(LayoutRoot: layoutRoot); }), ContentShape("Parts_Layout_Summary", () => { + if (DetectRecursion(part, "Parts_Layout_Summary")) + return shapeHelper.Parts_Layout_Summary_Recursive(); + var layoutShape = _contentPartDisplay.Value.BuildDisplay(part); var layoutHtml = _shapeDisplay.Display(layoutShape); return shapeHelper.Parts_Layout_Summary(LayoutHtml: layoutHtml); })); } + private bool DetectRecursion(LayoutPart part, string shapeName) { + var key = String.Format("{0}:{1}", shapeName, part.Id); + + if (_stack.Contains(key)) { + Logger.Debug(String.Format("Detected recursive layout rendering of layout with ID = {0} and shape = {1}", part.Id, shapeName)); + return true; + } + + _stack.Add(key); + return false; + } + protected override DriverResult Editor(LayoutPart part, dynamic shapeHelper) { return Editor(part, null, shapeHelper); } @@ -85,7 +111,7 @@ namespace Orchard.Layouts.Drivers { part.LayoutData = _serializer.Serialize(elementInstances); part.TemplateId = viewModel.LayoutEditor.TemplateId; part.SessionKey = viewModel.LayoutEditor.SessionKey; - viewModel.LayoutEditor.Data = _mapper.ToEditorModel(part.LayoutData, new DescribeElementsContext {Content = part}).ToJson(); + viewModel.LayoutEditor.Data = _mapper.ToEditorModel(part.LayoutData, new DescribeElementsContext { Content = part }).ToJson(); } return shapeHelper.EditorTemplate(TemplateName: "Parts.Layout", Model: viewModel, Prefix: Prefix); diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj b/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj index a3debb909..e3d62841f 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj @@ -535,6 +535,10 @@ + + + + 10.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Views/Parts.Layout.Recursive.cshtml b/src/Orchard.Web/Modules/Orchard.Layouts/Views/Parts.Layout.Recursive.cshtml new file mode 100644 index 000000000..4760bf5ca --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Views/Parts.Layout.Recursive.cshtml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Views/Parts.Layout.Summary.Recursive.cshtml b/src/Orchard.Web/Modules/Orchard.Layouts/Views/Parts.Layout.Summary.Recursive.cshtml new file mode 100644 index 000000000..4760bf5ca --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Views/Parts.Layout.Summary.Recursive.cshtml @@ -0,0 +1 @@ + \ No newline at end of file From 66af4a8cdf12558f55a07a40cb8f331cb4d63cf6 Mon Sep 17 00:00:00 2001 From: Lombiq Date: Sat, 13 Jun 2015 01:02:16 +0200 Subject: [PATCH 04/14] Adding null check for query string parameters in AuditTrail to prevent possible YSOD --- .../Modules/Orchard.AuditTrail/Services/Models/Filters.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/Orchard.Web/Modules/Orchard.AuditTrail/Services/Models/Filters.cs b/src/Orchard.Web/Modules/Orchard.AuditTrail/Services/Models/Filters.cs index 946a96578..7da1aa8eb 100644 --- a/src/Orchard.Web/Modules/Orchard.AuditTrail/Services/Models/Filters.cs +++ b/src/Orchard.Web/Modules/Orchard.AuditTrail/Services/Models/Filters.cs @@ -1,4 +1,5 @@ -using System.Collections.Generic; +using System; +using System.Collections.Generic; using System.Collections.Specialized; using Orchard.ContentManagement; @@ -15,7 +16,9 @@ namespace Orchard.AuditTrail.Services.Models { var filters = new Filters(updateModel); foreach (string nameValue in nameValues) { - filters.Add(nameValue, nameValues[nameValue]); + if (!String.IsNullOrEmpty(nameValue)) { + filters.Add(nameValue, nameValues[nameValue]); + } } return filters; From 9e88d16273031cb8c35853571a4e3cd6191d5f6b Mon Sep 17 00:00:00 2001 From: Sipke Schoorstra Date: Sat, 13 Jun 2015 19:11:25 +0300 Subject: [PATCH 05/14] Added missing null check to Projection element driver's export method. --- .../Modules/Orchard.Layouts/Drivers/ProjectionElementDriver.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/ProjectionElementDriver.cs b/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/ProjectionElementDriver.cs index ebfb44807..2e25dfea8 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/ProjectionElementDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/ProjectionElementDriver.cs @@ -288,7 +288,7 @@ namespace Orchard.Layouts.Drivers { protected override void OnExporting(Projection element, ExportElementContext context) { var query = element.QueryId != null ? _contentManager.Get(element.QueryId.Value) : default(QueryPart); - var layout = element.LayoutId != null ? _layoutRepository.Get(element.LayoutId.Value) : default(LayoutRecord); + var layout = query != null && element.LayoutId != null ? _layoutRepository.Get(element.LayoutId.Value) : default(LayoutRecord); var queryIdentity = query != null ? _contentManager.GetItemMetadata(query).Identity.ToString() : default(string); var layoutIndex = layout != null ? query.Layouts.IndexOf(layout) : default(int?); From 14172fec514eb5186772a00e0c477a02a4c68eb5 Mon Sep 17 00:00:00 2001 From: Bertrand Le Roy Date: Sat, 13 Jun 2015 16:42:09 -0700 Subject: [PATCH 06/14] Fix compilation issue on dynamic forms admin views that use namespaces from layouts. --- src/Orchard.Web/Modules/Orchard.DynamicForms/Web.config | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Web.config b/src/Orchard.Web/Modules/Orchard.DynamicForms/Web.config index a3982d2e7..15060b574 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Web.config +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Web.config @@ -33,6 +33,7 @@ + From 6aabc4d9f9166dceb1c14f91ecdb2be4873bf1e9 Mon Sep 17 00:00:00 2001 From: Lombiq Date: Sun, 14 Jun 2015 23:18:25 +0200 Subject: [PATCH 07/14] Fixing that the Audit Trail Recycle Bin caused YSOD if a content item didn't have a display text (like Comments) --- .../Modules/Orchard.AuditTrail/Views/RecycleBin/Index.cshtml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/Orchard.Web/Modules/Orchard.AuditTrail/Views/RecycleBin/Index.cshtml b/src/Orchard.Web/Modules/Orchard.AuditTrail/Views/RecycleBin/Index.cshtml index 787dc547a..d7076301c 100644 --- a/src/Orchard.Web/Modules/Orchard.AuditTrail/Views/RecycleBin/Index.cshtml +++ b/src/Orchard.Web/Modules/Orchard.AuditTrail/Views/RecycleBin/Index.cshtml @@ -48,7 +48,8 @@ var isSelected = Model.SelectedContentItems.Where(x => x.Id == contentItem.Id && x.Selected).Select(x => x.Id).Any(); var commonPart = contentItem.As(); var removedText = commonPart != null ? dateLocalizationServices.ConvertToLocalizedString(commonPart.VersionModifiedUtc) : T("-").Text; - var contentDisplayText = Html.ItemDisplayText(contentItem).ToString(); + var contentDisplayTextHtmlString = Html.ItemDisplayText(contentItem); + var contentDisplayText = contentDisplayTextHtmlString != null ? contentDisplayTextHtmlString.ToString() : contentItem.ContentType; var contentDisplayUrl = Url.Action("Detail", "Content", new {id = contentItem.Id, version = contentItem.Version, area = "Orchard.AuditTrail"}); From 1d445c54380c006963954855d37efc70d05152ac Mon Sep 17 00:00:00 2001 From: Lombiq Date: Mon, 15 Jun 2015 00:07:01 +0200 Subject: [PATCH 08/14] Fixing that Custom Forms didn't display a submit button text if there was none configured The button text not being configured can happen on an 1.8 to 1.9 upgrade for example. --- .../Modules/Orchard.CustomForms/Views/Item/Create.cshtml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/Orchard.Web/Modules/Orchard.CustomForms/Views/Item/Create.cshtml b/src/Orchard.Web/Modules/Orchard.CustomForms/Views/Item/Create.cshtml index e4a36fadb..28953d799 100644 --- a/src/Orchard.Web/Modules/Orchard.CustomForms/Views/Item/Create.cshtml +++ b/src/Orchard.Web/Modules/Orchard.CustomForms/Views/Item/Create.cshtml @@ -8,6 +8,8 @@ // remove default Save/Publish buttons Model.Zones["Sidebar"].Items.Clear(); + + var submitButtonText = String.IsNullOrEmpty(Model.ContentItem.CustomFormPart.SubmitButtonText) ? T("Submit").Text : Model.ContentItem.CustomFormPart.SubmitButtonText; } @Display(New.Parts_Title().Title(Html.ItemDisplayText(customForm))) @@ -18,7 +20,7 @@ @Display(Model)
    - +
    } From 8eea9a6771c1b80223a2c876896033130a216491 Mon Sep 17 00:00:00 2001 From: Bertrand Le Roy Date: Mon, 15 Jun 2015 12:42:50 -0700 Subject: [PATCH 09/14] Add missing reference to media library from image editor web config so that views compile properly. --- src/Orchard.Web/Modules/Orchard.ImageEditor/Web.config | 1 + 1 file changed, 1 insertion(+) diff --git a/src/Orchard.Web/Modules/Orchard.ImageEditor/Web.config b/src/Orchard.Web/Modules/Orchard.ImageEditor/Web.config index 15a78508e..aedd885c6 100644 --- a/src/Orchard.Web/Modules/Orchard.ImageEditor/Web.config +++ b/src/Orchard.Web/Modules/Orchard.ImageEditor/Web.config @@ -31,6 +31,7 @@ + From aa2e2cf1d089ea11c28de45046ba2390a9f5c214 Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Tue, 16 Jun 2015 11:16:35 -0700 Subject: [PATCH 10/14] Ignoring VS 2015 settings files --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 55dde7714..6f327b8d0 100644 --- a/.gitignore +++ b/.gitignore @@ -188,4 +188,5 @@ src/Orchard.Web/Modules/Orchard.Layouts/node_modules src/Orchard.Web/Modules/Orchard.DynamicForms/node_modules #enable all /lib artifacts -!lib/*/*.* \ No newline at end of file +!lib/*/*.* +*/.vs/* From cd49d2ccf2cdb9c7ff0fe940a7a3dab71be4692d Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Tue, 16 Jun 2015 15:08:37 -0700 Subject: [PATCH 11/14] Updating ruleset location for all projects --- .../Orchard.WarmupStarter.csproj | 1 + .../Orchard.Alias/Orchard.Alias.csproj | 3 ++- .../Orchard.AntiSpam/Orchard.AntiSpam.csproj | 3 ++- .../Orchard.AuditTrail.csproj | 3 ++- .../Orchard.Autoroute.csproj | 3 ++- .../Orchard.Azure.MediaServices.csproj | 3 ++- .../Orchard.Azure/Orchard.Azure.csproj | 3 ++- .../Orchard.Caching/Orchard.Caching.csproj | 3 ++- .../CodeGenerationTemplates/ModuleCsProj.txt | 2 +- .../ModuleTestsCsProj.txt | 2 +- .../Orchard.ContentPermissions.csproj | 3 ++- .../Orchard.ContentPicker.csproj | 3 ++- .../Orchard.CustomForms.csproj | 3 ++- .../Orchard.DesignerTools.csproj | 3 ++- .../Orchard.DynamicForms.csproj | 2 +- .../Orchard.Fields/Orchard.Fields.csproj | 3 ++- .../Orchard.Forms/Orchard.Forms.csproj | 3 ++- .../Orchard.ImageEditor.csproj | 19 ++++++++++--------- .../Orchard.Indexing/Orchard.Indexing.csproj | 3 ++- .../Orchard.JobsQueue.csproj | 2 ++ .../Orchard.Layouts/Orchard.Layouts.csproj | 2 +- .../Orchard.Localization.csproj | 2 ++ .../Orchard.MediaLibrary.csproj | 3 ++- .../Orchard.MediaPicker.csproj | 3 ++- .../Orchard.MediaProcessing.csproj | 3 ++- .../Orchard.MessageBus.csproj | 3 ++- .../Orchard.OutputCache.csproj | 3 ++- .../Orchard.Pages/Orchard.Pages.csproj | 2 ++ .../Orchard.Projections.csproj | 3 ++- .../Tests/Orchard.Projections.Tests.csproj | 1 + .../Orchard.Redis/Orchard.Redis.csproj | 3 ++- .../Orchard.Rules/Orchard.Rules.csproj | 3 ++- .../Orchard.Scripting.CSharp.csproj | 3 ++- .../Orchard.SecureSocketsLayer.csproj | 3 ++- .../Orchard.TaskLease.csproj | 3 ++- .../Orchard.Taxonomies.csproj | 2 ++ .../Orchard.Templates.csproj | 3 ++- .../Orchard.Tokens/Orchard.Tokens.csproj | 3 ++- .../Tests/Orchard.Tokens.Tests.csproj | 1 + .../Orchard.Warmup/Orchard.Warmup.csproj | 3 ++- .../Orchard.Workflows.csproj | 3 ++- .../Modules/SysCache/SysCache.csproj | 3 ++- .../Modules/TinyMce/TinyMce.csproj | 3 ++- .../Modules/Upgrade/Upgrade.csproj | 3 ++- src/OrchardBasicCorrectness.ruleset | 1 - 45 files changed, 89 insertions(+), 46 deletions(-) diff --git a/src/Orchard.WarmupStarter/Orchard.WarmupStarter.csproj b/src/Orchard.WarmupStarter/Orchard.WarmupStarter.csproj index 04ad59e55..cf25d4ca1 100644 --- a/src/Orchard.WarmupStarter/Orchard.WarmupStarter.csproj +++ b/src/Orchard.WarmupStarter/Orchard.WarmupStarter.csproj @@ -24,6 +24,7 @@ 4 false false + ..\OrchardBasicCorrectness.ruleset
    pdbonly diff --git a/src/Orchard.Web/Modules/Orchard.Alias/Orchard.Alias.csproj b/src/Orchard.Web/Modules/Orchard.Alias/Orchard.Alias.csproj index ff445541c..633180418 100644 --- a/src/Orchard.Web/Modules/Orchard.Alias/Orchard.Alias.csproj +++ b/src/Orchard.Web/Modules/Orchard.Alias/Orchard.Alias.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.AntiSpam/Orchard.AntiSpam.csproj b/src/Orchard.Web/Modules/Orchard.AntiSpam/Orchard.AntiSpam.csproj index 52a6aac21..c72065556 100644 --- a/src/Orchard.Web/Modules/Orchard.AntiSpam/Orchard.AntiSpam.csproj +++ b/src/Orchard.Web/Modules/Orchard.AntiSpam/Orchard.AntiSpam.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.AuditTrail/Orchard.AuditTrail.csproj b/src/Orchard.Web/Modules/Orchard.AuditTrail/Orchard.AuditTrail.csproj index 8da24bef2..8e91168a2 100644 --- a/src/Orchard.Web/Modules/Orchard.AuditTrail/Orchard.AuditTrail.csproj +++ b/src/Orchard.Web/Modules/Orchard.AuditTrail/Orchard.AuditTrail.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Autoroute/Orchard.Autoroute.csproj b/src/Orchard.Web/Modules/Orchard.Autoroute/Orchard.Autoroute.csproj index 91f66b184..acca0e808 100644 --- a/src/Orchard.Web/Modules/Orchard.Autoroute/Orchard.Autoroute.csproj +++ b/src/Orchard.Web/Modules/Orchard.Autoroute/Orchard.Autoroute.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Orchard.Azure.MediaServices.csproj b/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Orchard.Azure.MediaServices.csproj index 2e0a18dfc..14ecea63d 100644 --- a/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Orchard.Azure.MediaServices.csproj +++ b/src/Orchard.Web/Modules/Orchard.Azure.MediaServices/Orchard.Azure.MediaServices.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Azure/Orchard.Azure.csproj b/src/Orchard.Web/Modules/Orchard.Azure/Orchard.Azure.csproj index 433f00b21..a8a1afa19 100644 --- a/src/Orchard.Web/Modules/Orchard.Azure/Orchard.Azure.csproj +++ b/src/Orchard.Web/Modules/Orchard.Azure/Orchard.Azure.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Caching/Orchard.Caching.csproj b/src/Orchard.Web/Modules/Orchard.Caching/Orchard.Caching.csproj index a2e9202fd..9a2e21ec5 100644 --- a/src/Orchard.Web/Modules/Orchard.Caching/Orchard.Caching.csproj +++ b/src/Orchard.Web/Modules/Orchard.Caching/Orchard.Caching.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleCsProj.txt b/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleCsProj.txt index 0d76f105b..7c7c2bff1 100644 --- a/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleCsProj.txt +++ b/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleCsProj.txt @@ -33,7 +33,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleTestsCsProj.txt b/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleTestsCsProj.txt index ec3713d6f..74f993c73 100644 --- a/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleTestsCsProj.txt +++ b/src/Orchard.Web/Modules/Orchard.CodeGeneration/CodeGenerationTemplates/ModuleTestsCsProj.txt @@ -20,7 +20,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.ContentPermissions/Orchard.ContentPermissions.csproj b/src/Orchard.Web/Modules/Orchard.ContentPermissions/Orchard.ContentPermissions.csproj index 03054c6e7..f680416aa 100644 --- a/src/Orchard.Web/Modules/Orchard.ContentPermissions/Orchard.ContentPermissions.csproj +++ b/src/Orchard.Web/Modules/Orchard.ContentPermissions/Orchard.ContentPermissions.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.ContentPicker/Orchard.ContentPicker.csproj b/src/Orchard.Web/Modules/Orchard.ContentPicker/Orchard.ContentPicker.csproj index fecc45b5b..49094ddf4 100644 --- a/src/Orchard.Web/Modules/Orchard.ContentPicker/Orchard.ContentPicker.csproj +++ b/src/Orchard.Web/Modules/Orchard.ContentPicker/Orchard.ContentPicker.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.CustomForms/Orchard.CustomForms.csproj b/src/Orchard.Web/Modules/Orchard.CustomForms/Orchard.CustomForms.csproj index 73800c718..049de3406 100644 --- a/src/Orchard.Web/Modules/Orchard.CustomForms/Orchard.CustomForms.csproj +++ b/src/Orchard.Web/Modules/Orchard.CustomForms/Orchard.CustomForms.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.DesignerTools/Orchard.DesignerTools.csproj b/src/Orchard.Web/Modules/Orchard.DesignerTools/Orchard.DesignerTools.csproj index 881675e57..2b1abeb13 100644 --- a/src/Orchard.Web/Modules/Orchard.DesignerTools/Orchard.DesignerTools.csproj +++ b/src/Orchard.Web/Modules/Orchard.DesignerTools/Orchard.DesignerTools.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.DynamicForms/Orchard.DynamicForms.csproj b/src/Orchard.Web/Modules/Orchard.DynamicForms/Orchard.DynamicForms.csproj index c1981da1b..6a8f91421 100644 --- a/src/Orchard.Web/Modules/Orchard.DynamicForms/Orchard.DynamicForms.csproj +++ b/src/Orchard.Web/Modules/Orchard.DynamicForms/Orchard.DynamicForms.csproj @@ -34,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Fields/Orchard.Fields.csproj b/src/Orchard.Web/Modules/Orchard.Fields/Orchard.Fields.csproj index c18c862f5..3babda517 100644 --- a/src/Orchard.Web/Modules/Orchard.Fields/Orchard.Fields.csproj +++ b/src/Orchard.Web/Modules/Orchard.Fields/Orchard.Fields.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Forms/Orchard.Forms.csproj b/src/Orchard.Web/Modules/Orchard.Forms/Orchard.Forms.csproj index 7374aa4ab..9db4503e8 100644 --- a/src/Orchard.Web/Modules/Orchard.Forms/Orchard.Forms.csproj +++ b/src/Orchard.Web/Modules/Orchard.Forms/Orchard.Forms.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.ImageEditor/Orchard.ImageEditor.csproj b/src/Orchard.Web/Modules/Orchard.ImageEditor/Orchard.ImageEditor.csproj index 34ea315e5..1529c654e 100644 --- a/src/Orchard.Web/Modules/Orchard.ImageEditor/Orchard.ImageEditor.csproj +++ b/src/Orchard.Web/Modules/Orchard.ImageEditor/Orchard.ImageEditor.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false @@ -84,7 +85,7 @@ - + @@ -130,7 +131,7 @@ - + @@ -150,12 +151,12 @@ - - - - - - + + + + + + 10.0 $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) diff --git a/src/Orchard.Web/Modules/Orchard.Indexing/Orchard.Indexing.csproj b/src/Orchard.Web/Modules/Orchard.Indexing/Orchard.Indexing.csproj index eae542b6a..62d37d076 100644 --- a/src/Orchard.Web/Modules/Orchard.Indexing/Orchard.Indexing.csproj +++ b/src/Orchard.Web/Modules/Orchard.Indexing/Orchard.Indexing.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.JobsQueue/Orchard.JobsQueue.csproj b/src/Orchard.Web/Modules/Orchard.JobsQueue/Orchard.JobsQueue.csproj index 02e5bae62..657368621 100644 --- a/src/Orchard.Web/Modules/Orchard.JobsQueue/Orchard.JobsQueue.csproj +++ b/src/Orchard.Web/Modules/Orchard.JobsQueue/Orchard.JobsQueue.csproj @@ -26,6 +26,7 @@ + true @@ -36,6 +37,7 @@ prompt 4 false + ..\..\..\OrchardBasicCorrectness.ruleset pdbonly diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj b/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj index e3d62841f..25741ffcd 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Orchard.Layouts.csproj @@ -34,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Localization/Orchard.Localization.csproj b/src/Orchard.Web/Modules/Orchard.Localization/Orchard.Localization.csproj index 91f2847c5..1c32db4e8 100644 --- a/src/Orchard.Web/Modules/Orchard.Localization/Orchard.Localization.csproj +++ b/src/Orchard.Web/Modules/Orchard.Localization/Orchard.Localization.csproj @@ -25,6 +25,7 @@ + true @@ -35,6 +36,7 @@ prompt 4 false + ..\..\..\OrchardBasicCorrectness.ruleset pdbonly diff --git a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Orchard.MediaLibrary.csproj b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Orchard.MediaLibrary.csproj index d095a8b02..e29e5de5f 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaLibrary/Orchard.MediaLibrary.csproj +++ b/src/Orchard.Web/Modules/Orchard.MediaLibrary/Orchard.MediaLibrary.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.MediaPicker/Orchard.MediaPicker.csproj b/src/Orchard.Web/Modules/Orchard.MediaPicker/Orchard.MediaPicker.csproj index 6b78bffe9..764587fd5 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaPicker/Orchard.MediaPicker.csproj +++ b/src/Orchard.Web/Modules/Orchard.MediaPicker/Orchard.MediaPicker.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.MediaProcessing/Orchard.MediaProcessing.csproj b/src/Orchard.Web/Modules/Orchard.MediaProcessing/Orchard.MediaProcessing.csproj index 890e8c972..fd13033c0 100644 --- a/src/Orchard.Web/Modules/Orchard.MediaProcessing/Orchard.MediaProcessing.csproj +++ b/src/Orchard.Web/Modules/Orchard.MediaProcessing/Orchard.MediaProcessing.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.MessageBus/Orchard.MessageBus.csproj b/src/Orchard.Web/Modules/Orchard.MessageBus/Orchard.MessageBus.csproj index 600bf4d12..caf2607a7 100644 --- a/src/Orchard.Web/Modules/Orchard.MessageBus/Orchard.MessageBus.csproj +++ b/src/Orchard.Web/Modules/Orchard.MessageBus/Orchard.MessageBus.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.OutputCache/Orchard.OutputCache.csproj b/src/Orchard.Web/Modules/Orchard.OutputCache/Orchard.OutputCache.csproj index dda5632a4..7809e2a43 100644 --- a/src/Orchard.Web/Modules/Orchard.OutputCache/Orchard.OutputCache.csproj +++ b/src/Orchard.Web/Modules/Orchard.OutputCache/Orchard.OutputCache.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Pages/Orchard.Pages.csproj b/src/Orchard.Web/Modules/Orchard.Pages/Orchard.Pages.csproj index 587b4b736..f5f18a93a 100644 --- a/src/Orchard.Web/Modules/Orchard.Pages/Orchard.Pages.csproj +++ b/src/Orchard.Web/Modules/Orchard.Pages/Orchard.Pages.csproj @@ -25,6 +25,7 @@ + true @@ -35,6 +36,7 @@ prompt 4 false + ..\..\..\OrchardBasicCorrectness.ruleset pdbonly diff --git a/src/Orchard.Web/Modules/Orchard.Projections/Orchard.Projections.csproj b/src/Orchard.Web/Modules/Orchard.Projections/Orchard.Projections.csproj index 090c4a82e..479bb47ba 100644 --- a/src/Orchard.Web/Modules/Orchard.Projections/Orchard.Projections.csproj +++ b/src/Orchard.Web/Modules/Orchard.Projections/Orchard.Projections.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Projections/Tests/Orchard.Projections.Tests.csproj b/src/Orchard.Web/Modules/Orchard.Projections/Tests/Orchard.Projections.Tests.csproj index 180b080d9..98cce8b7a 100644 --- a/src/Orchard.Web/Modules/Orchard.Projections/Tests/Orchard.Projections.Tests.csproj +++ b/src/Orchard.Web/Modules/Orchard.Projections/Tests/Orchard.Projections.Tests.csproj @@ -23,6 +23,7 @@ prompt 4 false + ..\..\..\..\OrchardBasicCorrectness.ruleset pdbonly diff --git a/src/Orchard.Web/Modules/Orchard.Redis/Orchard.Redis.csproj b/src/Orchard.Web/Modules/Orchard.Redis/Orchard.Redis.csproj index ac2724edd..1d3322824 100644 --- a/src/Orchard.Web/Modules/Orchard.Redis/Orchard.Redis.csproj +++ b/src/Orchard.Web/Modules/Orchard.Redis/Orchard.Redis.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Rules/Orchard.Rules.csproj b/src/Orchard.Web/Modules/Orchard.Rules/Orchard.Rules.csproj index 93e809e30..8072e3138 100644 --- a/src/Orchard.Web/Modules/Orchard.Rules/Orchard.Rules.csproj +++ b/src/Orchard.Web/Modules/Orchard.Rules/Orchard.Rules.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Orchard.Scripting.CSharp.csproj b/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Orchard.Scripting.CSharp.csproj index 013086f70..f0e86194e 100644 --- a/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Orchard.Scripting.CSharp.csproj +++ b/src/Orchard.Web/Modules/Orchard.Scripting.CSharp/Orchard.Scripting.CSharp.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Orchard.SecureSocketsLayer.csproj b/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Orchard.SecureSocketsLayer.csproj index aada318c7..ce79a3d37 100644 --- a/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Orchard.SecureSocketsLayer.csproj +++ b/src/Orchard.Web/Modules/Orchard.SecureSocketsLayer/Orchard.SecureSocketsLayer.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.TaskLease/Orchard.TaskLease.csproj b/src/Orchard.Web/Modules/Orchard.TaskLease/Orchard.TaskLease.csproj index cecd1aa57..ea56c83ee 100644 --- a/src/Orchard.Web/Modules/Orchard.TaskLease/Orchard.TaskLease.csproj +++ b/src/Orchard.Web/Modules/Orchard.TaskLease/Orchard.TaskLease.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Orchard.Taxonomies.csproj b/src/Orchard.Web/Modules/Orchard.Taxonomies/Orchard.Taxonomies.csproj index 2125b73d4..4cd8788db 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Orchard.Taxonomies.csproj +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Orchard.Taxonomies.csproj @@ -26,6 +26,7 @@ + true @@ -36,6 +37,7 @@ prompt 4 false + ..\..\..\OrchardBasicCorrectness.ruleset pdbonly diff --git a/src/Orchard.Web/Modules/Orchard.Templates/Orchard.Templates.csproj b/src/Orchard.Web/Modules/Orchard.Templates/Orchard.Templates.csproj index e01fa3f95..6dd9096c1 100644 --- a/src/Orchard.Web/Modules/Orchard.Templates/Orchard.Templates.csproj +++ b/src/Orchard.Web/Modules/Orchard.Templates/Orchard.Templates.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Tokens/Orchard.Tokens.csproj b/src/Orchard.Web/Modules/Orchard.Tokens/Orchard.Tokens.csproj index 27817f0f6..ee7d43211 100644 --- a/src/Orchard.Web/Modules/Orchard.Tokens/Orchard.Tokens.csproj +++ b/src/Orchard.Web/Modules/Orchard.Tokens/Orchard.Tokens.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Tokens/Tests/Orchard.Tokens.Tests.csproj b/src/Orchard.Web/Modules/Orchard.Tokens/Tests/Orchard.Tokens.Tests.csproj index c1f9a24ed..cb0d795ae 100644 --- a/src/Orchard.Web/Modules/Orchard.Tokens/Tests/Orchard.Tokens.Tests.csproj +++ b/src/Orchard.Web/Modules/Orchard.Tokens/Tests/Orchard.Tokens.Tests.csproj @@ -23,6 +23,7 @@ prompt 4 false + ..\..\..\..\OrchardBasicCorrectness.ruleset pdbonly diff --git a/src/Orchard.Web/Modules/Orchard.Warmup/Orchard.Warmup.csproj b/src/Orchard.Web/Modules/Orchard.Warmup/Orchard.Warmup.csproj index bf167d0a6..d193e0315 100644 --- a/src/Orchard.Web/Modules/Orchard.Warmup/Orchard.Warmup.csproj +++ b/src/Orchard.Web/Modules/Orchard.Warmup/Orchard.Warmup.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Orchard.Workflows/Orchard.Workflows.csproj b/src/Orchard.Web/Modules/Orchard.Workflows/Orchard.Workflows.csproj index 205072373..07fc67352 100644 --- a/src/Orchard.Web/Modules/Orchard.Workflows/Orchard.Workflows.csproj +++ b/src/Orchard.Web/Modules/Orchard.Workflows/Orchard.Workflows.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/SysCache/SysCache.csproj b/src/Orchard.Web/Modules/SysCache/SysCache.csproj index 2bb5ade75..71d7cc947 100644 --- a/src/Orchard.Web/Modules/SysCache/SysCache.csproj +++ b/src/Orchard.Web/Modules/SysCache/SysCache.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/TinyMce/TinyMce.csproj b/src/Orchard.Web/Modules/TinyMce/TinyMce.csproj index ee237b568..a68639ee1 100644 --- a/src/Orchard.Web/Modules/TinyMce/TinyMce.csproj +++ b/src/Orchard.Web/Modules/TinyMce/TinyMce.csproj @@ -25,6 +25,7 @@ + true @@ -34,7 +35,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/Orchard.Web/Modules/Upgrade/Upgrade.csproj b/src/Orchard.Web/Modules/Upgrade/Upgrade.csproj index e133c0f4a..939746f0c 100644 --- a/src/Orchard.Web/Modules/Upgrade/Upgrade.csproj +++ b/src/Orchard.Web/Modules/Upgrade/Upgrade.csproj @@ -24,6 +24,7 @@ + true @@ -33,7 +34,7 @@ DEBUG;TRACE prompt 4 - AllRules.ruleset + ..\..\..\OrchardBasicCorrectness.ruleset false diff --git a/src/OrchardBasicCorrectness.ruleset b/src/OrchardBasicCorrectness.ruleset index 1011a984d..44a913129 100644 --- a/src/OrchardBasicCorrectness.ruleset +++ b/src/OrchardBasicCorrectness.ruleset @@ -1,6 +1,5 @@  - From 20c5b494cddbc287807fb6f7f73824ff5a3d4b5c Mon Sep 17 00:00:00 2001 From: Sebastien Ros Date: Tue, 16 Jun 2015 16:50:45 -0700 Subject: [PATCH 12/14] By default, html-encode translation parameters Also ensure that any existing parameter is not double-encoded by removing .Text when used as a translation parameter. --- src/Orchard.Tests/Localization/TextTests.cs | 46 +++++++++++++++++++ .../Orchard.Framework.Tests.csproj | 1 + .../Core/Shapes/Views/Message.cshtml | 7 ++- src/Orchard.Web/Core/Shapes/Views/User.cshtml | 2 +- .../Views/Parts/Media.SummaryAdmin.cshtml | 2 +- .../Views/Admin/Features.cshtml | 2 +- .../FilterEditors/Forms/DateTimeFilterForm.cs | 16 +++---- .../Views/Admin/Edit.cshtml | 3 +- .../Views/Activity-Timer.cshtml | 4 +- .../Themes/TheAdmin/Views/Title.cshtml | 2 +- src/Orchard/Localization/LocalizedString.cs | 13 ++++++ src/Orchard/Localization/Localizer.cs | 7 +++ src/Orchard/Localization/Text.cs | 19 +++++++- 13 files changed, 106 insertions(+), 18 deletions(-) create mode 100644 src/Orchard.Tests/Localization/TextTests.cs diff --git a/src/Orchard.Tests/Localization/TextTests.cs b/src/Orchard.Tests/Localization/TextTests.cs new file mode 100644 index 000000000..ecefd961e --- /dev/null +++ b/src/Orchard.Tests/Localization/TextTests.cs @@ -0,0 +1,46 @@ +using Autofac; +using Moq; +using NUnit.Framework; +using Orchard.Localization; +using Orchard.Localization.Services; +using Orchard.Mvc; +using Orchard.Tests.Stubs; +using System.Web; + +namespace Orchard.Tests.Localization { + [TestFixture] + public class TextTests { + private IContainer _container; + private IText _text; + + [SetUp] + public void Init() { + var mockLocalizedManager = new Mock(); + mockLocalizedManager + .Setup(x => x.GetLocalizedString(It.IsAny(), It.IsAny(), It.IsAny())) + .Returns("foo {0}"); + + var builder = new ContainerBuilder(); + builder.RegisterInstance(new StubCultureSelector("fr-CA")).As(); + builder.RegisterInstance(new StubWorkContext()).As(); + builder.RegisterType().As(); + builder.RegisterInstance(mockLocalizedManager.Object); + builder.RegisterType().As().WithParameter(new NamedParameter("scope", "scope")); + _container = builder.Build(); + _text = _container.Resolve(); + } + + [Test] + public void TextHtmlEncodeAllArguments() { + Assert.That(_text.Get("foo {0}", "bar").Text, Is.EqualTo("foo bar")); + Assert.That(_text.Get("foo {0}", "").Text, Is.EqualTo("foo <bar>")); + } + + [Test] + public void TextDoesEncodeHtmlEncodedArguments() + { + Assert.That(_text.Get("foo {0}", new HtmlString("bar")).Text, Is.EqualTo("foo bar")); + Assert.That(_text.Get("foo {0}", new HtmlString("")).Text, Is.EqualTo("foo ")); + } + } +} \ No newline at end of file diff --git a/src/Orchard.Tests/Orchard.Framework.Tests.csproj b/src/Orchard.Tests/Orchard.Framework.Tests.csproj index 3885e66b0..11b3c4fb7 100644 --- a/src/Orchard.Tests/Orchard.Framework.Tests.csproj +++ b/src/Orchard.Tests/Orchard.Framework.Tests.csproj @@ -259,6 +259,7 @@ + diff --git a/src/Orchard.Web/Core/Shapes/Views/Message.cshtml b/src/Orchard.Web/Core/Shapes/Views/Message.cshtml index 3bd69fdf3..c4d1b88af 100644 --- a/src/Orchard.Web/Core/Shapes/Views/Message.cshtml +++ b/src/Orchard.Web/Core/Shapes/Views/Message.cshtml @@ -1 +1,6 @@ -
    @Html.Raw(Html.Encode(Model.Message).Replace("\n", "
    "))
    +@* + Model.Message can either be: + - an IHtmlString and won't be re-encoded + - a string and will be encoded +*@ +
    @Html.Raw(Html.Encode(Model.Message).Replace("\n", "
    "))
    diff --git a/src/Orchard.Web/Core/Shapes/Views/User.cshtml b/src/Orchard.Web/Core/Shapes/Views/User.cshtml index 6054c9adf..806cc83c7 100644 --- a/src/Orchard.Web/Core/Shapes/Views/User.cshtml +++ b/src/Orchard.Web/Core/Shapes/Views/User.cshtml @@ -3,7 +3,7 @@
    @if (WorkContext.CurrentUser != null) {