Skip to content

Commit

Permalink
[Workspace] fixes deletion
Browse files Browse the repository at this point in the history
  • Loading branch information
Elorfin committed Jun 2, 2023
1 parent b635323 commit 40f5d96
Show file tree
Hide file tree
Showing 4 changed files with 0 additions and 55 deletions.
46 changes: 0 additions & 46 deletions src/main/core/Controller/APINew/Workspace/WorkspaceController.php
Original file line number Diff line number Diff line change
Expand Up @@ -319,52 +319,6 @@ public function exportAction(Workspace $workspace): BinaryFileResponse
return $response;
}

/**
* @ApiDoc(
* description="Remove workspaces.",
* queryString={
* {"name": "ids", "type": "array", "description": "the list of workspace uuids."}
* }
* )
*/
public function deleteBulkAction(Request $request, $class): JsonResponse
{
/** @var Workspace[] $workspaces */
$workspaces = parent::decodeIdsString($request, Workspace::class);
$errors = [];

foreach ($workspaces as $workspace) {
$notDeletableResources = $this->resourceManager->getNotDeletableResourcesByWorkspace($workspace);

if (count($notDeletableResources)) {
$errors[$workspace->getUuid()] = $this->translator->trans(
'workspace_not_deletable_resources_error_message',
['%workspaceName%' => $workspace->getName()],
'platform'
);
}
}

if (empty($errors)) {
return parent::deleteBulkAction($request, Workspace::class);
}

$validIds = [];
$ids = $request->query->get('ids');

foreach ($ids as $id) {
if (!isset($errors[$id])) {
$validIds[] = $id;
}
}
if (count($validIds) > 0) {
$request->query->set('ids', $validIds);
parent::deleteBulkAction($request, Workspace::class);
}

return new JsonResponse(['errors' => $errors], 422);
}

/**
* @ApiDoc(
* description="Archive workspaces.",
Expand Down
5 changes: 0 additions & 5 deletions src/main/core/Manager/ResourceManager.php
Original file line number Diff line number Diff line change
Expand Up @@ -358,11 +358,6 @@ public function getResourceFromNode(ResourceNode $node): ?AbstractResource
return null;
}

public function getNotDeletableResourcesByWorkspace(Workspace $workspace)
{
return $this->resourceNodeRepo->findBy(['workspace' => $workspace, 'deletable' => false]);
}

public function addView(ResourceNode $node)
{
$node->addView();
Expand Down
2 changes: 0 additions & 2 deletions src/main/core/Resources/translations/platform.en.json
Original file line number Diff line number Diff line change
Expand Up @@ -427,7 +427,6 @@
"not_allowed_message": "You are not allowed to perform this action.",
"not_attempted": "Not attempted",
"not_blank_expected": "This value should not be blank",
"not_deletable": "Not deletable",
"notation": "Notation",
"note": "Note",
"notification": "Notification",
Expand Down Expand Up @@ -682,7 +681,6 @@
"workspace": "Workspace",
"workspace_list": "Workspace list",
"workspace_model": "Workspace model",
"workspace_not_deletable_resources_error_message": "Workspace \"%workspaceName%\" could not be deleted because it contains not deletable resources.",
"workspace_queue_cancel_confirm_title": "Cancel registration request",
"workspace_registration_confirm_title": "Are you sure you want to register to this workspace?",
"workspace_unregistration_confirm_title": "Are you sure you want to unregister from this workspace?",
Expand Down
2 changes: 0 additions & 2 deletions src/main/core/Resources/translations/platform.fr.json
Original file line number Diff line number Diff line change
Expand Up @@ -440,7 +440,6 @@
"not_allowed_message": "Vous n'êtes pas autorisé(e) à effectuer cette action.",
"not_attempted": "Pas tenté",
"not_blank_expected": "Cette valeur ne peut pas être vide.",
"not_deletable": "Non supprimable",
"notation": "Notation",
"note": "Note",
"notification": "Notification",
Expand Down Expand Up @@ -699,7 +698,6 @@
"workspace": "Espace d'activités",
"workspace_list": "Liste des espaces d'activités",
"workspace_model": "Modèle d'espace d'activités",
"workspace_not_deletable_resources_error_message": "L'espace d'activités \"%workspaceName%\" n'a pas pu être supprimé parce qu'il contient des ressources non supprimables.",
"workspace_queue_cancel_confirm_title": "Annuler la demande d'inscription",
"workspace_registration_confirm_title": "Voulez-vous vous inscrire à cet espace d'activités ?",
"workspace_unregistration_confirm_title": "Voulez-vous vous désinscrire de cet espace d'activités ?",
Expand Down

0 comments on commit 40f5d96

Please sign in to comment.