diff --git a/CREDITS.txt b/CREDITS.txt index 1b455fbbc..7f8f2320f 100644 --- a/CREDITS.txt +++ b/CREDITS.txt @@ -1,9 +1,4 @@ -Orchard Project -ASP.NET Open Source Gallery at Outercurve Foundation -Copyright 2009-2011 Outercurve Foundation - -This product includes software developed at -The Outercurve Foundation (http://www.outercurve.org/). +Orchard Project - Copyright .NET Foundation Orchard includes works distributed under the licenses listed below. The full text for most of the licenses listed below can be found in the LICENSE.txt file accompanying each work. The original copyright notices have been preserved within the respective files and or packages. Please refer to the specific files and/or packages for more detailed information about the authors, copyright notices, and licenses. @@ -213,7 +208,7 @@ MySQL Connectors Copyright: Copyright (c) 2004, 2011, Oracle and/or its affiliates License: GNU GENERAL PUBLIC LICENSE Version 2; Oracle’s Free and Open Source Software ("FOSS") License Exception -In order to comply with Section 2(a) of the FOSS License Exception, Outercurve Foundation hereby offers any recipient of this package a machine-readable copy of the corresponding source code for Oracle's MySQL Client Libraries upon written demand.  This offer is good for three years. +In order to comply with Section 2(a) of the FOSS License Exception, .NET Foundation hereby offers any recipient of this package a machine-readable copy of the corresponding source code for Oracle's MySQL Client Libraries upon written demand.  This offer is good for three years. NHibernate, NHibernate Linq ----- diff --git a/LICENSE.txt b/LICENSE.txt index 608ce0d22..2558204bc 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,9 +1,10 @@ Copyright (c) 2009 Outercurve Foundation +Copyright (c) 2014 .NET Foundation All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. -Neither the name of Outercurve Foundation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. +Neither the name of .NET Foundation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 000000000..20ccb5a89 --- /dev/null +++ b/README.md @@ -0,0 +1,41 @@ +# Orchard + +Orchard is a free, open source, community-focused Content Management System built on the ASP.NET MVC platform. + +[![Join the chat at https://gitter.im/OrchardCMS/Orchard](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/OrchardCMS/Orchard?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) + +## About The Orchard Project + +#### Please visit our website at http://orchardproject.net for the most current information about this project. + +Orchard is a free, open source, community-focused Content Management System built on the ASP.NET MVC platform. + +Orchard is built on a modern architecture that puts extensibility up-front, as its number one concern. All components in Orchard can be replaced or extended. Content is built from easily composable building blocks. Modules extend the system in a very decoupled fashion, where a commenting module for example can as easily apply to pages, blog posts, photos or products. A rich UI composition system completes the picture and ensures that you can get the exact presentation that you need for your content. + +Orchard is delivered under the .NET Foundation. It is licensed under a New BSD license, which is approved by the OSI. + +Our mission is to empower our users and foster a dedicated and diverse community that builds the CMS that we all want to use. + +There are many ways you can contribute to Orchard: you can fix bugs, contribute modules and themes to our gallery, write documentation, translate Orchard, or answer questions on our forums and on Stack Overflow. + +## Project Status +Orchard is currently in version 1.9. We invite participation by the developer community in shaping the project’s direction, so that we can publicly validate our designs and development approach. +Our 1.9 release is available from [our Downloads page](https://github.com/OrchardCMS/Orchard/releases), and is easy to [Install Orchard using the Web Platform Installer](http://www.orchardproject.net/docs/Installing-Orchard.ashx). We encourage interested developers to check out the source code on the Orchard Github site and get involved with the project. + +* [Download the latest release](https://github.com/OrchardCMS/Orchard/releases) +* [Feature roadmap](http://www.orchardproject.net/docs/feature-roadmap.ashx) +* [Docs and designs/specs](http://www.orchardproject.net/docs) +* [About us](http://www.orchardproject.net/about) +* [Contact us](mailto:ofeedbk@microsoft.com) + +## How To Get Involved +We hope that by engaging with the community in the very early stages of the project that we will be able to shape Orchard into a valuable set of tools and applications for the community. The Orchard team is committed to open community participation and accepts code contributions today. We encourage community participation at all levels from general project feedback to bug fixes and patches. + +* [Check out the code](https://github.com/OrchardCMS/Orchard) +* [Check out the docs](http://orchardproject.net/docs) +* [Find and file a bug](https://github.com/OrchardCMS/Orchard/issues) +* [Propose a feature idea](http://orchard.uservoice.com) +* [Ask and answer questions](http://www.orchardproject.net/discussions) +* [Participate in forum discussions](http://orchard.codeplex.com/discussions) +* [Submit a patch](http://www.orchardproject.net/docs/Contributing-patches.ashx) +* [Send us feedback](mailto:ofeedbk@microsoft.com) diff --git a/src/Orchard.Azure/Orchard.Azure.Web/Web.config b/src/Orchard.Azure/Orchard.Azure.Web/Web.config index 2e1e38ea0..214fc6e72 100644 --- a/src/Orchard.Azure/Orchard.Azure.Web/Web.config +++ b/src/Orchard.Azure/Orchard.Azure.Web/Web.config @@ -140,23 +140,11 @@ + - - - - - - - - - - - - - @@ -205,7 +193,19 @@ - + + + + + + + + + + + + + diff --git a/src/Orchard.Core.Tests/Properties/AssemblyInfo.cs b/src/Orchard.Core.Tests/Properties/AssemblyInfo.cs index 323f85887..6c4240857 100644 --- a/src/Orchard.Core.Tests/Properties/AssemblyInfo.cs +++ b/src/Orchard.Core.Tests/Properties/AssemblyInfo.cs @@ -8,7 +8,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyProduct("Orchard")] -[assembly: AssemblyCopyright("Copyright © Outercurve Foundation 2009")] +[assembly: AssemblyCopyright("Copyright © .NET Foundation")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.8")] -[assembly: AssemblyFileVersion("1.8")] +[assembly: AssemblyVersion("1.9.0")] +[assembly: AssemblyFileVersion("1.9.0")] diff --git a/src/Orchard.Profile/Properties/AssemblyInfo.cs b/src/Orchard.Profile/Properties/AssemblyInfo.cs index 5c3dd72be..86ab50281 100644 --- a/src/Orchard.Profile/Properties/AssemblyInfo.cs +++ b/src/Orchard.Profile/Properties/AssemblyInfo.cs @@ -8,7 +8,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyProduct("Orchard")] -[assembly: AssemblyCopyright("Copyright © Outercurve Foundation 2009")] +[assembly: AssemblyCopyright("Copyright © .NET Foundation")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.8.1")] -[assembly: AssemblyFileVersion("1.8.1")] +[assembly: AssemblyVersion("1.9.0")] +[assembly: AssemblyFileVersion("1.9.0")] diff --git a/src/Orchard.Profile/Tests/Profiling.feature.cs b/src/Orchard.Profile/Tests/Profiling.feature.cs index c3c97248e..3633721e3 100644 --- a/src/Orchard.Profile/Tests/Profiling.feature.cs +++ b/src/Orchard.Profile/Tests/Profiling.feature.cs @@ -1,7 +1,7 @@ // ------------------------------------------------------------------------------ // // This code was generated by SpecFlow (http://www.specflow.org/). -// SpecFlow Version:1.9.0.77 +// SpecFlow Version:1.9.0.0 // SpecFlow Generator Version:1.9.0.0 // Runtime Version:4.0.30319.34014 // @@ -16,7 +16,7 @@ namespace Orchard.Profile.Tests using TechTalk.SpecFlow; - [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.9.0.77")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("TechTalk.SpecFlow", "1.9.0.0")] [System.Runtime.CompilerServices.CompilerGeneratedAttribute()] [NUnit.Framework.TestFixtureAttribute()] [NUnit.Framework.DescriptionAttribute("Profiling")] diff --git a/src/Orchard.Specs/Bindings/WebAppHosting.cs b/src/Orchard.Specs/Bindings/WebAppHosting.cs index 051178ded..adeef7fbf 100644 --- a/src/Orchard.Specs/Bindings/WebAppHosting.cs +++ b/src/Orchard.Specs/Bindings/WebAppHosting.cs @@ -306,10 +306,26 @@ namespace Orchard.Specs.Bindings { var submit = _doc.DocumentNode .SelectSingleNode(string.Format("(//input[@type='submit'][@value='{0}']|//button[@type='submit'][text()='{0}'])", submitText)); + string urlPath = null; + + if (submit == null) { + // could be a simple link using "unsafeurl" property + + submit = _doc.DocumentNode + .SelectNodes("//a") + .SingleOrDefault(elt => elt.InnerHtml == submitText) + ?? _doc.DocumentNode + .SelectSingleNode(string.Format("//a[@title='{0}']", submitText)); + + urlPath = HttpUtility.HtmlDecode(submit.Attributes["href"].Value); + } + var form = Form.LocateAround(submit); - var urlPath = HttpUtility.HtmlDecode(form.Start.GetAttributeValue("action", Details.UrlPath)); - - + + if (urlPath == null) { + urlPath = HttpUtility.HtmlDecode(form.Start.GetAttributeValue("action", Details.UrlPath)); + } + var inputs = form.Children .SelectMany(elt => elt.DescendantsAndSelf("input").Concat(elt.Descendants("textarea"))) .Where(node => !((node.GetAttributeValue("type", "") == "radio" || node.GetAttributeValue("type", "") == "checkbox") && node.GetAttributeValue("checked", "") != "checked")) diff --git a/src/Orchard.Specs/Content/orchard.core.po b/src/Orchard.Specs/Content/orchard.core.po index 68a021670..c641bb5df 100644 --- a/src/Orchard.Specs/Content/orchard.core.po +++ b/src/Orchard.Specs/Content/orchard.core.po @@ -1,5 +1,5 @@ # Orchard resource strings - fr-FR -# Copyright (c) 2010 Outercurve Foundation +# Copyright (c) 2010 .NET Foundation # All rights reserved # This file is distributed under the BSD license diff --git a/src/Orchard.Specs/Modules.feature b/src/Orchard.Specs/Modules.feature index 82edc99cf..1c094a2a8 100644 --- a/src/Orchard.Specs/Modules.feature +++ b/src/Orchard.Specs/Modules.feature @@ -12,7 +12,7 @@ Scenario: Installed modules are listed | Options.SearchText | Themes | And I hit "Search" Then I should see "

Modules

" - And I should see "]*>Themes" + And I should see "]*>\s*Themes" And the status should be 200 "OK" Scenario: Features of installed modules are listed diff --git a/src/Orchard.Specs/Modules.feature.cs b/src/Orchard.Specs/Modules.feature.cs index 1daad6ee7..a774c8e80 100644 --- a/src/Orchard.Specs/Modules.feature.cs +++ b/src/Orchard.Specs/Modules.feature.cs @@ -3,7 +3,7 @@ // This code was generated by SpecFlow (http://www.specflow.org/). // SpecFlow Version:1.9.0.77 // SpecFlow Generator Version:1.9.0.0 -// Runtime Version:4.0.30319.34014 +// Runtime Version:4.0.30319.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -92,7 +92,7 @@ this.ScenarioSetup(scenarioInfo); #line 14 testRunner.Then("I should see \"

