From 5b27fabc054dfea73c3a1ad06c529275f9c2626e Mon Sep 17 00:00:00 2001 From: Jakub Onderka Date: Wed, 30 Jun 2021 10:23:14 +0200 Subject: [PATCH] fix: [internal] Update object relationships when updating JSONs --- app/Model/ObjectRelationship.php | 6 +++--- app/Model/Server.php | 3 +-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/app/Model/ObjectRelationship.php b/app/Model/ObjectRelationship.php index a08651b2e..dca5860e5 100644 --- a/app/Model/ObjectRelationship.php +++ b/app/Model/ObjectRelationship.php @@ -46,13 +46,13 @@ class ObjectRelationship extends AppModel $relationsFile = APP . 'files/misp-objects/relationships/definition.json'; if (file_exists($relationsFile)) { $file = new File($relationsFile); - $relations = json_decode($file->read(), true); + $relations = $this->jsonDecode($file->read()); if (!isset($relations['version'])) { $relations['version'] = 1; } $this->deleteAll(array('version <' => $relations['version'])); - foreach ($relations['values'] as $k => $relation) { - $relation['format'] = json_encode($relation['format'], true); + foreach ($relations['values'] as $relation) { + $relation['format'] = json_encode($relation['format']); $relation['version'] = $relations['version']; $this->create(); $this->save($relation); diff --git a/app/Model/Server.php b/app/Model/Server.php index 2b435089c..2b90d5269 100644 --- a/app/Model/Server.php +++ b/app/Model/Server.php @@ -4250,9 +4250,8 @@ class Server extends AppModel public function updateJSON() { - $toUpdate = array('Galaxy', 'Noticelist', 'Warninglist', 'Taxonomy', 'ObjectTemplate'); $results = array(); - foreach ($toUpdate as $target) { + foreach (['Galaxy', 'Noticelist', 'Warninglist', 'Taxonomy', 'ObjectTemplate', 'ObjectRelationship'] as $target) { $this->$target = ClassRegistry::init($target); $result = $this->$target->update(); $results[$target] = $result === false ? false : true;