public function __construct(Course $course)
 {
     $details = [];
     $details['id'] = $course->getId();
     $details['title'] = $course->getTitle();
     $details['code'] = $course->getCode();
     $details['publicRegistration'] = $course->getPublicRegistration();
     $details['publicUnregistration'] = $course->getPublicUnregistration();
     $details['registrationValidation'] = $course->getRegistrationValidation();
     $details['icon'] = $course->getIcon();
     $details['tutorRoleName'] = $course->getTutorRoleName();
     $details['learnerRoleName'] = $course->getLearnerRoleName();
     $details['userValidation'] = $course->getUserValidation();
     $details['organizationValidation'] = $course->getOrganizationValidation();
     $details['maxUsers'] = $course->getMaxUsers();
     $details['defaultSessionDuration'] = $course->getDefaultSessionDuration();
     $details['withSessionEvent'] = $course->getWithSessionEvent();
     $workspace = $course->getWorkspace();
     $workspaceModel = $course->getWorkspaceModel();
     if (!is_null($workspace)) {
         $details['workspaceId'] = $workspace->getId();
         $details['workspaceName'] = $workspace->getName();
         $details['workspaceCode'] = $workspace->getCode();
         $details['workspaceGuid'] = $workspace->getGuid();
     }
     if (!is_null($workspaceModel)) {
         $details['workspaceModelId'] = $workspaceModel->getId();
         $details['workspaceModelName'] = $workspaceModel->getName();
     }
     parent::__construct(self::ACTION, $details);
 }
Esempio n. 2
0
 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];
 }
Esempio n. 4
0
 public function deleteCourse(Course $course)
 {
     $details = [];
     $details['id'] = $course->getId();
     $details['title'] = $course->getTitle();
     $details['code'] = $course->getCode();
     $details['publicRegistration'] = $course->getPublicRegistration();
     $details['publicUnregistration'] = $course->getPublicUnregistration();
     $details['registrationValidation'] = $course->getRegistrationValidation();
     $details['icon'] = $course->getIcon();
     $details['tutorRoleName'] = $course->getTutorRoleName();
     $details['learnerRoleName'] = $course->getLearnerRoleName();
     $details['userValidation'] = $course->getUserValidation();
     $details['organizationValidation'] = $course->getOrganizationValidation();
     $details['maxUsers'] = $course->getMaxUsers();
     $details['defaultSessionDuration'] = $course->getDefaultSessionDuration();
     $details['withSessionEvent'] = $course->getWithSessionEvent();
     $workspace = $course->getWorkspace();
     $workspaceModel = $course->getWorkspaceModel();
     if (!is_null($workspace)) {
         $details['workspaceId'] = $workspace->getId();
         $details['workspaceName'] = $workspace->getName();
         $details['workspaceCode'] = $workspace->getCode();
         $details['workspaceGuid'] = $workspace->getGuid();
     }
     if (!is_null($workspaceModel)) {
         $details['workspaceModelId'] = $workspaceModel->getId();
         $details['workspaceModelName'] = $workspaceModel->getName();
     }
     $this->om->remove($course);
     $this->om->flush();
     $event = new LogCourseDeleteEvent($details);
     $this->eventDispatcher->dispatch('log', $event);
 }