Example #1
0
 public function addPostFormPart(\Symbb\Core\EventBundle\Event\FormPostEvent $event)
 {
     $builder = $event->getBuilder();
     $groupManager = $event->getGroupManager();
     $groups = $groupManager->findAll();
     $groupArray = array();
     foreach ($groups as $group) {
         $groupArray[$group->getId()] = $group->getName();
     }
     $tz = $event->getUserManager()->getTimezone();
     $now = new \DateTime();
     $now->setTimezone($tz);
     $builder->add('calendarName', 'text', array('mapped' => false, 'required' => false, 'label' => 'Title', 'constraints' => array(new \Symfony\Component\Validator\Constraints\Length(array('min' => 3)))));
     $builder->add('calendarStartDate', 'datetime', array('mapped' => false, 'required' => false, 'label' => 'Start Date', 'input' => 'datetime', 'widget' => 'single_text', 'view_timezone' => $tz->getName(), 'format' => \IntlDateFormatter::MEDIUM, 'attr' => array('class' => 'datetime')));
     $builder->add('calendarEndDate', 'datetime', array('mapped' => false, 'required' => false, 'label' => 'End Date', 'input' => 'datetime', 'widget' => 'single_text', 'view_timezone' => $tz->getName(), 'format' => \IntlDateFormatter::MEDIUM, 'attr' => array('class' => 'datetime')));
     $builder->add('calendarGroups', 'choice', array('mapped' => false, 'required' => false, 'label' => 'Visible to', 'choices' => $groupArray, 'multiple' => true));
 }
Example #2
0
 public function postForm(FormPostEvent $event)
 {
     $builder = $event->getBuilder();
     $builder->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) use($builder) {
         $form = $event->getForm();
         $data = $event->getData();
         /* Check we're looking at the right data/form */
         if ($data instanceof Post) {
             $repo = $this->em->getRepository('SymbbExtensionSurveyBundle:Survey');
             $survey = $repo->findOneBy(array('post' => $data->getId()));
             if (!is_object($survey)) {
                 $survey = new Survey();
                 $survey->setPost($data);
                 $survey->setEnd(null);
             }
             if (!$survey->getEnd()) {
                 $survey->setEnd(null);
             }
             $form->add("extensionSurvey", new SurveyType($this->user), array("data" => $survey));
         }
     });
 }