diff --git a/src/Orchard.Web/Core/Contents/Extensions/MetaDataExtensions.cs b/src/Orchard.Web/Core/Contents/Extensions/MetaDataExtensions.cs
index bb557db07..c30209969 100644
--- a/src/Orchard.Web/Core/Contents/Extensions/MetaDataExtensions.cs
+++ b/src/Orchard.Web/Core/Contents/Extensions/MetaDataExtensions.cs
@@ -6,6 +6,9 @@ namespace Orchard.Core.Contents.Extensions {
public static ContentTypeDefinitionBuilder Creatable(this ContentTypeDefinitionBuilder builder, bool creatable = true) {
return builder.WithSetting("ContentTypeSettings.Creatable", creatable.ToString());
}
+ public static ContentTypeDefinitionBuilder Draftable(this ContentTypeDefinitionBuilder builder, bool draftable = true) {
+ return builder.WithSetting("ContentTypeSettings.Draftable", draftable.ToString());
+ }
public static ContentPartDefinitionBuilder Attachable(this ContentPartDefinitionBuilder builder, bool attachable = true) {
return builder.WithSetting("ContentPartSettings.Attachable", attachable.ToString());
}
diff --git a/src/Orchard.Web/Core/Contents/Settings/ContentTypeSettings.cs b/src/Orchard.Web/Core/Contents/Settings/ContentTypeSettings.cs
index e0d35b2e9..ed495eab7 100644
--- a/src/Orchard.Web/Core/Contents/Settings/ContentTypeSettings.cs
+++ b/src/Orchard.Web/Core/Contents/Settings/ContentTypeSettings.cs
@@ -1,8 +1,12 @@
namespace Orchard.Core.Contents.Settings {
public class ContentTypeSettings {
///
- /// This setting is used to display a Content Type in Content Management menu like
+ /// Used to determine if an instance of this content type can be created through the UI
///
public bool Creatable { get; set; }
+ ///
+ /// Used to determine if this content type supports draft versions
+ ///
+ public bool Draftable { get; set; }
}
}
\ No newline at end of file
diff --git a/src/Orchard.Web/Modules/Orchard.ContentTypes/Services/ContentDefinitionService.cs b/src/Orchard.Web/Modules/Orchard.ContentTypes/Services/ContentDefinitionService.cs
index d81c09df1..9c3d936af 100644
--- a/src/Orchard.Web/Modules/Orchard.ContentTypes/Services/ContentDefinitionService.cs
+++ b/src/Orchard.Web/Modules/Orchard.ContentTypes/Services/ContentDefinitionService.cs
@@ -73,7 +73,8 @@ namespace Orchard.ContentTypes.Services {
var contentTypeDefinition = new ContentTypeDefinition(name, typeViewModel.DisplayName);
_contentDefinitionManager.StoreTypeDefinition(contentTypeDefinition);
- _contentDefinitionManager.AlterTypeDefinition(name, cfg => cfg.Creatable());
+ _contentDefinitionManager.AlterTypeDefinition(name,
+ cfg => cfg.Creatable().Draftable());
return new EditTypeViewModel(contentTypeDefinition);
}