From 3e477a52de43809b5adb72d68fd12503d336763c Mon Sep 17 00:00:00 2001 From: David Siegfried <david.siegfried@uni-vechta.de> Date: Wed, 21 Dec 2022 11:26:52 +0000 Subject: [PATCH] fix broken usage of sorm, closes #1579 Closes #1579 Merge request studip/studip!1266 --- lib/models/User.class.php | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/lib/models/User.class.php b/lib/models/User.class.php index 6bb38f41da3..5cf1e18a421 100644 --- a/lib/models/User.class.php +++ b/lib/models/User.class.php @@ -1078,16 +1078,12 @@ class User extends AuthUserMd5 implements Range, PrivacyObject $old_user = User::find($old_id); $old_user->datafields->each(function ($field) use ($new_id) { if (!$field->isNew() && $field->content !== null) { - $data = $field->toArray('datafield_id sec_range_id content mkdate chdate'); - $data['range_id'] = $new_id; + $entry = new DatafieldEntryModel([$field->datafield_id, $new_id, $field->sec_range_id, $field->lang]); - $datafield = DatafieldEntryModel::findOneBySQL('datafield_id = ?', [$data['datafield_id']]); - if(!$datafield) { - $datafield = DatafieldEntryModel::build($data); - } else { - $datafield->setData($data); + if ($entry->content === null || $entry->content === '' || $entry->content === 'default_value') { + $entry->content = $field->content; + $entry->store(); } - $datafield->store(); } }); -- GitLab