diff --git a/zero.Web.UI/App/components/overlays/dropdown-button.vue b/zero.Web.UI/App/components/overlays/dropdown-button.vue
index 6a7ca358..d04c45cb 100644
--- a/zero.Web.UI/App/components/overlays/dropdown-button.vue
+++ b/zero.Web.UI/App/components/overlays/dropdown-button.vue
@@ -171,7 +171,8 @@
cursor: default;
pointer-events: none;
- .ui-dropdown-list-item-icon
+ .ui-dropdown-list-item-icon,
+ .ui-dropdown-button-icon
{
color: var(--color-fg-dim);
}
diff --git a/zero.Web.UI/App/pages/pages/page.vue b/zero.Web.UI/App/pages/pages/page.vue
index b4a094d1..bdad70dd 100644
--- a/zero.Web.UI/App/pages/pages/page.vue
+++ b/zero.Web.UI/App/pages/pages/page.vue
@@ -3,11 +3,9 @@
-
-
-
-
-
+
+
+
diff --git a/zero.Web/Controllers/PagesController.cs b/zero.Web/Controllers/PagesController.cs
index 42516adb..69a38b7c 100644
--- a/zero.Web/Controllers/PagesController.cs
+++ b/zero.Web/Controllers/PagesController.cs
@@ -1,4 +1,5 @@
using Microsoft.AspNetCore.Mvc;
+using System;
using System.Threading.Tasks;
using zero.Core.Api;
using zero.Core.Entities;
@@ -11,13 +12,11 @@ namespace zero.Web.Controllers
{
IPagesApi Api;
IRevisionsApi RevisionsApi;
- IPage Blueprint;
- public PagesController(IPagesApi api, IRevisionsApi revisionsApi, IPage blueprint)
+ public PagesController(IPagesApi api, IRevisionsApi revisionsApi)
{
Api = api;
RevisionsApi = revisionsApi;
- Blueprint = blueprint;
}
@@ -40,12 +39,13 @@ namespace zero.Web.Controllers
public IActionResult GetEmpty(string type, string parent = null)
{
- // TODO this will return an instance of Page, but the subclass with type=$type is needed
- IPage entity = Blueprint.Clone();
- entity.PageTypeAlias = type;
- entity.ParentId = parent;
+ PageType pageType = Api.GetPageType(type);
+ IPage model = Activator.CreateInstance(pageType.ContentType) as IPage;
- return Edit(entity);
+ model.PageTypeAlias = type;
+ model.ParentId = parent;
+
+ return Edit(model);
}
public async Task GetRevisions([FromQuery] string id, [FromQuery] int page = 1) => Json(await RevisionsApi.GetPaged(id, page));