From 33fdc857f23670524cf0b466a40faa8fd826b644 Mon Sep 17 00:00:00 2001 From: Korina Cordero Date: Wed, 29 Jan 2020 11:16:07 +0000 Subject: [PATCH] Add deletion of battery from vehicle when vehicle has more than one compatible battery. #317 --- src/Controller/VehicleController.php | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/src/Controller/VehicleController.php b/src/Controller/VehicleController.php index 4c6a5484..9fb93544 100644 --- a/src/Controller/VehicleController.php +++ b/src/Controller/VehicleController.php @@ -282,15 +282,25 @@ class VehicleController extends Controller // need to check if a battery has been removed if (count($current_batteries) > count($batteries)) { - error_log('A battery has been removed'); - } - foreach ($batteries as $battery_id) - { - $battery = $em->getRepository(Battery::class)->find($battery_id); - - if (!empty($battery)) + // battery/batteries have been removed + foreach ($current_batteries as $cbatt) { - error_log('battery id ' . $battery->getID()); + $cbatt_id = $cbatt->getID(); + if (in_array($cbatt_id, $batteries)) + { + // do nothing, move to next element + continue; + } + else + { + // cbatt_id has been deleted + $battery = $em->getRepository(Battery::class)->find($cbatt_id); + + if (!empty($battery)) + { + $battery->removeVehicle($row); + } + } } } }