Esempio n. 1
0
 public function buildForm(FormBuilderInterface $builder, array $options)
 {
     $platformLanguage = $this->platformConfigHandler->getParameter('locale_language');
     $languages = array_values($this->localeManager->getAvailableLocales());
     $sortedLanguages = array();
     usort($languages, function ($language1, $language2) use($platformLanguage) {
         if ($language1 === $platformLanguage) {
             return -1;
         } elseif ($language2 === $platformLanguage) {
             return 1;
         } else {
             return 0;
         }
     });
     $translationBuilder = $builder->create('translations', 'form', array('virtual' => true));
     foreach ($languages as $language) {
         $fieldName = sprintf('%sTranslation', $language);
         $translationBuilder->add($fieldName, new BadgeTranslationType());
     }
     $builder->add($translationBuilder)->add('automatic_award', 'checkbox', array('required' => false))->add('file', 'file', array('label' => 'badge_form_image'))->add('is_expiring', 'checkbox', array('required' => false))->add('expire_duration', 'integer', array('attr' => array('class' => 'input-sm', 'min' => 1)))->add('expire_period', 'choice', array('choices' => Badge::getExpirePeriodLabels(), 'attr' => array('class' => 'input-sm')));
     $builder->addEventListener(FormEvents::PRE_SET_DATA, function (FormEvent $event) {
         /** @var \Icap\BadgeBundle\Entity\Badge $badge */
         $badge = $event->getData();
         if ($badge && null !== $badge) {
             $this->badgeRuleType->setBadgeId($badge->getId());
             $form = $event->getForm();
             $form->add('rules', 'collection', array('type' => $this->badgeRuleType, 'by_reference' => false, 'attr' => array('class' => 'rule-collections'), 'theme_options' => array('label_width' => 'col-md-3'), 'prototype' => true, 'allow_add' => true, 'allow_delete' => true));
         }
     });
 }
Esempio n. 2
0
 public function __construct(LocaleManager $localeManager, TermsOfServiceManager $termsOfService, TranslatorInterface $translator, array $facets = array())
 {
     $this->langs = $localeManager->retrieveAvailableLocales();
     $this->termsOfService = $termsOfService;
     $this->facets = $facets;
     $this->translator = $translator;
 }
Esempio n. 3
0
 /**
  * @InjectParams({
  *     "localeManager" = @Inject("claroline.manager.locale_manager"),
  *     "contentManager" = @Inject("claroline.manager.content_manager")
  * })
  */
 public function __construct(LocaleManager $localeManager, ContentManager $contentManager)
 {
     $this->langs = $localeManager->getAvailableLocales();
     $this->contentManager = $contentManager;
     $this->tinymce = true;
 }