Add translation, make reason required, and change template for form

This commit is contained in:
Julie Lenaerts 2024-12-17 16:04:05 +01:00
parent 809fda470b
commit 54d9f7152b
4 changed files with 22 additions and 8 deletions

View File

@ -119,6 +119,11 @@ class CalendarController extends AbstractController
public function cancelAction(Calendar $calendar, Request $request): Response
{
// Add voter
// Deal with sms being sent or not
// Communicate cancellation with the remote calendar.
$this->denyAccessUnlessGranted(CalendarVoter::EDIT, $calendar);
[$person, $accompanyingPeriod] = [$calendar->getPerson(), $calendar->getAccompanyingPeriod()];
@ -139,10 +144,11 @@ class CalendarController extends AbstractController
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$this->em->persist($calendar);
$calendar->setStatus($calendar::STATUS_CANCELED);
$this->em->flush();
$this->addFlash('success', $this->translator->trans('calender.calendar item has been canceled!'));
$this->addFlash('success', $this->translator->trans('chill_calendar.calendar_canceled'));
return new RedirectResponse($redirectRoute);
}

View File

@ -27,13 +27,13 @@ class CancelType extends AbstractType
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('cancelReason', EntityType::class, array(
$builder->add('cancelReason', EntityType::class, [
'class' => CancelReason::class,
'required' => false,
'required' => true,
'choice_label' => function (CancelReason $cancelReason) {
return $this->translatableStringHelper->localize($cancelReason->getName());
},
));
]);
}
public function configureOptions(OptionsResolver $resolver)

View File

@ -6,17 +6,24 @@
{% block content %}
{{ form(form) }}
{{ form_start(form) }}
{{ form_row(form.cancelReason) }}
<ul class="record_actions sticky-form-buttons">
<li class="cancel">
<li class="save">
<a
class="btn btn-cancel"
href="{{ chill_return_path_or('chill_calendar_calendar_list_by_period', { 'id': accompanyingCourse.id } )}}"
href="{{ chill_return_path_or('chill_calendar_calendar_list', { 'id': accompanyingCourse.id } )}}"
>
{{ 'Cancel'|trans|chill_return_path_label }}
</a>
</li>
<li>
{{ form_widget(form.submit, { 'attr' : { 'class': 'btn btn-save' }, 'label': 'Save' } ) }}
</li>
</ul>
{{ form_end(form) }}
{% endblock %}

View File

@ -45,6 +45,7 @@ crud:
chill_calendar:
cancel_calendar_item: Annuler rendez-vous
calendar_canceled: Le rendez-vous a été annulé
Document: Document d'un rendez-vous
form:
The main user is mandatory. He will organize the appointment.: L'utilisateur principal est obligatoire. Il est l'organisateur de l'événement.