From b76c717e43c6b4c9b74090417110e4831b57d3f4 Mon Sep 17 00:00:00 2001 From: leevi-identio Date: Wed, 12 Nov 2025 14:34:24 +0200 Subject: [PATCH 1/2] ASU-1712: Dont delete after-applications as they are replaced instead --- .../custom/asu_application/src/Form/ApplicationForm.php | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/public/modules/custom/asu_application/src/Form/ApplicationForm.php b/public/modules/custom/asu_application/src/Form/ApplicationForm.php index b43ff1631..07e78ae79 100644 --- a/public/modules/custom/asu_application/src/Form/ApplicationForm.php +++ b/public/modules/custom/asu_application/src/Form/ApplicationForm.php @@ -533,6 +533,8 @@ public function save(array $form, FormStateInterface $form_state) { /** * Handle saving the form values. + * + * Deletes old application. * * @param array $form * Form array. @@ -548,7 +550,12 @@ private function doSave(array $form, FormStateInterface $form_state, $errors = T $oldBackendId = $this->entity->get('field_backend_id')->value ?? NULL; $confirmDeletion = $form_state->getValue('confirm_application_deletion') ?? 'NOT SET'; - if ($oldBackendId && $confirmDeletion == '1') { + $project_id = $this->entity->get('project_id')->value; + $project = $this->entityTypeManager->getStorage('node')->load($project_id); + $canApplyAfterwards = $project->get('field_can_apply_afterwards')->value; + + // applications made after shouldn't be deleted + if ($oldBackendId && $confirmDeletion == '1' && !$canApplyAfterwards) { try { $user = \Drupal::entityTypeManager()->getStorage('user')->load(\Drupal::currentUser()->id()); \Drupal::service('asu_api.backendapi')->deleteApplication($user, $oldBackendId); From 847fef34c93423b660b72720cadf740f414fe68d Mon Sep 17 00:00:00 2001 From: leevi-identio Date: Wed, 12 Nov 2025 14:42:38 +0200 Subject: [PATCH 2/2] ASU-1712: Fix lint err --- .../custom/asu_application/src/Form/ApplicationForm.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/public/modules/custom/asu_application/src/Form/ApplicationForm.php b/public/modules/custom/asu_application/src/Form/ApplicationForm.php index 07e78ae79..a394ff6d0 100644 --- a/public/modules/custom/asu_application/src/Form/ApplicationForm.php +++ b/public/modules/custom/asu_application/src/Form/ApplicationForm.php @@ -533,7 +533,7 @@ public function save(array $form, FormStateInterface $form_state) { /** * Handle saving the form values. - * + * * Deletes old application. * * @param array $form @@ -554,7 +554,7 @@ private function doSave(array $form, FormStateInterface $form_state, $errors = T $project = $this->entityTypeManager->getStorage('node')->load($project_id); $canApplyAfterwards = $project->get('field_can_apply_afterwards')->value; - // applications made after shouldn't be deleted + // Applications made after shouldn't be deleted. if ($oldBackendId && $confirmDeletion == '1' && !$canApplyAfterwards) { try { $user = \Drupal::entityTypeManager()->getStorage('user')->load(\Drupal::currentUser()->id());