Merge remote-tracking branch 'origin/v8/feature/mb-embed' into v8/feature/mb-embed

This commit is contained in:
Bjarke Berg
2019-10-31 12:32:51 +01:00
11 changed files with 35 additions and 54 deletions

View File

@@ -42,7 +42,6 @@
<file src="$BuildTmp$\WebApp\Global.asax" target="Content\Global.asax" />
<file src="$BuildTmp$\WebApp\config\BackOfficeTours\**" target="Content\Config\BackOfficeTours" />
<file src="$BuildTmp$\WebApp\Media\Web.config" target="Content\Media\Web.config" />
<file src="$BuildTmp$\WebApp\App_Plugins\UmbModelsBuilder\**" target="Content\App_Plugins\UmbModelsBuilder" />
<!-- these files are copied by install.ps1 -->
<file src="$BuildTmp$\WebApp\Web.config" target="UmbracoFiles\Web.config" />

View File

@@ -1,17 +0,0 @@
using System;
using System.Collections.Generic;
using Umbraco.Core.Manifest;
namespace Umbraco.ModelsBuilder.Embedded.Compose
{
/// <summary>
/// Removes the built in embedded models builder manifest from being loaded
/// </summary>
internal class DisableModelsBuilderManifestFilter : IManifestFilter
{
public void Filter(List<PackageManifest> manifests)
{
manifests.RemoveAll(x => x.Source.EndsWith("App_Plugins\\UmbModelsBuilder\\package.manifest", StringComparison.InvariantCultureIgnoreCase));
}
}
}

View File

@@ -6,6 +6,7 @@ using Umbraco.Core.Composing;
using Umbraco.Core.Models.PublishedContent;
using Umbraco.ModelsBuilder.Embedded.Building;
using Umbraco.ModelsBuilder.Embedded.Configuration;
using Umbraco.Web;
using Umbraco.Web.PublishedCache.NuCache;
using Umbraco.Web.Features;
@@ -58,9 +59,9 @@ namespace Umbraco.ModelsBuilder.Embedded.Compose
private void ComposeForLegacyModelsBuilder(Composition composition)
{
composition.Logger.Info<ModelsBuilderComposer>("ModelsBuilder.Embedded is disabled, the legacy ModelsBuilder was detected.");
composition.Logger.Info<ModelsBuilderComposer>("ModelsBuilder.Embedded is disabled, the external ModelsBuilder was detected.");
composition.Components().Append<DisabledModelsBuilderComponent>();
composition.ManifestFilters().Append<DisableModelsBuilderManifestFilter>();
composition.Dashboards().Remove<ModelsBuilderDashboard>();
}
private void ComposeForDefaultModelsFactory(Composition composition)

View File

@@ -0,0 +1,19 @@
using System;
using Umbraco.Core.Composing;
using Umbraco.Core.Dashboards;
namespace Umbraco.ModelsBuilder.Embedded
{
[Weight(40)]
public class ModelsBuilderDashboard : IDashboard
{
public string Alias => "settingsModelsBuilder";
public string[] Sections => new [] { "settings" };
public string View => "views/dashboard/settings/modelsbuildermanagement.html";
public IAccessRule[] AccessRules => Array.Empty<IAccessRule>();
}
}

View File

@@ -59,7 +59,6 @@
<Compile Include="Building\TextHeaderWriter.cs" />
<Compile Include="Building\TypeModel.cs" />
<Compile Include="Compose\DisabledModelsBuilderComponent.cs" />
<Compile Include="Compose\DisableModelsBuilderManifestFilter.cs" />
<Compile Include="ConfigsExtensions.cs" />
<Compile Include="Configuration\IModelsBuilderConfig.cs" />
<Compile Include="Configuration\ModelsBuilderConfig.cs" />
@@ -68,6 +67,7 @@
<Compile Include="BackOffice\DashboardReport.cs" />
<Compile Include="ImplementPropertyTypeAttribute.cs" />
<Compile Include="ModelsBuilderAssemblyAttribute.cs" />
<Compile Include="ModelsBuilderDashboard.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="PublishedElementExtensions.cs" />
<Compile Include="ReferencedAssemblies.cs" />

View File

