diff options
| author | Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de> | 2023-01-30 17:26:03 +0000 |
|---|---|---|
| committer | Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de> | 2023-01-30 17:26:03 +0000 |
| commit | 2a8091c0f8e625a70e72dbe6438a74af14451978 (patch) | |
| tree | 318c7d4b107c6f464259a8a00fb21c8ed96ad07a /lib/models/DatafieldEntryModel.class.php | |
| parent | 3e9cceedbaf74ff06ca6c9a87f7275f740595550 (diff) | |
fix findByModel() for object_type "sem" and "inst", re #2104
Merge request studip/studip!1366
Diffstat (limited to 'lib/models/DatafieldEntryModel.class.php')
| -rw-r--r-- | lib/models/DatafieldEntryModel.class.php | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/lib/models/DatafieldEntryModel.class.php b/lib/models/DatafieldEntryModel.class.php index 882b37e..e1c2406 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, |
