Пример #1
0
 public function joinToGroup(User $user, Group $group)
 {
     //current status Group
     $userGroup = $this->entityManager->getRepository('CivixCoreBundle:UserGroup')->isJoinedUser($group, $user);
     //check if user is joined yet and want to join
     if ($userGroup) {
         return $userGroup;
     }
     $userGroup = new UserGroup($user, $group);
     if ($user->getInvites()->contains($group)) {
         $userGroup->setStatus(UserGroup::STATUS_ACTIVE);
         $user->removeInvite($group);
     }
     $userGroup->setPermissionsByGroup($group);
     $this->entityManager->createQueryBuilder()->delete(UserToGroup::class, 'i')->where('i.user = :user AND i.group = :group')->setParameter('user', $user)->setParameter('group', $group)->getQuery()->execute();
     $this->entityManager->persist($userGroup);
     $this->entityManager->flush($userGroup);
     return $user;
 }
 public function setPermissionsByGroup(\Civix\CoreBundle\Entity\Group $group)
 {
     $this->__load();
     return parent::setPermissionsByGroup($group);
 }