Skip to content

Commit

Permalink
pkp#6528 Allow Authors to delete incomplete submissions
Browse files Browse the repository at this point in the history
  • Loading branch information
taslangraham committed Dec 13, 2024
1 parent 3786512 commit 0292e4e
Showing 1 changed file with 14 additions and 5 deletions.
19 changes: 14 additions & 5 deletions api/v1/_submissions/PKPBackendSubmissionsController.php
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,7 @@ public function getGroupRoutes(): void
->middleware([
self::roleAuthorizer([
Role::ROLE_ID_SITE_ADMIN,
Role::ROLE_ID_AUTHOR,
]),
]);

Expand Down Expand Up @@ -466,11 +467,20 @@ public function bulkDeleteIncompleteSubmissions(Request $illuminateRequest): Jso
$submissionIds[] = $id;
}

$submissions = $this->getSubmissionCollector($illuminateRequest->query())
$collector = $this->getSubmissionCollector($illuminateRequest->query())
->filterBySubmissionIds($submissionIds)
->filterByIncomplete(true)
->getMany()
->all();
->filterByIncomplete(true);

$request = Application::get()->getRequest();
$context = $this->getRequest()->getContext();
$user = $request->getUser();

if ($user->hasRole([Role::ROLE_ID_AUTHOR], $context->getId())) {
$userId = $request->getUser()->getId();
$collector->assignedTo([$userId]);
}

$submissions = $collector->getMany()->all();

$submissionIdsFound = array_map(fn (Submission $submission) => $submission->getData('id'), $submissions);

Expand All @@ -480,7 +490,6 @@ public function bulkDeleteIncompleteSubmissions(Request $illuminateRequest): Jso
], Response::HTTP_NOT_FOUND);
}

$context = $this->getRequest()->getContext();

foreach ($submissions as $submission) {
if ($context->getId() != $submission->getData('contextId')) {
Expand Down

0 comments on commit 0292e4e

Please sign in to comment.