aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorJan-Hendrik Willms <tleilax+studip@gmail.com>2025-06-26 14:55:40 +0200
committerJan-Hendrik Willms <tleilax+studip@gmail.com>2025-06-27 09:49:30 +0200
commit3e597cc740ef156d24e3f78dd87c583a96774e91 (patch)
tree341d45b9806134a3ba401c0cec9be498cba426c8 /lib
parent441375b8915716cfff6b5976e3588fdab0666f0b (diff)
add index and set correct for auth_user_md5.matriculation_number, fixes #4577
Closes #4577 Merge request studip/studip!3392
Diffstat (limited to 'lib')
-rw-r--r--lib/models/User.class.php10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/models/User.class.php b/lib/models/User.class.php
index 00739dc..f492c6c 100644
--- a/lib/models/User.class.php
+++ b/lib/models/User.class.php
@@ -241,6 +241,16 @@ class User extends AuthUserMd5 implements Range, PrivacyObject, Studip\Calendar\
$config['registered_callbacks']['before_store'][] = 'cbClearCaches';
$config['registered_callbacks']['before_store'][] = 'cbStudipLog';
+ // Ensure matriculation number is always set to null if empty
+ $config['registered_callbacks']['before_store'][] = function (User $user) {
+ if (
+ isset($user->matriculation_number)
+ && trim($user->matriculation_number) === ''
+ ) {
+ $user->matriculation_number = null;
+ }
+ };
+
$info = new UserInfo();
$info_meta = $info->getTableMetadata();
foreach ($info_meta ['fields'] as $field => $meta) {