From c2272e48aa06684820de8860485e420205259624 Mon Sep 17 00:00:00 2001 From: Sebastian Stehle Date: Wed, 26 Jun 2019 20:24:54 +0200 Subject: [PATCH] Read workflows. --- src/Squidex.Domain.Apps.Core.Model/Apps/Role.cs | 3 ++- src/Squidex/Areas/Api/Controllers/Apps/Models/AppDto.cs | 5 +++++ src/Squidex/app/shared/services/apps.service.ts | 3 ++- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/Squidex.Domain.Apps.Core.Model/Apps/Role.cs b/src/Squidex.Domain.Apps.Core.Model/Apps/Role.cs index 7f5bd195e..22f6f1b73 100644 --- a/src/Squidex.Domain.Apps.Core.Model/Apps/Role.cs +++ b/src/Squidex.Domain.Apps.Core.Model/Apps/Role.cs @@ -71,7 +71,8 @@ namespace Squidex.Domain.Apps.Core.Apps return new Role(Editor, P.ForApp(P.AppAssets, app), P.ForApp(P.AppCommon, app), - P.ForApp(P.AppContents, app)); + P.ForApp(P.AppContents, app), + P.ForApp(P.AppWorkflowsRead, app)); } public static Role CreateReader(string app) diff --git a/src/Squidex/Areas/Api/Controllers/Apps/Models/AppDto.cs b/src/Squidex/Areas/Api/Controllers/Apps/Models/AppDto.cs index 6d706dc30..46e37a1ea 100644 --- a/src/Squidex/Areas/Api/Controllers/Apps/Models/AppDto.cs +++ b/src/Squidex/Areas/Api/Controllers/Apps/Models/AppDto.cs @@ -177,6 +177,11 @@ namespace Squidex.Areas.Api.Controllers.Apps.Models AddGetLink("schemas", controller.Url(x => nameof(x.GetSchemas), values)); } + if (controller.HasPermission(AllPermissions.AppWorkflowsRead, Name, permissions: permissions)) + { + AddGetLink("workflows", controller.Url(x => nameof(x.GetWorkflow), values)); + } + if (controller.HasPermission(AllPermissions.AppSchemasCreate, Name, permissions: permissions)) { AddPostLink("schemas/create", controller.Url(x => nameof(x.PostSchema), values)); diff --git a/src/Squidex/app/shared/services/apps.service.ts b/src/Squidex/app/shared/services/apps.service.ts index 090a23093..ea2c049b0 100644 --- a/src/Squidex/app/shared/services/apps.service.ts +++ b/src/Squidex/app/shared/services/apps.service.ts @@ -35,7 +35,7 @@ export class AppDto { public readonly canReadRoles: boolean; public readonly canReadRules: boolean; public readonly canReadSchemas: boolean; - public readonly canReadWorkflows: boolean = true; + public readonly canReadWorkflows: boolean; public readonly canUploadAssets: boolean; constructor(links: ResourceLinks, @@ -63,6 +63,7 @@ export class AppDto { this.canReadRoles = hasAnyLink(links, 'roles'); this.canReadRules = hasAnyLink(links, 'rules'); this.canReadSchemas = hasAnyLink(links, 'schemas'); + this.canReadWorkflows = hasAnyLink(links, 'workflows'); this.canUploadAssets = hasAnyLink(links, 'assets/create'); } }