diff --git a/src/app/basket/controllers/BasketController.php b/src/app/basket/controllers/BasketController.php index b521c8d789190d8802b10bd7845f67b34f18658c..5fe096d903e0ff5913d2eda0c91b1ddcd29cf1c8 100644 --- a/src/app/basket/controllers/BasketController.php +++ b/src/app/basket/controllers/BasketController.php @@ -282,10 +282,23 @@ class BasketController $allActions = ActionModel::get(); $allActionsPrepared = []; foreach ($allActions as $allAction) { - if (empty($allActionsPrepared[$allAction['origin']])) { - $allActionsPrepared[$allAction['origin']] = []; + $found = null; + foreach ($allActionsPrepared as $key => $allActionPrepared) { + if (!empty($allActionPrepared[$allAction['origin']])) { + $found = $key; + } + } + if ($found === null) { + $allActionsPrepared[] = [ + 'origin' => $allAction['origin'], + $allAction['origin'] => [] + ]; + } + foreach ($allActionsPrepared as $key => $allActionPrepared) { + if ($allActionPrepared['origin'] == $allAction['origin']) { + $allActionsPrepared[$key][$allAction['origin']][] = $allAction; + } } - $allActionsPrepared[$allAction['origin']][] = $allAction; } return $response->withJson(['groups' => $groups, 'allGroups' => $allGroups, 'pages' => $basketPages, 'actions' => $allActionsPrepared]);