public function courseQueue(Course $course, User $user) { $now = new \DateTime(); $status = 0; $validators = $course->getValidators(); if ($course->getUserValidation()) { $status += CourseRegistrationQueue::WAITING_USER; } if ($course->getOrganizationValidation()) { $status += CourseRegistrationQueue::WAITING_ORGANIZATION; } if (count($validators) > 0) { $status += CourseRegistrationQueue::WAITING_VALIDATOR; } elseif ($course->getRegistrationValidation()) { $status += CourseRegistrationQueue::WAITING; } $courseQueue = new CourseRegistrationQueue(); $courseQueue->setUser($user); $courseQueue->setCourse($course); $courseQueue->setApplicationDate($now); $courseQueue->setStatus($status); $this->om->persist($courseQueue); return $courseQueue; }
/** * @EXT\Route( * "cursus/course/{course}/session/create/form", * name="claro_cursus_course_session_create_form", * options={"expose"=true} * ) * @EXT\ParamConverter("authenticatedUser", options={"authenticatedUser" = true}) * @EXT\Template("ClarolineCursusBundle:Course:courseSessionCreateModalForm.html.twig") */ public function courseSessionCreateFormAction(Course $course) { $session = new CourseSession(); $session->setPublicRegistration($course->getPublicRegistration()); $session->setPublicUnregistration($course->getPublicUnregistration()); $session->setRegistrationValidation($course->getRegistrationValidation()); $session->setMaxUsers($course->getMaxUsers()); $session->setUserValidation($course->getUserValidation()); $session->setOrganizationValidation($course->getOrganizationValidation()); $validators = $course->getValidators(); foreach ($validators as $validator) { $session->addValidator($validator); } $form = $this->formFactory->create(new CourseSessionType($this->cursusManager, $this->translator), $session); return ['form' => $form->createView(), 'course' => $course]; }
public function isCourseValidator(User $user, Course $course) { $isValidator = false; $validators = $course->getValidators(); foreach ($validators as $validator) { if ($validator->getId() === $user->getId()) { $isValidator = true; break; } } return $isValidator; }