diff --git a/Admin/Routes/Web/Api.php b/Admin/Routes/Web/Api.php index d9cc200..a3af8db 100644 --- a/Admin/Routes/Web/Api.php +++ b/Admin/Routes/Web/Api.php @@ -1,24 +1,42 @@ [ [ 'dest' => '\Modules\Media\Controller:apiCollectionCreate', 'verb' => RouteVerb::SET, + 'permission' => [ + 'module' => Controller::MODULE_NAME, + 'type' => PermissionType::CREATE, + 'state' => PermissionState::COLLECTION, + ], ], ], '^.*/api/media$' => [ [ 'dest' => '\Modules\Media\Controller:apiMediaUpload', 'verb' => RouteVerb::SET, + 'permission' => [ + 'module' => Controller::MODULE_NAME, + 'type' => PermissionType::CREATE, + 'state' => PermissionState::MEDIA, + ], ], ], '^.*/api/media/create.*$' => [ [ 'dest' => '\Modules\Media\Controller:apiMediaCreate', 'verb' => RouteVerb::SET, + 'permission' => [ + 'module' => Controller::MODULE_NAME, + 'type' => PermissionType::CREATE, + 'state' => PermissionState::MEDIA, + ], ], ], ]; diff --git a/Admin/Routes/Web/Backend.php b/Admin/Routes/Web/Backend.php index 8931213..10355bb 100644 --- a/Admin/Routes/Web/Backend.php +++ b/Admin/Routes/Web/Backend.php @@ -1,28 +1,51 @@ [ [ 'dest' => '\Modules\Media\Controller:viewMediaList', 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => Controller::MODULE_NAME, + 'type' => PermissionType::READ, + 'state' => PermissionState::MEDIA, + ], ], ], '^.*/backend/media/create.*$' => [ [ 'dest' => '\Modules\Media\Controller:setUpFileUploader', 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => Controller::MODULE_NAME, + 'type' => PermissionType::CREATE, + 'state' => PermissionState::MEDIA, + ], ], [ 'dest' => '\Modules\Media\Controller:viewMediaCreate', 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => Controller::MODULE_NAME, + 'type' => PermissionType::CREATE, + 'state' => PermissionState::MEDIA, + ], ], ], '^.*/backend/media/single.*$' => [ [ 'dest' => '\Modules\Media\Controller:viewMediaSingle', 'verb' => RouteVerb::GET, + 'permission' => [ + 'module' => Controller::MODULE_NAME, + 'type' => PermissionType::READ, + 'state' => PermissionState::MEDIA, + ], ], ], ]; diff --git a/Models/PermissionState.php b/Models/PermissionState.php new file mode 100644 index 0000000..3e4b653 --- /dev/null +++ b/Models/PermissionState.php @@ -0,0 +1,31 @@ +