diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/LayoutPartDriver.cs b/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/LayoutPartDriver.cs index e5c512456..6061abe34 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/LayoutPartDriver.cs +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Drivers/LayoutPartDriver.cs @@ -92,7 +92,15 @@ namespace Orchard.Layouts.Drivers { return ContentShape("Parts_Layout_Edit", () => { if (part.Id == 0) { var settings = part.TypePartDefinition.Settings.GetModel(); - part.LayoutData = settings.DefaultLayoutData; + + // If the default layout setting is left empty, use the one from the service + if (String.IsNullOrWhiteSpace(settings.DefaultLayoutData)) { + var defaultData = _serializer.Serialize(_layoutManager.CreateDefaultLayout()); + part.LayoutData = defaultData; + } + else { + part.LayoutData = settings.DefaultLayoutData; + } } var viewModel = new LayoutPartViewModel { diff --git a/src/Orchard.Web/Modules/Orchard.Layouts/Settings/LayoutSettingsHooks.cs b/src/Orchard.Web/Modules/Orchard.Layouts/Settings/LayoutSettingsHooks.cs index fb7804c2d..c39e4fe42 100644 --- a/src/Orchard.Web/Modules/Orchard.Layouts/Settings/LayoutSettingsHooks.cs +++ b/src/Orchard.Web/Modules/Orchard.Layouts/Settings/LayoutSettingsHooks.cs @@ -22,12 +22,7 @@ namespace Orchard.Layouts.Settings { yield break; var model = definition.Settings.GetModel(); - - if (String.IsNullOrWhiteSpace(model.DefaultLayoutData)) { - var defaultData = _serializer.Serialize(_layoutManager.CreateDefaultLayout()); - model.DefaultLayoutData = defaultData; - } - + yield return DefinitionTemplate(model); }