From 6c218c3ab5ca6258d4ae3db3b7fca0e64fa8e16d Mon Sep 17 00:00:00 2001 From: Per Ploug Date: Mon, 18 May 2015 20:08:00 +0200 Subject: [PATCH] datatype controller methods for ct editor --- src/Umbraco.Web.UI/Umbraco.Web.UI.csproj | 4 +- src/Umbraco.Web.UI/config/trees.config | 5 ++- src/Umbraco.Web/Editors/DataTypeController.cs | 39 +++++++++++++++++++ 3 files changed, 44 insertions(+), 4 deletions(-) diff --git a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj index cbc564b796..639f47ecb3 100644 --- a/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj +++ b/src/Umbraco.Web.UI/Umbraco.Web.UI.csproj @@ -39,7 +39,7 @@ 4.0 v4.5 - true + false @@ -2575,7 +2575,7 @@ xcopy "$(ProjectDir)"..\packages\SqlServerCE.4.0.0.0\x86\*.* "$(TargetDir)x86\" True 7300 / - http://localhost:7300 + http://umbraco7.local False False diff --git a/src/Umbraco.Web.UI/config/trees.config b/src/Umbraco.Web.UI/config/trees.config index 8a85f26788..eec71c2706 100644 --- a/src/Umbraco.Web.UI/config/trees.config +++ b/src/Umbraco.Web.UI/config/trees.config @@ -9,7 +9,7 @@ - + @@ -37,5 +37,6 @@ + iconClosed="icon-folder" iconOpen="icon-folder" sortOrder="10" />--> + \ No newline at end of file diff --git a/src/Umbraco.Web/Editors/DataTypeController.cs b/src/Umbraco.Web/Editors/DataTypeController.cs index fed52aaa55..1a6d1e0e7a 100644 --- a/src/Umbraco.Web/Editors/DataTypeController.cs +++ b/src/Umbraco.Web/Editors/DataTypeController.cs @@ -75,6 +75,45 @@ namespace Umbraco.Web.Editors .Select(x => Mapper.Map(x)).Where(x => x.IsSystemDataType == false); } + /// + /// Gets the content json for all data types added by the user + /// + /// + /// + /// + /// Permission is granted to this method if the user has access to any of these trees: DataTypes, Content or Media + /// + [UmbracoTreeAuthorize(Constants.Trees.DataTypes, Constants.Trees.Content, Constants.Trees.Media)] + public IEnumerable GetAllUserConfigured() + { + //find all user configured for re-reference + return Services.DataTypeService + .GetAllDataTypeDefinitions() + .Where(x => x.Id > 1045) + .Select(x => Mapper.Map(x)).Where(x => x.IsSystemDataType == false); + + //find all custom editors added by non-core manifests + + //find the rest + } + + /// + /// Gets the content json for all user added property editors + /// + /// + /// + /// + /// Permission is granted to this method if the user has access to any of these trees: DataTypes, Content or Media + /// + [UmbracoTreeAuthorize(Constants.Trees.DataTypes, Constants.Trees.Content, Constants.Trees.Media)] + public IEnumerable GetAllUserPropertyEditors() + { + return PropertyEditorResolver.Current.PropertyEditors + .OrderBy(x => x.Name) + .Where(x => x.ValueEditor.View.IndexOf("app_plugins", StringComparison.InvariantCultureIgnoreCase) >= 0) + .Select(Mapper.Map); + } + /// /// Deletes a data type wth a given ID ///