@@ -1,4 +1,4 @@
function modelsBuilderResource($q, $http, umbRequestHelper) {
function modelsBuilderManagementResource($q, $http, umbRequestHelper) {
return {
getModelsOutOfDateStatus: function () {
@@ -20,4 +20,4 @@
}
};
}
angular.module("umbraco.resources").factory("modelsBuilderResource", modelsBuilderResource);
angular.module("umbraco.resources").factory("modelsBuilderManagementResource", modelsBuilderManagementResource);

View File

@@ -27,7 +27,7 @@ function contentTypeHelper(contentTypeResource, dataTypeResource, $filter, $inje
generateModels: function () {
var deferred = $q.defer();
var modelsResource = $injector.has("modelsBuilderResource") ? $injector.get("modelsBuilderResource") : null;
var modelsResource = $injector.has("modelsBuilderManagementResource") ? $injector.get("modelsBuilderManagementResource") : null;
var modelsBuilderEnabled = Umbraco.Sys.ServerVariables.umbracoPlugins.modelsBuilder.enabled;
if (modelsBuilderEnabled && modelsResource) {
modelsResource.buildModels().then(function(result) {
@@ -48,7 +48,7 @@ function contentTypeHelper(contentTypeResource, dataTypeResource, $filter, $inje
checkModelsBuilderStatus: function () {
var deferred = $q.defer();
var modelsResource = $injector.has("modelsBuilderResource") ? $injector.get("modelsBuilderResource") : null;
var modelsResource = $injector.has("modelsBuilderManagementResource") ? $injector.get("modelsBuilderManagementResource") : null;
var modelsBuilderEnabled = (Umbraco && Umbraco.Sys && Umbraco.Sys.ServerVariables && Umbraco.Sys.ServerVariables.umbracoPlugins && Umbraco.Sys.ServerVariables.umbracoPlugins.modelsBuilder && Umbraco.Sys.ServerVariables.umbracoPlugins.modelsBuilder.enabled === true);
if (modelsBuilderEnabled && modelsResource) {

View File

@@ -1,4 +1,4 @@
function modelsBuilderController($scope, $http, umbRequestHelper, modelsBuilderResource) {
function modelsBuilderManagementController($scope, $http, umbRequestHelper, modelsBuilderManagementResource) {
var vm = this;
@@ -9,8 +9,8 @@
function generate() {
vm.generating = true;
umbRequestHelper.resourcePromise(
$http.post(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "BuildModels")),
'Failed to generate.')
$http.post(umbRequestHelper.getApiUrl("modelsBuilderBaseUrl", "BuildModels")),
'Failed to generate.')
.then(function (result) {
vm.generating = false;
vm.dashboard = result;
@@ -19,7 +19,7 @@
function reload() {
vm.loading = true;
modelsBuilderResource.getDashboard().then(function (result) {
modelsBuilderManagementResource.getDashboard().then(function (result) {
vm.dashboard = result;
vm.loading = false;
});
@@ -27,7 +27,7 @@
function init() {
vm.loading = true;
modelsBuilderResource.getDashboard().then(function (result) {
modelsBuilderManagementResource.getDashboard().then(function (result) {
vm.dashboard = result;
vm.loading = false;
});
@@ -35,4 +35,4 @@
init();
}
angular.module("umbraco").controller("Umbraco.Dashboard.ModelsBuilderController", modelsBuilderController);
angular.module("umbraco").controller("Umbraco.Dashboard.ModelsBuilderManagementController", modelsBuilderManagementController);

View File

@@ -1,4 +1,4 @@
<div id="modelsBuilder" ng-controller="Umbraco.Dashboard.ModelsBuilderController as vm">
<div id="modelsBuilder" ng-controller="Umbraco.Dashboard.ModelsBuilderManagementController as vm">
<umb-box>
<umb-box-content>

View File

@@ -1,18 +0,0 @@
{
// array of files we want to inject into the application
"javascript": [
"~/App_Plugins/ModelsBuilder/modelsbuilder.controller.js",
"~/App_Plugins/ModelsBuilder/modelsbuilder.resource.js"
],
// models builder dashboard
"dashboards": [
{
"alias": "settingsModelsBuilder",
"name": "Models Builder",
"view": "/App_Plugins/ModelsBuilder/modelsbuilder.html",
"sections": [ "settings" ],
"weight": 40
}
]
}

View File

@@ -80,6 +80,7 @@
</ItemGroup>
<ItemGroup>
<Folder Include="App_Data\" />
<Folder Include="App_Plugins" />
<Folder Include="Views\MacroPartials\" />
</ItemGroup>
<ItemGroup>
@@ -144,9 +145,6 @@
<DesignTimeSharedInput>True</DesignTimeSharedInput>
<DependentUpon>Settings.settings</DependentUpon>
</Compile>
<Content Include="App_Plugins\UmbModelsBuilder\modelsbuilder.controller.js" />
<Content Include="App_Plugins\UmbModelsBuilder\modelsbuilder.html" />
<Content Include="App_Plugins\UmbModelsBuilder\modelsbuilder.resource.js" />
<Content Include="Config\grid.editors.config.js" />
<Content Include="Config\Lang\cs-CZ.user.xml" />
<Content Include="Config\Lang\da-DK.user.xml" />
@@ -172,7 +170,6 @@
<Content Include="Umbraco\Config\Lang\zh_tw.xml" />
<Content Include="Config\Splashes\noNodes.aspx" />
<Content Include="Umbraco\Install\Views\Web.config" />
<Content Include="App_Plugins\UmbModelsBuilder\package.manifest" />
<None Include="Config\ClientDependency.Release.config">
<DependentUpon>ClientDependency.config</DependentUpon>
<SubType>Designer</SubType>