diff --git a/src/Umbraco.Core/CoreBootManager.cs b/src/Umbraco.Core/CoreBootManager.cs index a0455d820a..27118cc52a 100644 --- a/src/Umbraco.Core/CoreBootManager.cs +++ b/src/Umbraco.Core/CoreBootManager.cs @@ -461,7 +461,7 @@ namespace Umbraco.Core ApplicationCache.RuntimeCache, new ManifestParser(new DirectoryInfo(IOHelper.MapPath("~/App_Plugins")), ApplicationCache.RuntimeCache)); - PropertyEditorResolver.Current = new PropertyEditorResolver(ServiceProvider, ProfilingLogger.Logger, () => PluginManager.ResolvePropertyEditors(), builder); + PropertyEditorResolver.Current = new PropertyEditorResolver(ServiceProvider, ProfilingLogger.Logger, () => PluginManager.ResolvePropertyEditors(), builder, UmbracoConfig.For.UmbracoSettings().Content); ParameterEditorResolver.Current = new ParameterEditorResolver(ServiceProvider, ProfilingLogger.Logger, () => PluginManager.ResolveParameterEditors(), builder); //setup the validators resolver with our predefined validators diff --git a/src/Umbraco.Core/PropertyEditors/PropertyEditorResolver.cs b/src/Umbraco.Core/PropertyEditors/PropertyEditorResolver.cs index ba1df58879..4cd966301a 100644 --- a/src/Umbraco.Core/PropertyEditors/PropertyEditorResolver.cs +++ b/src/Umbraco.Core/PropertyEditors/PropertyEditorResolver.cs @@ -3,6 +3,7 @@ using System.Collections.Generic; using System.IO; using System.Linq; using Umbraco.Core.Cache; +using Umbraco.Core.Configuration.UmbracoSettings; using Umbraco.Core.Logging; using Umbraco.Core.IO; using Umbraco.Core.Manifest; @@ -39,10 +40,11 @@ namespace Umbraco.Core.PropertyEditors _unioned = new Lazy>(() => Values.Union(builder.PropertyEditors).ToList()); } - internal PropertyEditorResolver(IServiceProvider serviceProvider, ILogger logger, Func> typeListProducerList, ManifestBuilder builder) + internal PropertyEditorResolver(IServiceProvider serviceProvider, ILogger logger, Func> typeListProducerList, ManifestBuilder builder, IContentSection contentSection) : base(serviceProvider, logger, typeListProducerList, ObjectLifetimeScope.Application) { - _unioned = new Lazy>(() => SanitizeNames(Values.Union(builder.PropertyEditors).ToList())); + _unioned = new Lazy>(() => SanitizeNames(Values.Union(builder.PropertyEditors) + .Where(x=>x.IsDeprecated == false || contentSection != null && contentSection.ShowDeprecatedPropertyEditors).ToList())); } private static List SanitizeNames(List editors) @@ -74,4 +76,4 @@ namespace Umbraco.Core.PropertyEditors return PropertyEditors.SingleOrDefault(x => x.Alias == alias); } } -} \ No newline at end of file +}