/**
  * @param Group $group
  * @return \Doctrine\ORM\Query
  */
 public function getUnassignedUsersQueryByGroup(GroupSection $section)
 {
     $ids = array(0);
     foreach ($section->getUsers() as $user) {
         $ids[] = $user->getId();
     }
     $qb = $this->getEntityManager()->createQueryBuilder();
     return $qb->select('u')->from('CivixCoreBundle:User', 'u')->leftJoin('u.groups', 'ug')->where($qb->expr()->notIn('u.id', $ids))->andWhere('ug.group = :group')->setParameter('group', $section->getGroup())->orderBy('u.firstName')->getQuery();
 }
예제 #2
0
 private function createGroupSectionActivityConditions(Activity $activity, GroupSection $section)
 {
     $condition = new ActivityCondition($activity);
     $condition->setGroupSectionId($section->getId());
     $this->entityManager->persist($condition);
     $this->entityManager->flush($condition);
 }
 public function __toString()
 {
     $this->__load();
     return parent::__toString();
 }
 /**
  * @Route("/delete/{id}", name="civix_front_group_sections_delete", requirements={"id"="\d+"})
  */
 public function deleteAction(Request $request, GroupSection $section)
 {
     if (!$this->checkSubscriptionPackage()) {
         $this->get('session')->getFlashBag()->add('danger', 'Group sections are not available for this subscription');
         return $this->redirect($this->generateUrl('civix_front_group_subscription_index'));
     }
     if ($section->getGroup() !== $this->getUser() || $request->get('token') !== $this->getToken()) {
         throw new AccessDeniedHttpException();
     }
     $manager = $this->getDoctrine()->getManager();
     $manager->remove($section);
     $manager->flush();
     $this->get('session')->getFlashBag()->add('notice', 'Group section has been successfully removed');
     return $this->redirect($this->generateUrl('civix_front_group_sections_index'));
 }