From 2f1f86e6f0be4bdcc76ad455d8f390317d271ce9 Mon Sep 17 00:00:00 2001 From: Elmar Ludwig <elmar.ludwig@uni-osnabrueck.de> Date: Wed, 21 Aug 2024 20:20:39 +0200 Subject: [PATCH] allow selecting matriculation_number on Stud.IP 5.5, fixes #266 --- lib/vips_common.inc.php | 8 ++++++-- views/config/index.php | 6 +++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/lib/vips_common.inc.php b/lib/vips_common.inc.php index 8703ed0..902b2f0 100644 --- a/lib/vips_common.inc.php +++ b/lib/vips_common.inc.php @@ -188,13 +188,17 @@ function normalizeFloat($string, &$unit) function get_student_id($user) { $datafield_id = Config::get()->VIPS_STUDENT_ID_DATAFIELD; - $entries = []; if ($datafield_id) { $entries = DatafieldEntryModel::findByModel($user, $datafield_id); + return $entries ? $entries[0]->content : null; } - return $entries ? $entries[0]->content : null; + if (isset($user->matriculation_number)) { + return $user->matriculation_number; + } + + return null; } /** diff --git a/views/config/index.php b/views/config/index.php index 7dcb73a..af76a73 100644 --- a/views/config/index.php +++ b/views/config/index.php @@ -11,7 +11,11 @@ <?= _vips('Datenfeld für die Matrikelnummer') ?> <select name="datafield"> - <option value=""></option> + <option value=""> + <? if (version_compare($GLOBALS['SOFTWARE_VERSION'], '5.5', '>=')): ?> + <?= _vips('Matrikelnummer') ?> (Stud.IP) + <? endif ?> + </option> <? foreach ($fields as $field): ?> <option value="<?= $field->id ?>" <?= $config->VIPS_STUDENT_ID_DATAFIELD == $field->id ? 'selected' : '' ?>> <?= htmlReady($field->name) ?> -- GitLab