From e9208542edc9e9d50cbb91d578662518078830d4 Mon Sep 17 00:00:00 2001 From: Suha Can Date: Wed, 29 Sep 2010 14:29:43 -0700 Subject: [PATCH] - Updating ExtensionManager and ThemeService to read zones from the manifest. - Adding a few essential parts for layers, widgets. --HG-- branch : dev --- .../DisplayManagement/DefaultDisplayManagerTests.cs | 1 + src/Orchard.Web/Modules/Orchard.Setup/SetupMode.cs | 1 + src/Orchard.Web/Modules/Orchard.Themes/Models/Theme.cs | 1 + .../Modules/Orchard.Themes/Services/ThemeService.cs | 6 ++++-- src/Orchard.Web/Modules/Orchard.Widgets/Models/Layer.cs | 6 ++++++ .../Modules/Orchard.Widgets/Models/LayerPart.cs | 6 ++++++ .../Modules/Orchard.Widgets/Models/LayerPartRecord.cs | 9 +++++++++ .../Modules/Orchard.Widgets/Models/LayerZone.cs | 7 +++++++ .../Modules/Orchard.Widgets/Models/WidgetPart.cs | 6 ++++++ .../Modules/Orchard.Widgets/Models/WidgetPartRecord.cs | 8 ++++++++ .../Modules/Orchard.Widgets/Orchard.Widgets.csproj | 7 +++++++ src/Orchard.Web/Themes/Classic/Theme.txt | 1 + .../Environment/Extensions/Folders/ExtensionFolders.cs | 1 + .../Environment/Extensions/Models/ExtensionDescriptor.cs | 1 + src/Orchard/Themes/ITheme.cs | 1 + 15 files changed, 60 insertions(+), 2 deletions(-) create mode 100644 src/Orchard.Web/Modules/Orchard.Widgets/Models/Layer.cs create mode 100644 src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerPart.cs create mode 100644 src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerPartRecord.cs create mode 100644 src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerZone.cs create mode 100644 src/Orchard.Web/Modules/Orchard.Widgets/Models/WidgetPart.cs create mode 100644 src/Orchard.Web/Modules/Orchard.Widgets/Models/WidgetPartRecord.cs diff --git a/src/Orchard.Tests/DisplayManagement/DefaultDisplayManagerTests.cs b/src/Orchard.Tests/DisplayManagement/DefaultDisplayManagerTests.cs index 3fda688ac..b1b02311c 100644 --- a/src/Orchard.Tests/DisplayManagement/DefaultDisplayManagerTests.cs +++ b/src/Orchard.Tests/DisplayManagement/DefaultDisplayManagerTests.cs @@ -41,6 +41,7 @@ namespace Orchard.Tests.DisplayManagement { public string Author { get; set; } public string HomePage { get; set; } public string Tags { get; set; } + public string Zones { get; set; } } diff --git a/src/Orchard.Web/Modules/Orchard.Setup/SetupMode.cs b/src/Orchard.Web/Modules/Orchard.Setup/SetupMode.cs index a01a216f9..362b3d0ce 100644 --- a/src/Orchard.Web/Modules/Orchard.Setup/SetupMode.cs +++ b/src/Orchard.Web/Modules/Orchard.Setup/SetupMode.cs @@ -115,6 +115,7 @@ namespace Orchard.Setup { public string Author { get; set; } public string HomePage { get; set; } public string Tags { get; set; } + public string Zones { get; set; } } private readonly SafeModeTheme _theme = new SafeModeTheme { diff --git a/src/Orchard.Web/Modules/Orchard.Themes/Models/Theme.cs b/src/Orchard.Web/Modules/Orchard.Themes/Models/Theme.cs index dcbf87c91..6b5b2f8f0 100644 --- a/src/Orchard.Web/Modules/Orchard.Themes/Models/Theme.cs +++ b/src/Orchard.Web/Modules/Orchard.Themes/Models/Theme.cs @@ -7,5 +7,6 @@ public string Author { get; set; } public string HomePage { get; set; } public string Tags { get; set; } + public string Zones { get; set; } } } \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Themes/Services/ThemeService.cs b/src/Orchard.Web/Modules/Orchard.Themes/Services/ThemeService.cs index 2733847f4..8bf2e49eb 100644 --- a/src/Orchard.Web/Modules/Orchard.Themes/Services/ThemeService.cs +++ b/src/Orchard.Web/Modules/Orchard.Themes/Services/ThemeService.cs @@ -72,7 +72,8 @@ namespace Orchard.Themes.Services { HomePage = descriptor.WebSite ?? String.Empty, ThemeName = descriptor.Name, Version = descriptor.Version ?? String.Empty, - Tags = descriptor.Tags ?? String.Empty + Tags = descriptor.Tags ?? String.Empty, + Zones = descriptor.Zones ?? String.Empty, }; } } @@ -90,7 +91,8 @@ namespace Orchard.Themes.Services { HomePage = descriptor.WebSite ?? String.Empty, ThemeName = descriptor.Name, Version = descriptor.Version ?? String.Empty, - Tags = descriptor.Tags ?? String.Empty + Tags = descriptor.Tags ?? String.Empty, + Zones = descriptor.Zones ?? String.Empty, }; if (!theme.Tags.Contains("hidden")) { themes.Add(theme); diff --git a/src/Orchard.Web/Modules/Orchard.Widgets/Models/Layer.cs b/src/Orchard.Web/Modules/Orchard.Widgets/Models/Layer.cs new file mode 100644 index 000000000..d60e5627f --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Widgets/Models/Layer.cs @@ -0,0 +1,6 @@ +using Orchard.ContentManagement; + +namespace Orchard.Widgets.Models { + public class Layer : ContentItem { + } +} \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerPart.cs b/src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerPart.cs new file mode 100644 index 000000000..22b743b5f --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerPart.cs @@ -0,0 +1,6 @@ +using Orchard.ContentManagement; + +namespace Orchard.Widgets.Models { + public class LayerPart : ContentPart { + } +} \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerPartRecord.cs b/src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerPartRecord.cs new file mode 100644 index 000000000..b444f0cdb --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerPartRecord.cs @@ -0,0 +1,9 @@ +using Orchard.ContentManagement.Records; + +namespace Orchard.Widgets.Models { + public class LayerPartRecord : ContentPartRecord { + public virtual string Name { get; set; } + public virtual string Description { get; set; } + public virtual string Rule { get; set; } + } +} \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerZone.cs b/src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerZone.cs new file mode 100644 index 000000000..84fb95a1b --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Widgets/Models/LayerZone.cs @@ -0,0 +1,7 @@ +using System.Collections.Generic; + +namespace Orchard.Widgets.Models { + public class LayerZone { + public IList WidgetParts = new List(); + } +} \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Widgets/Models/WidgetPart.cs b/src/Orchard.Web/Modules/Orchard.Widgets/Models/WidgetPart.cs new file mode 100644 index 000000000..1d5f0e75e --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Widgets/Models/WidgetPart.cs @@ -0,0 +1,6 @@ +using Orchard.ContentManagement; + +namespace Orchard.Widgets.Models { + public class WidgetPart : ContentPart { + } +} \ No newline at end of file diff --git a/src/Orchard.Web/Modules/Orchard.Widgets/Models/WidgetPartRecord.cs b/src/Orchard.Web/Modules/Orchard.Widgets/Models/WidgetPartRecord.cs new file mode 100644 index 000000000..1a1b29fa8 --- /dev/null +++ b/src/Orchard.Web/Modules/Orchard.Widgets/Models/WidgetPartRecord.cs @@ -0,0 +1,8 @@ +using Orchard.ContentManagement.Records; + +namespace Orchard.Widgets.Models { + public class WidgetPartRecord : ContentPartRecord { + public virtual string Title { get; set; } + public virtual string Position { get; set; } + } +} diff --git a/src/Orchard.Web/Modules/Orchard.Widgets/Orchard.Widgets.csproj b/src/Orchard.Web/Modules/Orchard.Widgets/Orchard.Widgets.csproj index ab7436d69..48087e641 100644 --- a/src/Orchard.Web/Modules/Orchard.Widgets/Orchard.Widgets.csproj +++ b/src/Orchard.Web/Modules/Orchard.Widgets/Orchard.Widgets.csproj @@ -59,6 +59,12 @@ + + + + + + @@ -69,6 +75,7 @@ + diff --git a/src/Orchard.Web/Themes/Classic/Theme.txt b/src/Orchard.Web/Themes/Classic/Theme.txt index f8f804413..c8d9a11c1 100644 --- a/src/Orchard.Web/Themes/Classic/Theme.txt +++ b/src/Orchard.Web/Themes/Classic/Theme.txt @@ -4,3 +4,4 @@ description: Theme using serif. version: 1.0 tags: Classic, Serif website: http://www.orchardproject.net +zones: Sidebar \ No newline at end of file diff --git a/src/Orchard/Environment/Extensions/Folders/ExtensionFolders.cs b/src/Orchard/Environment/Extensions/Folders/ExtensionFolders.cs index 5bf1b4a46..4fa5c4e20 100644 --- a/src/Orchard/Environment/Extensions/Folders/ExtensionFolders.cs +++ b/src/Orchard/Environment/Extensions/Folders/ExtensionFolders.cs @@ -123,6 +123,7 @@ namespace Orchard.Environment.Extensions.Folders { WebSite = GetValue(fields, "website"), Tags = GetValue(fields, "tags"), AntiForgery = GetValue(fields, "antiforgery"), + Zones = GetValue(fields, "zones"), }; extensionDescriptor.Features = GetFeaturesForExtension(GetMapping(fields, "features"), extensionDescriptor); return extensionDescriptor; diff --git a/src/Orchard/Environment/Extensions/Models/ExtensionDescriptor.cs b/src/Orchard/Environment/Extensions/Models/ExtensionDescriptor.cs index 99cd687c9..ec8a96347 100644 --- a/src/Orchard/Environment/Extensions/Models/ExtensionDescriptor.cs +++ b/src/Orchard/Environment/Extensions/Models/ExtensionDescriptor.cs @@ -26,6 +26,7 @@ namespace Orchard.Environment.Extensions.Models { public string WebSite { get; set; } public string Tags { get; set; } public string AntiForgery { get; set; } + public string Zones { get; set; } public IEnumerable Features { get; set; } } diff --git a/src/Orchard/Themes/ITheme.cs b/src/Orchard/Themes/ITheme.cs index fe56949e2..b144049d6 100644 --- a/src/Orchard/Themes/ITheme.cs +++ b/src/Orchard/Themes/ITheme.cs @@ -10,5 +10,6 @@ string Author { get; set; } string HomePage { get; set; } string Tags { get; set; } + string Zones { get; set; } } }