From 3ecbbd6f8493cc2f7d6df742d9c656c8e1b27cc3 Mon Sep 17 00:00:00 2001 From: Riedler Date: Wed, 22 Jan 2025 15:05:17 +0100 Subject: [PATCH 1/2] feat: move user capability bitmask from fulldata to shortdata --- lbplanner/classes/model/user.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lbplanner/classes/model/user.php b/lbplanner/classes/model/user.php index 6163b072..5903e195 100644 --- a/lbplanner/classes/model/user.php +++ b/lbplanner/classes/model/user.php @@ -283,6 +283,7 @@ public function prepare_for_api_short(): array { 'firstname' => $mdluser->firstname, 'lastname' => $mdluser->lastname, 'profileimageurl' => $this->get_pfp(), + 'capabilities' => $capabilitybm, ]; if ($capabilitybm & CAPABILITY_FLAG::STUDENT && strlen($mdluser->address) > 0) { @@ -306,6 +307,7 @@ public static function api_structure_short(): external_single_structure { 'lastname' => new external_value(PARAM_TEXT, 'The lastname of the user'), 'profileimageurl' => new external_value(PARAM_URL, 'The url of the profile image'), 'vintage' => new external_value(PARAM_TEXT, 'The vintage of the user', VALUE_DEFAULT), + 'capabilities' => new external_value(PARAM_INT, 'The capabilities of the user represented as a bitmask value'), ] ); } @@ -324,7 +326,6 @@ public function prepare_for_api(): array { 'planid' => $this->get_planid(), 'colorblindness' => $this->colorblindness, 'displaytaskcount' => $this->displaytaskcount, - 'capabilities' => $this->get_capabilitybitmask(), 'email' => $mdluser->email, ] ); From 1c1d817c20b06aad7e0bcde629cb6560564bf38e Mon Sep 17 00:00:00 2001 From: Riedler Date: Wed, 22 Jan 2025 15:33:15 +0100 Subject: [PATCH 2/2] fix: user constructor in get_user --- lbplanner/services/user/get_user.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lbplanner/services/user/get_user.php b/lbplanner/services/user/get_user.php index c5592c39..f69db0dd 100644 --- a/lbplanner/services/user/get_user.php +++ b/lbplanner/services/user/get_user.php @@ -57,7 +57,7 @@ public static function get_user(): array { // Checks if the user is enrolled in LB Planner. if (!user_helper::check_user_exists($USER->id)) { // Register user if not found. - $lbplanneruser = new user(0, $USER->id, 'default', 'en', 'none', 1); + $lbplanneruser = new user(0, $USER->id, 'default', 'none', 1); $lbpid = $DB->insert_record(user_helper::LB_PLANNER_USER_TABLE, $lbplanneruser->prepare_for_db()); $lbplanneruser->set_fresh($lbpid);