From ff84f87d3378c8373a40aaab425579a5cddd116b Mon Sep 17 00:00:00 2001 From: mokaddem Date: Fri, 15 Jan 2021 14:40:03 +0100 Subject: [PATCH] fix: [Component:CRUD] Allow saving metaFields --- src/Controller/Component/CRUDComponent.php | 8 ++++---- src/Model/Table/AppTable.php | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/Controller/Component/CRUDComponent.php b/src/Controller/Component/CRUDComponent.php index 23c1b50..c869701 100644 --- a/src/Controller/Component/CRUDComponent.php +++ b/src/Controller/Component/CRUDComponent.php @@ -161,7 +161,7 @@ class CRUDComponent extends Component private function saveMetaFields($id, $input) { - $this->Table->saveMetaFields($id, $input); + $this->Table->saveMetaFields($id, $input, $this->Table); } private function __massageInput($params) @@ -206,11 +206,11 @@ class CRUDComponent extends Component if ($savedData !== false) { $message = __('{0} `{1}` updated.', $this->ObjectAlias, $savedData->{$this->Table->getDisplayField()}); if (!empty($input['metaFields'])) { - $this->MetaFields->deleteAll(['scope' => $this->Table->metaFields, 'parent_id' => $data->id]); - $this->saveMetaFields($data->id, $input); + $this->MetaFields->deleteAll(['scope' => $this->Table->metaFields, 'parent_id' => $savedData->id]); + $this->saveMetaFields($savedData->id, $input); } if ($this->Controller->ParamHandler->isRest()) { - $this->Controller->restResponsePayload = $this->RestResponse->viewData($data, 'json'); + $this->Controller->restResponsePayload = $this->RestResponse->viewData($savedData, 'json'); } else if ($this->Controller->ParamHandler->isAjax()) { $this->Controller->ajaxResponsePayload = $this->Controller->RestResponse->ajaxSuccessResponse($this->ObjectAlias, 'edit', $savedData, $message); } else { diff --git a/src/Model/Table/AppTable.php b/src/Model/Table/AppTable.php index 32d2e67..4164456 100644 --- a/src/Model/Table/AppTable.php +++ b/src/Model/Table/AppTable.php @@ -36,11 +36,11 @@ class AppTable extends Table $temp = $this->MetaFields->newEmptyEntity(); $temp->field = $metaField; $temp->value = $value; - $temp->scope = $this->Table->metaFields; + $temp->scope = $this->metaFields; $temp->parent_id = $id; $temp->meta_template_id = $templateID; $temp->meta_template_field_id = $fieldNameToId[$metaField]; - $this->MetaFields->save($temp); + $res = $this->MetaFields->save($temp); } } }