Ejemplo n.º 1
0
 public function testCanLoadById()
 {
     $groupId = 98282;
     $groupName = 'gn';
     $groupAdminId = 1111;
     $rows = array();
     $rows[] = array(ColumnNames::GROUP_ID => $groupId, ColumnNames::GROUP_NAME => $groupName, ColumnNames::GROUP_ADMIN_GROUP_ID => $groupAdminId);
     $groupUsers = array(array(ColumnNames::USER_ID => 1), array(ColumnNames::USER_ID => 2));
     $permissions = array(array(ColumnNames::GROUP_ID => 1, ColumnNames::RESOURCE_ID => 1), array(ColumnNames::GROUP_ID => 1, ColumnNames::RESOURCE_ID => 2));
     $roles = array(array(ColumnNames::ROLE_ID => 1, ColumnNames::ROLE_NAME => 'thing', ColumnNames::ROLE_LEVEL => RoleLevel::NONE), array(ColumnNames::ROLE_ID => 2, ColumnNames::ROLE_NAME => 'name', ColumnNames::ROLE_LEVEL => RoleLevel::GROUP_ADMIN));
     $this->db->SetRow(0, $rows);
     $this->db->SetRow(1, $groupUsers);
     $this->db->SetRow(2, $permissions);
     $this->db->SetRow(3, $roles);
     $group = $this->repository->LoadById($groupId);
     $expectedGroupCommand = new GetGroupByIdCommand($groupId);
     $expectedUsersCommand = new GetAllGroupUsersCommand($groupId, AccountStatus::ACTIVE);
     $expectedPermissionsCommand = new GetAllGroupPermissionsCommand($groupId);
     $expectedRolesCommand = new GetAllGroupRolesCommand($groupId);
     $this->assertTrue($this->db->ContainsCommand($expectedGroupCommand));
     $this->assertTrue($this->db->ContainsCommand($expectedUsersCommand));
     $this->assertTrue($this->db->ContainsCommand($expectedPermissionsCommand));
     $this->assertTrue($this->db->ContainsCommand($expectedRolesCommand));
     $this->assertEquals($groupId, $group->Id());
     $this->assertEquals($groupName, $group->Name());
     $this->assertEquals($groupAdminId, $group->AdminGroupId());
     $this->assertTrue($group->HasMember(1));
     $this->assertFalse($group->HasMember(3));
     $this->assertTrue(in_array(1, $group->AllowedResourceIds()));
     $this->assertFalse(in_array(3, $group->AllowedResourceIds()));
     $this->assertTrue(in_array(2, $group->RoleIds()));
     $this->assertFalse(in_array(4, $group->RoleIds()));
 }
Ejemplo n.º 2
0
 /**
  * @return array|int[]
  */
 protected function GetGroupRoles()
 {
     $groupId = $this->page->GetGroupId();
     $group = $this->groupRepository->LoadById($groupId);
     $ids = $group->RoleIds();
     return $ids;
 }
Ejemplo n.º 3
0
 public function LoadById($groupId)
 {
     $user = $this->userRepository->LoadById($this->userSession->UserId);
     if ($user->IsGroupAdminFor($groupId)) {
         return parent::LoadById($groupId);
     }
     return Group::Null();
 }