Skip to content

Commit 1d08ebb

Browse files
committed
[List] CAES-1707: Fixed access to edit list.
1 parent 04d38b6 commit 1d08ebb

File tree

4 files changed

+9
-4
lines changed

4 files changed

+9
-4
lines changed

src/Security/Voter/TeamListVoter.php

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,12 @@ private function canDelete(Directory $subject, User $user): bool
140140

141141
private function canSort(Directory $subject, User $user): bool
142142
{
143-
return $this->canEdit($subject, $user);
143+
$userTeam = $subject->getTeam()->getUserTeamByUser($user);
144+
if (null === $userTeam) {
145+
return false;
146+
}
147+
148+
return $userTeam->hasRole(UserTeam::USER_ROLE_ADMIN);
144149
}
145150

146151
private function isMovable(Directory $subject, User $user): bool

tests/api/Team/ListTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ public function editList()
123123
$this->editListValidate($teamAdmin, $list);
124124
$this->canEditTeamList($teamAdmin, $list, self::DEFAULT_LIST_NAME);
125125
$this->canEditTeamList($domainAdmin, $list, uniqid());
126-
$this->canEditTeamList($teamAdmin, $team->getDefaultDirectory(), uniqid());
126+
$this->cantAccessToEditTeamList($teamAdmin, $team->getDefaultDirectory(), uniqid());
127127
$this->cantAccessToEditTeamList($superAdmin, $list);
128128
$this->cantAccessToEditTeamList($member, $list);
129129
$this->cantAccessToEditTeamList($teamAdmin, $otherList);

tests/api/Team/PermissionTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,7 +241,7 @@ private function canAccessToList(User $user, Team $team)
241241
$I->seeResponseByJsonPathContainsJson(sprintf('$[?(@.type=="%s")]', DirectoryEnumType::DEFAULT), ['_links' => [
242242
'team_create_item' => [],
243243
'team_sort_list' => [],
244-
'team_edit_list' => [],
244+
//'team_edit_list' => [],
245245
]]);
246246
$I->dontSeeResponseByJsonPathContainsJson(sprintf('$[?(@.type=="%s")]', DirectoryEnumType::DEFAULT), ['_links' => [
247247
'team_delete_list' => [],

tests/api/User/PermissionTest.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ public function listPermission()
4545
$I->seeResponseByJsonPathContainsJson(sprintf('$[?(@.label=="%s")]', DirectoryEnumType::DEFAULT), ['_links' => [
4646
'sort_list' => [],
4747
'create_item' => [],
48-
'edit_list' => [],
48+
//'edit_list' => [],
4949
]]);
5050
$I->dontSeeResponseByJsonPathContainsJson(sprintf('$[?(@.label=="%s")]', DirectoryEnumType::DEFAULT), ['_links' => [
5151
'delete_list' => [],

0 commit comments

Comments
 (0)