'error', 'key' => '', 'method' => '', 'data' => '', ]; $data = json_decode($request->getContent(), true); if (!isset($data['pages_id']) && !isset($data['template_id'])) { $body['key'] = 'data'; $body['method'] = 'request'; $body['data'] = "An error occured, parameters 'pages_id' and 'template_id' expected !"; return $respond->statusUnprocessableEntity()->createBody($body)->respond(); } $deletedExportValues = $deleteQuery->deletedByPages($data['pages_id'], $data['template_id']); // Delete export_value table's content if ($deletedExportValues instanceof Exception) { $body['key'] = 'value'; $body['method'] = 'deletedByPages'; $body['data'] = $deletedExportValues->getMessage(); return $respond->statusUnprocessableEntity()->createBody($body)->respond(); } $exportIds = array_column($exportsRepository->listIds(), 'id'); // Get export's ids in order to remove targeted template $deletedExportsTemplate = $deleteQuery->deleteExportsTemplate($exportIds, (int) $data['template_id']); // Delete export_template_configuration specific template's column's content if ($deletedExportsTemplate instanceof Exception) { $body['key'] = 'elementTypesTemplates'; $body['method'] = 'deleteExportsTemplate'; $body['data'] = $deletedExportsTemplate->getMessage(); $respond->statusUnprocessableEntity(); } else { $body['type'] = 'success'; $body['data'] = $deletedExportsTemplate; $respond->statusOK(); } return $respond->createBody($body)->respond(); } }