From 2a8091c0f8e625a70e72dbe6438a74af14451978 Mon Sep 17 00:00:00 2001 From: Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de> Date: Mon, 30 Jan 2023 17:26:03 +0000 Subject: [PATCH] fix findByModel() for object_type "sem" and "inst", re #2104 Merge request studip/studip!1366 --- lib/models/DatafieldEntryModel.class.php | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/lib/models/DatafieldEntryModel.class.php b/lib/models/DatafieldEntryModel.class.php index 882b37ed22c..e1c24064f1a 100644 --- a/lib/models/DatafieldEntryModel.class.php +++ b/lib/models/DatafieldEntryModel.class.php @@ -130,7 +130,16 @@ class DatafieldEntryModel extends SimpleORMap implements PrivacyObject $params[':one_datafield_id'] = $datafield_id; } - if ($object_type === 'studycourse') { + if ($object_type === 'sem' || $object_type === 'inst') { + // find datafields by status (int) + $query .= " AND (object_class = :object_class OR object_class IS NULL) ORDER BY priority"; + $params = array_merge($params, [ + ':range_id' => (string) $range_id, + ':sec_range_id' => (string) $sec_range_id, + ':object_type' => $object_type, + ':object_class' => (int) $object_class + ]); + } else if ($object_type === 'studycourse') { $query .= " AND (LOCATE(:object_class, object_class) OR LOCATE('all', object_class)) ORDER BY priority"; $params = array_merge($params,[ ':range_id' => (string) $range_id, -- GitLab