Modules

\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line 15 - testRunner.And("I should see \"]*>Themes\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + testRunner.And("I should see \"]*>\\s*Themes\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 16 testRunner.And("the status should be 200 \"OK\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden diff --git a/src/Orchard.Specs/Orchard.Specs.csproj b/src/Orchard.Specs/Orchard.Specs.csproj index 8199edda6..2415be3b0 100644 --- a/src/Orchard.Specs/Orchard.Specs.csproj +++ b/src/Orchard.Specs/Orchard.Specs.csproj @@ -426,7 +426,7 @@ {9916839C-39FC-4CEB-A5AF-89CA7E87119F} Orchard.Core - false + True {D10AD48F-407D-4DB5-A328-173EC7CB010F} @@ -447,7 +447,7 @@ {2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6} Orchard.Framework - false + True {33B1BC8D-E292-4972-A363-22056B207156} diff --git a/src/Orchard.Specs/Pages.feature b/src/Orchard.Specs/Pages.feature index 8a93401f2..5352b3df9 100644 --- a/src/Orchard.Specs/Pages.feature +++ b/src/Orchard.Specs/Pages.feature @@ -14,7 +14,7 @@ Scenario: In the admin (menu) there is a link to create a Page And I fill in | name | value | | Title.Title | Super Duper | - | LayoutPart.State | { "elements": [ { "typeName": "Orchard.Layouts.Elements.Text", "state": "Content=This+is+super."} ] } | + | LayoutPart.LayoutEditor.Data | { "type": "Content", "data": "TypeName=Orchard.Layouts.Elements.Text&Content=This+is+super", "isTemplated": false, "contentType": "Orchard.Layouts.Elements.Text", "contentTypeLabel": "Text", "contentTypeClass": "text", "html": "This is super", "hasEditor": true } | And I hit "Publish Now" And I go to "super-duper" Then I should see "]*>.*?Super Duper.*?" @@ -25,7 +25,7 @@ Scenario: In the admin (menu) there is a link to create a Page And I fill in | name | value | | Title.Title | Super Duper | - | LayoutPart.State | { "elements": [ { "typeName": "Orchard.Layouts.Elements.Text", "state": "Content=This+is+super+number+two."} ] } | + | LayoutPart.LayoutEditor.Data | { "type": "Content", "data": "TypeName=Orchard.Layouts.Elements.Text&Content=This+is+super+number+two", "isTemplated": false, "contentType": "Orchard.Layouts.Elements.Text", "contentTypeLabel": "Text", "contentTypeClass": "text", "html": "This is super number two", "hasEditor": true } | And I hit "Publish Now" And I go to "super-duper-2" Then I should see "]*>.*?Super Duper.*?" @@ -36,7 +36,6 @@ Scenario: In the admin (menu) there is a link to create a Page And I fill in | name | value | | Title.Title | Another | - | LayoutPart.State | { "elements": [ { "typeName": "Orchard.Layouts.Elements.Text", "state": "Content=This+is+the+draft+of+a+new+homepage."} ] } | | Autoroute.PromoteToHomePage | true | And I hit "Publish Now" And I go to "/" @@ -49,7 +48,6 @@ Scenario: In the admin (menu) there is a link to create a Page And I fill in | name | value | | Title.Title | Drafty | - | LayoutPart.State | { "elements": [ { "typeName": "Orchard.Layouts.Elements.Text", "state": "Content=This+is+the+draft+of+a+new+homepage."} ] } | | Autoroute.PromoteToHomePage | true | And I hit "Save" And I go to "/" diff --git a/src/Orchard.Specs/Pages.feature.cs b/src/Orchard.Specs/Pages.feature.cs index 86b0972c2..7ea3cf7d5 100644 --- a/src/Orchard.Specs/Pages.feature.cs +++ b/src/Orchard.Specs/Pages.feature.cs @@ -3,7 +3,7 @@ // This code was generated by SpecFlow (http://www.specflow.org/). // SpecFlow Version:1.9.0.77 // SpecFlow Generator Version:1.9.0.0 -// Runtime Version:4.0.30319.34014 +// Runtime Version:4.0.30319.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -88,9 +88,8 @@ this.ScenarioSetup(scenarioInfo); "Title.Title", "Super Duper"}); table1.AddRow(new string[] { - "LayoutPart.State", - "{ \"elements\": [ { \"typeName\": \"Orchard.Layouts.Elements.Text\", \"state\": \"Content=" + - "This+is+super.\"} ] }"}); + "LayoutPart.LayoutEditor.Data", + @"{ ""type"": ""Content"", ""data"": ""TypeName=Orchard.Layouts.Elements.Text&Content=This+is+super"", ""isTemplated"": false, ""contentType"": ""Orchard.Layouts.Elements.Text"", ""contentTypeLabel"": ""Text"", ""contentTypeClass"": ""text"", ""html"": ""This is super"", ""hasEditor"": true }"}); #line 14 testRunner.And("I fill in", ((string)(null)), table1, "And "); #line 18 @@ -111,9 +110,8 @@ this.ScenarioSetup(scenarioInfo); "Title.Title", "Super Duper"}); table2.AddRow(new string[] { - "LayoutPart.State", - "{ \"elements\": [ { \"typeName\": \"Orchard.Layouts.Elements.Text\", \"state\": \"Content=" + - "This+is+super+number+two.\"} ] }"}); + "LayoutPart.LayoutEditor.Data", + @"{ ""type"": ""Content"", ""data"": ""TypeName=Orchard.Layouts.Elements.Text&Content=This+is+super+number+two"", ""isTemplated"": false, ""contentType"": ""Orchard.Layouts.Elements.Text"", ""contentTypeLabel"": ""Text"", ""contentTypeClass"": ""text"", ""html"": ""This is super number two"", ""hasEditor"": true }"}); #line 25 testRunner.And("I fill in", ((string)(null)), table2, "And "); #line 29 @@ -133,26 +131,22 @@ this.ScenarioSetup(scenarioInfo); table3.AddRow(new string[] { "Title.Title", "Another"}); - table3.AddRow(new string[] { - "LayoutPart.State", - "{ \"elements\": [ { \"typeName\": \"Orchard.Layouts.Elements.Text\", \"state\": \"Content=" + - "This+is+the+draft+of+a+new+homepage.\"} ] }"}); table3.AddRow(new string[] { "Autoroute.PromoteToHomePage", "true"}); #line 36 testRunner.And("I fill in", ((string)(null)), table3, "And "); -#line 41 +#line 40 testRunner.And("I hit \"Publish Now\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 42 +#line 41 testRunner.And("I go to \"/\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 43 +#line 42 testRunner.Then("I should see \"

