diff --git a/src/Bundle/ChillAsideActivityBundle/src/Controller/AsideActivityController.php b/src/Bundle/ChillAsideActivityBundle/src/Controller/AsideActivityController.php index a458a02b0..88e53c8d2 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/Controller/AsideActivityController.php +++ b/src/Bundle/ChillAsideActivityBundle/src/Controller/AsideActivityController.php @@ -12,18 +12,30 @@ use Doctrine\Common\Collections\Criteria; final class AsideActivityController extends CRUDController { - /** - * @param QueryBuilder $query - */ - protected function onPostIndexBuildQuery(string $action, Request $request, int $totalItems, PaginatorInterface $paginator, $query) { - - $usr = $this->getUser(); - $id = $usr->getId(); - $criteria = Criteria::create()->andWhere(Criteria::expr()->eq('agent', $id)); + protected function buildQueryEntities(string $action, Request $request) + { + $qb = parent::buildQueryEntities($action, $request); - $query - ->addCriteria($criteria); + if ('index' === $action) { + $qb->andWhere($qb->expr()->eq('e.agent', ':user')); + $qb->setParameter('user', $this->getUser()); + } + + return $qb; } - + protected function orderQuery( + string $action, + $query, + Request $request, + PaginatorInterface $paginator + ) { + if ('index' === $action) { + return $query->orderBy('e.date', 'DESC'); + } + + return parent::orderQuery($action, $query, $request, $paginator); + } + + } diff --git a/src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php b/src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php index 322108c8e..4bf5bbfdc 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php +++ b/src/Bundle/ChillAsideActivityBundle/src/Form/AsideActivityFormType.php @@ -10,6 +10,7 @@ use Chill\MainBundle\Form\Type\ChillTextareaType; use Chill\MainBundle\Templating\TranslatableStringHelper; use Doctrine\ORM\EntityRepository; use Symfony\Bridge\Doctrine\Form\Type\EntityType; +use Symfony\Component\DependencyInjection\ParameterBag\ParameterBagInterface; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\Extension\Core\DataTransformer\DateTimeToTimestampTransformer; use Symfony\Component\Form\Extension\Core\Type\ChoiceType; @@ -27,15 +28,18 @@ final class AsideActivityFormType extends AbstractType private TranslatableStringHelper $translatableStringHelper; private TokenStorageInterface $storage; - public function __construct (TranslatableStringHelper $translatableStringHelper, array $timeChoices, TokenStorageInterface $storage){ - $this->timeChoices = $timeChoices; + public function __construct ( + TranslatableStringHelper $translatableStringHelper, + ParameterBagInterface $parameterBag, + TokenStorageInterface $storage + ){ + $this->timeChoices = $parameterBag->get('chill_activity.form.time_duration'); $this->translatableStringHelper = $translatableStringHelper; $this->storage = $storage; } public function buildForm(FormBuilderInterface $builder, array $options) { - dump($options); $timeChoices = []; foreach ($this->timeChoices as $e) { @@ -49,7 +53,7 @@ final class AsideActivityFormType extends AbstractType ]; $builder - ->add('agent', EntityType::class, + ->add('agent', EntityType::class, [ 'label' => 'Agent', 'required' => true, @@ -90,7 +94,7 @@ final class AsideActivityFormType extends AbstractType 'required' => false, ]); - foreach (['duration'] as $fieldName) + foreach (['duration'] as $fieldName) { $builder->get($fieldName) ->addModelTransformer($durationTimeTransformer); @@ -135,7 +139,7 @@ final class AsideActivityFormType extends AbstractType public function configureOptions(OptionsResolver $resolver): void { $resolver->setDefaults([ - 'data_class' => AsideActivity::class, + 'data_class' => AsideActivity::class, ]); } @@ -143,4 +147,4 @@ final class AsideActivityFormType extends AbstractType { return 'chill_asideactivitybundle_asideactivity'; } -} \ No newline at end of file +} diff --git a/src/Bundle/ChillAsideActivityBundle/src/Menu/SectionMenuBuilder.php b/src/Bundle/ChillAsideActivityBundle/src/Menu/SectionMenuBuilder.php index 09c2336e6..b9776b92b 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/Menu/SectionMenuBuilder.php +++ b/src/Bundle/ChillAsideActivityBundle/src/Menu/SectionMenuBuilder.php @@ -19,7 +19,7 @@ class SectionMenuBuilder implements LocalMenuBuilderInterface { $this->translator = $translator; } - + /** * @param $menuId * @param MenuItem $menu @@ -27,7 +27,6 @@ class SectionMenuBuilder implements LocalMenuBuilderInterface */ public function buildMenu($menuId, MenuItem $menu, array $parameters) { - $menu->addChild($this->translator->trans('Create an aside activity'), [ 'route' => 'chill_crud_aside_activity_new' ]) @@ -36,7 +35,7 @@ class SectionMenuBuilder implements LocalMenuBuilderInterface 'icons' => [ 'plus' ] ]); } - + /** * @return array */ @@ -44,4 +43,4 @@ class SectionMenuBuilder implements LocalMenuBuilderInterface { return [ 'section' ]; } -} \ No newline at end of file +} diff --git a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/admin/layout_asideactivity.html.twig b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/Admin/layout_asideactivity.html.twig similarity index 100% rename from src/Bundle/ChillAsideActivityBundle/src/Resources/views/admin/layout_asideactivity.html.twig rename to src/Bundle/ChillAsideActivityBundle/src/Resources/views/Admin/layout_asideactivity.html.twig diff --git a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/admin/menu_asideactivity.html.twig b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/Admin/menu_asideactivity.html.twig similarity index 100% rename from src/Bundle/ChillAsideActivityBundle/src/Resources/views/admin/menu_asideactivity.html.twig rename to src/Bundle/ChillAsideActivityBundle/src/Resources/views/Admin/menu_asideactivity.html.twig diff --git a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/_delete.html.twig b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/_delete.html.twig index 6871420aa..2f30b14cf 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/_delete.html.twig +++ b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/_delete.html.twig @@ -15,7 +15,9 @@ {% endblock %} - {% block content_form_actions_before %}{% endblock %} + {% block content_form_actions_before %} + + {% endblock %} {% block content_form_actions_confirm_delete %}
  • diff --git a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/delete.html.twig b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/delete.html.twig index 9c8a1ff59..4dd0a8415 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/delete.html.twig +++ b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/delete.html.twig @@ -3,6 +3,6 @@ {# {% block title %}{{ ('crud.' ~ crud_name ~ '.delete.title')|trans({'%crud_name%': crud_name}) }}{% endblock %} #} {% block content %} - {% embed '@ChillAsideActivity/AsideActivity/_delete.html.twig' %} + {% embed '@ChillAsideActivity/asideActivity/_delete.html.twig' %} {% endembed %} -{% endblock content %} \ No newline at end of file +{% endblock content %} diff --git a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/edit.html.twig b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/edit.html.twig index b0b6fed0f..ad0a38f73 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/edit.html.twig +++ b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/edit.html.twig @@ -9,5 +9,6 @@ {% embed '@ChillMain/CRUD/_edit_content.html.twig' %} {# we do not have "view" page. We empty the corresponding block #} {% block content_form_actions_view %}{% endblock %} + {% block content_form_actions_save_and_show %}{% endblock %} {% endembed %} {% endblock %} diff --git a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/list.html.twig b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/list.html.twig index 8963d58f6..d0e02e3d2 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/list.html.twig +++ b/src/Bundle/ChillAsideActivityBundle/src/Resources/views/asideActivity/list.html.twig @@ -18,7 +18,7 @@
    {# Sort activities according to date in descending order #} - {% for entity in entities|sort ((a, b) => b.date <=> a.date) %} + {% for entity in entities %} {% set t = entity.type %}
    @@ -62,30 +62,18 @@ {{ entity.note|chill_markdown_to_html }}
    {% endif %} - +
    {% endif %} #}
    @@ -93,10 +81,13 @@ {% endfor %} + + {{ chill_pagination(paginator) }} + diff --git a/src/Bundle/ChillAsideActivityBundle/src/config/services/form.yaml b/src/Bundle/ChillAsideActivityBundle/src/config/services/form.yaml index ceb9dffc7..23c614937 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/config/services/form.yaml +++ b/src/Bundle/ChillAsideActivityBundle/src/config/services/form.yaml @@ -1,10 +1,6 @@ --- services: - chill.asideactivity.form.type.asideactivity: - class: Chill\AsideActivityBundle\Form\AsideActivityFormType - arguments: - - "@chill.main.helper.translatable_string" - - "%chill_activity.form.time_duration%" - - "@security.token_storage" - tags: - - { name: form.type, alias: chill_asideactivitybundle_asideactivity } \ No newline at end of file + Chill\AsideActivityBundle\Form\: + resource: './../../Form' + autowire: true + autoconfigure: true diff --git a/src/Bundle/ChillAsideActivityBundle/src/config/services/menu.yaml b/src/Bundle/ChillAsideActivityBundle/src/config/services/menu.yaml index 7969d2221..614391a0e 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/config/services/menu.yaml +++ b/src/Bundle/ChillAsideActivityBundle/src/config/services/menu.yaml @@ -1,6 +1,5 @@ services: - Chill\AsideActivityBundle\Menu\SectionMenuBuilder: - arguments: - $translator: '@Symfony\Component\Translation\TranslatorInterface' - tags: - - { name: "chill.menu_builder" } + Chill\AsideActivityBundle\Menu\: + resource: './../../Menu' + autowire: true + autoconfigure: true diff --git a/src/Bundle/ChillAsideActivityBundle/src/translations/messages.fr.yml b/src/Bundle/ChillAsideActivityBundle/src/translations/messages.fr.yml index 7e644392f..a4ddec913 100644 --- a/src/Bundle/ChillAsideActivityBundle/src/translations/messages.fr.yml +++ b/src/Bundle/ChillAsideActivityBundle/src/translations/messages.fr.yml @@ -34,10 +34,10 @@ crud: aside_activity: title_view: Détail de l'activité annexe title_new: Nouvelle activité annexe - title_edit: Edition d'une activité annexe - title_delete: Supprimation d'une activité annexe + title_edit: Édition d'une activité annexe + title_delete: Supprimer une activité annexe button_delete: Supprimer - confirm_message_delete: Êtes-vous sûr de vouloir supprimer cet activité annexe? + confirm_message_delete: Êtes-vous sûr de vouloir supprimer cette activité annexe? aside_activity_category: title_new: Nouvelle catégorie d'activité annexe title_edit: Edition d'une catégorie de type d'activité @@ -58,18 +58,6 @@ Agent: Utilisateur date: Date Duration: Durée Note: Note -5 minutes: 5 minutes -10 minutes: 10 minutes -15 minutes: 15 minutes -20 minutes: 20 minutes -25 minutes: 25 minutes -30 minutes: 30 minutes -45 minutes: 45 minutes -1 hour: 1 heure -1 hour 15: 1 heure 15 -1 hour 30: 1 heure 30 -1 hour 45: 1 heure 45 -2 hours: 2 heures #list My aside activities: Mes activités annexes diff --git a/src/Bundle/ChillMainBundle/ChillMainBundle.php b/src/Bundle/ChillMainBundle/ChillMainBundle.php index 51ef344f2..ee9523273 100644 --- a/src/Bundle/ChillMainBundle/ChillMainBundle.php +++ b/src/Bundle/ChillMainBundle/ChillMainBundle.php @@ -2,6 +2,7 @@ namespace Chill\MainBundle; +use Chill\MainBundle\Routing\LocalMenuBuilderInterface; use Symfony\Component\HttpKernel\Bundle\Bundle; use Symfony\Component\DependencyInjection\ContainerBuilder; use Chill\MainBundle\DependencyInjection\CompilerPass\SearchableServicesCompilerPass; @@ -23,6 +24,10 @@ class ChillMainBundle extends Bundle public function build(ContainerBuilder $container) { parent::build($container); + + $container->registerForAutoconfiguration(LocalMenuBuilderInterface::class) + ->addTag('chill.menu_builder'); + $container->addCompilerPass(new SearchableServicesCompilerPass()); $container->addCompilerPass(new ConfigConsistencyCompilerPass()); $container->addCompilerPass(new TimelineCompilerClass()); diff --git a/tests/app b/tests/app index 8839b431f..bd95d3c96 160000 --- a/tests/app +++ b/tests/app @@ -1 +1 @@ -Subproject commit 8839b431f296733b792c788f2ef58e5ecd6419d3 +Subproject commit bd95d3c96a437757b7e8f35cdfd30da9aeac1a01