From c1d1cb8122c368853cfb895b5118b934c7ab356c Mon Sep 17 00:00:00 2001 From: gibsonjoshua55 Date: Thu, 10 Aug 2017 16:37:54 -0400 Subject: [PATCH] Address #3840 and fixes group transformation in UsersTransformer (#3841) Removes the incorrect variable access in UsersTransformer of a users's groups and adds an array of groups' ids and names to the return array. --- app/Http/Transformers/UsersTransformer.php | 23 +++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/app/Http/Transformers/UsersTransformer.php b/app/Http/Transformers/UsersTransformer.php index f63d567c7..a2596f3a5 100644 --- a/app/Http/Transformers/UsersTransformer.php +++ b/app/Http/Transformers/UsersTransformer.php @@ -32,11 +32,6 @@ class UsersTransformer 'id' => (int) $user->manager->id, 'name'=> e($user->manager->username) ] : null, - - 'groups' => ($user->groups) ? [ - 'id' => (int) $user->userloc->id, - 'name'=> e($user->userloc->name) - ] : null, 'jobtitle' => ($user->jobtitle) ? e($user->jobtitle) : null, 'email' => e($user->email), 'department' => ($user->department) ? [ @@ -68,6 +63,24 @@ class UsersTransformer $array += $permissions_array; + + $numGroups = count($user->groups); + if($numGroups > 0) + { + $groups["total"] = $numGroups; + foreach($user->groups as $group) + { + $groups["rows"][] = [ + 'id' => (int) $group->id, + 'name' => e($group->name) + ]; + } + $array["groups"] = $groups; + } + else { + $array["groups"] = null; + } + return $array; }