Define manage automation capability in automation code

[MAILPOET-4465]
This commit is contained in:
Jan Jakes
2022-07-05 12:59:33 +02:00
committed by Veljko V
parent a073f05ffe
commit 7df8342a18
3 changed files with 6 additions and 3 deletions

View File

@@ -2,7 +2,7 @@
namespace MailPoet\Automation\Engine\API; namespace MailPoet\Automation\Engine\API;
use MailPoet\Config\AccessControl; use MailPoet\Automation\Engine\Engine;
use MailPoet\Validator\Schema; use MailPoet\Validator\Schema;
use function current_user_can; use function current_user_can;
@@ -11,7 +11,7 @@ abstract class Endpoint {
abstract public function handle(Request $request): Response; abstract public function handle(Request $request): Response;
public function checkPermissions(): bool { public function checkPermissions(): bool {
return current_user_can(AccessControl::PERMISSION_MANAGE_AUTOMATIONS); return current_user_can(Engine::CAPABILITY_MANAGE_AUTOMATIONS);
} }
/** @return array<string, Schema> */ /** @return array<string, Schema> */

View File

@@ -14,6 +14,8 @@ use MailPoet\Automation\Engine\Storage\WorkflowStorage;
use MailPoet\Automation\Integrations\Core\CoreIntegration; use MailPoet\Automation\Integrations\Core\CoreIntegration;
class Engine { class Engine {
const CAPABILITY_MANAGE_AUTOMATIONS = 'mailpoet_manage_automations';
/** @var API */ /** @var API */
private $api; private $api;

View File

@@ -2,6 +2,7 @@
namespace MailPoet\Config; namespace MailPoet\Config;
use MailPoet\Automation\Engine\Engine;
use MailPoet\WP\Functions as WPFunctions; use MailPoet\WP\Functions as WPFunctions;
class AccessControl { class AccessControl {
@@ -12,7 +13,7 @@ class AccessControl {
const PERMISSION_MANAGE_SUBSCRIBERS = 'mailpoet_manage_subscribers'; const PERMISSION_MANAGE_SUBSCRIBERS = 'mailpoet_manage_subscribers';
const PERMISSION_MANAGE_FORMS = 'mailpoet_manage_forms'; const PERMISSION_MANAGE_FORMS = 'mailpoet_manage_forms';
const PERMISSION_MANAGE_SEGMENTS = 'mailpoet_manage_segments'; const PERMISSION_MANAGE_SEGMENTS = 'mailpoet_manage_segments';
const PERMISSION_MANAGE_AUTOMATIONS = 'mailpoet_manage_automations'; const PERMISSION_MANAGE_AUTOMATIONS = Engine::CAPABILITY_MANAGE_AUTOMATIONS;
const NO_ACCESS_RESTRICTION = 'mailpoet_no_access_restriction'; const NO_ACCESS_RESTRICTION = 'mailpoet_no_access_restriction';
const ALL_ROLES_ACCESS = 'mailpoet_all_roles_access'; const ALL_ROLES_ACCESS = 'mailpoet_all_roles_access';