Another

\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 44 +#line 43 testRunner.When("I go to \"another\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 45 +#line 44 testRunner.Then("the status should be 404 \"Not Found\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 48 +#line 47 testRunner.When("I go to \"Admin/Contents/Create/Page\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line hidden TechTalk.SpecFlow.Table table4 = new TechTalk.SpecFlow.Table(new string[] { @@ -161,20 +155,16 @@ this.ScenarioSetup(scenarioInfo); table4.AddRow(new string[] { "Title.Title", "Drafty"}); - table4.AddRow(new string[] { - "LayoutPart.State", - "{ \"elements\": [ { \"typeName\": \"Orchard.Layouts.Elements.Text\", \"state\": \"Content=" + - "This+is+the+draft+of+a+new+homepage.\"} ] }"}); table4.AddRow(new string[] { "Autoroute.PromoteToHomePage", "true"}); -#line 49 +#line 48 testRunner.And("I fill in", ((string)(null)), table4, "And "); -#line 54 +#line 52 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 55 +#line 53 testRunner.And("I go to \"/\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 56 +#line 54 testRunner.Then("I should see \"

Another

\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); diff --git a/src/Orchard.Specs/Properties/AssemblyInfo.cs b/src/Orchard.Specs/Properties/AssemblyInfo.cs index c17d08910..7ea88fe8a 100644 --- a/src/Orchard.Specs/Properties/AssemblyInfo.cs +++ b/src/Orchard.Specs/Properties/AssemblyInfo.cs @@ -8,7 +8,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyProduct("Orchard")] -[assembly: AssemblyCopyright("Copyright © Outercurve Foundation 2009")] +[assembly: AssemblyCopyright("Copyright © .NET Foundation")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.8.1")] -[assembly: AssemblyFileVersion("1.8.1")] +[assembly: AssemblyVersion("1.9.0")] +[assembly: AssemblyFileVersion("1.9.0")] diff --git a/src/Orchard.Specs/Tags.feature b/src/Orchard.Specs/Tags.feature index dc4946cba..af72b03e6 100644 --- a/src/Orchard.Specs/Tags.feature +++ b/src/Orchard.Specs/Tags.feature @@ -9,7 +9,7 @@ Scenario: I can add a tag to a new Page And I fill in | name | value | | Title.Title | Super Duper | - | LayoutPart.State | { "elements": [ { "typeName": "Orchard.Layouts.Elements.Text", "state": "Content=This+is+super."} ] } | + | LayoutPart.LayoutEditor.Data | { "elements": [ { "typeName": "Orchard.Layouts.Elements.Text", "state": "Content=This+is+super."} ] } | | Tags.Tags | Foo, Bar | And I hit "Publish Now" And I go to "super-duper" @@ -23,10 +23,8 @@ Scenario: I can't add a tag with disallowed chars to a new Page And I fill in | name | value | | Title.Title | Super Duper | - | LayoutPart.State | { "elements": [ { "typeName": "Orchard.Layouts.Elements.Text", "state": "Content=This+is+super."} ] } | + | LayoutPart.LayoutEditor.Data | { "elements": [ { "typeName": "Orchard.Layouts.Elements.Text", "state": "Content=This+is+super."} ] } | | Tags.Tags | Foo, I <3 Orchard | And I hit "Publish Now" - And I go to "super-duper" - Then I should see "]*>.*?Super Duper.*?" - And I should see "]*>Foo" - And I should not see "]*>I <3 Orchard" + And I am redirected + Then I should see "forbidden chars" diff --git a/src/Orchard.Specs/Tags.feature.cs b/src/Orchard.Specs/Tags.feature.cs index 0b408c607..ef767cd61 100644 --- a/src/Orchard.Specs/Tags.feature.cs +++ b/src/Orchard.Specs/Tags.feature.cs @@ -3,7 +3,7 @@ // This code was generated by SpecFlow (http://www.specflow.org/). // SpecFlow Version:1.9.0.77 // SpecFlow Generator Version:1.9.0.0 -// Runtime Version:4.0.30319.34014 +// Runtime Version:4.0.30319.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -84,7 +84,7 @@ this.ScenarioSetup(scenarioInfo); "Title.Title", "Super Duper"}); table1.AddRow(new string[] { - "LayoutPart.State", + "LayoutPart.LayoutEditor.Data", "{ \"elements\": [ { \"typeName\": \"Orchard.Layouts.Elements.Text\", \"state\": \"Content=" + "This+is+super.\"} ] }"}); table1.AddRow(new string[] { @@ -125,7 +125,7 @@ this.ScenarioSetup(scenarioInfo); "Title.Title", "Super Duper"}); table2.AddRow(new string[] { - "LayoutPart.State", + "LayoutPart.LayoutEditor.Data", "{ \"elements\": [ { \"typeName\": \"Orchard.Layouts.Elements.Text\", \"state\": \"Content=" + "This+is+super.\"} ] }"}); table2.AddRow(new string[] { @@ -136,13 +136,9 @@ this.ScenarioSetup(scenarioInfo); #line 28 testRunner.And("I hit \"Publish Now\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 29 - testRunner.And("I go to \"super-duper\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 30 - testRunner.Then("I should see \"]*>.*?Super Duper.*?\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 31 - testRunner.And("I should see \"]*>Foo\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 32 - testRunner.And("I should not see \"]*>I <3 Orchard\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + testRunner.Then("I should see \"forbidden chars\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); } diff --git a/src/Orchard.Specs/Users.feature b/src/Orchard.Specs/Users.feature index 7fcbe9942..dafcf1ebd 100644 --- a/src/Orchard.Specs/Users.feature +++ b/src/Orchard.Specs/Users.feature @@ -256,11 +256,12 @@ Scenario: I should be able to filter users by status | Options.Search | user1 | And I hit "Filter" Then I should see "]*>user1" - When I follow "Disable" + When I hit "Disable" And I am redirected Then I should see "User user1 disabled" When I fill in | name | value | + | Options.Search | | | Options.Filter | Pending | And I hit "Filter" Then I should see "]*>user1" @@ -268,20 +269,23 @@ Scenario: I should be able to filter users by status And I should not see "]*>admin" When I fill in | name | value | - | Options.Filter | EmailPending | + | Options.Search | | + | Options.Filter | EmailPending | And I hit "Filter" Then I should not see "]*>user1" And I should not see "]*>user2" And I should not see "]*>admin" When I fill in | name | value | - | Options.Filter | Approved | + | Options.Search | | + | Options.Filter | Approved | And I hit "Filter" Then I should not see "]*>user1" And I should see "]*>user2" And I should see "]*>admin" When I fill in | name | value | + | Options.Search | | | Options.Filter | All | And I hit "Filter" Then I should see "]*>user1" diff --git a/src/Orchard.Specs/Users.feature.cs b/src/Orchard.Specs/Users.feature.cs index 2eecf6ab1..e1d2337e2 100644 --- a/src/Orchard.Specs/Users.feature.cs +++ b/src/Orchard.Specs/Users.feature.cs @@ -3,7 +3,7 @@ // This code was generated by SpecFlow (http://www.specflow.org/). // SpecFlow Version:1.9.0.77 // SpecFlow Generator Version:1.9.0.0 -// Runtime Version:4.0.30319.34014 +// Runtime Version:4.0.30319.0 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -712,7 +712,7 @@ this.ScenarioSetup(scenarioInfo); #line 258 testRunner.Then("I should see \"]*>user1\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line 259 - testRunner.When("I follow \"Disable\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); + testRunner.When("I hit \"Disable\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); #line 260 testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 261 @@ -721,69 +721,81 @@ this.ScenarioSetup(scenarioInfo); TechTalk.SpecFlow.Table table23 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); + table23.AddRow(new string[] { + "Options.Search", + ""}); table23.AddRow(new string[] { "Options.Filter", "Pending"}); #line 262 testRunner.When("I fill in", ((string)(null)), table23, "When "); -#line 265 - testRunner.And("I hit \"Filter\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 266 - testRunner.Then("I should see \"]*>user1\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); + testRunner.And("I hit \"Filter\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 267 - testRunner.And("I should not see \"]*>user2\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + testRunner.Then("I should see \"]*>user1\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line 268 + testRunner.And("I should not see \"]*>user2\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 269 testRunner.And("I should not see \"]*>admin\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table24 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); + table24.AddRow(new string[] { + "Options.Search", + ""}); table24.AddRow(new string[] { "Options.Filter", "EmailPending"}); -#line 269 +#line 270 testRunner.When("I fill in", ((string)(null)), table24, "When "); -#line 272 - testRunner.And("I hit \"Filter\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 273 - testRunner.Then("I should not see \"]*>user1\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line 274 - testRunner.And("I should not see \"]*>user2\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); + testRunner.And("I hit \"Filter\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 275 + testRunner.Then("I should not see \"]*>user1\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 276 + testRunner.And("I should not see \"]*>user2\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 277 testRunner.And("I should not see \"]*>admin\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table25 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); + table25.AddRow(new string[] { + "Options.Search", + ""}); table25.AddRow(new string[] { "Options.Filter", "Approved"}); -#line 276 +#line 278 testRunner.When("I fill in", ((string)(null)), table25, "When "); -#line 279 - testRunner.And("I hit \"Filter\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 280 - testRunner.Then("I should not see \"]*>user1\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 281 - testRunner.And("I should see \"]*>user2\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line 282 + testRunner.And("I hit \"Filter\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 283 + testRunner.Then("I should not see \"]*>user1\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); +#line 284 + testRunner.And("I should see \"]*>user2\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); +#line 285 testRunner.And("I should see \"]*>admin\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table26 = new TechTalk.SpecFlow.Table(new string[] { "name", "value"}); + table26.AddRow(new string[] { + "Options.Search", + ""}); table26.AddRow(new string[] { "Options.Filter", "All"}); -#line 283 - testRunner.When("I fill in", ((string)(null)), table26, "When "); #line 286 + testRunner.When("I fill in", ((string)(null)), table26, "When "); +#line 290 testRunner.And("I hit \"Filter\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 287 +#line 291 testRunner.Then("I should see \"]*>user1\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); -#line 288 +#line 292 testRunner.And("I should see \"]*>user2\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 289 +#line 293 testRunner.And("I should see \"]*>admin\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden this.ScenarioCleanup(); @@ -796,13 +808,13 @@ this.ScenarioSetup(scenarioInfo); { TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("I should not be able to add users with invalid email addresses", new string[] { "email"}); -#line 291 +#line 295 this.ScenarioSetup(scenarioInfo); -#line 292 +#line 296 testRunner.Given("I have installed Orchard", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Given "); -#line 293 +#line 297 testRunner.When("I go to \"admin/users\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 294 +#line 298 testRunner.And("I follow \"Add a new user\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table27 = new TechTalk.SpecFlow.Table(new string[] { @@ -820,11 +832,11 @@ this.ScenarioSetup(scenarioInfo); table27.AddRow(new string[] { "ConfirmPassword", "a12345!"}); -#line 295 +#line 299 testRunner.And("I fill in", ((string)(null)), table27, "And "); -#line 301 +#line 305 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 302 +#line 306 testRunner.Then("I should see \"You must specify a valid email address.\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); @@ -837,13 +849,13 @@ this.ScenarioSetup(scenarioInfo); { TechTalk.SpecFlow.ScenarioInfo scenarioInfo = new TechTalk.SpecFlow.ScenarioInfo("I should be able to add users with valid email addresses", new string[] { "email"}); -#line 304 +#line 308 this.ScenarioSetup(scenarioInfo); -#line 305 +#line 309 testRunner.Given("I have installed Orchard", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Given "); -#line 306 +#line 310 testRunner.When("I go to \"admin/users\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "When "); -#line 307 +#line 311 testRunner.And("I follow \"Add a new user\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); #line hidden TechTalk.SpecFlow.Table table28 = new TechTalk.SpecFlow.Table(new string[] { @@ -861,13 +873,13 @@ this.ScenarioSetup(scenarioInfo); table28.AddRow(new string[] { "ConfirmPassword", "a12345!"}); -#line 308 +#line 312 testRunner.And("I fill in", ((string)(null)), table28, "And "); -#line 314 +#line 318 testRunner.And("I hit \"Save\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 315 +#line 319 testRunner.And("I am redirected", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "And "); -#line 316 +#line 320 testRunner.Then("I should see \"User created\"", ((string)(null)), ((TechTalk.SpecFlow.Table)(null)), "Then "); #line hidden this.ScenarioCleanup(); diff --git a/src/Orchard.Tests.Modules/DesignerTools/Services/ObjectDumperTests.cs b/src/Orchard.Tests.Modules/DesignerTools/Services/ObjectDumperTests.cs index e0ea0bfa4..d78cd52bb 100644 --- a/src/Orchard.Tests.Modules/DesignerTools/Services/ObjectDumperTests.cs +++ b/src/Orchard.Tests.Modules/DesignerTools/Services/ObjectDumperTests.cs @@ -48,7 +48,9 @@ namespace Orchard.Tests.Modules.DesignerTools.Services private static void ComparareJsonObject(JObject expectedResult, string json) { var objectDumperJson = JToken.Parse("{" + json + "}"); - Assert.IsTrue(JToken.DeepEquals(expectedResult, objectDumperJson)); + string message = String.Format("expected: {0} \r\nresult:{1}", expectedResult.ToString(Formatting.Indented), objectDumperJson.ToString(Formatting.Indented)); + + Assert.IsTrue(JToken.DeepEquals(expectedResult, objectDumperJson), message); } [Test] diff --git a/src/Orchard.Tests.Modules/Orchard.Tests.Modules.csproj b/src/Orchard.Tests.Modules/Orchard.Tests.Modules.csproj index 23b9ef454..c0b316f4e 100644 --- a/src/Orchard.Tests.Modules/Orchard.Tests.Modules.csproj +++ b/src/Orchard.Tests.Modules/Orchard.Tests.Modules.csproj @@ -205,7 +205,7 @@ {9916839C-39FC-4CEB-A5AF-89CA7E87119F} Orchard.Core - false + True {D5D447D7-EF8E-43A6-B9A4-3B025DD9F45D} @@ -302,7 +302,7 @@ {2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6} Orchard.Framework - false + True diff --git a/src/Orchard.Tests.Modules/Properties/AssemblyInfo.cs b/src/Orchard.Tests.Modules/Properties/AssemblyInfo.cs index e25593ef6..9555f496b 100644 --- a/src/Orchard.Tests.Modules/Properties/AssemblyInfo.cs +++ b/src/Orchard.Tests.Modules/Properties/AssemblyInfo.cs @@ -8,7 +8,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyProduct("Orchard")] -[assembly: AssemblyCopyright("Copyright © Outercurve Foundation 2009")] +[assembly: AssemblyCopyright("Copyright © .NET Foundation")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -30,5 +30,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.8")] -[assembly: AssemblyFileVersion("1.8")] +[assembly: AssemblyVersion("1.9.0")] +[assembly: AssemblyFileVersion("1.9.0")] diff --git a/src/Orchard.Tests/Localization/CurrentCultureWorkContextTests.cs b/src/Orchard.Tests/Localization/CurrentCultureWorkContextTests.cs index 053595295..7cb8741f9 100644 --- a/src/Orchard.Tests/Localization/CurrentCultureWorkContextTests.cs +++ b/src/Orchard.Tests/Localization/CurrentCultureWorkContextTests.cs @@ -15,7 +15,7 @@ namespace Orchard.Tests.Localization { public void Init() { var builder = new ContainerBuilder(); _workContext = new StubWorkContext(); - builder.RegisterInstance(new StubCultureSelector("or-CH")).As(); + builder.RegisterInstance(new StubCultureSelector("fr-CA")).As(); builder.RegisterInstance(new StubHttpContext("~/")); builder.RegisterInstance(_workContext); builder.RegisterType().As(); @@ -27,7 +27,7 @@ namespace Orchard.Tests.Localization { [Test] public void CultureManagerReturnsCultureFromSelectors() { var actualCulture = _currentCultureStateProvider.Get("CurrentCulture")(_workContext); - var expectedCulture = "or-CH"; + var expectedCulture = "fr-CA"; Assert.That(actualCulture, Is.EqualTo(expectedCulture)); } } diff --git a/src/Orchard.Tests/Orchard.Framework.Tests.csproj b/src/Orchard.Tests/Orchard.Framework.Tests.csproj index 8f62cd7b0..48ad9a1ea 100644 --- a/src/Orchard.Tests/Orchard.Framework.Tests.csproj +++ b/src/Orchard.Tests/Orchard.Framework.Tests.csproj @@ -331,12 +331,12 @@ {9916839C-39FC-4CEB-A5AF-89CA7E87119F} Orchard.Core - false + True {2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6} Orchard.Framework - false + True diff --git a/src/Orchard.Tests/Properties/AssemblyInfo.cs b/src/Orchard.Tests/Properties/AssemblyInfo.cs index 9316ca0b1..5ce5b1e96 100644 --- a/src/Orchard.Tests/Properties/AssemblyInfo.cs +++ b/src/Orchard.Tests/Properties/AssemblyInfo.cs @@ -9,7 +9,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyProduct("Orchard")] -[assembly: AssemblyCopyright("Copyright © Outercurve Foundation 2009")] +[assembly: AssemblyCopyright("Copyright © .NET Foundation")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -33,5 +33,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.8")] -[assembly: AssemblyFileVersion("1.8")] +[assembly: AssemblyVersion("1.9.0")] +[assembly: AssemblyFileVersion("1.9.0")] diff --git a/src/Orchard.WarmupStarter/Properties/AssemblyInfo.cs b/src/Orchard.WarmupStarter/Properties/AssemblyInfo.cs index 2ef15b680..6c5239b6e 100644 --- a/src/Orchard.WarmupStarter/Properties/AssemblyInfo.cs +++ b/src/Orchard.WarmupStarter/Properties/AssemblyInfo.cs @@ -10,7 +10,7 @@ using System.Security; [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyProduct("Orchard")] -[assembly: AssemblyCopyright("Copyright © Outercurve Foundation 2011")] +[assembly: AssemblyCopyright("Copyright © .NET Foundation")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -32,8 +32,8 @@ using System.Security; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.8.1")] -[assembly: AssemblyFileVersion("1.8.1")] +[assembly: AssemblyVersion("1.9.0")] +[assembly: AssemblyFileVersion("1.9.0")] // Enable web application to call this assembly in Full Trust [assembly: AllowPartiallyTrustedCallers] diff --git a/src/Orchard.Web.Tests/Orchard.Web.Tests.csproj b/src/Orchard.Web.Tests/Orchard.Web.Tests.csproj index a0b1b8124..b547113f9 100644 --- a/src/Orchard.Web.Tests/Orchard.Web.Tests.csproj +++ b/src/Orchard.Web.Tests/Orchard.Web.Tests.csproj @@ -96,7 +96,7 @@ {2D1D92BB-4555-4CBE-8D0E-63563D6CE4C6} Orchard.Framework - false + True diff --git a/src/Orchard.Web.Tests/Properties/AssemblyInfo.cs b/src/Orchard.Web.Tests/Properties/AssemblyInfo.cs index 8a04a6715..8dd80a53f 100644 --- a/src/Orchard.Web.Tests/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web.Tests/Properties/AssemblyInfo.cs @@ -9,7 +9,7 @@ using System.Runtime.InteropServices; [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyProduct("Orchard")] -[assembly: AssemblyCopyright("Copyright © Outercurve Foundation 2009")] +[assembly: AssemblyCopyright("Copyright © .NET Foundation")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] @@ -33,5 +33,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.8")] -[assembly: AssemblyFileVersion("1.8")] +[assembly: AssemblyVersion("1.9.0")] +[assembly: AssemblyFileVersion("1.9.0")] diff --git a/src/Orchard.Web/Core/Common/Models/CommonPart.cs b/src/Orchard.Web/Core/Common/Models/CommonPart.cs index 188f6afd0..6e8274286 100644 --- a/src/Orchard.Web/Core/Common/Models/CommonPart.cs +++ b/src/Orchard.Web/Core/Common/Models/CommonPart.cs @@ -1,7 +1,7 @@ using System; -using Orchard.Core.Common.Utilities; using Orchard.ContentManagement; using Orchard.ContentManagement.Aspects; +using Orchard.ContentManagement.Utilities; using Orchard.Security; namespace Orchard.Core.Common.Models { diff --git a/src/Orchard.Web/Core/Common/Module.txt b/src/Orchard.Web/Core/Common/Module.txt index df6d9c87f..dc2805a2c 100644 --- a/src/Orchard.Web/Core/Common/Module.txt +++ b/src/Orchard.Web/Core/Common/Module.txt @@ -2,8 +2,8 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.8.1 -OrchardVersion: 1.8 +Version: 1.9.0 +OrchardVersion: 1.9 Description: The common module introduces content parts that are going to be used by most content types (common, body, identity). FeatureDescription: Core content parts. Dependencies: Settings diff --git a/src/Orchard.Web/Core/Common/Utilities/LazyField.cs b/src/Orchard.Web/Core/Common/Utilities/LazyField.cs index d0d879bcc..dfacf3552 100644 --- a/src/Orchard.Web/Core/Common/Utilities/LazyField.cs +++ b/src/Orchard.Web/Core/Common/Utilities/LazyField.cs @@ -1,14 +1,15 @@ using System; namespace Orchard.Core.Common.Utilities { + [Obsolete("Use Orchard.ContentManagement.Utilities.LazyField instead.")] public class LazyField { private T _value; private Func _loader; private Func _setter; public T Value { - get {return GetValue();} - set {SetValue(value);} + get { return GetValue(); } + set { SetValue(value); } } public void Loader(Func loader) { @@ -22,7 +23,7 @@ namespace Orchard.Core.Common.Utilities { private T GetValue() { if (_loader != null) { _value = _loader(); - _loader = null; + _loader = null; } return _value; } diff --git a/src/Orchard.Web/Core/Containers/Models/ContainerPart.cs b/src/Orchard.Web/Core/Containers/Models/ContainerPart.cs index b0230123a..fc38ad8ca 100644 --- a/src/Orchard.Web/Core/Containers/Models/ContainerPart.cs +++ b/src/Orchard.Web/Core/Containers/Models/ContainerPart.cs @@ -2,7 +2,7 @@ using Orchard.ContentManagement; using Orchard.ContentManagement.MetaData.Models; using Orchard.ContentManagement.Records; -using Orchard.Core.Common.Utilities; +using Orchard.ContentManagement.Utilities; using Orchard.Core.Containers.Services; using Orchard.Core.Containers.Settings; using Orchard.UI.Navigation; diff --git a/src/Orchard.Web/Core/Containers/Models/OrderByDirection.cs b/src/Orchard.Web/Core/Containers/Models/OrderByDirection.cs deleted file mode 100644 index 3cc6e2697..000000000 --- a/src/Orchard.Web/Core/Containers/Models/OrderByDirection.cs +++ /dev/null @@ -1,6 +0,0 @@ -namespace Orchard.Core.Containers.Models { - public enum OrderByDirection { - Ascending, - Descending - } -} diff --git a/src/Orchard.Web/Core/Containers/Module.txt b/src/Orchard.Web/Core/Containers/Module.txt index 6d4188b99..cbc6e1d09 100644 --- a/src/Orchard.Web/Core/Containers/Module.txt +++ b/src/Orchard.Web/Core/Containers/Module.txt @@ -2,8 +2,8 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.8.1 -OrchardVersion: 1.8 +Version: 1.9.0 +OrchardVersion: 1.9 Description: The containers module introduces container and containable behaviors for content items. FeatureDescription: Container and containable parts to enable parent-child relationships between content items. Dependencies: Contents, Feeds diff --git a/src/Orchard.Web/Core/Containers/ViewModels/ContainerViewModel.cs b/src/Orchard.Web/Core/Containers/ViewModels/ContainerViewModel.cs index 65006a4eb..dd0bbb328 100644 --- a/src/Orchard.Web/Core/Containers/ViewModels/ContainerViewModel.cs +++ b/src/Orchard.Web/Core/Containers/ViewModels/ContainerViewModel.cs @@ -26,8 +26,6 @@ namespace Orchard.Core.Containers.ViewModels { public enum SortDirection { Ascending, - Descending, - Created, - DisplayText + Descending } } \ No newline at end of file diff --git a/src/Orchard.Web/Core/Containers/Views/EditorTemplates/ContainerWidget.cshtml b/src/Orchard.Web/Core/Containers/Views/EditorTemplates/ContainerWidget.cshtml index 9be03b722..46d201a50 100644 --- a/src/Orchard.Web/Core/Containers/Views/EditorTemplates/ContainerWidget.cshtml +++ b/src/Orchard.Web/Core/Containers/Views/EditorTemplates/ContainerWidget.cshtml @@ -1,5 +1,4 @@ @model Orchard.Core.Containers.ViewModels.ContainerWidgetViewModel -@using Orchard.Core.Containers.Models; @{ Script.Require("ShapesBase"); } @@ -25,8 +24,8 @@ @Html.SelectOption(Model.Part.Record.OrderByProperty, "CustomPropertiesPart.CustomThree", T("Custom 3").Text)
diff --git a/src/Orchard.Web/Core/Contents/Module.txt b/src/Orchard.Web/Core/Contents/Module.txt index 8d6ec70b4..5b7d1bcf0 100644 --- a/src/Orchard.Web/Core/Contents/Module.txt +++ b/src/Orchard.Web/Core/Contents/Module.txt @@ -2,8 +2,8 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.8.1 -OrchardVersion: 1.8 +Version: 1.9.0 +OrchardVersion: 1.9 Description: The contents module enables the creation of custom content types. Features: Contents diff --git a/src/Orchard.Web/Core/Contents/Views/Admin/List.cshtml b/src/Orchard.Web/Core/Contents/Views/Admin/List.cshtml index e091e129f..a678329b5 100644 --- a/src/Orchard.Web/Core/Contents/Views/Admin/List.cshtml +++ b/src/Orchard.Web/Core/Contents/Views/Admin/List.cshtml @@ -16,8 +16,10 @@
@Html.ActionLink(createLinkText.Text, "Create", new { Area = "Contents", Id = (string)Model.Options.SelectedFilter }, new { @class = "button primaryAction" })
+ @using (Html.BeginFormAntiForgeryPost()) {
+ @T(" | ") @T("Select all")@T(" | ") @T("Select all")@T(" | ") @T("Select all")@T(" | ") + @T("One term per line, followed by a semi-colon and the slug") @T("Hierarchies are defined using tabs (handled in this editor zone)") @@ -21,47 +21,47 @@ } -@using(Script.Foot()){ - + //]]> + } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Admin/Index.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Admin/Index.cshtml index e7cb0b0fa..6eaebdffa 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Admin/Index.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Admin/Index.cshtml @@ -7,58 +7,59 @@ } @using (Html.BeginFormAntiForgeryPost()) { - @Html.ValidationSummary() -
- - - -
-
@Html.ActionLink(T("Add a taxonomy").Text, "Create", new { Area = "Contents", Id = "Taxonomy", ReturnUrl = Request.RawUrl }, new { @class = "button primaryAction" })
-
- - - - - - - - - - - - - - @foreach (var taxonomyEntry in Model.Taxonomies) { - ti = taxonomyIndex; - - - - - - taxonomyIndex++; - } -
@T("Name")
- - @if (!taxonomyEntry.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) { - - } - - @if (!taxonomyEntry.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) { - @Html.ActionLink(taxonomyEntry.Name, "Index", "TermAdmin", new { taxonomyId = taxonomyEntry.Id }, new object { }) - } - else { - @Html.ItemDisplayText(taxonomyEntry.ContentItem) - } - - @if (!taxonomyEntry.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) { - @Html.ItemEditLink(T("Edit").Text, taxonomyEntry.ContentItem) | - @Html.ActionLink(T("Terms").Text, "Index", "TermAdmin", new { taxonomyId = taxonomyEntry.Id }, new object { }) | - @Html.ActionLink(T("Delete").Text, "Delete", new { id = taxonomyEntry.Id }, new object { }) | - @Html.ActionLink(T("Import").Text, "Import", new { id = taxonomyEntry.Id }, new object { }) - } -
-
+ @Html.ValidationSummary() +
+ + + +
+
@Html.ActionLink(T("Add a taxonomy").Text, "Create", new { Area = "Contents", Id = "Taxonomy", ReturnUrl = Request.RawUrl }, new { @class = "button primaryAction" })
+
+ + + + + + + + + + + + + + @foreach (var taxonomyEntry in Model.Taxonomies) { + ti = taxonomyIndex; + + + + + + taxonomyIndex++; + } +
@T("Name")
+ + @if (!taxonomyEntry.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) { + + } + + @if (!taxonomyEntry.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) { + @Html.ActionLink(taxonomyEntry.Name, "Index", "TermAdmin", new { taxonomyId = taxonomyEntry.Id }, new object { }) + } + else { + @Html.ItemDisplayText(taxonomyEntry.ContentItem) + } + + @if (!taxonomyEntry.IsInternal || Authorizer.Authorize(Orchard.Security.StandardPermissions.SiteOwner)) { + @Html.ItemEditLink(T("Edit").Text, taxonomyEntry.ContentItem) | + @Html.ActionLink(T("Terms").Text, "Index", "TermAdmin", new { taxonomyId = taxonomyEntry.Id }, new object { }) | + @Html.ActionLink(T("Delete").Text, "Delete", new { id = taxonomyEntry.Id }, new object { }) | + @Html.ActionLink(T("Import").Text, "Import", new { id = taxonomyEntry.Id }, new object { }) + } +
+ @Display(Model.Pager) +
} \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/DefinitionTemplates/TaxonomyFieldSettings.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/DefinitionTemplates/TaxonomyFieldSettings.cshtml index 33e8d0c8a..bb79ef4f6 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/DefinitionTemplates/TaxonomyFieldSettings.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/DefinitionTemplates/TaxonomyFieldSettings.cshtml @@ -3,10 +3,10 @@ Script.Include("admin-taxonomy-field-settings.js").AtFoot(); }
- + @@ -14,10 +14,10 @@
- +
- @Html.CheckBoxFor(m => m.LeavesOnly) + @Html.CheckBoxFor(m => m.LeavesOnly)
@@ -32,7 +32,7 @@
- + @Html.CheckBoxFor(m => m.Autocomplete)
@Html.CheckBoxFor(m => m.AllowCustomTerms) @@ -41,7 +41,7 @@
- @Html.TextAreaFor(m => m.Hint, new { @class = "text medium", rows = "5" } ) + @Html.TextAreaFor(m => m.Hint, new { @class = "text medium", rows = "5" }) @T("The help text is written under the field when authors are editing the content item.") @Html.ValidationMessageFor(m => m.Hint)
\ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Fields/TaxonomyField.Autocomplete.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Fields/TaxonomyField.Autocomplete.cshtml index 58c11b444..71caa17ad 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Fields/TaxonomyField.Autocomplete.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Fields/TaxonomyField.Autocomplete.cshtml @@ -26,52 +26,52 @@ } } @{ - var allTerms = Newtonsoft.Json.JsonConvert.SerializeObject(Model.Terms.Select(x => new { label = x.Name, value = x.Id, levels = x.GetLevels(), disabled = IsTermDisabled(x)})); + var allTerms = Newtonsoft.Json.JsonConvert.SerializeObject(Model.Terms.Select(x => new { label = x.Name, value = x.Id, levels = x.GetLevels(), disabled = IsTermDisabled(x) })); var selectedTerms = Newtonsoft.Json.JsonConvert.SerializeObject(Model.Terms.Where(x => x.IsChecked).Select(x => new { label = x.Name, value = x.Id, levels = 0, disabled = true })); }
- class="required" }>@Model.DisplayName.CamelFriendly() + class="required" }>@Model.DisplayName.CamelFriendly() @if (Model.Settings.Autocomplete) { -
-
    - @if (Model.Settings.SingleChoice) { -
    @T("Enter a single term. Hit tab or enter to apply the term.") @if (!Model.Settings.AllowCustomTerms) { @T("This taxonomy does not allow you to create new terms.") }
    - } - else { -
    @T("Enter multiple terms. Hit tab, enter or , to add multiple terms.") @if (!Model.Settings.AllowCustomTerms) { @T("This taxonomy does not allow you to create new terms.") }
    - } -
    +
    +
      + @if (Model.Settings.SingleChoice) { +
      @T("Enter a single term. Hit tab or enter to apply the term.") @if (!Model.Settings.AllowCustomTerms) { @T("This taxonomy does not allow you to create new terms.") }
      + } + else { +
      @T("Enter multiple terms. Hit tab, enter or , to add multiple terms.") @if (!Model.Settings.AllowCustomTerms) { @T("This taxonomy does not allow you to create new terms.") }
      + } +
      } @if (!String.IsNullOrWhiteSpace(Model.Settings.Hint)) { - @Model.Settings.Hint + @Model.Settings.Hint }
        - @foreach (var entry in Model.Terms) { - var ti = termIndex; -
      • - @{ - var disabled = IsTermDisabled(entry); - if (Model.Settings.SingleChoice) { - disabled="disabled" } type="radio" value="@Model.Terms[ti].Id" @if (entry.Id == Model.SingleTermId){ checked="checked" } name="@Html.FieldNameFor(m => m.SingleTermId)" id="@Html.FieldIdFor(m => m.Terms[ti].IsChecked)" data-term="@entry.Name" data-term-identity="@entry.Name.ToLower()" /> + @foreach (var entry in Model.Terms) { + var ti = termIndex; +
      • + @{ + var disabled = IsTermDisabled(entry); + if (Model.Settings.SingleChoice) { + disabled="disabled" } type="radio" value="@Model.Terms[ti].Id" @if (entry.Id == Model.SingleTermId) { checked="checked" } name="@Html.FieldNameFor(m => m.SingleTermId)" id="@Html.FieldIdFor(m => m.Terms[ti].IsChecked)" data-term="@entry.Name" data-term-identity="@entry.Name.ToLower()" /> + } + else { + disabled="disabled" } type="checkbox" value="true" @if (entry.IsChecked) { checked="checked" } name="@Html.FieldNameFor(m => m.Terms[ti].IsChecked)" id="@Html.FieldIdFor(m => m.Terms[ti].IsChecked)" data-term="@entry.Name" data-term-identity="@entry.Name.ToLower()" /> + } } - else { - disabled="disabled" } type="checkbox" value="true" @if (entry.IsChecked) { checked="checked" } name="@Html.FieldNameFor(m => m.Terms[ti].IsChecked)" id="@Html.FieldIdFor(m => m.Terms[ti].IsChecked)" data-term="@entry.Name" data-term-identity="@entry.Name.ToLower()" /> - } - } - - @Html.HiddenFor(m => m.Terms[ti].Id) -
      • - termIndex++; - } + + @Html.HiddenFor(m => m.Terms[ti].Id) + + termIndex++; + }
      - + @if (!Model.Terms.Any()) { -
      - @T("There are no terms defined for {0} yet.", Model.DisplayName.CamelFriendly()) - @T("Create some terms") -
      +
      + @T("There are no terms defined for {0} yet.", Model.DisplayName.CamelFriendly()) + @T("Create some terms") +
      } @Html.HiddenFor(m => m.TaxonomyId)
      diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Fields/TaxonomyField.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Fields/TaxonomyField.cshtml index a5e52893a..48461ed28 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Fields/TaxonomyField.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Fields/TaxonomyField.cshtml @@ -5,7 +5,7 @@ @{ Style.Include("admin-taxonomy.css"); - Script.Require("jQuery"); + Script.Require("jQuery"); Script.Include("~/Themes/TheAdmin/scripts/admin.js").AtFoot(); Script.Include("admin-taxonomy-expando.js").AtFoot(); @@ -14,40 +14,39 @@ }
      - class="required" }>@Model.DisplayName.CamelFriendly() - + class="required" }>@Model.DisplayName.CamelFriendly() +
      - @if (!String.IsNullOrWhiteSpace(Model.Settings.Hint)) - { + @if (!String.IsNullOrWhiteSpace(Model.Settings.Hint)) { @Model.Settings.Hint } - +
        @foreach (var entry in Model.Terms) { var ti = termIndex;
      • - @* Tabs for levels *@ @for (var i = 1; i <= entry.GetLevels(); i++){   } + @* Tabs for levels *@ @for (var i = 1; i <= entry.GetLevels(); i++) {   } @{ - var disabled = !entry.Selectable || (Model.Settings.LeavesOnly && Model.Terms.Any(t => t.Path.Contains(entry.Path + entry.Id))); - if (Model.Settings.SingleChoice) { - disabled="disabled" } type="radio" value="@Model.Terms[ti].Id" @if (entry.Id == Model.SingleTermId) { checked="checked" } name="@Html.FieldNameFor(m => m.SingleTermId)" id="@Html.FieldIdFor(m => m.Terms[ti].IsChecked)" data-term="@entry.Name.ToLower()"/> - } - else { - disabled="disabled" } type="checkbox" value="true" @if (entry.IsChecked){ checked="checked" } name="@Html.FieldNameFor(m => m.Terms[ti].IsChecked)" id="@Html.FieldIdFor(m => m.Terms[ti].IsChecked)" data-term="@entry.Name.ToLower()"/> - } + var disabled = !entry.Selectable || (Model.Settings.LeavesOnly && Model.Terms.Any(t => t.Path.Contains(entry.Path + entry.Id))); + if (Model.Settings.SingleChoice) { + disabled="disabled" } type="radio" value="@Model.Terms[ti].Id" @if (entry.Id == Model.SingleTermId) { checked="checked" } name="@Html.FieldNameFor(m => m.SingleTermId)" id="@Html.FieldIdFor(m => m.Terms[ti].IsChecked)" data-term="@entry.Name.ToLower()" /> + } + else { + disabled="disabled" } type="checkbox" value="true" @if (entry.IsChecked) { checked="checked" } name="@Html.FieldNameFor(m => m.Terms[ti].IsChecked)" id="@Html.FieldIdFor(m => m.Terms[ti].IsChecked)" data-term="@entry.Name.ToLower()" /> + } } @Html.HiddenFor(m => m.Terms[ti].Id)
      • - termIndex++; + termIndex++; }
      - + @if (!Model.Terms.Any()) {
      @T("There are no terms defined for {0} yet.", Model.DisplayName.CamelFriendly()) @T("Create some terms") -
      +
      }
      @Html.HiddenFor(m => m.TaxonomyId) diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Parts/Navigation.Taxonomy.Edit.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Parts/Navigation.Taxonomy.Edit.cshtml index 790f5be56..01d639263 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Parts/Navigation.Taxonomy.Edit.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/EditorTemplates/Parts/Navigation.Taxonomy.Edit.cshtml @@ -2,66 +2,66 @@ @using Orchard.Taxonomies.ViewModels; @{ - Script.Require("jQuery"); + Script.Require("jQuery"); }
      - @Html.LabelFor(m => m.SelectedTaxonomyId, T("Taxonomy")) - @Html.DropDownListFor(m => m.SelectedTaxonomyId, Model.AvailableTaxonomies) + @Html.LabelFor(m => m.SelectedTaxonomyId, T("Taxonomy")) + @Html.DropDownListFor(m => m.SelectedTaxonomyId, Model.AvailableTaxonomies) @T("Select the taxonomy whose terms will be rendered in the menu.")
      - @Html.LabelFor(m => m.SelectedTermId, T("Root Term")) - + @Html.SelectOption(-1, false, T("- Parent Taxonomy -").ToString()) + @{Html.RenderAction("RenderTermSelect", "TermAdmin", new { area = "Orchard.Taxonomies", taxonomyId = Model.SelectedTaxonomyId, selectedTermId = Model.SelectedTermId });} - @T("Select the root term to display") + @T("Select the root term to display")
      - @Html.CheckBoxFor(m => m.DisplayTopMenuItem) - - @T("When checked, the selected term to display will be rendered as a root element in the menu.") + @Html.CheckBoxFor(m => m.DisplayTopMenuItem) + + @T("When checked, the selected term to display will be rendered as a root element in the menu.")
      - @Html.TextBoxFor(m => m.LevelsToDisplay, new { @class = "text small" } ) + @Html.TextBoxFor(m => m.LevelsToDisplay, new { @class = "text small" }) @Html.ValidationMessage("LevelsToDisplay", "*") @T("The number of levels to display in the hierarchy. 0 to display all levels.")
      - @Html.CheckBoxFor(m => m.HideEmptyTerms) - - @T("When checked, any term which has no content item associated to it won't be rendered.") + @Html.CheckBoxFor(m => m.HideEmptyTerms) + + @T("When checked, any term which has no content item associated to it won't be rendered.")
      - @Html.CheckBoxFor(m => m.DisplayContentCount) - - @T("When checked, the number of content items is rendered following the term name.") + @Html.CheckBoxFor(m => m.DisplayContentCount) + + @T("When checked, the number of content items is rendered following the term name.")
      @using (Script.Foot()) { - + $.get( + "@Url.Action("RenderTermSelect", "TermAdmin", new { area = "Orchard.Taxonomies" })", { taxonomyId: id }, function (data) { + $('#@Html.FieldIdFor(m => m.SelectedTermId) option[value != -1]').remove(); + $('#@Html.FieldIdFor(m => m.SelectedTermId)').append(data); + }); + }); + }) + //]]> + } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Fields/TaxonomyField.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Fields/TaxonomyField.cshtml index 00824b29a..c6f81466a 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Fields/TaxonomyField.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Fields/TaxonomyField.cshtml @@ -4,8 +4,8 @@ string name = @Model.ContentField.DisplayName; } @if (Model.Terms.Count > 0) { -

      - @name.CamelFriendly(): - @(new HtmlString( string.Join(", ", terms.Select(t => Html.ItemDisplayLink(t.Name, t.ContentItem ).ToString()).ToArray()) )) -

      +

      + @name.CamelFriendly(): + @(new HtmlString(string.Join(", ", terms.Select(t => Html.ItemDisplayLink(t.Name, t.ContentItem).ToString()).ToArray()))) +

      } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Taxonomy.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Taxonomy.cshtml index c62354436..5090f9868 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Taxonomy.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/Taxonomy.cshtml @@ -11,7 +11,7 @@ if (items.Any()) { items[0].Classes.Add("first"); items[items.Count - 1].Classes.Add("last"); - } + } }
      @tag.StartElement diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TaxonomyItem.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TaxonomyItem.cshtml index 948924868..3be467fcc 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TaxonomyItem.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TaxonomyItem.cshtml @@ -1,4 +1,4 @@ -@* +@* This shape is displayed for a TermPart when in a Taxonomy details page Its children are the element shapes in the list. Alternates: @@ -16,21 +16,21 @@ var tag = Tag(Model, "li"); @tag.StartElement - @* - - morphing the shape to keep Model untouched and - - provide a simple way to customize the shape - *@ - - Model.Metadata.Alternates.Clear(); - Model.Metadata.Type = "TaxonomyItemLink"; - @Display(Model) + @* + - morphing the shape to keep Model untouched and + - provide a simple way to customize the shape + *@ - @* render child elements *@ - - if (items.Any()) { -
        - @DisplayChildren(Model) -
      - } + Model.Metadata.Alternates.Clear(); + Model.Metadata.Type = "TaxonomyItemLink"; + @Display(Model) + + @* render child elements *@ + + if (items.Any()) { +
        + @DisplayChildren(Model) +
      + } @tag.EndElement } diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/Index.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/Index.cshtml index 4f13ebd08..923565059 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/Index.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/Index.cshtml @@ -30,7 +30,7 @@ - @T("Name") + @T("Name") @@ -51,5 +51,6 @@ termIndex++; } + @Display(Model.Pager)
      } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/Merge.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/Merge.cshtml index c4791f66f..645ba6ef9 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/Merge.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/Merge.cshtml @@ -11,7 +11,7 @@ diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/MoveTerm.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/MoveTerm.cshtml index e1aefa419..d2c876e59 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/MoveTerm.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/MoveTerm.cshtml @@ -11,9 +11,9 @@ + @T("By selecting a parent term you can create hierarchies")
      diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/RenderTermSelect.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/RenderTermSelect.cshtml index 092edb39d..ca66d82d6 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/RenderTermSelect.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/RenderTermSelect.cshtml @@ -3,5 +3,5 @@ @using Orchard.Taxonomies.Helpers; @foreach (var term in Model.Terms) { - + } diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/SelectTerm.cshtml b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/SelectTerm.cshtml index 644613d5d..30a8a8c9c 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/SelectTerm.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Views/TermAdmin/SelectTerm.cshtml @@ -9,9 +9,9 @@ + @T("By selecting a parent term you can create hierarchies")
      diff --git a/src/Orchard.Web/Modules/Orchard.Taxonomies/Web.config b/src/Orchard.Web/Modules/Orchard.Taxonomies/Web.config index 6ee5b522c..f6f4ec498 100644 --- a/src/Orchard.Web/Modules/Orchard.Taxonomies/Web.config +++ b/src/Orchard.Web/Modules/Orchard.Taxonomies/Web.config @@ -29,6 +29,8 @@ + + diff --git a/src/Orchard.Web/Modules/Orchard.Templates/Module.txt b/src/Orchard.Web/Modules/Orchard.Templates/Module.txt index 60176b8fd..8a7b2ec20 100644 --- a/src/Orchard.Web/Modules/Orchard.Templates/Module.txt +++ b/src/Orchard.Web/Modules/Orchard.Templates/Module.txt @@ -2,8 +2,8 @@ AntiForgery: enabled Author: The Orchard Team Website: http://orchardproject.net -Version: 1.8.1 -OrchardVersion: 1.8 +Version: 1.9.0 +OrchardVersion: 1.9 Description: Provides a Template type that can be used to store template code and used as a shape. Features: Orchard.Templates: diff --git a/src/Orchard.Web/Modules/Orchard.Templates/Properties/AssemblyInfo.cs b/src/Orchard.Web/Modules/Orchard.Templates/Properties/AssemblyInfo.cs index 994139af5..43d4658fb 100644 --- a/src/Orchard.Web/Modules/Orchard.Templates/Properties/AssemblyInfo.cs +++ b/src/Orchard.Web/Modules/Orchard.Templates/Properties/AssemblyInfo.cs @@ -31,6 +31,6 @@ using System.Security; // // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("1.8.1")] -[assembly: AssemblyFileVersion("1.8.1")] +[assembly: AssemblyVersion("1.9.0")] +[assembly: AssemblyFileVersion("1.9.0")] diff --git a/src/Orchard.Web/Modules/Orchard.Templates/Services/Razor/RazorTemplateBase.cs b/src/Orchard.Web/Modules/Orchard.Templates/Services/Razor/RazorTemplateBase.cs index 5e07235d4..e118a945b 100644 --- a/src/Orchard.Web/Modules/Orchard.Templates/Services/Razor/RazorTemplateBase.cs +++ b/src/Orchard.Web/Modules/Orchard.Templates/Services/Razor/RazorTemplateBase.cs @@ -23,6 +23,7 @@ namespace Orchard.Templates.Compilation.Razor { public abstract class RazorTemplateBase : Mvc.ViewEngines.Razor.WebViewPage, IRazorTemplateBase { public WebPageContext WebPageContext { get; set; } public virtual void Render(TextWriter writer) { + InitHelpers(); PushContext(WebPageContext, writer); OutputStack.Push(writer); Execute(); diff --git a/src/Orchard.Web/Modules/Orchard.Templates/Views/Admin/List.cshtml b/src/Orchard.Web/Modules/Orchard.Templates/Views/Admin/List.cshtml index 682f94bc2..d37398f51 100644 --- a/src/Orchard.Web/Modules/Orchard.Templates/Views/Admin/List.cshtml +++ b/src/Orchard.Web/Modules/Orchard.Templates/Views/Admin/List.cshtml @@ -16,6 +16,7 @@ @using (Html.BeginFormAntiForgeryPost()) {
      + @T(" | ")