From d3c2c4e5e13dfb63d851324d4e87a367219692dc Mon Sep 17 00:00:00 2001 From: Vincent Vanwaelscappel Date: Thu, 30 Mar 2023 16:44:48 +0200 Subject: [PATCH] wip #5840 @0.25 --- .../Magic/Models/CubistMagicAbstractModel.php | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/app/Magic/Models/CubistMagicAbstractModel.php b/src/app/Magic/Models/CubistMagicAbstractModel.php index 8ad02f2..347011b 100644 --- a/src/app/Magic/Models/CubistMagicAbstractModel.php +++ b/src/app/Magic/Models/CubistMagicAbstractModel.php @@ -277,6 +277,33 @@ class CubistMagicAbstractModel extends Model implements HasMedia } } + public function addFakes($columns = ['extras']) + { + try { + return parent::addFakes($columns); + } catch (\Exception $e) { + + } + + foreach ($columns as $key => $column) { + if (!isset($this->attributes[$column])) { + continue; + } + + $column_contents = $this->{$column}; + + if ($this->shouldDecodeFake($column) && is_string($column_contents)) { + $column_contents = json_decode($column_contents); + } + + if ((is_array($column_contents) || is_object($column_contents) || $column_contents instanceof Traversable)) { + foreach ($column_contents as $fake_field_name => $fake_field_value) { + $this->setAttribute($fake_field_name, $fake_field_value); + } + } + } + } + public function getFields() { -- 2.39.5