From 5926dbf7dd132d7fdb6c77bf82072917f4dd72f3 Mon Sep 17 00:00:00 2001 From: Angel Fernando Quiroz Campos Date: Wed, 13 Apr 2022 18:22:41 -0500 Subject: [PATCH] Gradebook: Show display text for extrafield of type select - refs BT#19821 --- main/inc/lib/usermanager.lib.php | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/main/inc/lib/usermanager.lib.php b/main/inc/lib/usermanager.lib.php index 10608fb097..00e1d43f02 100755 --- a/main/inc/lib/usermanager.lib.php +++ b/main/inc/lib/usermanager.lib.php @@ -3167,6 +3167,20 @@ class UserManager if ($row['type'] == self::USER_FIELD_TYPE_TAG) { $tags = self::get_user_tags_to_string($user_id, $row['id'], false); $extra_data['extra_'.$row['fvar']] = $tags; + } elseif (ExtraField::FIELD_TYPE_SELECT == $row['type']) { + $efv = new ExtraFieldValue('user'); + $efo = new ExtraFieldOption('user'); + + $fval = $efv->get_values_by_handler_and_field_variable($user_id, $row['fvar']); + $fopt = $efo->get_field_option_by_field_and_option($row['id'], $fval['value']); + $fopt = current($fopt); + $fOptText = $fopt ? $fopt['display_text'] : $fval['value']; + + if ($prefix) { + $extra_data['extra_'.$row['fvar']] = $fOptText; + } else { + $extra_data[$row['fvar']] = $fOptText; + } } else { $sqlu = "SELECT value as fval FROM $t_ufv