Compare commits

...

1020 Commits

Author SHA1 Message Date
julienfastre e963ada4ad Replace Symfony\Component\Security\Core\Security service alias by use Symfony\Bundle\SecurityBundle\Security in tests mocks. 2026-01-09 17:21:07 +01:00
julienfastre 4b3e3e4b0b Add ADMIN_PASSWORD variable to GitLab CI configuration 2026-01-09 17:12:26 +01:00
julienfastre 7d344a7844 Add documentation for creating and managing menus: usage in Twig templates, menu building guidelines, customization options, and common menu examples. 2026-01-09 17:10:51 +01:00
julienfastre 03db3ba881 Add documentation for docgen normalization: format requirements, attribute-based normalization, custom normalizer guidelines, and testing strategies. 2026-01-09 16:52:40 +01:00
julienfastre 21cd0f7c45 Refactor normalizers: update getSupportedTypes to include '*' => false, improve return type handling, and add dedicated test classes for SocialAction, SocialIssue, and other entities. 2026-01-09 16:31:34 +01:00
julienfastre 8ceb937e0e Refactor normalizers: update getSupportedTypes to use match, ensure explicit fallback with '*' => false, and improve type handling. 2026-01-09 16:01:56 +01:00
julienfastre f5e923ca39 Refactor address and postal code serialization: enhance normalization logic, add docgen:read groups and tests, and improve null handling. 2026-01-09 15:58:40 +01:00
julienfastre 1dfebc0297 Refactor normalizers: improve null handling, enhance normalization logic, add dedicated tests, and update supported types. 2026-01-06 17:41:19 +01:00
julienfastre 82821edb2a Refactor GenderDocGenNormalizer: rename to GenderNormalizer, update getSupportedTypes logic, and adjust related tests. 2026-01-06 11:58:53 +01:00
julienfastre e6a2a2d165 Add getSupportedTypes method and update return types in PersonJsonDenormalizerTest 2026-01-05 16:13:17 +01:00
julienfastre 5fb3338af5 Refactor AccompanyingPeriodWorkNormalizer: improve normalization logic, add normalizeProperties method, enhance supportsNormalization, and introduce dedicated tests. 2026-01-05 16:05:16 +01:00
julienfastre 38b24c18bf Refactor AccompanyingPeriodWorkEvaluationDocument serialization: remove redundant read groups, adjust normalization logic, and add dedicated test class. 2026-01-02 17:30:40 +01:00
julienfastre de5bdf7aa6 Add tests for AccompanyingPeriodWorkEvaluationNormalizer and refactor normalization logic 2026-01-02 17:30:31 +01:00
julienfastre a5f3afd54e Add getLocale method to mock translator in ByStepAggregatorTest and ByStepFilterTest 2026-01-02 16:00:05 +01:00
julienfastre b0cb08a07d Add getSupportedTypes and update method signatures in test normalizers 2026-01-02 15:10:48 +01:00
julienfastre bbbf9aa3ee remove dump message 2026-01-02 15:07:56 +01:00
julienfastre da3db1cf7a Remove ORM\ prefix from JoinColumn annotations in PersonHistory entity 2026-01-02 15:04:41 +01:00
julienfastre 3afdedabad Add return types to createValidator methods in test classes 2026-01-02 15:03:22 +01:00
julienfastre 55c11c7f04 fix misc phpstan issues 2025-12-22 18:26:35 +01:00
julienfastre 35d91762d3 adaptations after having merged ticket-app-master 2025-12-22 17:23:50 +01:00
julienfastre 43d6a86627 Merge remote-tracking branch 'origin/ticket-app-master' into migrate_to_sf72
# Conflicts:
#	.gitlab-ci.yml
#	composer.json
#	config/services.yaml
#	phpunit.xml.dist
#	src/Bundle/ChillAsideActivityBundle/src/Entity/AsideActivity.php
#	src/Bundle/ChillCalendarBundle/Entity/CancelReason.php
#	src/Bundle/ChillCalendarBundle/Messenger/Handler/CalendarRemoveHandler.php
#	src/Bundle/ChillCalendarBundle/RemoteCalendar/DependencyInjection/RemoteCalendarCompilerPass.php
#	src/Bundle/ChillDocGeneratorBundle/Service/Messenger/OnGenerationFails.php
#	src/Bundle/ChillJobBundle/src/Entity/Immersion.php
#	src/Bundle/ChillMainBundle/CRUD/Controller/CRUDController.php
#	src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadLocationType.php
#	src/Bundle/ChillMainBundle/Entity/Location.php
#	src/Bundle/ChillMainBundle/Routing/MenuComposer.php
#	src/Bundle/ChillMainBundle/Routing/MenuTwig.php
#	src/Bundle/ChillMainBundle/Security/PasswordRecover/RecoverPasswordHelper.php
#	src/Bundle/ChillMainBundle/Serializer/Normalizer/DateNormalizer.php
#	src/Bundle/ChillMainBundle/Tests/Form/Type/ScopePickerTypeTest.php
#	src/Bundle/ChillMainBundle/Tests/Services/MenuComposerTest.php
#	src/Bundle/ChillPersonBundle/Controller/PersonController.php
#	src/Bundle/ChillPersonBundle/Entity/Person.php
#	src/Bundle/ChillPersonBundle/Form/DataMapper/PersonAltNameDataMapper.php
#	src/Bundle/ChillPersonBundle/Repository/PersonACLAwareRepository.php
#	src/Bundle/ChillPersonBundle/Serializer/Normalizer/PersonJsonNormalizer.php
#	src/Bundle/ChillPersonBundle/Tests/Serializer/Normalizer/PersonJsonNormalizerTest.php
#	src/Bundle/ChillTaskBundle/Form/SingleTaskType.php
2025-12-22 16:36:57 +01:00
julienfastre 14a0c2b4fd Refactor WidgetRenderingTwig: remove TwigFunction usage, replace with attributes for declaring functions. 2025-12-22 15:29:05 +01:00
julienfastre 22c3952c00 misc phpstan issues 2025-12-22 15:28:54 +01:00
julienfastre c94cb741c6 Refactor ChillTwigRoutingHelper to extend AbstractExtension and register it as a Twig extension 2025-12-22 15:28:31 +01:00
julienfastre d714a61a6d Refactor service definitions in menu.yaml to use _defaults for autowiring and autoconfiguration, and update SectionMenuBuilder constructor with property promotion. 2025-12-22 15:28:30 +01:00
julienfastre a199f5983e Refactor SingleTaskType: replace UserPickerType with PickUserDynamicType and CenterResolverDispatcherInterface with CenterResolverManagerInterface. 2025-12-22 15:28:30 +01:00
julienfastre 1b5c3dfc33 Improve type declarations and add PHPDoc for ThirdPartySearch and ThirdPartyRepository 2025-12-22 14:25:55 +01:00
julienfastre ed3fd429a4 Refactor findByDocumentFilename to use findOneByPrefix and implement findOneByPrefix in StoredObjectRepository 2025-12-22 14:21:13 +01:00
julienfastre ef89f37ec3 Set MAILER_DSN to null://null in GitLab CI environment 2025-12-22 13:57:01 +01:00
julienfastre f3486e851a fix cs 2025-12-22 13:42:45 +01:00
julienfastre 741f655cfc Refactor Twig extensions to use attributes for declaring functions and filters, remove AbstractExtension inheritance, and clean up related service definitions. 2025-12-19 12:23:20 +01:00
julienfastre 0d42ed9262 Refactor ChillTwigRoutingHelper to extend AbstractExtension and register Twig filters properly 2025-12-19 11:56:44 +01:00
julienfastre 4042cdd59c Update exposed ports in compose.override.yaml for database, redis, and rabbitmq 2025-12-19 11:56:36 +01:00
julienfastre 5b71d1b522 Update dependencies: lock champs-libres/wopi-bundle and champs-libres/wopi-lib to 1.0.0, add symfony/var-exporter 2025-12-19 11:56:17 +01:00
julienfastre 2b1f337a28 Serialize ticket filter parameters with JSON groups in person list view.
- Updated `list.html.twig` to serialize `ticketFilterParams` using the 'read' group for JSON normalization.
2025-12-17 15:31:53 +01:00
julienfastre b1f7b83fdc Replace PhonenumberConstraint with PhoneNumber constraint in user profile update.
- Updated the `UpdateProfileCommand` to use `\Misd\PhoneNumberBundle\Validator\Constraints\PhoneNumber` instead of the deprecated `PhonenumberConstraint`.
- Removed unused `PhonenumberConstraint` imports from relevant files.
2025-12-16 14:53:33 +01:00
julienfastre e1cda00a98 Optimize motive import with in-memory caching for deduplication.
- Introduced an in-memory cache to store and reuse created or found motives during import, reducing redundant database operations.
- Updated the logic to ensure parent motives are created or retrieved via the cache.
- Modified the test suite to verify parent and child motive relationships with deduplication.
- Ensured labels are consistently formatted and trimmed during the import process.
2025-12-16 14:53:23 +01:00
julienfastre 46b1399c3c Add support for "ordering" field in motive import.
- Extended motive import logic to parse and set the "ordering" field from YAML.
- Ensured invalid "ordering" values throw a runtime exception.
- Updated test cases to verify "ordering" is correctly set for child and standalone motives.
- Verified parent motives retain default "ordering" value (0).
2025-12-16 14:07:38 +01:00
julienfastre 022c0aaebf Add support for parent > child notation in motive import.
- Trimmed labels during motive import to ensure consistent formatting.
- Introduced logic to parse and handle "parent > child" syntax in motive names.
- Automatically creates and links parent motives if they don't exist.
- Added test case to verify parent-child relationship creation and linking.
2025-12-16 14:03:18 +01:00
julienfastre 766a9292e0 Merge branch 'fork/boriswa/1849-1848-1920-1921-fix-bugs' into ticket-app-master 2025-12-12 10:18:22 +01:00
julienfastre cb677b8212 Merge branch '1849-1848-1920-1921-fix-bugs' into 'ticket-app-master'
1849 1848 1920 1921 fix bugs

See merge request Chill-Projet/chill-bundles!940
2025-12-12 09:17:22 +00:00
Boris Waaub b630c940d4 1849 1848 1920 1921 fix bugs 2025-12-12 09:17:22 +00:00
julienfastre dae040ebfb Merge branch 'master' into fork/boriswa/1849-1848-1920-1921-fix-bugs
# Conflicts:
#	src/Bundle/ChillActivityBundle/Resources/public/vuejs/Activity/components/Location/NewLocation.vue
2025-12-12 10:11:31 +01:00
julienfastre ba4e445110 Release v4.10.1 2025-12-11 14:49:07 +01:00
julienfastre 0f1ff9baf4 Fix CS 2025-12-11 14:43:29 +01:00
julienfastre e4365ad058 Merge branch '483-fix-ctrl-c-collabora' into 'master'
Tentatively fix CTRL+C in Collabora editor with edge and chrome browser (+ remove zimbra bundle from configuration)

Closes #483

See merge request Chill-Projet/chill-bundles!942
2025-12-11 13:26:11 +00:00
julienfastre a16d659f69 Tentatively fix CTRL+C in Collabora editor with edge and chrome browser (+ remove zimbra bundle from configuration) 2025-12-11 13:26:10 +00:00
julielenaerts c4a069ba2e Fix display of header for ByActivityNumberAggregator 2025-12-10 05:13:24 +01:00
julielenaerts 2600c6fa2a Fix ByActivityNumberAggregator when used on count exports within ActivityBundle 2025-12-10 05:06:03 +01:00
julielenaerts 09ef95d13e Translate rst files to md format and add new index entries for translation directives and provider 2025-12-10 04:32:19 +01:00
julielenaerts c19b2e18ad Move symfony/loco-translation-provider dependency to require-dev 2025-12-10 04:26:27 +01:00
julielenaerts 27853c594d Fix missing translation variable in NewLocation component 2025-12-10 04:17:29 +01:00
Boris Waaub b7df78bc55 Merge branch 'ticket-app-master' into 1849-1848-1920-1921-fix-bugs 2025-12-09 17:21:13 +01:00
Boris Waaub 24927069a4 FIX: eslint 2025-12-09 17:14:07 +01:00
Boris Waaub 10052cc5e1 FIX: Problème au chargement des "pelotons" 2025-12-09 17:11:45 +01:00
julielenaerts 7714b07a9d Add changie for display of upcoming appointments within person context 2025-12-09 17:11:11 +01:00
Boris Waaub 723beb3c02 FIX: Ajustement du style du formulaire dans ActionToolbarComponent 2025-12-09 16:47:09 +01:00
julienfastre 6e1c9b6f29 Remove chill-project/chill-zimbra-bundle from composer dependencies
- This package provoke failures on build in the CI
2025-12-09 15:38:24 +01:00
julienfastre d80661e479 Release v4.10.0 2025-12-09 15:31:57 +01:00
julienfastre 473c5a9fa3 Remove dependency on @symfony/ux-translator from package.json
- Deleted `@symfony/ux-translator` as it is no longer needed.
- Documented the change in `.changes/unreleased` with no schema modifications.
2025-12-09 15:27:39 +01:00
julienfastre 74d133e739 eslint: automatic fixes 2025-12-09 15:25:11 +01:00
Boris Waaub c92467b284 FIX: Frontend: Problème d'affichage quand il n'y a pas de parent au motif 2025-12-09 11:15:50 +01:00
Boris Waaub d3d2c06348 FIX: Dans les petits écrans, la modale d'accueil pourrait être plus large 2025-12-09 11:12:21 +01:00
Boris Waaub fc66d0e070 FIX: Dans la modale d'accueil du ticket, les boutons doivent être dans le footer 2025-12-09 10:42:36 +01:00
julienfastre acceeeaa2a Merge branch '462-display-calendar-items-for-person' into 'master'
Improve the display of upcoming calendar items within the person render box

Closes #462

See merge request Chill-Projet/chill-bundles!928
2025-12-08 12:45:01 +00:00
LenaertsJ 53b02a0ced Improve the display of upcoming calendar items within the person render box 2025-12-08 12:45:01 +00:00
julienfastre 985761ff00 Merge branch 'ticket/64-identifiants-person' into 'ticket-app-master'
Add Person's external identifiers to creation and edit form

See merge request Chill-Projet/chill-bundles!881
2025-12-05 17:02:26 +00:00
julienfastre 6d93b2b1b6 Add Person's external identifiers to creation and edit form 2025-12-05 17:02:26 +00:00
julienfastre 387bf55b11 fix version constraint in chill-zimbra-bundle 2025-12-05 16:32:30 +00:00
julienfastre 9261bbadc3 Merge branch '1826-1891-1858-mobile-layout-fix-peloton-display-change-comment-display' into 'ticket-app-master'
Fix mobile layout, update Peloton display, and change comment display

See merge request Chill-Projet/chill-bundles!933
2025-12-05 16:27:12 +00:00
Boris Waaub df15c2fee7 Fix mobile layout, update Peloton display, and change comment display 2025-12-05 16:27:12 +00:00
julienfastre e82cee2ce1 convert content to markdown 2025-12-05 17:11:23 +01:00
julienfastre d16de04d27 Merge branch 'master' into ticket-app-master
# Conflicts:
#	docs/source/development/create-a-new-bundle.md
#	src/Bundle/ChillActivityBundle/Resources/public/vuejs/Activity/components/SocialIssuesAcc/CheckSocialAction.vue
#	src/Bundle/ChillActivityBundle/Resources/public/vuejs/Activity/components/SocialIssuesAcc/CheckSocialIssue.vue
#	src/Bundle/ChillCalendarBundle/Menu/UserMenuBuilder.php
#	src/Bundle/ChillCalendarBundle/Resources/views/Calendar/_list.html.twig
#	src/Bundle/ChillCalendarBundle/Resources/views/Calendar/cancelCalendarByAccompanyingCourse.html.twig
#	src/Bundle/ChillCalendarBundle/Resources/views/Calendar/cancelCalendarByPerson.html.twig
#	src/Bundle/ChillCalendarBundle/translations/messages.fr.yml
#	src/Bundle/ChillDocStoreBundle/Resources/public/types/index.ts
#	src/Bundle/ChillMainBundle/Resources/public/lib/api/apiMethods.ts
#	src/Bundle/ChillMainBundle/translations/messages.fr.yml
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/Confirm.vue
2025-12-05 17:04:49 +01:00
julienfastre 14b891b33d Release v4.9.0 2025-12-05 16:54:35 +01:00
julienfastre 7d4f541b7d Merge branch 'eslint-fixes-2025-12' into 'master'
Eslint fixes

See merge request Chill-Projet/chill-bundles!939
2025-12-05 15:09:15 +00:00
julienfastre 4919c03660 Eslint fixes 2025-12-05 15:09:15 +00:00
julienfastre e345170968 Merge branch '462-metadata-project' into 'master'
Add package metadata to ChillZimbrabundle

Closes #462

See merge request Chill-Projet/chill-bundles!937
2025-12-05 15:03:02 +00:00
julienfastre 98e0f51603 Add package metadata to ChillZimbrabundle 2025-12-05 15:03:01 +00:00
julienfastre 56965562ff Merge branch 'fix-user-menu-with-counter' into 'master'
Refactor `UserMenuBuilder` to include `User` type check for better type safety

See merge request Chill-Projet/chill-bundles!938
2025-12-05 14:50:06 +00:00
julienfastre 2f1445a3f3 Refactor UserMenuBuilder to include User type check for better type safety 2025-12-05 14:50:06 +00:00
julienfastre 16c32ed4a9 Merge branch '459-invitation-counter' into 'master'
Add a counter for invitations awaiting reply

Closes #459

See merge request Chill-Projet/chill-bundles!931
2025-12-05 14:24:58 +00:00
LenaertsJ e47c23c903 Add a counter for invitations awaiting reply 2025-12-05 14:24:58 +00:00
julienfastre 2ef789a794 fix eslint 2025-12-05 15:01:21 +01:00
julienfastre a29232410d Merge branch '456-doc-generation-active-status' into 'master'
Show whether doc generation template is active or not + order alphabetically

Closes #456

See merge request Chill-Projet/chill-bundles!914
2025-12-05 12:39:12 +00:00
LenaertsJ 4cbb4c3ae3 Show whether doc generation template is active or not + order alphabetically 2025-12-05 12:39:12 +00:00
julienfastre 9d398f2cb5 Merge branch 'dutch-translations' into 'master'
Dutch translations

See merge request Chill-Projet/chill-bundles!934
2025-12-05 12:00:56 +00:00
LenaertsJ 7186fd9fb8 Dutch translations 2025-12-05 12:00:56 +00:00
julienfastre fb8cacb534 Merge branch '472-zimbra-connector' into 'master'
Create a connector to synchronize with zimbra calendars

Closes #472

See merge request Chill-Projet/chill-bundles!936
2025-12-05 11:59:32 +00:00
julienfastre 92d5fe154e Create a connector to synchronize with zimbra calendars 2025-12-05 11:59:32 +00:00
julienfastre bcbf18addc Merge branch '474-improve-event-accessibility' into 'master'
Improve accessibility of event form

Closes #474

See merge request Chill-Projet/chill-bundles!932
2025-12-05 11:58:25 +00:00
LenaertsJ ec93034802 Improve accessibility of event form 2025-12-05 11:58:24 +00:00
julienfastre 284e737482 Merge branch '475-suggested-users-non-active' into 'master'
Resolve "Les utilisateurs désactivés apparaissent toujours dans les suggestions dans les échanges"

Closes #475

See merge request Chill-Projet/chill-bundles!935
2025-12-05 11:56:29 +00:00
LenaertsJ 4c1690313b Resolve "Les utilisateurs désactivés apparaissent toujours dans les suggestions dans les échanges" 2025-12-05 11:56:29 +00:00
julienfastre f32877b5cd Merge branch '460-display-canceled-calendar-info' into 'master'
Resolve "Lors de l'annulation d'un rendez-vous, obtenir des détails sur le rendez-vous annulé"

Closes #460

See merge request Chill-Projet/chill-bundles!929
2025-12-05 11:47:34 +00:00
LenaertsJ 3aa4c49d00 Resolve "Lors de l'annulation d'un rendez-vous, obtenir des détails sur le rendez-vous annulé" 2025-12-05 11:47:33 +00:00
julienfastre f13d064a27 Merge branch '280-add-missing-fixtures' into 'master'
Add missing fixtures for proper loading of AccompanyingPeriods

Closes #280

See merge request Chill-Projet/chill-bundles!910
2025-12-05 11:39:09 +00:00
julienfastre 08eb9ff439 Merge branch '424-display-entire-comment-activity' into 'master'
Display entire comment for activities in list overview

Closes #424

See merge request Chill-Projet/chill-bundles!930
2025-12-05 11:38:19 +00:00
LenaertsJ 77e0911fc9 Display entire comment for activities in list overview 2025-12-05 11:38:19 +00:00
julienfastre 1bed352a37 Merge branch '386-chill-docs-mkdocs' into 'master'
Resolve "Documentation: utiliser mkdocs (avec l'extension mkdocs-material) plutôt que Sphinx"

Closes #386

See merge request Chill-Projet/chill-bundles!923
2025-12-05 11:33:14 +00:00
LenaertsJ 7ad24bef8a Resolve "Documentation: utiliser mkdocs (avec l'extension mkdocs-material) plutôt que Sphinx" 2025-12-05 11:33:14 +00:00
julielenaerts 0ba5cd849c Remove double display of person id in the banner when there is a deathdate 2025-12-03 11:38:39 +01:00
julielenaerts 0caad2b7cd Update chill bundles to v4.8.2 2025-11-26 14:17:13 +01:00
julielenaerts 7a80307de9 Fix template parameter for update_multiple route on event participations 2025-11-26 14:15:27 +01:00
julielenaerts 035028c81c Add missing fixtures for proper loading of AccompanyingPeriods 2025-11-26 05:35:10 +01:00
julielenaerts 0d32810d0d Change position and color of confirm parcours button 2025-11-24 15:13:16 +01:00
julienfastre b221ad1621 Merge branch '466-set-main-user-activity' into 'master'
Associate activity's creator as a participant by default, and retro-actively append the creator to each activity

Closes #466

See merge request Chill-Projet/chill-bundles!924
2025-11-24 09:23:12 +00:00
julienfastre a96e9d5377 Associate activity's creator as a participant by default, and retro-actively append the creator to each activity 2025-11-24 09:23:12 +00:00
julienfastre 54b73128c3 Merge branch '470-alphabetical-order-admin' into 'master'
Alphabetically order userJobs and mainLocations within user creation form

Closes #470

See merge request Chill-Projet/chill-bundles!926
2025-11-24 09:18:03 +00:00
LenaertsJ 5c0cb01fdc Alphabetically order userJobs and mainLocations within user creation form 2025-11-24 09:18:03 +00:00
julielenaerts 26d9b55c6d Update to v4.8.1 2025-11-20 16:19:52 +01:00
julienfastre add9249502 Merge branch '471-fix-inactive-user-group-api' into 'master'
Hide inactive user groups in API responses

Closes #471

See merge request Chill-Projet/chill-bundles!927
2025-11-19 15:19:25 +00:00
julienfastre 380d48c43a Hide inactive user groups in API responses 2025-11-19 15:19:25 +00:00
julienfastre d21d03d407 Merge branch 'ticket/wp-1854-ticket-app-master' into 'ticket-app-master'
Add filtering tickets by person center

See merge request Chill-Projet/chill-bundles!925
2025-11-19 14:45:01 +00:00
julienfastre 2f930ac138 Add filtering tickets by person center 2025-11-19 14:45:01 +00:00
julielenaerts c7d7c3ac6f Add missing 'id' paramater in path 2025-11-19 13:48:35 +01:00
julielenaerts 7eb895c0e1 Insert name of file as the document title when uploading 2025-11-19 13:33:51 +01:00
julienfastre e1b91ebbfd Release v4.8.0 2025-11-17 15:11:14 +01:00
LenaertsJ 2139b53fb0 Merge branch '449-scope-picker-form-label' into 'master'
Remove the label if there is only one scope and no scope picking field is displayed.

Closes #449

See merge request Chill-Projet/chill-bundles!911
2025-11-17 10:48:16 +00:00
LenaertsJ a43181d60d Remove the label if there is only one scope and no scope picking field is displayed. 2025-11-17 10:48:15 +00:00
julienfastre 04bc1c5de8 Merge branch '463-update-calendar-with-accepted-invites' into 'master'
Update calendar with accepted invites

Closes #463

See merge request Chill-Projet/chill-bundles!921
2025-11-14 14:22:59 +00:00
julienfastre 0a07d68b6d Merge branch '461-calendar-items-clickable' into 'master'
Resolve "Rendre le rendez-vous clicable dans la page "mes rendez-vous""

Closes #461

See merge request Chill-Projet/chill-bundles!919
2025-11-14 14:08:04 +00:00
LenaertsJ fccd29e3c7 Resolve "Rendre le rendez-vous clicable dans la page "mes rendez-vous"" 2025-11-14 14:08:03 +00:00
julienfastre 274ee94196 Merge branch '420-localisation-variable' into 'master'
Ajouter une variable de localisation aux utilisateurs

Closes #420

See merge request Chill-Projet/chill-bundles!904
2025-11-14 13:52:33 +00:00
LenaertsJ 799d04142e Ajouter une variable de localisation aux utilisateurs 2025-11-14 13:52:33 +00:00
julienfastre dfe8d8b0bf Merge branch 'accessibility/improve-login-page' into 'master'
Improve accessibility on the login page

See merge request Chill-Projet/chill-bundles!922
2025-11-14 10:16:08 +00:00
julienfastre 82f347b93a Improve accessibility on the login page 2025-11-14 10:16:08 +00:00
julielenaerts 635efd6f1d Update calendar with accepted invites 2025-11-12 17:01:09 +01:00
julielenaerts 869880d8f3 Revert "Display calendar items linked to person within search results"
This reverts commit f7ea7e4dbf.
2025-11-12 13:08:54 +01:00
julielenaerts f7ea7e4dbf Display calendar items linked to person within search results 2025-11-12 13:00:52 +01:00
julielenaerts 0a58e05230 Update chill bundles to v4.7.0 2025-11-10 16:47:38 +01:00
julienfastre 68c83223dd Merge branch '455-results-objectives-display-order' into 'master'
Resolve "Action d'accompagnement - afficher les objectifs avant les résultats"

Closes #455

See merge request Chill-Projet/chill-bundles!913
2025-11-07 16:23:53 +00:00
LenaertsJ c28bd22560 Resolve "Action d'accompagnement - afficher les objectifs avant les résultats" 2025-11-07 16:23:52 +00:00
julienfastre a5ef2475fb Merge branch 'text-wrapping-badges' into 'master'
Wrap text when it is too long within badges

See merge request Chill-Projet/chill-bundles!918
2025-11-07 14:48:48 +00:00
julielenaerts 86dd9bfb80 Wrap text when it is too long within badges 2025-11-07 15:18:02 +01:00
julienfastre 65bbdc283d Merge branch '1828-1829-fix-bugs-empty-motive-list-and-suggestion-caller' into 'ticket-app-master'
FIX: Frontend: La liste des motifs reste vide et Frontend: l'appelant apparait deux fois dans les suggestions

See merge request Chill-Projet/chill-bundles!917
2025-11-07 12:54:30 +00:00
Boris Waaub f0b3e63d66 FIX: Frontend: La liste des motifs reste vide et Frontend: l'appelant apparait deux fois dans les suggestions 2025-11-07 12:54:29 +00:00
julienfastre c28670f0fd Merge branch '457-merge-thirdparty-bug' into 'master'
Fix the fusion of thirdparty properties that are located in another schema...

Closes #457

See merge request Chill-Projet/chill-bundles!916
2025-11-07 10:50:03 +00:00
LenaertsJ 9e2c030224 Fix the fusion of thirdparty properties that are located in another schema... 2025-11-07 10:50:03 +00:00
julienfastre 41a31944b3 Merge branch 'create-admin-for-motive' into 'ticket-app-master'
Create admin for motive

See merge request Chill-Projet/chill-bundles!897
2025-11-07 10:11:47 +00:00
LenaertsJ 51607572de Create admin for motive 2025-11-07 10:11:46 +00:00
julielenaerts a706c6f337 fix: set back to true suggestion of referrer when creating notification for
accompanyingPeriodWorkDocument
2025-11-06 16:18:33 +01:00
julienfastre bc63b489ee Merge branch '285-cancel-calendar' into 'master'
Permettre d'annuler un rendez-vous

Closes #285

See merge request Chill-Projet/chill-bundles!775
2025-11-06 15:07:11 +00:00
LenaertsJ a4cfc6a178 Permettre d'annuler un rendez-vous 2025-11-06 15:07:11 +00:00
julienfastre f75d1da3b1 Merge branch '385-invitation-list' into 'master'
Add user invitation list page

Closes #385

See merge request Chill-Projet/chill-bundles!866
2025-11-06 12:06:15 +00:00
julienfastre b8b68e5e5a Rename page title key for invitations list to align with translation standards
- Replaced hardcoded title 'My invitations list' with 'invite.list.title' translation key.
2025-11-06 13:00:38 +01:00
julienfastre ae5ba67064 Update UserMenuBuilder to adjust menu labels and sort order
- Renamed 'My invitations list' to 'invite.list.title'.
- Updated the sort order for 'My calendar' from 9 to 8, to place "invitation list" just after the calendar list
2025-11-06 13:00:28 +01:00
julienfastre bfe4dd3aec Merge branch 'master' into 385-invitation-list 2025-11-06 12:14:21 +01:00
julienfastre 1fc5530707 Merge branch '1721-1618-enhance-hierachy-motives-display-and-add-check-box-see-only-comment' into 'ticket-app-master'
Améliorer l'affichage de la hiérarchie des motifs et ajouter une checkbox « Afficher uniquement les commentaires ».

See merge request Chill-Projet/chill-bundles!903
2025-11-06 10:10:06 +00:00
Boris Waaub b31778c068 Améliorer l'affichage de la hiérarchie des motifs et ajouter une checkbox « Afficher uniquement les commentaires ». 2025-11-06 10:10:06 +00:00
julienfastre 305c6deb24 Add vue-tsc to dev dependencies
# Conflicts:
#	.junie/guidelines.md
#	src/Bundle/ChillActivityBundle/Resources/public/vuejs/Activity/components/SocialIssuesAcc.vue
#	src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/App.vue
#	src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/App2.vue
#	src/Bundle/ChillDocStoreBundle/Resources/public/types/generic_doc.ts
#	src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/DropFileWidget/DropFileModal.vue
#	src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/StoredObjectButton/HistoryButton/HistoryButtonListItem.vue
#	src/Bundle/ChillMainBundle/Resources/public/chill/js/date.ts
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/DownloadExport/App.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/App.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/Component/AttachmentList.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/Component/GenericDocItemBox.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/Component/PickGenericDoc.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/Component/PickGenericDocModal.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/_components/EntityWorkflow/EntityWorkflowVueSubscriber.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/_components/Modal.vue
#	src/Bundle/ChillMainBundle/Resources/views/layout.html.twig
#	src/Bundle/ChillMainBundle/translations/messages+intl-icu.fr.yaml
#	src/Bundle/ChillPersonBundle/Resources/public/mod/DuplicateSelector/AccompanyingPeriodWorkSelector.ts
#	src/Bundle/ChillPersonBundle/Resources/public/types.ts
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/App.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/components/FormEvaluation.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AccompanyingPeriodWorkSelector/AccompanyingPeriodWorkList.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AccompanyingPeriodWorkSelector/AccompanyingPeriodWorkSelectorModal.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_js/i18n.ts
#	src/Bundle/ChillPersonBundle/translations/messages.fr.yml
2025-11-06 10:16:36 +01:00
julienfastre d691098a21 Merge branch 'master' into ticket-app-master
# Conflicts:
#	.junie/guidelines.md
#	src/Bundle/ChillActivityBundle/Resources/public/vuejs/Activity/components/SocialIssuesAcc.vue
#	src/Bundle/ChillCalendarBundle/Resources/public/vuejs/Calendar/App.vue
#	src/Bundle/ChillCalendarBundle/Resources/public/vuejs/MyCalendarRange/App2.vue
#	src/Bundle/ChillDocStoreBundle/Resources/public/types/generic_doc.ts
#	src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/DropFileWidget/DropFileModal.vue
#	src/Bundle/ChillDocStoreBundle/Resources/public/vuejs/StoredObjectButton/HistoryButton/HistoryButtonListItem.vue
#	src/Bundle/ChillMainBundle/Resources/public/chill/js/date.ts
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/DownloadExport/App.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/App.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/Component/AttachmentList.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/Component/GenericDocItemBox.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/Component/PickGenericDoc.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/WorkflowAttachment/Component/PickGenericDocModal.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/_components/EntityWorkflow/EntityWorkflowVueSubscriber.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/_components/Modal.vue
#	src/Bundle/ChillMainBundle/Resources/views/layout.html.twig
#	src/Bundle/ChillMainBundle/translations/messages+intl-icu.fr.yaml
#	src/Bundle/ChillPersonBundle/Resources/public/mod/DuplicateSelector/AccompanyingPeriodWorkSelector.ts
#	src/Bundle/ChillPersonBundle/Resources/public/types.ts
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/App.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/components/FormEvaluation.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AccompanyingPeriodWorkSelector/AccompanyingPeriodWorkList.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AccompanyingPeriodWorkSelector/AccompanyingPeriodWorkSelectorModal.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_js/i18n.ts
#	src/Bundle/ChillPersonBundle/translations/messages.fr.yml
2025-11-06 10:16:15 +01:00
julienfastre 3a4c20b53d Merge branch '405-aside-activity-associated-persons' into 'master'
Resolve "Activités annexes: ajouter le nombre d'usagers concernés pour chaque activité annexe"

Closes #405

See merge request Chill-Projet/chill-bundles!895
2025-11-05 09:48:50 +00:00
LenaertsJ b0c86e238d Resolve "Activités annexes: ajouter le nombre d'usagers concernés pour chaque activité annexe" 2025-11-05 09:48:50 +00:00
julienfastre d7614aeab2 Merge branch '454-evaluation-time-spent-choices' into 'master'
Expand timeSpent choices for evaluation document and translate them to user locale or fallback 'fr'

Closes #454

See merge request Chill-Projet/chill-bundles!912
2025-11-05 09:29:51 +00:00
LenaertsJ 671ed21d59 Expand timeSpent choices for evaluation document and translate them to user locale or fallback 'fr' 2025-11-05 09:29:50 +00:00
julienfastre 4b9db6ceb6 Merge branch '451-activity-social-actions-list' into 'master'
Fix: display also social actions linked to parents of the selected social issue

Closes #451

See merge request Chill-Projet/chill-bundles!907
2025-11-05 08:51:47 +00:00
LenaertsJ c79c39b562 Fix: display also social actions linked to parents of the selected social issue 2025-11-05 08:51:47 +00:00
julienfastre bf768b8e99 Merge branch '404-action-list-add-comments' into 'master'
Feature: add columns for comments linked to an activity (comment, user, date)

Closes #404

See merge request Chill-Projet/chill-bundles!909
2025-11-05 08:50:16 +00:00
julienfastre 2df01833ad Merge branch '453-bug-csv-social-actions' into 'master'
Fix: export actions and their results in csv even when action does not have...

Closes #453

See merge request Chill-Projet/chill-bundles!908
2025-11-05 08:47:50 +00:00
LenaertsJ ffb8183d4d Fix: export actions and their results in csv even when action does not have... 2025-11-05 08:47:49 +00:00
julienfastre 5d45339bf7 Merge branch 'fix/loading-wopi-bundle' into 'master'
Fix loading of wopi-bundle

See merge request Chill-Projet/chill-bundles!915
2025-11-05 08:32:55 +00:00
julienfastre e87e5cbbaf Fix loading of wopi-bundle 2025-11-05 08:32:54 +00:00
julienfastre fa8e92ebf5 Merge branch '425-rename-cercle-and-centre' into 'master'
Resolve "Partout, renommer "cercle" en "service" et "centre" en "territoire""

Closes #425

See merge request Chill-Projet/chill-bundles!894
2025-11-04 15:25:11 +00:00
LenaertsJ b7a92bf656 Resolve "Partout, renommer "cercle" en "service" et "centre" en "territoire"" 2025-11-04 15:25:10 +00:00
julienfastre 3dbbda7b64 Merge branch '452-workflow-suivi-ux' into 'master'
Redo ux for selceting follow-up preferences for workflow

Closes #452

See merge request Chill-Projet/chill-bundles!906
2025-11-04 15:00:51 +00:00
julielenaerts 769d76a0cc Fix the possibility to delete a workflow when it is on hold 2025-11-04 13:52:54 +01:00
julienfastre 8f20570f3b Improve return types for methods 2025-11-04 09:56:04 +01:00
julienfastre a113360ccf Update rector config for Symfony container and code/dead code levels
- Added Symfony container XML and PHP paths to the configuration.
- Set levels for dead code, code quality, type coverage, docblocks, and coding style.
2025-11-04 09:55:29 +01:00
julielenaerts 722b37fbcc Set wopi-bundle dependency back to original 2025-11-04 09:28:23 +01:00
julienfastre 6999919d9f rector rules: apply rule with level 0 2025-11-03 18:16:07 +01:00
julienfastre 2ca88d786c fix constructor injection 2025-11-03 18:06:07 +01:00
julienfastre 662e962549 fix CS 2025-11-03 16:22:33 +01:00
julienfastre 7654db4e39 apply rector ruleset "symfony constructor injection" 2025-11-03 16:22:02 +01:00
julienfastre adab2ffe63 Refactor ChillTwigRoutingHelper to extend AbstractExtension and improve Twig functionality
- Updated `ChillTwigRoutingHelper` to extend `AbstractExtension` for consistency with Twig best practices.
- Moved `chill_return_path_label` from a Twig attribute to a filter within `getFilters`.
- Removed unnecessary dependency on `RequestStack` in `services/templating.yaml`.
2025-11-03 15:41:54 +01:00
julienfastre 590f7c1055 Refactor constructor in CountNotificationTask using promoted properties
- Simplified constructor by utilizing property promotion for dependencies in PHP 8.
2025-11-03 14:11:15 +01:00
julienfastre 843ae0a36a fix loading of some twig extensions in DI 2025-11-03 14:08:25 +01:00
julienfastre 9554d21f82 rector rules for symfony set list 7.x 2025-11-03 13:59:46 +01:00
julienfastre 58c1e7bfaa rector rules for symfony set list 6.0 2025-11-03 13:50:15 +01:00
julienfastre 9093dceea4 rector rules for symfony set list 6.4 2025-11-03 13:44:31 +01:00
julienfastre cdc489f01e Apply new rector rules regarding to PHP version to 8.4 2025-11-03 13:36:51 +01:00
julienfastre d6f5ef4bb1 Extend Rector configuration to support PHP 8.0 to 8.4 features
- Added `SetList::PHP_80` to `SetList::PHP_84` for advanced PHP version support.
- Enhanced compatibility by incorporating broader PHP syntax improvements.
2025-11-03 13:36:23 +01:00
julienfastre 1c17e218a5 Upgrade to PHP 8.4 and update dependencies
- Updated `.gitlab-ci.yml` to use `chill/base-image:8.4-edge` across all stages.
- Updated `composer.json` to require PHP `^8.4` and upgraded `lexik/jwt-authentication-bundle` to `^3.1.1`.
2025-11-03 13:23:40 +01:00
julienfastre 7fd219d517 Refactor JWTOnDavUrlAuthenticator to extend JWTAuthenticator and update dependencies
- Replaced `JWTTokenAuthenticator` with `JWTAuthenticator` for compatibility with updated security components.
- Updated constructor to use `UserProviderInterface` instead of `TokenStorageInterface`.
- Enhanced `getTokenExtractor` with correct return type declaration.
2025-11-03 13:12:38 +01:00
julielenaerts bf38ec22c9 Add missing import in FormEvaluation.vue and temporarily set wopi-bundle requirement to specific commit (until bundles is fully upgraded to sf7) 2025-10-30 11:40:20 +01:00
julienfastre f8571f22a6 Update dependencies: add phpstan/phpstan-doctrine to composer.json
- Introduced `phpstan/phpstan-doctrine` to enhance PHPStan analysis for Doctrine integrations.
2025-10-30 01:33:33 +01:00
julienfastre fabbb0c091 fix phpstan 2025-10-30 01:33:28 +01:00
julienfastre 14d65fa931 apply rector rules 2025-10-30 01:20:52 +01:00
julienfastre 7a790d43ec Refactor Rector configuration for improved readability and simplicity
- Consolidated configurations using `RectorConfig::configure()` method.
- Simplified paths and enabled Composer-based configuration for Twig, Doctrine, and Symfony.
2025-10-30 01:09:13 +01:00
julienfastre 0d536cc8ce Update dependencies in composer.json and enhance PHPStan configuration
- Upgraded multiple dependencies including `knplabs/knp-time-bundle`, `symfony/translation`, `symfony/twig-bundle`, and others to newer versions.
- Added `symfony/containerXmlPath` configuration in `phpstan.dist.neon` to improve PHPStan analysis.
- Introduced `phpstan/phpstan-symfony` to better handle Symfony-specific features.
2025-10-30 00:57:07 +01:00
julienfastre 5634d72d6f fix cs 2025-10-30 00:42:35 +01:00
julienfastre d74179f1e1 Refactor CSV creation and reading to use Reader::from and Writer::from.
- Replaced deprecated `createFromPath` and `createFromStream` methods with `from`.
- Updated all relevant commands, services, controllers, and exporters.
2025-10-30 00:22:22 +01:00
julielenaerts 3d99c0f561 Feature: add columns for comments linked to an activity (comment, user, date) 2025-10-29 15:26:06 +01:00
julielenaerts 2221d17930 Redo ux for selceting follow-up preferences for workflow 2025-10-29 11:17:47 +01:00
julienfastre 9c2abb2dfa Merge branch 'send-notification-log-to-channel' into 'master'
Send notifications log to dedicated `notifierLogger` channel if available

See merge request Chill-Projet/chill-bundles!905
2025-10-27 15:58:48 +00:00
julienfastre 94744b9542 Send notifications log to dedicated notifierLogger channel if available 2025-10-27 15:58:48 +00:00
julielenaerts f42bb498e4 Fix deprecation notice League/csv for createFromStream and createFromPath replaced by new from() method 2025-10-27 13:21:04 +01:00
julielenaerts 01889ac671 Upgrade to v4.6.1 2025-10-27 12:59:11 +01:00
julielenaerts 62e5842311 Fix case where no 'reason' is picked within the PersonHavingActivityBetweenDateFilter.php 2025-10-27 12:50:34 +01:00
julielenaerts 426d0dc193 Use query.all() instead of query.get() 2025-10-22 10:21:34 +02:00
julienfastre a22cbe0239 Merge branch 'ticket/add-events-on-change' into 'ticket-app-master'
Add Events when a ticket is updated, and trigger asynchronously post update events

See merge request Chill-Projet/chill-bundles!902
2025-10-16 12:34:12 +00:00
julienfastre 98902bdeb8 Add Events when a ticket is updated, and trigger asynchronously post update events 2025-10-16 12:34:12 +00:00
julienfastre 4765d4fe28 Merge branch '1677-create-ticket-list-for-user-file' into 'ticket-app-master'
Créer la page et la liste des tickets dans le dossier d'usager

See merge request Chill-Projet/chill-bundles!891
2025-10-15 11:06:04 +00:00
Boris Waaub 30bcb85549 Créer la page et la liste des tickets dans le dossier d'usager 2025-10-15 11:06:02 +00:00
julienfastre 8ad6f397a8 Release v4.6.0 2025-10-15 12:40:22 +02:00
julienfastre d713704633 Merge branch '394-page-workflow-subscribed-only-finalize' into 'master'
Only show active workflow on the page "my tracked workflows"

Closes #394

See merge request Chill-Projet/chill-bundles!901
2025-10-15 10:13:38 +00:00
julienfastre b1fa9242a0 Only show active workflow on the page "my tracked workflows" 2025-10-15 10:13:38 +00:00
julienfastre 6ac554f93a Merge branch '448-fix-daily-cronjob-digest' into 'master'
Fix sending of daily notification, when the previous last_execution parameter is not a valid last_execution date format

Closes #448

See merge request Chill-Projet/chill-bundles!900
2025-10-15 10:12:10 +00:00
julienfastre 372d8e5825 Fix sending of daily notification, when the previous last_execution parameter is not a valid last_execution date format 2025-10-15 10:12:10 +00:00
julienfastre 10f05e5559 Merge branch 'fix/fix-deletion-attachments' into 'master'
Take permissions into account for deletion of WorkflowAttachment (+ type safety)

See merge request Chill-Projet/chill-bundles!899
2025-10-13 14:12:06 +00:00
julienfastre ddb2a65419 Take permissions into account for deletion of WorkflowAttachment (+ type safety) 2025-10-13 14:12:06 +00:00
julienfastre 8d40a8089f Merge branch '446-fix-duplicated-filename-stored-object-version' into 'master'
Enforce filename uniqueness in `StoredObjectVersion` with partial unique index...

Closes #446

See merge request Chill-Projet/chill-bundles!898
2025-10-13 10:47:47 +00:00
julienfastre e1bf4a24d2 Enforce filename uniqueness in StoredObjectVersion with partial unique index... 2025-10-13 10:47:47 +00:00
julielenaerts b132956ddc phpstan boolean corrections 2025-10-09 13:57:30 +02:00
julielenaerts 03fa79c93b Change use statement for Security dependency 2025-10-09 11:20:18 +02:00
julielenaerts 373caeb3e3 Remove unnecessary artifact keys (cache vendor) for phpstan, rector, and phpunit. Use the vendor that was produced and saved in the build step. Dependency on build step added. 2025-10-09 10:41:11 +02:00
julienfastre 208a378185 Merge branch 'fix_mado_to_validate' into 'master'
Fix loading of classlists in SocialIssuesAcc.vue

See merge request Chill-Projet/chill-bundles!833
2025-10-08 11:44:49 +00:00
julienfastre 9089c8959b remove ux/translator package in error 2025-10-08 11:35:47 +00:00
julienfastre 1b9b581c31 Hide top_banner by default 2025-10-08 13:10:26 +02:00
julienfastre aa1abe4c88 Merge branch '423-environment-banner' into 'master'
Resolve "Ajouter un bandeau qui permet de distinguer les différents environnements"

Closes #423

See merge request Chill-Projet/chill-bundles!896
2025-10-08 11:05:22 +00:00
LenaertsJ d82c9cc9a7 Resolve "Ajouter un bandeau qui permet de distinguer les différents environnements" 2025-10-08 11:05:22 +00:00
julielenaerts a7e3b1c5d2 Use an object (instead of string) for dynamic classList in SocialIssuesAcc.vue component 2025-10-08 11:37:02 +02:00
julielenaerts 84cf11933d Fix loading of classlists in SocialIssuesAcc.vue 2025-10-08 11:21:09 +02:00
julielenaerts bc2fbee5c6 Fix: notification edit template
form field addressesEmail removed
2025-10-06 12:14:00 +02:00
julielenaerts 1152be4d45 Merge branch 'master' into migrate_to_sf72
# Conflicts:
#	src/Bundle/ChillMainBundle/Controller/UserProfileController.php
#	src/Bundle/ChillMainBundle/Entity/User.php
#	src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkDuplicateController.php
#	src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkEvaluationDocumentDuplicateController.php
#	src/Bundle/ChillPersonBundle/Form/Type/PickLinkedAccompanyingPeriodWorkType.php
2025-10-06 12:01:58 +02:00
julienfastre ebd10ca522 Merge branch 'fix/history-of-versions-stored-object' into 'master'
Fix the rendering of storedObject's history

See merge request Chill-Projet/chill-bundles!893
2025-10-03 20:47:06 +00:00
julienfastre d3a31be412 Fix re-ordering of StoredObjectVersion in the list of versions
As some intermediate versions are remove, this may lead to situation where the indexes are not continous. In that case, the array is not a list, and is rendered as an array with numeric indexes, instead of a list of elements. The HistoryListItem component fails to render.

- Ensured proper handling of removed versions by using `array_values` to reindex items.
- Added test case to validate the result after removing a version.
- Asserted the results are a proper list in the API response.
2025-10-03 22:40:59 +02:00
julienfastre d159a82f88 Update import paths in HistoryButtonListItem.vue to use aliases
- Changed types import to use `ChillDocStoreAssets/types`.
- Updated `ISOToDatetime` import to use `ChillMainAssets/chill/js/date`.
2025-10-03 22:20:51 +02:00
julienfastre c2d9c73fd4 Release v4.5.1 2025-10-03 14:11:41 +02:00
julienfastre 0d6d15fcf7 Merge branch 'fix/conversion-exception' into 'master'
Introduce `ConversionWithSameMimeTypeException` for improved error handling in document conversion.

See merge request Chill-Projet/chill-bundles!892
2025-10-03 12:10:24 +00:00
julienfastre f9ad96c78b Introduce ConversionWithSameMimeTypeException for improved error handling in document conversion.
- Added the `ConversionWithSameMimeTypeException` to handle cases where document conversion is requested for the same MIME type.
- Updated `StoredObjectToPdfConverter` to throw the new exception when encountering such cases.
- Enhanced error logging in `PostSendExternalMessageHandler` to capture these specific conversion errors.
2025-10-03 13:57:06 +02:00
julienfastre fcc9529a20 Add missing javascript dependency in package.json 2025-10-03 13:56:20 +02:00
julienfastre 955cb817c4 Release v4.5.0 2025-10-03 12:09:17 +02:00
julienfastre 6d2e78ce55 Fix parameter handling in MenuComposer and MenuTwig
- Corrected `routeParameters` assignment in `MenuComposer` for proper parameter usage.
- Adjusted `menus` and `routes` assignment order in `MenuTwig` for consistent handling.
2025-10-03 12:00:51 +02:00
julienfastre 823f9546b9 Merge branch '421-signature-fixes' into 'master'
Signature fixes

Closes #421

See merge request Chill-Projet/chill-bundles!887
2025-10-03 09:49:34 +00:00
LenaertsJ be39fa16e7 Signature fixes 2025-10-03 09:49:33 +00:00
julielenaerts 34f15378c5 php stan fixes 2025-10-02 17:31:27 +02:00
julielenaerts 9a11e12669 Update php cs fixer to latest version 3.88.2 with fixes 2025-10-02 16:54:11 +02:00
julielenaerts 7fceef03f7 Rector up to sf71 + doctrine set lists 2025-10-02 16:51:03 +02:00
julielenaerts 3aa2666646 Rector sf62 changes 2025-10-02 16:31:50 +02:00
julielenaerts 8fc19d5c28 Rector sf6 changes 2025-10-02 16:25:30 +02:00
julielenaerts 4a08de09b8 Rector php82 changes 2025-10-02 16:19:16 +02:00
julielenaerts f2922018ce Fix variable name for correct routing 2025-10-02 15:30:33 +02:00
julielenaerts 86422a5946 Replace deprecated get('session') and instead access session through RequestStack in ExportController.php 2025-10-02 15:22:28 +02:00
julielenaerts aa0db40224 Autowire ElementController 2025-10-01 18:50:16 +02:00
julielenaerts 37b8297567 Set parameters separately, no array accepted for setParameters() 2025-10-01 18:39:03 +02:00
julielenaerts 32d2bb002b Remove no longer used annotation use statements and replace with attribute use statements 2025-10-01 18:38:41 +02:00
julielenaerts d8528dceab Remove use statements of no longer existing classes ContextAwareDenormalizerInterface and ContextAwareNormalizerInterface, 2025-10-01 18:11:12 +02:00
julielenaerts 067a36d90e [breaking] Reinstate normalizer to previous state. Earlier fix still encountering problems so undone 2025-10-01 18:04:07 +02:00
julielenaerts c2294e08a5 Inject RequestStack to get session 2025-10-01 17:08:55 +02:00
julielenaerts eac5a7f853 New phpstan baseline with symfony 7.2 level 5 2025-10-01 14:55:50 +02:00
julielenaerts f17ed7a4f8 Implement global circular reference handler in line with latest symfony practices and remove now redundant code from current normalizers 2025-10-01 14:55:24 +02:00
julielenaerts d4379cef6a Fix visibility of EntityManager parameter in child classes 2025-10-01 10:10:34 +02:00
julielenaerts 119d870ac8 Remove implementation MessageHandlerInterface and use #[AsMessageHandler] attribute
This interface no longer exists
2025-10-01 10:05:12 +02:00
julielenaerts 74c9eb5585 Rector corrections 2025-09-30 16:23:27 +02:00
julienfastre 61ca700bbe Merge branch '1682-1683-1684-fix-bug-mr-884' into 'ticket-app-master'
FIX des bugs du merge request 884

See merge request Chill-Projet/chill-bundles!885
2025-09-30 13:49:04 +00:00
Boris Waaub b43aeebc3c FIX des bugs du merge request 884 2025-09-30 13:49:04 +00:00
julielenaerts f93c7e014f Add test for MyInvitationsController.php 2025-09-30 15:45:26 +02:00
julielenaerts e6a799abc4 Add translation for invitation list page title 2025-09-30 15:30:38 +02:00
julielenaerts 68a0ef7115 Reorganize templates to allow re-use of _list.html.twig within listByUser.html.twig template 2025-09-30 15:30:20 +02:00
julielenaerts 1675c56f3d Fix order of paginator parameters passed to findBy method 2025-09-30 15:29:41 +02:00
julienfastre 056e2dcc5f Merge branch 'ticket/WP1617-motifs-hierarchiques' into 'ticket-app-master'
Support for parent/children motives

See merge request Chill-Projet/chill-bundles!886
2025-09-30 13:12:06 +00:00
julienfastre e57d1ac696 Support for parent/children motives 2025-09-30 13:12:06 +00:00
julielenaerts 675e8450fc WIP: switch from ACLAware to normal repository usage 2025-09-30 14:34:47 +02:00
julielenaerts 4ffd7034d0 feat: add invitation list
- Introduced `MyInvitationsController` for managing user invitations
- Added `InviteACLAwareRepository` and its interface for handling invite data operations
- Created views for listing and displaying user-specific invitations
- Updated user menu to include "My invitations list" option
2025-09-30 14:34:47 +02:00
julienfastre 0eff1d2e79 Merge branch 'ticket/improve-local-menu-builder' into 'ticket-app-master'
Refactor `MenuComposer` to improve type safety and simplify local menu builder integration

See merge request Chill-Projet/chill-bundles!890
2025-09-29 15:03:05 +00:00
julienfastre 3928b2cc7a Refactor MenuComposer to improve type safety and simplify local menu builder integration 2025-09-29 15:03:05 +00:00
julienfastre 4f51ef81ad Add resources and examples for chill:main:ticket_motives_import command
- Added a `README.md` file in `resources/ticket_motives_import/` to explain the command's usage.
- Included a sample `motives.yaml` file with predefined ticket motives for importing.
2025-09-29 13:05:42 +02:00
julienfastre 4637dc692c Add OverrideTranslationCommand for generating customized translation catalogues
- Introduced a Symfony console command `chill:main:override_translation` to apply YAML-defined translation overrides.
- Added an example configuration file in `resources/translation_override/` to illustrate usage.
- Updated service definitions to register the new command.
2025-09-29 13:05:32 +02:00
julienfastre 38935edb93 Merge branch '71-fix-bug-add-urgent-on-init-modal-add-config-homepage' into 'ticket-app-master'
Correction de bugs, ajout champs urgents dans la modal d'initialisation du ticket et ajout d'un configuration pour l'affichage des tabs dans la homepage

See merge request Chill-Projet/chill-bundles!884
2025-09-22 09:23:30 +00:00
Boris Waaub e1ef65d4ca Correction de bugs, ajout champs urgents dans la modal d'initialisation du ticket et ajout d'un configuration pour l'affichage des tabs dans la homepage 2025-09-22 09:23:30 +00:00
julienfastre c8bb7575e7 Merge branch '426-increase_nb_chars_to_14_chill_password' into 'master'
#426 Increased the number of required characters when setting a new password in Chill

Closes #426

See merge request Chill-Projet/chill-bundles!883
2025-09-19 07:03:51 +00:00
juminet 80a3734171 #426 Increased the number of required characters when setting a new password in Chill 2025-09-19 07:03:51 +00:00
julienfastre ec9d0be70b Merge branch '71-task-feature-and-bug-by-status-for-boris' into 'ticket-app-master'
Misc: homepage widget with tickets, and improvements in ticket list

See merge request Chill-Projet/chill-bundles!879
2025-09-16 11:16:57 +00:00
Boris Waaub 0ba2cbc1e8 Misc: homepage widget with tickets, and improvements in ticket list 2025-09-16 11:16:57 +00:00
julienfastre e87429933a Merge branch 'ticket/filter-ticket-by-id' into 'ticket-app-master'
Add ticket filtering "byTicketId"

See merge request Chill-Projet/chill-bundles!882
2025-09-15 09:17:23 +00:00
julienfastre 8e2e676e3d Add ticket filtering "byTicketId" 2025-09-15 11:11:40 +02:00
julienfastre ab98f3a102 Release v4.4.2 2025-09-12 12:47:06 +02:00
julienfastre 7516e68d77 Merge branch 'fix/docgen-after-accp-work-refacto' into 'master'
Fix document generation and workflow generation do not work on accompanying period work documents

See merge request Chill-Projet/chill-bundles!880
2025-09-12 10:42:34 +00:00
julienfastre 7b60b7a8af Fix document generation and workflow generation do not work on accompanying period work documents 2025-09-12 10:42:34 +00:00
julienfastre d984dec7db Release v4.4.1 2025-09-11 16:26:51 +02:00
julienfastre 46a4dedab8 Merge branch 'missing_commit_duplicate_evaluation' into 'master'
Fix translations and close button modal for duplicate evaluation document

See merge request Chill-Projet/chill-bundles!878
2025-09-11 14:21:05 +00:00
LenaertsJ db98519e65 Fix translations and close button modal for duplicate evaluation document 2025-09-11 14:21:05 +00:00
julielenaerts 69b59d2ae2 Correct syntax in .env file for redis_url 2025-09-11 14:03:24 +02:00
julielenaerts 90f86bf566 fix CalendarNormalizerTest.php 2025-09-11 14:03:01 +02:00
julienfastre c39637180a Release v4.4.0 2025-09-11 13:04:50 +02:00
julienfastre 15f9409bc8 Merge branch '369-duplicate-evaluation-document' into 'master'
Resolve "Dupliquer une document d'une évaluation vers une autre" + "Déplacer un document vers une autre évaluation"

Closes #369

See merge request Chill-Projet/chill-bundles!813
2025-09-11 11:01:16 +00:00
LenaertsJ 5b90d23367 Resolve "Dupliquer une document d'une évaluation vers une autre" + "Déplacer un document vers une autre évaluation" 2025-09-11 11:01:16 +00:00
julielenaerts b363bd3425 fix CalendarRangeSyncerTest.php 2025-09-11 12:50:24 +02:00
julielenaerts 6ceb1b9544 Attempt fix ActivityVoterTest.php 2025-09-11 12:44:06 +02:00
julielenaerts 94b5c06d10 Fix TranslatableActivityTypeTest.php 2025-09-11 12:12:29 +02:00
julielenaerts 895e1be9ef Fix fixtures
- Inject parameters directly instead of getting from container
- User PasswordHasher instead of EncoderFactory
- set parameters directly and correctly encode values to json
2025-09-11 11:44:53 +02:00
julielenaerts 94a0eb1a0a Fix ActivityTest.php to use setParent() instead of addChild() method. Latest version of Doctrine stricter in keeping relationships synced. 2025-09-11 09:57:10 +02:00
julielenaerts cc8151546a Undo inadequate fix of normalizers 2025-09-11 09:40:37 +02:00
julienfastre c48625d1cd Merge branch 'bug/1607-the-user-preferences-for-notification-in-profile-are-not-shown-correctly' into 'master'
Resolve "user notification preferences are not displayed correctly"

See merge request Chill-Projet/chill-bundles!877
2025-09-10 16:28:45 +00:00
julienfastre 1195b54a68 Resolve "user notification preferences are not displayed correctly" 2025-09-10 16:28:45 +00:00
julielenaerts 4bd9e2ba7d fix: update CRUD routing controller syntax
- Replace `:` with `::` for `_controller` to align with modern Symfony standards
2025-09-10 17:12:14 +02:00
julielenaerts 509b2c2590 fix: circular reference problems during fetches
- Add code snippet to avoid circular reference in SocialActionNormalizer.php, AccompanyingPeriodWorkEvaluationDocumentNormalizer.php, AccompanyingPeriodWorkEvaluationNormalizer.php, and AccompanyingPeriodWorkNormalizer.php
2025-09-10 15:06:13 +02:00
julielenaerts 3480495be1 fix: update configuration of TrackCreateUpdateSubscriber.php
- Update config to be conform with symfony 7.3
- Create unit test for TrackCreateUpdateSubscriber.php
2025-09-10 13:24:50 +02:00
julielenaerts 4123aa6550 Merge branch 'master' into migrate_to_sf72 2025-09-09 17:42:28 +02:00
julielenaerts 835d79a809 refactor: adjust TrackCreateUpdateSubscriber for strict types and improve user handling
- Add `readonly` class and typed method return values
- Replace `LifecycleEventArgs` with specific `PrePersistEventArgs` and `PreUpdateEventArgs`
- Simplify `DateTimeImmutable` instantiation
- Enhance user retrieval using variable assignment for type-checking
2025-09-09 17:41:03 +02:00
julielenaerts 2a280b814f Refactor view templates: relocate 'merge' action block and standardize 'duplicate link' block handling 2025-09-09 17:36:46 +02:00
julielenaerts ffeba3818b refactor: improve test setup and entity references in SingleTaskControllerTest
- Remove unnecessary kernel boot in `setUp`
- Use DI container retrieval for entity manager
- Replace string class references with `::class` constants
2025-09-09 17:09:33 +02:00
julielenaerts f88718e263 fix: update CalendarTypeTest to use ATOM date format
- Adjust assertions to use `ATOM` date format for `startDate` and `endDate`
2025-09-09 16:08:27 +02:00
julielenaerts 2433737df0 refactor: remove unused event arguments from entity listener methods
- Simplify method signatures by removing `$eventArgs` parameter
2025-09-09 16:01:17 +02:00
julielenaerts af7d635714 fix: update tests and exports to use consistent class references
- Use `NativeQuery` instead of `AbstractQuery` in `SummaryBudgetTest`
- Replace string entity reference with `Activity::class` in `ListActivity`
2025-09-09 16:00:55 +02:00
julielenaerts 34213ac093 fix: allow null safe navigation in ByActivityTypeAggregator normalizeFormData method 2025-09-09 15:58:53 +02:00
julienfastre e12ad563a3 Merge branch '1604-by-creator-and-by-user-assign-selector-for-ticket-list' into 'ticket-app-master'
[Frontend] Ajouter les sélecteur "par créateur", et "par utilisateur assigné"

See merge request Chill-Projet/chill-bundles!876
2025-09-09 08:24:08 +00:00
Boris Waaub 711aa8db9b [Frontend] Ajouter les sélecteur "par créateur", et "par utilisateur assigné" 2025-09-09 08:24:08 +00:00
julielenaerts 8d6f76a8b7 Fix import of Security 2025-09-09 09:35:12 +02:00
julielenaerts 941acea4d9 Merge branch 'master' into migrate_to_sf72
# Conflicts:
#	src/Bundle/ChillEventBundle/Controller/EventController.php
#	src/Bundle/ChillEventBundle/Controller/ParticipationController.php
#	src/Bundle/ChillEventBundle/DependencyInjection/ChillEventExtension.php
#	src/Bundle/ChillEventBundle/Entity/Event.php
#	src/Bundle/ChillEventBundle/Form/EventType.php
#	src/Bundle/ChillEventBundle/Menu/AdminMenuBuilder.php
#	src/Bundle/ChillEventBundle/config/services.yaml
#	src/Bundle/ChillEventBundle/config/services/controller.yaml
#	src/Bundle/ChillMainBundle/Resources/views/Menu/user.html.twig
#	src/Bundle/ChillPersonBundle/Controller/AccompanyingPeriodWorkDuplicateController.php
#	src/Bundle/ChillPersonBundle/Controller/PersonController.php
#	src/Bundle/ChillPersonBundle/Form/PersonType.php
2025-09-09 09:33:27 +02:00
julienfastre e78d44953f Merge branch 'ticket/improve-ticket-list' into 'ticket-app-master'
Fix bugs in api endpoint to filter tickets, and add parameters byAddresseeGroup and byCreator

See merge request Chill-Projet/chill-bundles!875
2025-09-08 14:18:02 +00:00
julienfastre 18f67801c7 Fix bugs in api endpoint to filter tickets, and add parameters byAddresseeGroup and byCreator 2025-09-08 14:18:02 +00:00
julienfastre c815e6bc69 Merge branch 'master' into ticket-app-master 2025-09-08 16:13:02 +02:00
julielenaerts 230c758255 Update bundles to v4.3.0 2025-09-08 16:05:09 +02:00
julienfastre eafda987ae Merge branch '412-absence-enddate' into 'master'
Resolve "Absence user: add end date"

Closes #412

See merge request Chill-Projet/chill-bundles!865
2025-09-08 13:47:14 +00:00
LenaertsJ 7db8a371fc Resolve "Absence user: add end date" 2025-09-08 13:47:14 +00:00
julielenaerts 0d0649dd31 Change route URL to avoid clash with person duplicate controller method 2025-09-08 14:51:54 +02:00
julienfastre 807f2711fe Merge branch 'fix-and-change-from-board-78' into 'ticket-app-master'
Améliorations liées au board 78

See merge request Chill-Projet/chill-bundles!873
2025-09-08 12:19:49 +00:00
Boris Waaub cd594cd580 Améliorations liées au board 78 2025-09-08 12:19:49 +00:00
julienfastre ac12b8cdcf Merge branch 'add-permission-list-command' into 'master'
Add `RoleDumper` and `DumpListPermissionsCommand` to generate a markdown list of permissions

See merge request Chill-Projet/chill-bundles!874
2025-09-05 16:55:45 +00:00
julienfastre 9c1611d052 Add RoleDumper and DumpListPermissionsCommand to generate a markdown list of permissions 2025-09-05 16:55:45 +00:00
julienfastre fb6b26bfb5 fix type hinting 2025-09-05 18:37:36 +02:00
julienfastre c5cedb8bd6 fix cs 2025-09-05 18:34:37 +02:00
julienfastre 2665e43a61 Merge branch 'master' into ticket-app-master
# Conflicts:
#	.eslint-baseline.json
#	src/Bundle/ChillMainBundle/Entity/User.php
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/Address/components/AddAddress.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/Address/components/AddAddress/AddressMore.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/Address/components/AddAddress/AddressSelection.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/Address/components/AddAddress/CitySelection.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/Address/components/AddAddress/CountrySelection.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/Address/components/EditPane.vue
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/Address/components/ShowPane.vue
#	src/Bundle/ChillThirdPartyBundle/translations/messages.fr.yml
2025-09-05 18:32:01 +02:00
julielenaerts 90e3043c3d Junie guidelines: fix grammar and typos in development guidelines 2025-09-04 17:26:55 +02:00
julielenaerts af13bf9088 Update chill bundles to v4.2.1 2025-09-03 21:12:21 +02:00
julielenaerts 4aa65d69c7 Merge branch 'master' of gitlab.com:Chill-Projet/chill-bundles 2025-09-03 21:11:06 +02:00
julielenaerts 9e33aec594 Handle different export types in ExportConfigNormalizer and allow null/array checks for dataFormatter in ExportController 2025-09-03 21:10:58 +02:00
julienfastre f88bc7e9f0 Merge branch 'improve-local-storage' into 'master'
Improve error handling when saving objects to local disk

See merge request Chill-Projet/chill-bundles!872
2025-09-02 19:59:26 +00:00
julienfastre 8e78c41549 Improve error handling when saving objects to local disk by using dumpFile with detailed exception logging. 2025-09-02 21:53:40 +02:00
julienfastre 6e36771349 fix changelog 2025-09-02 17:52:20 +02:00
julienfastre 7a82cae155 Release v4.2.0 2025-09-02 17:13:28 +02:00
julielenaerts dfab223391 Merge branch 'master' of gitlab.com:Chill-Projet/chill-bundles 2025-09-02 16:14:13 +02:00
julielenaerts 539752485c Allow null values for alias and dataFormatter in buildExportDataForNormalization method 2025-09-02 16:13:48 +02:00
julienfastre d204df0316 Merge branch '422-password-recover-layout' into 'master'
Resolve "Fix layout of password recover pages"

Closes #422

See merge request Chill-Projet/chill-bundles!869
2025-09-02 08:29:27 +00:00
juminet 82c02f442b Resolve "Fix layout of password recover pages" 2025-09-02 08:29:26 +00:00
julienfastre 25561cdf63 Add an importer for motives 2025-09-02 10:16:54 +02:00
julienfastre 10b73e06e1 Merge branch 'enhance-multiple-tasks-from-board-78' into 'ticket-app-master'
Améliorations du dernier MR multiple-tasks-from-board-78

See merge request Chill-Projet/chill-bundles!870
2025-09-01 13:35:15 +00:00
Boris Waaub e7c04e34a9 Améliorations du dernier MR multiple-tasks-from-board-78 2025-09-01 13:35:15 +00:00
julienfastre f32a9dc7bc Merge branch '64-identifiant-personne' into 'master'
Add external identifiers for person, editable in edit form, with minimal features associated

See merge request Chill-Projet/chill-bundles!871
2025-09-01 08:05:11 +00:00
julienfastre ea06a96f91 Add external identifiers for person, editable in edit form, with minimal features associated 2025-09-01 08:05:11 +00:00
julielenaerts 76433e2512 Fix incorrect parameter name in event details link 2025-08-28 13:49:45 +02:00
julielenaerts 1fa464b87a Fix typo in 'uncheckAll' script for centers selection 2025-08-28 13:32:43 +02:00
julielenaerts 77bccd5c4e Remove deprecated ContainerAwareTrait 2025-08-27 17:01:06 +02:00
julielenaerts 5ffa945a84 Remove Symfony and ChampsLibres folders 2025-08-27 17:00:49 +02:00
julielenaerts 3a85d940e9 Replace deprecated ClassUtils 2025-08-27 16:41:40 +02:00
julielenaerts d2e7640652 Upgrade Doctrine ORM to 3.5.2 2025-08-27 16:33:10 +02:00
julielenaerts 979b2955f6 Rector changes return typing 2025-08-27 16:32:44 +02:00
julielenaerts da240f5ce5 Use WorkflowInterface instead of Workflow 2025-08-27 16:01:01 +02:00
julielenaerts f91ab63b3a Use $query->all() instead of ->() for non-scalar values 2025-08-27 15:59:56 +02:00
julielenaerts 2ea8a03698 Use correct key for workflow labels 2025-08-27 15:58:48 +02:00
julielenaerts 3b75f43e80 Update chill bundles to v4.1.0 2025-08-26 15:43:21 +02:00
julielenaerts a40eb95c43 Add changie for new event bundle features 2025-08-26 15:41:58 +02:00
LenaertsJ 8429c6e693 Merge branch 'improvements_event_module' into 'master'
Improvements event module

See merge request Chill-Projet/chill-bundles!825
2025-08-26 13:35:36 +00:00
julielenaerts 6db7f6827c Update eslint baseline 2025-08-26 15:24:44 +02:00
julielenaerts 3c60c57985 Adapt export list events to new export features 2025-08-26 15:18:08 +02:00
julielenaerts 10aa36aae0 Set required to false for entitychoice filter field 2025-08-26 15:18:08 +02:00
julielenaerts eed9913a49 Allow select2 option for entityChoice filterOrderHelper 2025-08-26 15:18:08 +02:00
julielenaerts 1a847d36a0 Fixes in template parameters + remove budget elements when removing event 2025-08-26 15:18:08 +02:00
julielenaerts d916962d9b Phpstan fix import Serializer instead of SerializerInterface 2025-08-26 15:18:08 +02:00
julielenaerts 1092fc64ae Fix voter for the create event permission 2025-08-26 15:18:08 +02:00
julielenaerts 4e99b6ecbd Allow filtering of event list by center and responsable 2025-08-26 15:18:08 +02:00
julielenaerts 60d107b541 Create internal and external animators 2025-08-26 15:18:08 +02:00
julielenaerts 4c3befe489 WIP change animator field to animator intern and animator extern 2025-08-26 15:18:08 +02:00
julielenaerts e176319775 WIP change animator field 2025-08-26 15:18:08 +02:00
julielenaerts 5d810b4230 Add center to the show page of an event 2025-08-26 15:18:08 +02:00
julielenaerts 52b8eea069 Fix passing of id parameter to route 2025-08-26 15:18:08 +02:00
julielenaerts 4bebeaeaaa Fix wrong import of serializer 2025-08-26 15:18:08 +02:00
julielenaerts 3969e12633 Fix cs and phpstan issues 2025-08-26 15:18:08 +02:00
julielenaerts d60312d4a2 Move styling to scss file and fix styling of participation list 2025-08-26 15:18:08 +02:00
julielenaerts d2454ae134 use key for column names in export 2025-08-26 15:18:08 +02:00
julielenaerts 17c2cb1fdc Add missing translations 2025-08-26 15:18:08 +02:00
julielenaerts 94d7a2a0bb Reverse deleting of organizationCost property on event entity to keep db data 2025-08-26 15:18:08 +02:00
julielenaerts aef1efc6cd Add missing translations and add eventThemeType missing config 2025-08-26 15:18:08 +02:00
julielenaerts dd0c662c9e Add missing description to migration 2025-08-26 15:18:08 +02:00
julielenaerts 6b1696b62e phpstan, rector, phpcs fixes 2025-08-26 15:18:08 +02:00
julielenaerts c4b760c452 eslint fixes and new baseline 2025-08-26 15:18:08 +02:00
julielenaerts 69fe2a8256 Add translations 2025-08-26 15:18:08 +02:00
julielenaerts 8c98242896 Split budget elements in charges and resources column 2025-08-26 15:18:08 +02:00
julielenaerts 7eecfd3882 Add new columns to export list event 2025-08-26 15:18:08 +02:00
julielenaerts 6713658569 Add animators property to event 2025-08-26 15:18:08 +02:00
julielenaerts 342b786106 Create export list of events 2025-08-26 15:18:08 +02:00
julielenaerts 80a7437769 Update twig templates for display budget elements 2025-08-26 15:18:08 +02:00
julielenaerts 8a38ce1a5c Add event budget element entity, forms and event property 2025-08-26 15:18:08 +02:00
julielenaerts 5d94bf0556 Create an event budget kind admin entity 2025-08-26 15:18:08 +02:00
julielenaerts bb71e084b8 Create address on the fly field in event form 2025-08-26 15:18:08 +02:00
julielenaerts 27f0bf28e9 Adjust templates and translations 2025-08-26 15:18:08 +02:00
julielenaerts 383f588795 Add field in event for themes 2025-08-26 15:18:08 +02:00
julielenaerts e7a1ff1ac8 Add event theme property to event entity 2025-08-26 15:18:08 +02:00
julielenaerts adc9c47d0a Add event theme color for badge 2025-08-26 15:18:08 +02:00
julielenaerts e594b65d1e Create event theme admin entity 2025-08-26 15:18:08 +02:00
julienfastre c0826bc65c Merge branch '400-add-filter-mes-actions' into 'master'
Add a filter to list for acpw where current user intervenes

Closes #400

See merge request Chill-Projet/chill-bundles!859
2025-08-18 16:26:20 +00:00
LenaertsJ 904f4e5ed9 Add a filter to list for acpw where current user intervenes 2025-08-18 16:26:20 +00:00
julienfastre 481f82b4c7 Merge branch '355-fusion-thirdparty' into 'master'
Resolve "Fusion des tiers"

Closes #355

See merge request Chill-Projet/chill-bundles!795
2025-08-18 15:34:48 +00:00
LenaertsJ f5668592ca Resolve "Fusion des tiers" 2025-08-18 15:34:48 +00:00
julienfastre 164beee7c6 Merge branch 'multiple-tasks-from-board-78' into 'ticket-app-master'
Merge request contenant différentes tâches provenant du board 78

See merge request Chill-Projet/chill-bundles!864
2025-08-18 15:32:00 +00:00
Boris Waaub 4d96eb9457 Merge request contenant différentes tâches provenant du board 78 2025-08-18 15:31:59 +00:00
julielenaerts aa085a1562 **fix:** add min and step attributes to integer field in DateIntervalType 2025-08-06 17:35:45 +02:00
julielenaerts 2754251fdc Merge branch 'master' of https://gitlab.com/Chill-Projet/chill-bundles 2025-08-06 14:20:29 +02:00
julielenaerts 2f6cef4238 - **fix:** move closing motive up to be coherent with display elsewhere 2025-08-06 14:20:09 +02:00
julielenaerts 2309636eae - **fix:** adjust display logic for accompanying period dates, include closing date if period is closed. 2025-08-06 13:47:29 +02:00
julielenaerts 56ec8fb516 Remove 'to_validate' as default for task filter 2025-08-06 09:05:39 +02:00
julielenaerts 21e965449c refactor(config): update service definitions for autowiring and controller configuration
- Enable autowiring for Chill\EventBundle\Controller
- Add default autowire and autoconfigure settings
2025-08-05 13:49:20 +02:00
julielenaerts 88697ae83f chore: update dependencies and configure services
- bump symfony/security-bundle to ^7.3 in composer.json
- enable autoconfigure for Chill\CalendarBundle\Controller services
2025-08-05 11:21:52 +02:00
julielenaerts 10ba2aaea5 feat: update symfony/amqp-messenger to v7.3
- Added symfony/amqp-messenger v7.3 to dependencies
- Removed symfony/amqp-messenger v7.2 from dev dependencies
2025-08-05 11:03:43 +02:00
julielenaerts 4b484bd16c refactor(entity): use TrackCreationTrait and TrackUpdateTrait in AsideActivity
- Replace manual tracking of createdAt, createdBy, updatedAt, updatedBy with TrackCreationTrait and TrackUpdateTrait
- Remove related properties and methods
2025-08-05 09:04:22 +02:00
julielenaerts 4c28a4c358 refactor: improve property checks
- use ClassUtils for real class name resolution in ActivityType
2025-08-05 09:03:53 +02:00
julielenaerts 490d546e7a ```
refactor: add type hints and improve method signatures

- add return type declarations to methods in `ExportGenerationVoter`
- add type hints to `EntityToJsonTransformer` methods
- include `ExceptionInterface` in `EntityToJsonTransformer` for better error handling
```
2025-08-04 17:16:42 +02:00
julielenaerts 7a4416109e Replace Security component with SecurityBundle
Updated references from Symfony\Component\Security\Core\Security
to Symfony\Bundle\SecurityBundle\Security across multiple files
to align with the updated namespace and improve compatibility.
2025-08-04 17:02:23 +02:00
julielenaerts 0e1a47a49b Merge branch 'master' into migrate_to_sf72
# Conflicts:
#	docs/source/_static/code/exports/BirthdateFilter.php
#	rector.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/ByActivityTypeAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/BySocialActionAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ACPAggregators/BySocialIssueAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityLocationAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityPresenceAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityReasonAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityTypeAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityUserAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityUsersAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityUsersJobAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ActivityUsersScopeAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ByCreatorAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/ByThirdpartyAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/CreatorJobAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/CreatorScopeAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/DateAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/LocationTypeAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/PersonAggregators/HouseholdAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/PersonAggregators/PersonAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Aggregator/PersonsAggregator.php
#	src/Bundle/ChillActivityBundle/Export/Export/LinkedToACP/SumActivityDuration.php
#	src/Bundle/ChillActivityBundle/Export/Export/LinkedToACP/SumActivityVisitDuration.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/ActivityTypeFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/BySocialActionFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/BySocialIssueFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/HasNoActivityFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ACPFilters/PeriodHavingActivityBetweenDatesFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ActivityDateFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ActivityPresenceFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ActivityTypeFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ActivityUsersFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/ByCreatorFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/CreatorJobFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/CreatorScopeFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/EmergencyFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/LocationFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/LocationTypeFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/PersonFilters/ActivityReasonFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/PersonsFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/SentReceivedFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/UserFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/UsersJobFilter.php
#	src/Bundle/ChillActivityBundle/Export/Filter/UsersScopeFilter.php
#	src/Bundle/ChillActivityBundle/Validator/Constraints/ActivityValidity.php
#	src/Bundle/ChillAsideActivityBundle/src/Export/Aggregator/ByActivityTypeAggregator.php
#	src/Bundle/ChillAsideActivityBundle/src/Export/Aggregator/ByUserJobAggregator.php
#	src/Bundle/ChillAsideActivityBundle/src/Export/Aggregator/ByUserScopeAggregator.php
#	src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByActivityTypeFilter.php
#	src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByDateFilter.php
#	src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByUserFilter.php
#	src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByUserJobFilter.php
#	src/Bundle/ChillAsideActivityBundle/src/Export/Filter/ByUserScopeFilter.php
#	src/Bundle/ChillCalendarBundle/Export/Aggregator/AgentAggregator.php
#	src/Bundle/ChillCalendarBundle/Export/Aggregator/CancelReasonAggregator.php
#	src/Bundle/ChillCalendarBundle/Export/Aggregator/JobAggregator.php
#	src/Bundle/ChillCalendarBundle/Export/Aggregator/LocationAggregator.php
#	src/Bundle/ChillCalendarBundle/Export/Aggregator/LocationTypeAggregator.php
#	src/Bundle/ChillCalendarBundle/Export/Aggregator/MonthYearAggregator.php
#	src/Bundle/ChillCalendarBundle/Export/Aggregator/ScopeAggregator.php
#	src/Bundle/ChillCalendarBundle/Export/Aggregator/UrgencyAggregator.php
#	src/Bundle/ChillCalendarBundle/Export/Filter/AgentFilter.php
#	src/Bundle/ChillCalendarBundle/Export/Filter/BetweenDatesFilter.php
#	src/Bundle/ChillCalendarBundle/Export/Filter/CalendarRangeFilter.php
#	src/Bundle/ChillCalendarBundle/Export/Filter/JobFilter.php
#	src/Bundle/ChillCalendarBundle/Export/Filter/ScopeFilter.php
#	src/Bundle/ChillEventBundle/Export/Aggregator/EventDateAggregator.php
#	src/Bundle/ChillEventBundle/Export/Aggregator/EventTypeAggregator.php
#	src/Bundle/ChillEventBundle/Export/Aggregator/RoleAggregator.php
#	src/Bundle/ChillEventBundle/Export/Filter/EventDateFilter.php
#	src/Bundle/ChillEventBundle/Export/Filter/EventTypeFilter.php
#	src/Bundle/ChillEventBundle/Export/Filter/RoleFilter.php
#	src/Bundle/ChillMainBundle/Controller/ExportController.php
#	src/Bundle/ChillMainBundle/Controller/SavedExportController.php
#	src/Bundle/ChillMainBundle/DependencyInjection/CompilerPass/ExportsCompilerPass.php
#	src/Bundle/ChillMainBundle/Entity/Notification.php
#	src/Bundle/ChillMainBundle/Export/ExportManager.php
#	src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php
#	src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php
#	src/Bundle/ChillMainBundle/Export/Formatter/CSVPivotedListFormatter.php
#	src/Bundle/ChillMainBundle/Export/Formatter/SpreadSheetFormatter.php
#	src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php
#	src/Bundle/ChillMainBundle/Form/SavedExportType.php
#	src/Bundle/ChillMainBundle/Form/Type/DataTransformer/EntityToJsonTransformer.php
#	src/Bundle/ChillMainBundle/Tests/Export/ExportManagerTest.php
#	src/Bundle/ChillMainBundle/Tests/Export/SortExportElementTest.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/AdministrativeLocationAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ClosingDateAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ClosingMotiveAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ConfidentialAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/CreatorJobAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/DurationAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/EmergencyAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/EvaluationAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/GeographicalUnitStatAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/IntensityAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/JobWorkingOnCourseAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/OpeningDateAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/OriginAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/PersonParticipatingAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ReferrerAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ReferrerScopeAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/RequestorAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ScopeAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/ScopeWorkingOnCourseAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/SocialActionAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/SocialIssueAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/StepAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/UserJobAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/UserWorkingOnCourseAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingPeriodStepHistoryAggregators/ByClosingMotiveAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingPeriodStepHistoryAggregators/ByDateAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingPeriodStepHistoryAggregators/ByStepAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByEndDateAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByMaxDateAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/ByStartDateAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/EvaluationTypeAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/EvaluationAggregators/HavingEndDateAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/HouseholdAggregators/ChildrenNumberAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/HouseholdAggregators/CompositionAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/AdministrativeStatusAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/AgeAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/ByHouseholdCompositionAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/CenterAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/EmploymentStatusAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/GenderAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/HouseholdPositionAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/MaritalStatusAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/NationalityAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/PersonAggregators/PostalCodeAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/ActionTypeAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/CreatorAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/CreatorJobAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/CreatorScopeAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/GoalAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/GoalResultAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/HandlingThirdPartyAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/JobAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/ReferrerAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/ResultAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Aggregator/SocialWorkAggregators/ScopeAggregator.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ActiveOnDateFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ActiveOneDayBetweenDatesFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/AdministrativeLocationFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ClosingMotiveFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ConfidentialFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/CreatorFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/CreatorJobFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/EmergencyFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/EvaluationFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/GeographicalUnitStatFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/HandlingThirdPartyFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/HasNoReferrerFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/HasTemporaryLocationFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/IntensityFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/NotAssociatedWithAReferenceAddressFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/OpenBetweenDatesFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/OriginFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ReferrerFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/ReferrerFilterBetweenDates.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/RequestorFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/SocialActionFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/SocialIssueFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/StepFilterBetweenDates.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/StepFilterOnDate.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingCourseFilters/UserJobFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingPeriodStepHistoryFilters/ByDateFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/AccompanyingPeriodStepHistoryFilters/ByStepFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/EvaluationFilters/EvaluationTypeFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/EvaluationFilters/MaxDateFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/AddressRefStatusFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/AgeFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/BirthdateFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/ByHouseholdCompositionFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/DeadOrAliveFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/DeathdateFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/GenderFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/GeographicalUnitFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/MaritalStatusFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/NationalityFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/ResidentialAddressAtThirdpartyFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/ResidentialAddressAtUserFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/WithParticipationBetweenDatesFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/WithoutHouseholdComposition.php
#	src/Bundle/ChillPersonBundle/Export/Filter/PersonFilters/WithoutParticipationBetweenDatesFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/CreatorFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/CreatorJobFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/CreatorScopeFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/JobFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/ReferrerFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/ScopeFilter.php
#	src/Bundle/ChillPersonBundle/Export/Filter/SocialWorkFilters/SocialWorkTypeFilter.php
#	src/Bundle/ChillPersonBundle/Export/Helper/FilterListAccompanyingPeriodHelper.php
#	src/Bundle/ChillPersonBundle/Security/Authorization/AccompanyingPeriodVoter.php
#	src/Bundle/ChillPersonBundle/Tests/Export/Export/ListAccompanyingPeriodTest.php
#	src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/AccompanyingPeriodValidity.php
#	src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/ConfidentialCourseMustHaveReferrer.php
#	src/Bundle/ChillPersonBundle/Validator/Constraints/AccompanyingPeriod/LocationValidity.php
#	src/Bundle/ChillPersonBundle/Validator/Constraints/Household/MaxHolder.php
#	src/Bundle/ChillReportBundle/Export/Export/ReportList.php
#	src/Bundle/ChillReportBundle/Export/Filter/ReportDateFilter.php
2025-08-04 16:57:45 +02:00
julielenaerts fe6e6e54c1 Show filters on list pages unfolded by default 2025-07-22 15:50:49 +02:00
julielenaerts 2a09594b4a UI improvement: limit display of particapations in event list page 2025-07-22 13:26:44 +02:00
julienfastre 7c798e1f63 Merge branch '387-notification-user-group' into 'master'
Resolve "Notification: envoi à des groupes utilisateurs"

Closes #387

See merge request Chill-Projet/chill-bundles!842
2025-07-20 20:18:49 +00:00
LenaertsJ ab8da4ab7a Resolve "Notification: envoi à des groupes utilisateurs" 2025-07-20 20:18:49 +00:00
julienfastre 5bdb2df929 Merge branch 'revert-5f016734' into 'master'
Revert "Merge branch 'ticket/supplementary-comments-on-motive' into 'master'"

See merge request Chill-Projet/chill-bundles!863
2025-07-20 18:51:51 +00:00
julienfastre e3a6b60fa2 Revert "Merge branch 'ticket/supplementary-comments-on-motive' into 'master'"
This reverts merge request !855
2025-07-20 18:50:33 +00:00
julienfastre fe2eba3b29 Merge branch '1249-implement-app-vue-with-tickets-list' into 'ticket-app-master'
Implémenter une app vue avec la liste des tickets attribués

See merge request Chill-Projet/chill-bundles!858
2025-07-18 16:06:17 +00:00
Boris Waaub 61d1232e31 Implémenter une app vue avec la liste des tickets attribués 2025-07-18 16:06:16 +00:00
julienfastre 6594d4f6a6 Merge branch 'ticket/add-files-to-motives' into 'ticket-app-master'
[Ticket]  Add documents to Motive

See merge request Chill-Projet/chill-bundles!862
2025-07-18 14:55:12 +00:00
julienfastre 1a66a9e864 [Ticket] Add documents to Motive 2025-07-18 14:55:12 +00:00
julienfastre 1b74c119dc Merge branch 'ticket/supplementary-comments-on-motive' into 'ticket-app-master'
Add `supplementaryComments` property to Motive entity, update fixtures and types

See merge request Chill-Projet/chill-bundles!861
2025-07-18 13:18:44 +00:00
julienfastre 14d88810f3 Merge branch 'ticket/add-filter-by-addressee-on-ticket-api' into 'ticket-app-master'
[Ticket] add filter by addressee on ticket list api

See merge request Chill-Projet/chill-bundles!860
2025-07-18 11:40:48 +00:00
julienfastre 445a2c9358 [Ticket] add filter by addressee on ticket list api 2025-07-18 11:40:48 +00:00
julienfastre c8baf0a8aa Merge branch 'ticket/add-filters-to-list' into 'ticket-app-master'
Ticket: ajout de paramètres à la requête de liste de tickets

See merge request Chill-Projet/chill-bundles!857
2025-07-16 13:39:27 +00:00
julienfastre faed443a96 Ticket: ajout de paramètres à la requête de liste de tickets 2025-07-16 13:39:27 +00:00
julienfastre bbf387d96f Merge branch '1243-display-ticket-list' into 'ticket-app-master'
Créer un composant pour afficher une liste des tickets

See merge request Chill-Projet/chill-bundles!849
2025-07-16 09:04:58 +00:00
Boris Waaub b7c9b60744 Créer un composant pour afficher une liste des tickets 2025-07-16 09:04:57 +00:00
julienfastre 5f01673404 Merge branch 'ticket/supplementary-comments-on-motive' into 'master'
Ajout de commentaires supplémentaires aux motifs

See merge request Chill-Projet/chill-bundles!855
2025-07-11 14:06:40 +00:00
julienfastre 63d0a52ea1 Ajout de commentaires supplémentaires aux motifs 2025-07-11 14:06:40 +00:00
julienfastre 2bd303bbbe Add supplementaryComments property to Motive entity, update fixtures and types 2025-07-11 16:00:58 +02:00
julienfastre c5e6122d2c Add deleted boolean property to Ticket type definition 2025-07-11 14:59:34 +02:00
julienfastre 088b876e20 Merge branch 'ticket/alter-comments-on-ticket' into 'ticket-app-master'
Tickets: edit comments and mark them as deleted

See merge request Chill-Projet/chill-bundles!854
2025-07-11 12:56:19 +00:00
julienfastre 3400656d7c Tickets: edit comments and mark them as deleted 2025-07-11 12:56:19 +00:00
julielenaerts 837089ff5d Fix testMerge method in AccompanyingPeriodWorkMergeServiceTest.php 2025-07-10 11:33:23 +02:00
julienfastre 568c8be7fd Update baseline for eslint 2025-07-09 21:57:56 +02:00
julienfastre 538ecc42ea Update .editorconfig for correct formatting rules in file patterns 2025-07-09 21:57:38 +02:00
julienfastre 15d26d4b06 Refactor selectItsMe and removeEntity to improve type annotations and code readability in PickEntity.vue 2025-07-09 21:57:28 +02:00
julienfastre d8bd9bd7cd Restore defaults and behaviour with pick entity on PickEntity.vue 2025-07-09 18:08:04 +02:00
julienfastre dcdfba5ccd eslint fixes 2025-07-09 17:46:36 +02:00
julienfastre 0204bdd38d Restore features after merging 2025-07-09 17:46:16 +02:00
julielenaerts f383fab578 Fix styling 2025-07-09 15:30:39 +02:00
julielenaerts f3cc4a89af Update chill bundles to v4.0.2 2025-07-09 15:23:59 +02:00
julielenaerts 703f5dc32d Transfer evaluations (and related documents) during merge 2025-07-09 15:21:42 +02:00
julielenaerts b870e71f77 Add translation for validation message in social action merger 2025-07-09 15:21:24 +02:00
julienfastre 392fd01b56 Merge branch 'master' into ticket-app-master
# Conflicts:
#	src/Bundle/ChillMainBundle/Export/Formatter/CSVFormatter.php
#	src/Bundle/ChillMainBundle/Export/Formatter/CSVListFormatter.php
#	src/Bundle/ChillMainBundle/Export/Formatter/SpreadsheetListFormatter.php
#	src/Bundle/ChillMainBundle/Resources/public/vuejs/PickEntity/PickEntity.vue
#	src/Bundle/ChillPersonBundle/Export/Aggregator/AccompanyingCourseAggregators/GeographicalUnitStatAggregator.php
#	src/Bundle/ChillPersonBundle/Resources/public/types.ts
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue
2025-07-09 13:44:23 +02:00
julienfastre a7e278204f fix changelog 2025-07-09 09:22:28 +02:00
julienfastre 4cfdcb2f02 Release v4.0.1 with fix in package.json file 2025-07-08 17:00:24 +02:00
julienfastre 3b82ab0e7f Release v4.0.0 2025-07-08 15:59:04 +02:00
julienfastre ccfae1dc75 Merge branch '339-partage-d'export-enregistré' into 'master'
Partage d'export enregistré et génération asynchrone des exports

Closes #339 and #338

See merge request Chill-Projet/chill-bundles!800
2025-07-08 13:53:38 +00:00
julienfastre 8bc16dadb0 Partage d'export enregistré et génération asynchrone des exports 2025-07-08 13:53:25 +00:00
julienfastre 35844f3b73 Merge branch 'ticket/list-add-opening-state' into 'ticket-app-master'
Ajout du statut opening / closed pour la liste des tickets

See merge request Chill-Projet/chill-bundles!850
2025-07-08 13:48:53 +00:00
julienfastre 7506b918d7 Ajout du statut opening / closed pour la liste des tickets 2025-07-08 13:48:43 +00:00
julienfastre c4cc0baa8e Merge branch 'eslint-fix-issues-2025-07' into 'master'
Fix Eslint issues

See merge request Chill-Projet/chill-bundles!853
2025-07-08 13:38:51 +00:00
julienfastre aed114c75c Fix Eslint issues 2025-07-08 13:38:51 +00:00
julienfastre cfba291f2c Merge branch 'ticket-app-master' into 'ticket-app-master'
Fixes réunion 7/7

See merge request Chill-Projet/chill-bundles!852
2025-07-07 15:35:20 +00:00
borisw 04438c09d3 FIX: 1403 - Ajout de la gestion du pluriel pour l'état des usagers dans l'historique des tickets et mise à jour des traductions associées. 2025-07-07 17:14:31 +02:00
julienfastre 2a54d1b909 Merge branch '1405-refactor-to-get-thirdparty' into 'ticket-app-master'
Refactor third-party type imports and update related components

See merge request Chill-Projet/chill-bundles!851
2025-07-07 14:56:35 +00:00
borisw 628eeac5e0 Merge branch 'ticket-app-master' into 1405-refactor-to-get-thirdparty 2025-07-07 16:54:54 +02:00
julienfastre a2263b3fa1 Fix incorrect alias in ThirdPartyRepository query builder expressions 2025-07-07 16:49:56 +02:00
julienfastre 74796d0fb0 Remove unused @symfony/ux-translator dependency and adjust specs-build script. 2025-07-07 16:49:56 +02:00
julienfastre c19481e40a Fix incorrect alias in ThirdPartyRepository query builder expressions 2025-07-07 16:37:46 +02:00
borisw 6eeb717b1a Refactor third-party type imports and update related components
- Changed import path for ThirdParty type in TypeThirdParty.vue and updated its usage.
- Refactored PersonText.vue to import Person and AltName types from ChillPersonAssets.
- Updated types.ts in ChillThirdPartyBundle to include a new 'type' field in the Thirdparty interface.
- Modified TicketBundle types to accommodate Thirdparty type in CallerState.
- Adjusted AddresseeSelectorComponent.vue to use 'thirdparty' instead of 'third_party'.
- Refined BannerComponent.vue to improve readability and maintainability.
- Updated CallerSelectorComponent.vue to reflect changes in entity types.
- Enhanced TicketHistoryListComponent.vue to handle both Person and Thirdparty types.
- Refactored TicketHistoryPersonComponent.vue to accept both Person and Thirdparty entities.
2025-07-07 16:35:31 +02:00
julienfastre beb7c462da Remove unused @symfony/ux-translator dependency and adjust specs-build script. 2025-07-07 16:03:01 +02:00
borisw dbf363a9e8 Ajouter le fichier de configuration Prettier avec des paramètres de formatage 2025-07-07 15:27:40 +02:00
julienfastre 64a2f7c9ed Fix definition for Ticket and SimpleTicket 2025-07-07 14:05:26 +02:00
julielenaerts e592b89c94 remove ux-translator from dependencies 2025-07-07 12:36:49 +02:00
julienfastre f26d9739c8 Merge branch 'ticket/option-one-multi-person-entity-per-ticket' into 'ticket-app-master'
Add phone number parsing functionality

See merge request Chill-Projet/chill-bundles!848
2025-07-04 13:36:55 +00:00
julienfastre afa5edc1d8 Inject personPerTicket parameter into EditTicketController and expose it to the frontend via edit.html.twig. Refactor related type definitions. 2025-07-04 15:33:03 +02:00
julienfastre 42d6c9e672 Add SetPersonCommandConstraint and its validator with test coverage for ChillTicketBundle 2025-07-04 15:33:02 +02:00
julienfastre 2b22d4cb7c Add configuration for ChillTicketBundle parameters: add an option to set one / multi Person entities per ticket 2025-07-04 15:33:02 +02:00
julienfastre c8e5d0eb37 fix rector 2025-07-04 14:35:46 +02:00
julienfastre 2bf8ad5d6c Merge branch 'ticket/list-tickets' into 'ticket-app-master'
Ajout d'une liste de tickets

See merge request Chill-Projet/chill-bundles!847
2025-07-04 09:00:12 +00:00
julienfastre 11698a52e3 Ajout d'une liste de tickets 2025-07-04 09:00:12 +00:00
julienfastre 70955573e8 Merge branch '1344-1246-1257-afficher-patient-suggérés-et-selecteur-urgent' into 'ticket-app-master'
Afficher les patients suggérés et ajouter un sélecteur urgent/non urgent

See merge request Chill-Projet/chill-bundles!841
2025-07-04 07:45:34 +00:00
Boris Waaub 3df4043eb9 Afficher les patients suggérés et ajouter un sélecteur urgent/non urgent 2025-07-04 07:45:33 +00:00
julienfastre 06e8264dde Merge branch 'refs/heads/master' into ticket-app-master
# Conflicts:
#	src/Bundle/ChillPersonBundle/Resources/public/types.ts
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AccompanyingPeriod/SetReferrer.vue
2025-07-02 17:28:59 +02:00
julielenaerts 70e75adb7d Merge branch 'master' of https://gitlab.com/Chill-Projet/chill-bundles 2025-07-02 13:57:20 +02:00
julielenaerts 6f7015b152 Fix translations of form fields in admin for social actions 2025-07-02 13:56:41 +02:00
julienfastre 65dde1e6a0 Merge branch '390-fix-search-results' into 'master'
Fix participant condition in list_with_period.html.twig

Closes #390

See merge request Chill-Projet/chill-bundles!832
2025-07-02 10:59:17 +00:00
julienfastre d193c50922 Merge branch '359-fusion-accompanying-period-work' into 'master'
Resolve "Fusion actions d'accompagnement"

Closes #359

See merge request Chill-Projet/chill-bundles!804
2025-07-02 10:53:17 +00:00
LenaertsJ 840ef6eed8 Resolve "Fusion actions d'accompagnement" 2025-07-02 10:53:16 +00:00
julielenaerts 26298c48fd Merge branch with master 2025-07-01 16:43:44 +02:00
LenaertsJ b4bbb1a456 Merge branch 'improve_person_resource_form' into 'master'
Improve person resource form

See merge request Chill-Projet/chill-bundles!846
2025-07-01 14:01:44 +00:00
julielenaerts 606435a6b3 Pipeline corrections 2025-07-01 14:47:36 +02:00
julienfastre b451d2c4a3 Merge branch 'task/1245-backend-cr-er-un-point-d-api-de-suggestion-des-usagers-person-pour-un-ticket' into 'ticket-app-master'
Créer un point d'api de suggestion des usagers pour un ticket

See merge request Chill-Projet/chill-bundles!845
2025-07-01 12:38:03 +00:00
julienfastre 4f93150874 Créer un point d'api de suggestion des usagers pour un ticket 2025-07-01 12:38:02 +00:00
julielenaerts 404143f8a6 Merge branch 'improve_person_resource_form' of https://gitlab.com/Chill-Projet/chill-bundles into improve_person_resource_form 2025-07-01 14:34:39 +02:00
julielenaerts ec957a2fe3 Improve UX with better labeling in person resource form 2025-07-01 14:34:19 +02:00
julielenaerts 8ed5e35f1a Merge branch 'master' of https://gitlab.com/Chill-Projet/chill-bundles 2025-07-01 14:33:27 +02:00
julienfastre ec37676dab release v3.12.1 2025-06-30 20:35:00 +02:00
julienfastre 2d8cda30b9 Add localizeString method to PickTemplate component for string localization 2025-06-30 20:32:17 +02:00
julienfastre 27d344c97d Release v3.12.0 2025-06-30 11:00:42 +02:00
julienfastre 088e5692e2 Merge branch 'improve_person_resource_form' into 'master'
Improve admin templates for event admin entities + activity reason (category)...

See merge request Chill-Projet/chill-bundles!838
2025-06-30 08:44:24 +00:00
LenaertsJ 298044bc82 Improve admin templates for event admin entities + activity reason (category)... 2025-06-30 08:44:24 +00:00
julienfastre ee4e223043 Merge branch '393-fix-dump-only-document-generator' into 'master'
Send data dumps as email attachments instead of links, update translations,...

Closes #393

See merge request Chill-Projet/chill-bundles!843
2025-06-30 08:41:09 +00:00
julienfastre c53377ce8d Merge branch 'workflow-do-not-remove-workflow-canceled-automatically' into 'master'
Remove unnecessary workflow deletion logic when in the initial position

See merge request Chill-Projet/chill-bundles!844
2025-06-30 08:40:46 +00:00
julienfastre 0b580658de Remove unnecessary workflow deletion logic when in the initial position 2025-06-26 14:38:12 +02:00
julienfastre 786c60a50d Send data dumps as email attachments instead of links, update translations, and add unit tests for the handler. 2025-06-26 12:21:19 +02:00
julienfastre 456f00566d update juni guidelines 2025-06-26 12:19:49 +02:00
julienfastre 0566ab0910 Merge branch '1241-add-feature-close-open-ticket' into 'ticket-app-master'
Add feature open and close ticket

See merge request Chill-Projet/chill-bundles!835
2025-06-24 10:44:04 +00:00
Boris Waaub f4eeee1598 Add feature open and close ticket 2025-06-24 10:44:03 +00:00
julienfastre 33cf16fc13 Merge branch 'task/1255-backend-cr-er-un-point-d-api-pour-enregistrer-le-fait-que-le-ticket-est-urgent-ou-non' into 'ticket-app-master'
Record that a ticket can be in emergency, or not

See merge request Chill-Projet/chill-bundles!840
2025-06-24 10:42:51 +00:00
julienfastre 0a331aab37 Record that a ticket can be in emergency, or not 2025-06-24 10:42:51 +00:00
julienfastre d43b739654 Merge branch 'task/1240-impl-menter-un-backend-pour-cloturer-puis-r-ouvrir-le-ticket' into 'ticket-app-master'
Add api endpoint to open and close ticket

See merge request Chill-Projet/chill-bundles!839
2025-06-20 15:42:44 +00:00
julienfastre c72432efae Add api endpoint to open and close ticket 2025-06-20 15:42:43 +00:00
julienfastre 95975fae55 fix cs 2025-06-20 17:35:19 +02:00
julienfastre 95a7efa138 Merge branch 'master' into ticket-app-master 2025-06-20 17:35:06 +02:00
julienfastre a38116cca4 fix cs 2025-06-20 17:31:13 +02:00
julienfastre 45e193ff6d Merge remote-tracking branch 'origin/master' into ticket-app-master 2025-06-20 12:53:20 +02:00
julienfastre dfc146ff3f Merge remote-tracking branch 'origin/ticket-app-master' into ticket-app-master 2025-06-20 12:45:33 +02:00
nobohan 9158e33854 #392 php cs-fixer 2025-06-19 21:29:43 +02:00
nobohan af74f7860b Fixed nullable content for NewsItem in setContent signature #392 2025-06-19 17:53:33 +02:00
julielenaerts c2842148c6 Improve UX with better labeling in person resource form 2025-06-17 19:27:06 +02:00
julielenaerts 10e4c7da23 Merge branch 'master' of https://gitlab.com/Chill-Projet/chill-bundles 2025-06-17 18:45:25 +02:00
julienfastre bdf1cf71ba Fix argument usage in localizeString method for UserRenderBoxBadge component
Adjusted `localizeString` method to accept a `label` parameter, ensuring proper localization of `user_job.label` and `main_scope.name`. Also made minor syntax adjustments to improve readability.
2025-06-17 10:55:30 +02:00
julienfastre b41fcf66a9 Merge branch '1277-refacto-use-symfony-translation' into 'ticket-app-master'
1277 refacto use symfony translation

See merge request Chill-Projet/chill-bundles!836
2025-06-16 10:59:42 +00:00
Boris Waaub a8dd1b3548 1277 refacto use symfony translation 2025-06-16 10:59:42 +00:00
julielenaerts f680a35f49 Improve admin templates for event admin entities + activity reason (category) entities and remove delete and show actions for coherence 2025-06-11 17:13:19 +02:00
julielenaerts 7d0fe06651 Fix admin entity edit actions for event admin entities and activity reason (category) entities 2025-06-11 16:46:04 +02:00
julielenaerts 4d4bcb44bc Merge branch 'migrate_to_sf72' of https://gitlab.com/Chill-Projet/chill-bundles into migrate_to_sf72 2025-06-05 16:31:08 +02:00
julielenaerts 51777f7365 Some file additions after rebase on master 2025-06-05 16:29:01 +02:00
julielenaerts b9a9983b88 Inject services, no longer available in container by default 2025-06-05 16:23:23 +02:00
julielenaerts e51a3c7525 Rename key property_info.with_constructor_extractor to just enabled: true 2025-06-05 16:23:23 +02:00
julielenaerts 9875f49374 Replace methods with injected services 2025-06-05 16:23:23 +02:00
julielenaerts 52c3c0a565 Rector file with symfonysetlist rules up to symfony_71 2025-06-05 16:23:23 +02:00
julielenaerts 640a7bcd0a Correct injection of services 2025-06-05 16:23:23 +02:00
julielenaerts 13a9e14450 Run symfonysetlist up to symfony_70 2025-06-05 16:23:21 +02:00
julielenaerts abb786495a Run symfonysetlist symfony_62 2025-06-05 16:21:19 +02:00
julielenaerts 8ec18a6fb8 Use [#MapEntity()] attribute to inject entity into method + for now set controller_resolver.auto_mapping to true 2025-06-05 16:21:19 +02:00
julielenaerts f282ffbfd4 Remove not null constraint in db on updatedat property for notification 2025-06-05 16:21:19 +02:00
julielenaerts 27a2d8fdc8 Remove double services key: silent error triggering on this will be deprecated 2025-06-05 16:21:19 +02:00
julielenaerts 1cb63bfe1d Use FQCN::method to build CRUD routes 2025-06-05 16:21:19 +02:00
julielenaerts 9daa7f7c09 Update framework recipe 2025-06-05 16:21:19 +02:00
julielenaerts b6e780d573 Update symfony flex recipe 2025-06-05 16:21:19 +02:00
julielenaerts 7e3618a9be Update phpunit recipe 2025-06-05 16:21:19 +02:00
julielenaerts 61b187e340 Update doctrine/annotations recipe 2025-06-05 16:21:19 +02:00
julielenaerts abfdf2ec6d Inject managerRegistry and serializerInterface directly into controllers 2025-06-05 16:21:19 +02:00
julielenaerts cc20e8896f Use userIdentifier instead of deprecated getUsername() 2025-06-05 16:21:19 +02:00
julielenaerts 59fe9a469a Set alias to inject container into AbstractController::setContainer() 2025-06-05 16:21:18 +02:00
julielenaerts 228b4f0b3d set typed ?string properties to '= null' 2025-06-05 16:21:18 +02:00
julielenaerts b5bbf929f6 Uncomment necessary config 2025-06-05 16:21:18 +02:00
julielenaerts d9ce4e3ec6 Inject ManagerRegistry directly instead of getting from container 2025-06-05 16:21:18 +02:00
julielenaerts c08c909545 Remove NOT NULL constraint from created and updated properties 2025-06-05 16:21:18 +02:00
julielenaerts 6cd17a8e36 Remove containerAwareInterface, no longer supported in sf72 2025-06-05 16:21:18 +02:00
julielenaerts e3b2b7c6d1 Make doctrine service available, no longer by default in scoped service locator 2025-06-05 16:21:18 +02:00
julielenaerts 0337bca273 Adjust workflow config, label needs to be a string 2025-06-05 16:21:18 +02:00
julielenaerts 8bb2e2dc37 Add missing return statement 2025-06-05 16:21:18 +02:00
julielenaerts cdd0372d3e Update security config (guidelines sf64) 2025-06-05 16:21:18 +02:00
julielenaerts 1ee16d3446 Uncomment necessary controller config in mainbundle 2025-06-05 16:21:18 +02:00
julielenaerts bdbcb9ca4a Update symfony packages and necessary config (auto) 2025-06-05 16:21:18 +02:00
julielenaerts e639289130 Remove ContainerAwareInterface from CustomFieldProvider.php 2025-06-05 16:21:18 +02:00
julielenaerts 3d3347e547 Remove config for controller; Symfony will find and load them automatically 2025-06-05 16:21:18 +02:00
julielenaerts 3f27d9e8fc Class cannot be final if you want to use lazy proxy 2025-06-05 16:21:18 +02:00
julielenaerts ce98b9ae48 Use type attribute instead of annotations 2025-06-05 16:21:18 +02:00
julielenaerts d2bd17632f Remove ContainerAwareInterface and extend Fixture instead 2025-06-05 16:21:18 +02:00
julielenaerts 7cef5e3a76 Get session from requestStack instead of injecting SessionInterface 2025-06-05 16:21:18 +02:00
julielenaerts 9726844a26 Remove this config. Symfony will still find and load controllers via annotations or attributes 2025-06-05 16:21:18 +02:00
julielenaerts f7ce3996ef Add name argument to AsCommand attribute and replace Security service namespace with new namespace Symfony\Bundle\SecurityBundle\Security 2025-06-05 16:21:17 +02:00
julielenaerts 6e21f2688f Add getSupportedTypes method for (de)normalizerInterface implementations 2025-06-05 16:21:17 +02:00
julielenaerts 17db59d221 Rector changes and immplementations of required methods 2025-06-05 16:21:17 +02:00
julielenaerts 053b92b77c Update configuration to comply with symfony 7.2 2025-06-05 16:21:17 +02:00
julielenaerts eab5a8be7b Do not show job menu entry if user does not have necessary permission 2025-06-05 16:21:17 +02:00
julienfastre 5ee8a6bc82 Merge branch 'upgrade-ci-image' into 'master'
Update CI configuration to use `chill/base-image:8.3-edge` instead of the old PHP 8.2 base image

See merge request Chill-Projet/chill-bundles!834
2025-06-05 10:10:41 +00:00
julienfastre 47cf83ef93 Update CI configuration to use chill/base-image:8.3-edge instead of the old PHP 8.2 base image 2025-06-05 11:30:01 +02:00
julienfastre fca10ada71 Fix translation keys and participant pluralization in list_with_period.html.twig
Updated French translations for "Participants" and improved pluralization handling in accompanying_period keys. Modified list_with_period.html.twig to dynamically translate "Participants" based on the count of current participations.
2025-06-04 16:55:56 +02:00
julienfastre a35d456308 Fix participant condition in list_with_period.html.twig
Updated the condition to properly handle cases where the first participation's person is not the current person.
2025-06-04 16:54:44 +02:00
julienfastre 67c1dfa42b Merge branch 'prepare-junie' into 'master'
Clean skeleton (and add Junie guidelines)

See merge request Chill-Projet/chill-bundles!830
2025-06-04 08:13:36 +00:00
julienfastre 49cbb6a002 Clean skeleton (and add Junie guidelines) 2025-06-04 08:13:35 +00:00
julielenaerts 36fd6f10b2 Inject services, no longer available in container by default 2025-06-03 15:08:26 +02:00
julielenaerts 23227add12 Rename key property_info.with_constructor_extractor to just enabled: true 2025-06-03 14:52:42 +02:00
julielenaerts 8cbd800fb9 Replace methods with injected services 2025-06-03 14:50:58 +02:00
julienfastre 2b99a480ac Add StateHistory and StateEnum entities to track ticket state changes
Integrated the `StateHistory` entity to manage state transitions in tickets and the `StateEnum` for defining state values (`open`, `closed`). Updated `Ticket` to handle associations with state histories and provide state management methods. Added migration for `state_history` table and extended `TicketTest` for state-related tests.
2025-06-03 12:19:52 +02:00
julienfastre 7633e587bb Expand and refine development guidelines
Added detailed setup instructions, including Docker and asset management steps. Updated guidelines on testing structure, code quality tools, debugging, and deployment processes. Enhanced clarity and streamlined processes for developers. Updated `TicketTest` with additional tests for `externalRef`.
2025-06-02 16:02:33 +02:00
julienfastre fc61dfdf3a Fix CS and add more comments within ticket bundle 2025-06-02 15:51:11 +02:00
julienfastre f1a5b5c49e add info for junie 2025-06-02 15:32:52 +02:00
julienfastre ec685dcd47 Merge branch 'prepare-junie' into ticket-app-master 2025-06-02 15:27:38 +02:00
julienfastre 631ae3eedd first impl for junie guildelines 2025-06-02 15:26:58 +02:00
julienfastre 440a7837ac clean phpstan baseline 2025-06-02 15:26:58 +02:00
julienfastre e0abf34784 Remove unnecessary files 2025-06-02 11:24:59 +02:00
julienfastre 4c0c66bdb4 Add installation dependencies and improve setup instructions
Expanded the installation guide to include required dependencies such as `jq`, `php`, `composer`, and `symfony-cli`, among others. Updated setup commands to include `-W` flag for better dependency handling and added a cache clear step to ensure proper asset compilation. These changes enhance clarity and streamline the installation process.
2025-05-30 15:30:19 +02:00
julienfastre 377ae9a9dc Merge remote-tracking branch 'origin/master' into ticket-app-master 2025-05-30 14:53:44 +02:00
julienfastre 880a164793 Remove @symfony/ux-translator from dependencies
The @symfony/ux-translator package was removed from package.json as it is no longer required. This helps streamline the dependency list and reduce unnecessary maintenance overhead.
2025-05-30 14:02:47 +02:00
julienfastre 034dc30e30 Merge branch 'master' into ticket-app-master 2025-05-30 13:58:45 +02:00
julienfastre d615111a0f Merge remote-tracking branch 'origin/ticket-app-master' into ticket-app-master 2025-05-30 13:58:28 +02:00
julienfastre ffb756c712 Merge remote-tracking branch 'origin/master' into ticket-app-master 2025-05-30 13:36:20 +02:00
julienfastre 29c1ba3c2b Fix compilation of app for calendar 2025-05-30 13:29:56 +02:00
julienfastre 69daccb860 Merge remote-tracking branch 'origin/master' into ticket-app-master 2025-05-30 12:47:37 +02:00
julienfastre 397267f4b9 Merge branch 'replace-node-sass' into 'master'
Replace node-sass with sass and update bootstrap to version 5.3

See merge request Chill-Projet/chill-bundles!828
2025-05-28 15:04:59 +00:00
julienfastre df88c31c40 Replace node-sass with sass and update bootstrap to version 5.3 2025-05-28 15:04:59 +00:00
julienfastre 6f1fe1c118 Merge branch '379-translation-localization-vue' into 'master'
Resolve "Finish handling of internationalization in vuejs: handling translation of "translatable string""

Closes #379

See merge request Chill-Projet/chill-bundles!822
2025-05-28 14:40:27 +00:00
LenaertsJ 649ad26721 Resolve "Finish handling of internationalization in vuejs: handling translation of "translatable string"" 2025-05-28 14:40:26 +00:00
julienfastre a8c41141e8 Enhance note rendering with Markdown to HTML conversion in AccompanyingCourseWork/show.html.twig
Updated the note display logic to use the `chill_markdown_to_html` filter for better formatting and presentation. This change ensures that Markdown syntax in notes is properly rendered as HTML.
2025-05-28 16:36:03 +02:00
julienfastre d82727f831 Update CommentEditor styles for responsiveness
Imported Bootstrap variables and updated styling to use responsive media breakpoints. Adjusted positioning of toggle buttons to ensure proper alignment on different screen sizes.
2025-05-28 16:36:03 +02:00
julienfastre 66bd63403b Update event binding in CKEditor5 component template
Replaces the deprecated `@input` event with the `@update:modelValue` event to ensure compatibility with Vue 3. This improves handling of two-way binding for the `v-model` directive.
2025-05-28 16:31:59 +02:00
julielenaerts 1f79985193 Rector file with symfonysetlist rules up to symfony_71 2025-05-28 16:10:59 +02:00
julielenaerts f4ed7e4254 Correct injection of services 2025-05-28 16:10:07 +02:00
julielenaerts 382f20c6ad Run symfonysetlist up to symfony_70 2025-05-28 15:46:25 +02:00
julielenaerts 220110a403 Run symfonysetlist symfony_62 2025-05-28 15:17:20 +02:00
julielenaerts 3fdf494f1c Use [#MapEntity()] attribute to inject entity into method + for now set controller_resolver.auto_mapping to true 2025-05-28 14:58:59 +02:00
julielenaerts 793dcbfa9a Remove not null constraint in db on updatedat property for notification 2025-05-28 14:54:25 +02:00
julielenaerts f96ed1f5eb Remove double services key: silent error triggering on this will be deprecated 2025-05-28 14:33:36 +02:00
julielenaerts 8b9b427a1e Use FQCN::method to build CRUD routes 2025-05-28 14:32:59 +02:00
julielenaerts 2f3caafd10 Update framework recipe 2025-05-28 12:51:53 +02:00
julielenaerts fde10ebe71 Update symfony flex recipe 2025-05-28 12:49:33 +02:00
julielenaerts b7fc85a2c9 Update phpunit recipe 2025-05-28 12:48:53 +02:00
julielenaerts 72b79f9af5 Update doctrine/annotations recipe 2025-05-28 12:42:57 +02:00
julielenaerts ab15ec8a4c Inject managerRegistry and serializerInterface directly into controllers 2025-05-28 12:04:27 +02:00
julielenaerts c8f1e67fc7 Use userIdentifier instead of deprecated getUsername() 2025-05-28 11:23:51 +02:00
julielenaerts d5c09c853f Set alias to inject container into AbstractController::setContainer() 2025-05-28 11:21:55 +02:00
julielenaerts a79b0b85dd set typed ?string properties to '= null' 2025-05-28 10:47:23 +02:00
julienfastre 16435423cf Replace node-sass with sass in package.json
Updated the dependency from node-sass to sass to ensure compatibility with modern tooling and resolve deprecation warnings. This change aligns with recommended practices for Sass-related workflows.
2025-05-27 15:40:00 +02:00
julienfastre 697b4ab436 fix compilation errors 2025-05-27 15:39:48 +02:00
julielenaerts 47c1282044 Uncomment necessary config 2025-05-27 15:19:28 +02:00
julielenaerts ce63506a1a Inject ManagerRegistry directly instead of getting from container 2025-05-27 15:19:15 +02:00
julielenaerts 8ab03473b7 Remove NOT NULL constraint from created and updated properties 2025-05-27 15:18:32 +02:00
julielenaerts ebaff8d170 Remove containerAwareInterface, no longer supported in sf72 2025-05-27 14:06:36 +02:00
julielenaerts 46f9e4968b Make doctrine service available, no longer by default in scoped service locator 2025-05-27 13:03:43 +02:00
julielenaerts 344c5a1c3c Adjust workflow config, label needs to be a string 2025-05-27 12:44:03 +02:00
julielenaerts 50b590ae34 Add missing return statement 2025-05-27 12:43:45 +02:00
julielenaerts 74fbd6feac Update security config (guidelines sf64) 2025-05-27 12:43:35 +02:00
julielenaerts aa69a7ad62 Uncomment necessary controller config in mainbundle 2025-05-27 12:43:10 +02:00
julielenaerts bc0fae5c2e Update symfony packages and necessary config (auto) 2025-05-27 12:42:41 +02:00
julienfastre 67d804e28e fix compilation errors 2025-05-27 12:00:49 +02:00
julienfastre cf41fa9574 fix compilation errors 2025-05-27 11:59:52 +02:00
julienfastre b8b325f7d7 Add path mapping for ChillPersonAssets in tsconfig.json
This update introduces a new path alias, "ChillPersonAssets/*", to the tsconfig.json file. It allows TypeScript to resolve imports for assets within the ChillPersonBundle more efficiently.
2025-05-27 11:59:36 +02:00
julienfastre e97bd8c4ef doc for creating a new bundle: add route 2025-05-27 11:59:29 +02:00
julienfastre e28d7df533 Add routing to ticket bundle 2025-05-27 11:56:35 +02:00
julienfastre 4b20b1bc01 Merge remote-tracking branch 'refs/remotes/origin/master' into ticket-app-master 2025-05-27 11:33:22 +02:00
julienfastre 992e6d29d0 Merge branch '321-text-editor-fallback' into 'master'
Text editor: Add a toggle button to switch to simple text editor and add emoji and fullscreen to ckeditor toolbar

Closes #321

See merge request Chill-Projet/chill-bundles!827
2025-05-27 09:16:31 +00:00
julienfastre b15733076c Add TicketBundle to the build of open api specs 2025-05-27 10:25:10 +02:00
julienfastre 25be5c9ea3 Automatic eslint fixes 2025-05-27 10:21:25 +02:00
julienfastre b035020c6f Clarify and expand "create a new bundle" documentation
Rewrote the "create a new bundle" guide for clarity and completeness. Added detailed steps for creating a bundle class, registering namespaces in `composer.json`, updating configuration files, and dumping autoload. These changes aim to make the instructions easier to follow for new developers.
2025-05-27 10:20:55 +02:00
julienfastre 128101dc46 Add ChillTicketBundle to project configuration
ChillTicketBundle is now registered in `composer.json`, `bundles.php`, and `doctrine_migrations_chill.yaml`. This integration ensures its autoloading, enables its functionality across environments, and sets up its migration paths.
2025-05-27 09:59:51 +02:00
julienfastre 5f2711023e Merge branch 'refs/heads/master' into ticket-app-master
# Conflicts:
#	composer.json
#	config/bundles.php
#	config/packages/doctrine_migrations_chill.yaml
#	package.json
#	src/Bundle/ChillMainBundle/DataFixtures/ORM/LoadUserGroup.php
#	src/Bundle/ChillMainBundle/DependencyInjection/ChillMainExtension.php
#	src/Bundle/ChillMainBundle/Entity/UserGroup.php
#	src/Bundle/ChillMainBundle/Resources/public/chill/js/date.ts
#	src/Bundle/ChillMainBundle/Resources/public/lib/download-report/download-report.js
#	src/Bundle/ChillMainBundle/Resources/public/module/ckeditor5/editor_config.ts
#	src/Bundle/ChillMainBundle/Resources/public/module/ckeditor5/index.ts
#	src/Bundle/ChillMainBundle/Resources/public/page/export/download-export.js
#	src/Bundle/ChillMainBundle/Resources/public/types.ts
#	src/Bundle/ChillMainBundle/Resources/views/Dev/dev.assets.html.twig
#	src/Bundle/ChillMainBundle/Templating/Entity/UserGroupRender.php
#	src/Bundle/ChillMainBundle/chill.api.specs.yaml
#	src/Bundle/ChillMainBundle/chill.webpack.config.js
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/Comment.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/PersonsAssociated.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/Resources.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourse/components/Resources/WriteComment.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/App.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/AccompanyingCourseWorkEdit/components/FormEvaluation.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/HouseholdMembersEditor/components/Household.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/HouseholdMembersEditor/components/MemberDetails.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/HouseholdMembersEditor/components/PersonComment.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/Entity/PersonRenderBox.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/Entity/PersonText.vue
#	src/Bundle/ChillPersonBundle/Resources/public/vuejs/_js/i18n.ts
#	tests/app/config/bootstrap.php
2025-05-27 09:37:04 +02:00
julienfastre bdf2ed4bbd Fix typo 2025-05-27 09:35:49 +02:00
julielenaerts 1321f5c734 Remove ContainerAwareInterface from CustomFieldProvider.php 2025-05-26 14:55:39 +02:00
julielenaerts 262b7c5db3 Remove config for controller; Symfony will find and load them automatically 2025-05-26 14:55:15 +02:00
julielenaerts 5283eddb15 Class cannot be final if you want to use lazy proxy 2025-05-26 14:54:47 +02:00
julielenaerts f7b0c49124 Use type attribute instead of annotations 2025-05-26 14:54:05 +02:00
julielenaerts 5e32375dfe Remove ContainerAwareInterface and extend Fixture instead 2025-05-26 14:32:06 +02:00
julielenaerts 5cdfee40fb Get session from requestStack instead of injecting SessionInterface 2025-05-26 14:19:01 +02:00
julielenaerts 6e5dbe4e58 Remove this config. Symfony will still find and load controllers via annotations or attributes 2025-05-26 14:07:23 +02:00
julielenaerts d884d78617 Add name argument to AsCommand attribute and replace Security service namespace with new namespace Symfony\Bundle\SecurityBundle\Security 2025-05-26 13:58:12 +02:00
julielenaerts a5049ddefb Add getSupportedTypes method for (de)normalizerInterface implementations 2025-05-26 13:49:05 +02:00
julienfastre bb41af4ed2 replace ck-editor by new CommentEditor on every vuejs components 2025-05-23 13:51:44 +02:00
julienfastre 19dd4667f2 Integrate Vue-based editor with rich and simple mode toggle
Replaced CKEditor initialization with a Vue-based editor component. Introduced a toggle to switch between rich and simple editing modes, persisting the state in local storage. Updated CKEditor dependency to version 45.1.0.
2025-05-23 13:34:50 +02:00
julienfastre 976f293f28 Add Emoji and Fullscreen features to CKEditor configuration
Integrated Emoji, Mention (required for Emoji), and Fullscreen plugins into the CKEditor setup. Updated the toolbar to include respective buttons, enhancing functionality and user interaction.
2025-05-23 13:33:47 +02:00
julienfastre 5c9396077d remove "faked" entity and simplify template string in Activity index.js
Replaced multi-line template string with a cleaner single-line backtick template. This improves readability and maintains consistent formatting in the code.
2025-05-23 13:22:56 +02:00
julielenaerts 9fcc1634f5 Rector changes and immplementations of required methods 2025-05-22 17:47:07 +02:00
julielenaerts d9a47fdee9 Update configuration to comply with symfony 7.2 2025-05-22 17:45:52 +02:00
julielenaerts 1e5d676aa5 Do not show job menu entry if user does not have necessary permission 2025-05-22 15:25:11 +02:00
julienfastre 713c50309b Merge branch '367-page-mes-parcours' into 'master'
Resolve "Reorganise page 'Mes parcours'"

Closes #367

See merge request Chill-Projet/chill-bundles!807
2025-05-21 16:13:43 +00:00
LenaertsJ 44a8ddeba4 Resolve "Reorganise page 'Mes parcours'" 2025-05-21 16:13:43 +00:00
julienfastre 8b2af35e97 Fix typo 2025-05-21 17:57:35 +02:00
julielenaerts dc44c46667 Fix SocialActionCSVExporterTest.php 2025-05-21 09:29:25 +02:00
julielenaerts ba571c1a69 Merge branch 'master' of https://gitlab.com/Chill-Projet/chill-bundles 2025-05-20 10:04:53 +02:00
julielenaerts 6a364705f2 Git add desactivation date for social issue csv export 2025-05-20 09:57:07 +02:00
julielenaerts b6d454691a Git add desactivation date for social action csv export 2025-05-20 09:38:39 +02:00
julienfastre 6d7a6932a9 Merge branch '365-correct-activities-works-counters' into 'master'
#365 correct works counter in acc course summary

Closes #365

See merge request Chill-Projet/chill-bundles!826
2025-05-16 14:40:20 +00:00
juminet 2faf194b15 #365 correct works counter in acc course summary 2025-05-16 14:40:19 +00:00
julienfastre f207599d86 Merge branch '352-remove-wopi-link-module' into 'master'
Resolve "Code mort: module wopi-link semble inutilisé"

Closes #352

See merge request Chill-Projet/chill-bundles!824
2025-05-16 08:33:57 +00:00
LenaertsJ b0959f8cc5 Resolve "Code mort: module wopi-link semble inutilisé" 2025-05-16 08:33:56 +00:00
julielenaerts 4c5dee5f0a Fix pipeline 2025-05-14 17:31:48 +02:00
julielenaerts f6c98aa0d5 Add missing translation for user_group.no_user_groups 2025-05-14 14:53:50 +02:00
julielenaerts 6d13d184d5 Merge branch 'master' of https://gitlab.com/Chill-Projet/chill-bundles 2025-05-14 13:57:22 +02:00
julielenaerts af36eccfaf Allow more characters for maritalstatus id 2025-05-14 13:56:36 +02:00
julienfastre 483a20a43f Merge branch '374-task-default-filters' into 'master'
Resolve "Module tâche: enlever les filtres par défaut"

Closes #374

See merge request Chill-Projet/chill-bundles!819
2025-05-13 08:59:01 +00:00
LenaertsJ 6d8e2ad825 Resolve "Module tâche: enlever les filtres par défaut" 2025-05-13 08:59:01 +00:00
julienfastre 86388a63a8 Merge branch '381-uncoherent-display-persons-acc-course-works' into 'master'
381 display previous person participation in acc course work

Closes #381

See merge request Chill-Projet/chill-bundles!823
2025-05-13 08:45:38 +00:00
juminet 5ea55ebfe5 381 display previous person participation in acc course work 2025-05-13 08:45:38 +00:00
julienfastre f97dc8f931 Merge branch '377-document-file-name' into 'master'
377 - add the document filename to document title when uploading a new document

Closes #377

See merge request Chill-Projet/chill-bundles!821
2025-05-13 08:30:31 +00:00
juminet a9c3aab528 377 - add the document filename to document title when uploading a new document 2025-05-13 08:30:30 +00:00
julienfastre 1181377bd6 Merge branch '376-typeerror-doc-history' into 'master'
#376 prevent typerror in doc-history + improve display of document history

Closes #376

See merge request Chill-Projet/chill-bundles!820
2025-05-13 07:50:53 +00:00
juminet 2275b7c560 #376 prevent typerror in doc-history + improve display of document history 2025-05-13 07:50:52 +00:00
julielenaerts 4a8d298ae5 Fix typing error for the display of text in calendar events 2025-05-05 10:42:04 +02:00
julienfastre 3e7f03d331 Add possibility to cancel a workflow if there is a pending signature [ci-skip] 2025-04-17 14:23:32 +02:00
julienfastre b830952b9e Release v3.11.0 2025-04-17 14:22:35 +02:00
julienfastre ad17313c61 Merge branch '380-remove-not-null-constraint-household-composition' into 'master'
Remove "not null" validation on HouseholdComposition properties

Closes #380

See merge request Chill-Projet/chill-bundles!818
2025-04-17 09:03:15 +00:00
julienfastre 620515ad15 Remove "not null" validation on HouseholdComposition properties
This change removes the "not null" constraint on specific properties in the HouseholdComposition entity to allow null values. The adjustment addresses Issue #380 and ensures better flexibility without impacting the schema.
2025-04-17 10:56:45 +02:00
julienfastre 50c377ee22 Merge branch 'fix/fix-stored-object-version-not-delete-when-not-exists-on-disk' into 'master'
Fix error when cleaning non-existent stored object versions

See merge request Chill-Projet/chill-bundles!816
2025-04-17 08:36:36 +00:00
julienfastre cc7e7a90ee Merge branch 'fix/cancel-stale-workflow-handle-fails-silently' into 'master'
Add consistent LOG_PREFIX and key to CancelStaleWorkflowHandler logs

See merge request Chill-Projet/chill-bundles!817
2025-04-16 19:10:37 +00:00
julienfastre 1d4ef19051 Add key to log messages context and add log prefix to enhance CancelStaleWorkflowHandler messages
Introduced a consistent LOG_PREFIX to all log messages in CancelStaleWorkflowHandler. This ensures clearer contextual identification in logs and improves traceability when debugging or monitoring workflow actions.
2025-04-16 21:03:29 +02:00
julienfastre 8337a724d1 Fix error when cleaning non-existent stored object versions
Prevent the `RemoveOldVersionMessageHandler` from throwing errors when the stored object version is missing on disk. Introduced a check to log a notice instead of attempting deletion in such cases and added corresponding test coverage.
2025-04-16 16:26:02 +02:00
julienfastre 8ca377d5d4 Merge branch 'button-signature-zone' into 'master'
Add button unique signature zone

See merge request Chill-Projet/chill-bundles!812
2025-04-15 13:09:54 +00:00
LenaertsJ 224e0bae43 Add button unique signature zone 2025-04-15 13:09:54 +00:00
julienfastre 3aa4fac80d Merge branch '364-tel2-third-party' into 'master'
Adding a second phone number to thirdparty entity

Closes #364

See merge request Chill-Projet/chill-bundles!810
2025-04-15 12:59:58 +00:00
juminet a7517eb647 Adding a second phone number to thirdparty entity 2025-04-15 12:59:57 +00:00
julienfastre e278e636e0 Merge branch '365-add-activities-works-counter' into 'master'
#365 Add works and activities counter

Closes #365

See merge request Chill-Projet/chill-bundles!809
2025-04-14 09:34:02 +00:00
juminet 40e373a9c7 #365 Add works and activities counter 2025-04-14 09:34:02 +00:00
julienfastre 1c1f418b18 Merge branch 'fix/acc-period-step-change-shorten-elapsed' into 'master'
Adjust cronjob interval to ensure daily execution

See merge request Chill-Projet/chill-bundles!814
2025-04-10 13:49:11 +00:00
julienfastre bf0e14b43a Merge branch '102-liste-des-document-titre-long' into 'master'
Fix graphical bug in document list with title overflowing the frame, and add new classes to display title and aside in flex-table (DX + Fix)

Closes #102 and #22

See merge request Chill-Projet/chill-bundles!815
2025-04-10 13:47:40 +00:00
julienfastre 203a098054 Refactor document row layouts to use CSS grid
Replaced the old 'item-col' structure with a 'item-two-col-grid' layout across multiple templates, improving consistency and responsiveness. Introduced CSS grid styles ensuring proper alignment and wrapping of titles and aside elements in different viewport sizes. This enhances the overall readability and maintainability of the views.
2025-04-10 15:41:06 +02:00
julienfastre d58acff541 Add css layout for badges for accompanying period work, activity and calendar 2025-04-10 15:41:06 +02:00
julienfastre 5858e05a42 Replace grid in person_list document to fit the whole width of the page 2025-04-10 15:31:06 +02:00
julienfastre b9b4fafe14 Adjust cronjob interval to ensure daily execution
The interval for `AccompanyingPeriodStepChangeCronjob` was reduced from 24 hours to 23 hours and 45 minutes. This change guarantees at least one execution per day, addressing potential issues with timing overlaps.
2025-04-09 21:30:41 +02:00
julielenaerts fe6949ea26 Update chill bundles to v3.10.3 2025-03-18 13:47:31 +01:00
julielenaerts 8a444a12f4 Turn off eslint error ban-ts-comment 2025-03-18 10:57:24 +01:00
julienfastre 8b7b5ceed7 Release v3.10.2 2025-03-17 22:30:17 +01:00
julienfastre b0e826d05a Revert "Remove unnecessary ts-expect-error"
This reverts commit 7f101ba616.
2025-03-17 22:22:37 +01:00
julienfastre 6fb9c3af3f Release v3.10.1 2025-03-17 21:59:32 +01:00
julienfastre 7f101ba616 Remove unnecessary ts-expect-error 2025-03-17 21:59:16 +01:00
julienfastre cea82fac10 Merge branch '333-removing-node-deps-to-symfony-ux-translator' into 'master'
Copy Symfony UX Translator module into to chill-bundles

Closes #333

See merge request Chill-Projet/chill-bundles!808
2025-03-17 20:45:48 +00:00
julienfastre 1344fc33e1 Copy Symfony UX Translator module into to chill-bundles 2025-03-17 20:45:48 +00:00
julielenaerts c8e09a28e6 Eslint fixes 2025-03-17 17:32:28 +01:00
julienfastre c52d4b2a0e Release v3.10.0 2025-03-17 16:41:07 +01:00
julienfastre 7f326d5441 Fix typing of argument in FullCAlendar slot 2025-03-17 16:29:59 +01:00
julienfastre 2840c06476 Merge branch '368-fix-user-search-engine' into 'master'
Fix search query for user-groups

Closes #368

See merge request Chill-Projet/chill-bundles!806
2025-03-14 14:10:53 +00:00
julielenaerts 7ddf84ea5a Fix ts errors upon prod compilation 2025-03-14 15:07:23 +01:00
julienfastre f202625ea8 Fix LIKE clause logic in UserGroupRepository query
Adjusted the parameter order and ensured consistent use of LOWER and UNACCENT functions in the LIKE clause. This resolves potential mismatches and improves query reliability for pattern matching.
2025-03-14 15:04:22 +01:00
julienfastre 7a9168fcdb Refactor variable declarations in pick-entity module.
Consolidated variable declarations into a single statement using const. This improves code readability and aligns with modern JavaScript best practices.
2025-03-14 15:02:09 +01:00
LenaertsJ 40eb71f95a Merge branch '362-bug-manager-registry-fix2' into 'master'
Resolve loading of manager registry

Closes #362

See merge request Chill-Projet/chill-bundles!803
2025-03-05 16:45:08 +00:00
julielenaerts 84b7cc8145 Php cs fixes 2025-03-05 10:46:36 +01:00
julielenaerts 08af530726 Replace deprecated Statement::create() method use constructor directly 2025-03-05 10:26:22 +01:00
julienfastre 03b2496817 Fix dependency injection issues in AbstractCRUDController
Replaced incorrect service definitions in AbstractCRUDController to ensure proper dependency injection. Specifically, fixed retrieval of the ManagerRegistry and Validator services to resolve CalendarRange save errors (Issue #362). No schema changes were introduced.
2025-03-04 23:02:19 +01:00
julienfastre f638ce71fd Merge branch '363-display_actions_by_issue' into 'master'
Resolve "Change display of social issues and social actions"

Closes #363

See merge request Chill-Projet/chill-bundles!802
2025-03-04 14:40:48 +00:00
LenaertsJ b39997f00a Resolve "Change display of social issues and social actions" 2025-03-04 14:40:48 +00:00
julielenaerts 38b21a2159 Update chill to version v3.9.2 2025-02-27 16:20:03 +01:00
julielenaerts 17db571244 Add changie and linter fixes 2025-02-27 16:19:21 +01:00
julielenaerts 8c8c16c1a1 use fetchResult instead of makeFetch for acpw creation 2025-02-27 16:16:54 +01:00
julielenaerts 046d3ec9f1 use fetchResult instead of makeFetch for SocialIssuesAcc.vue component 2025-02-27 16:12:00 +01:00
julielenaerts 596833f1a5 use fetchResult instead of makeFetch 2025-02-27 15:58:53 +01:00
julielenaerts 66e4bab558 Fix pipeline phpunit and lint 2025-02-27 13:50:35 +01:00
julielenaerts d1c9926bb1 Update bundles to version v3.9.1 2025-02-27 12:21:26 +01:00
julielenaerts a71d066765 Fix post/path requests with missing 'type' property for gender 2025-02-27 12:19:10 +01:00
julielenaerts 217ac7b9e7 Linter fixes 2025-02-27 11:54:48 +01:00
julielenaerts be901822bc Update chill version to v3.9.0 2025-02-27 11:26:25 +01:00
julielenaerts 7ed10efcd1 Fix declaration of variables for dynamic picker 2025-02-24 13:49:33 +01:00
julienfastre 350661a4fa Merge branch '341-export-csv-thirdparties' into 'master'
Resolve "Extraction de la liste des tiers au format CSV"

Closes #341

See merge request Chill-Projet/chill-bundles!789
2025-02-19 11:37:46 +00:00
LenaertsJ 08207b656a Resolve "Extraction de la liste des tiers au format CSV" 2025-02-19 11:37:46 +00:00
julienfastre 8de63de6d6 Merge branch '343-social_issue_action_export' into 'master'
Resolve "Permettre de télécharger la liste des problématiques et la liste des actions en CSV"

Closes #343

See merge request Chill-Projet/chill-bundles!785
2025-02-19 11:18:05 +00:00
LenaertsJ 51804b10c0 Resolve "Permettre de télécharger la liste des problématiques et la liste des actions en CSV" 2025-02-19 11:18:04 +00:00
julienfastre 02f555efae Merge branch '333-working-with-translations' into 'master'
Setup alias for use in standalone chill-bundles project and replace relative paths

Closes #333

See merge request Chill-Projet/chill-bundles!766
2025-02-19 10:57:59 +00:00
LenaertsJ d2fcb6945b Setup alias for use in standalone chill-bundles project and replace relative paths 2025-02-19 10:57:59 +00:00
julienfastre c89e3785ef Merge branch '360-restore-document-on-workflow-cancel' into 'master'
Add event subscriber for document restoration on cancel

Closes #360

See merge request Chill-Projet/chill-bundles!798
2025-02-17 12:22:57 +00:00
julienfastre 9f17ec4841 Merge branch '353-doc_require_to_populate_languages' into 'master'
doc: add languages population command

Closes #353

See merge request Chill-Projet/chill-bundles!792
2025-02-17 12:22:25 +00:00
julienfastre b277a7749a Merge branch '357-doc_address-ref-requires-language' into 'master'
doc: chill:main:address-ref-from-best-addresse requires a language code

Closes #357

See merge request Chill-Projet/chill-bundles!793
2025-02-17 12:21:48 +00:00
julienfastre c8b6b6e33a Merge branch '349-suggest-agents-traitants' into 'master'
Resolve "Proposer en plus du référent de parcours les agents traitants saisis dans toutes les cations d'accompagnement du parcours"

Closes #349

See merge request Chill-Projet/chill-bundles!787
2025-02-17 12:21:10 +00:00
LenaertsJ 10eaebf610 Resolve "Proposer en plus du référent de parcours les agents traitants saisis dans toutes les cations d'accompagnement du parcours" 2025-02-17 12:21:10 +00:00
julienfastre 0a34f9086f Add event subscriber for document restoration on cancel
Implement an event subscriber to restore documents to their last kept version when a workflow transition ends in a non-positive final state. Includes corresponding unit tests and an unreleased feature change log entry.
2025-02-14 15:08:42 +01:00
julienfastre 739e0b1692 Merge branch 'fix/docgen-accompanying-period-context-with-list-aworks' into 'master'
Refactor username mapping in activity context filter.

See merge request Chill-Projet/chill-bundles!797
2025-02-14 12:20:07 +00:00
julienfastre 8db8f5fdf5 Refactor username mapping in activity context filter.
Replaced array_map with a foreach loop for clarity and maintainability when extracting usernames from work referrers. This ensures better readability and aligns with coding standards.
2025-02-14 12:11:28 +01:00
LenaertsJ fc32f9eca9 Merge branch 'add-dependents' into 'master'
add household properties :  number of dependents and number of dependents with disabilities

See merge request Chill-Projet/chill-bundles!778
2025-02-13 12:41:29 +00:00
julienfastre ab35e8c034 Release v3.8.2 2025-02-10 14:52:22 +01:00
julienfastre 2aded2974f Merge branch '358-remove-filter-button' into 'master'
Remove "filter" button from attachment modal in workflows

Closes #358

See merge request Chill-Projet/chill-bundles!794
2025-02-10 13:49:09 +00:00
julienfastre f84c1632b2 Remove "filter" button from attachment modal in workflows
The "filter" button was unnecessary in the document list within the "add attachment" modal and has been removed for simplicity. This change does not involve any schema modifications and resolves issue #358.
2025-02-10 14:41:53 +01:00
Christophe Siraut 03717a1a87 ChillPersonBundle: move numberOfDependents configuration to a new household node; extend AdministrativeStatusRepository and EmploymentStatusRepository from ServiceEntityRepository 2025-02-07 17:45:33 +01:00
Christophe Siraut 02c524dd79 doc: chill:main:address-ref-from-best-addresse requires a language code 2025-02-07 10:53:53 +01:00
julielenaerts 99e4824137 Release bundles v.3.8.1 2025-02-05 18:14:22 +01:00
julielenaerts dacaaea235 Fix household link in parcours banner 2025-02-05 18:09:34 +01:00
julienfastre 096466e79e Add missing lines for v3.8.0 2025-02-03 22:22:11 +01:00
julienfastre 7285e5c2b0 Merge branch '331-manage-attachments-to-workflow' into 'master'
Add attachments to workflow

Closes #331

See merge request Chill-Projet/chill-bundles!764
2025-02-03 21:15:00 +00:00
julienfastre 37227a3aeb Add attachments to workflow 2025-02-03 21:15:00 +00:00
julienfastre 7569667189 Release v3.8.0 2025-02-03 22:11:42 +01:00
julienfastre b0993f4062 Merge branch '334-current-user-activity-suggestion' into 'master'
Resolve "Quand on crée un échange, l'utilisateur courant doit toujours être suggéré"

Closes #334

See merge request Chill-Projet/chill-bundles!786
2025-02-03 21:08:49 +00:00
julienfastre 7c79b65f48 Merge branch '350-validation_person_duplicate' into 'master'
Resolve "Erreur 500 lorsqu'un utilisateur fusionne deux dossiers d'usagers, et que les deux dossiers usagers sélectionnés sont les mêmes"

Closes #350

See merge request Chill-Projet/chill-bundles!788
2025-02-03 21:04:28 +00:00
LenaertsJ b8f25bcd45 Resolve "Erreur 500 lorsqu'un utilisateur fusionne deux dossiers d'usagers, et que les deux dossiers usagers sélectionnés sont les mêmes" 2025-02-03 21:04:27 +00:00
julienfastre f4efb0e975 Merge branch '351-prettier_span_fix' into 'master'
Resolve "UX bug caused by 'Prettier' linter"

Closes #351

See merge request Chill-Projet/chill-bundles!790
2025-02-03 21:02:46 +00:00
LenaertsJ c641baec78 Resolve "UX bug caused by 'Prettier' linter" 2025-02-03 21:02:44 +00:00
julienfastre cc150e32f0 Merge branch '354-fix_creation_document_category' into 'master'
Resolve "chill_doc: cannot create a document category"

Closes #354

See merge request Chill-Projet/chill-bundles!791
2025-02-03 21:02:03 +00:00
Christophe Siraut bc7f0907ab doc: add languages population command 2025-02-03 14:05:08 +01:00
julielenaerts 26cf6459b4 Add changie 2025-02-03 11:23:12 +01:00
julielenaerts d0fa6dd512 Apply fix to query idInsideBundle for documentCategory creation 2025-02-03 11:21:00 +01:00
Christophe Siraut fbdc0d32f0 ChillPersonBundle: Add numberOfDependents and numberOfDependentsWithDisabilities 2025-01-31 10:13:47 +01:00
Christophe Siraut 5f31473c90 ChillMainBundle: optionnaly mask aggegators in ExportType 2025-01-31 09:37:46 +01:00
Christophe Siraut 98cf167040 ChillPersonBundle: add aggregators for administrative status and employment status 2025-01-31 09:37:46 +01:00
Christophe Siraut 6c37d798bf ChillPersonBundle: add administrativeStatus property to Person 2025-01-31 09:06:45 +01:00
julielenaerts 03748a7e84 Add changie 2025-01-30 12:00:11 +01:00
julienfastre 9e3431f397 Merge branch 'improve_news_item_admin_form' into 'master'
Improve ux news item admin form

See merge request Chill-Projet/chill-bundles!779
2025-01-27 10:59:51 +00:00
julielenaerts 912861dbff Remove assert attribute on startdate 2025-01-27 11:03:46 +01:00
julienfastre 35f25daf7c Merge branch '320-display-persons-in-banner' into 'master'
Display first associated persons in the banner of an accompanying course

Closes #320

See merge request Chill-Projet/chill-bundles!769
2025-01-23 20:19:31 +00:00
LenaertsJ 21274155b5 Display first associated persons in the banner of an accompanying course 2025-01-23 20:19:31 +00:00
julienfastre 3f7c136d6b Remove yarn.lock from tracking 2025-01-23 12:40:39 +01:00
julienfastre 5d9c573853 Merge branch '319-display-info-in-notification' into 'master'
Resolve "Afficher les noms des usagers et l'entité concerné par l'entité notifiée dans la liste des notifications"

Closes #319

See merge request Chill-Projet/chill-bundles!767
2025-01-23 11:34:16 +00:00
LenaertsJ 9a5fd67842 Resolve "Afficher les noms des usagers et l'entité concerné par l'entité notifiée dans la liste des notifications" 2025-01-23 11:34:16 +00:00
julielenaerts 2755bc12c4 Add current user to suggested users when creating activity 2025-01-22 15:41:25 +01:00
julienfastre 9e191f1b5b Restrict eslint on src directory 2025-01-22 14:19:30 +00:00
julienfastre ab684a20ad Release version v3.7.1 2025-01-21 23:06:30 +01:00
julienfastre bc92b52498 Merge branch 'fix-notifier-config' into 'master'
Fix notifier  legacy configuration and some improvements

See merge request Chill-Projet/chill-bundles!784
2025-01-21 22:05:27 +00:00
julienfastre be5655e537 Refine Notifier component configuration guidance
Added detailed instructions to configure the Symfony Notifier component correctly, emphasizing proper setup for SMS providers like OVHcloud. Clarified removal of legacy configurations and included examples for both utilizing and replacing the added configuration.
2025-01-21 22:59:08 +01:00
julienfastre ceb0bd982e Prevent default texter configuration if already defined
Check existing framework configurations for `texter_transports` before applying default settings. This avoids overwriting or conflicting with pre-defined notifier configurations.
2025-01-21 22:59:08 +01:00
julienfastre 47c0af3623 Handle missing message IDs in SentMessageEventSubscriber
Added a condition to log an info message when the sent SMS lacks a message ID. Ensures clearer distinction between successful and incomplete SMS message logging.
2025-01-21 22:39:37 +01:00
julienfastre f6f2efee2c Release v3.7.0 with new feature and updated dependencies
Introduce the Symfony Notifier component for SMS messaging, supporting more providers. Fix referrer's scope and job aggregation issue (#348). Update numerous dependencies, including Babel and ESLint, for improved stability and functionality.
2025-01-21 16:07:00 +01:00
julielenaerts 59fd9fc63f Add a line in the documentation about the role of prettier within eslint configuration 2025-01-21 10:36:45 +01:00
julielenaerts ec2c08681e Add --fix to eslint yarn command 2025-01-21 09:52:29 +01:00
julienfastre fedcbb9a70 Add missing changie for MR !782 2025-01-20 15:47:01 +01:00
julienfastre 3f1a4fe353 Merge branch 'short-message-use-notifier-component' into 'master'
Send short messages using Notifier integration

See merge request Chill-Projet/chill-bundles!782
2025-01-20 14:17:01 +00:00
julienfastre fc27c73dab Merge branch '332-changie-schema-prompt' into 'master'
Add a prompt to signal a schema change in the db

Closes #332

See merge request Chill-Projet/chill-bundles!772
2025-01-20 14:13:33 +00:00
julienfastre 20bfd5b717 Add Rector command to composer scripts
Included the Rector command in composer.json to streamline running Rector tasks. This addition ensures consistency and improves developer efficiency by integrating the tool directly into the project workflow.
2025-01-20 15:10:44 +01:00
julienfastre 5e3a1eb2ab Remove legacy ShortMessage components and integrate Notifier
Replaced outdated ShortMessage functionalities with Symfony's Notifier component for handling SMS messages. Deprecated legacy `ShortMessage` components and introduced a transition layer for existing OVH configurations. Updated dependencies and environment setup to support the new implementation.
2025-01-20 15:10:44 +01:00
julienfastre b02820407c Add log SMS when a message is sent
Introduced a new event subscriber to log SMS sent events with details such as recipient and message IDs. This enhances monitoring and debugging of SMS delivery.
2025-01-20 15:10:43 +01:00
julienfastre 594ed4a5b4 Replace custom ShortMessage usage with Symfony’s SmsMessage.
Switched the entire short message notification system to leverage Symfony's Notifier component and its TexterInterface with SmsMessage. This update simplifies the implementation, removes custom short message handling, and aligns with Symfony's standardized approach.
2025-01-20 15:10:43 +01:00
julienfastre 88fbf7bc1c Add Symfony Notifier integration
Integrated Symfony Notifier into the project by adding it to `composer.json` and creating a configuration file `notifier.yaml`. Updated `symfony.lock` to include the recipe configuration for Notifier. Minor documentation formatting issues were also fixed in `index.rst`.
2025-01-20 14:28:49 +01:00
julienfastre aa26e67f6f Update PHP-CS-Fixer cache path and add PHPStan command
Changed the cache path in `.php-cs-fixer.dist.php` to improve organization by moving it to the `var` directory. Added a new Composer script for running PHPStan to streamline static analysis workflows.
2025-01-20 14:12:24 +01:00
julienfastre 21ac3eaab4 Merge branch '348-erreur-dans-le-regroupement-par-service-du-referent-de-parcours' into 'master'
Resolve "Erreur dans le regroupement par service du référent de parcours"

Closes #348

See merge request Chill-Projet/chill-bundles!783
2025-01-20 12:10:25 +00:00
julienfastre 2ff500b00e Resolve "Erreur dans le regroupement par service du référent de parcours" 2025-01-20 12:10:25 +00:00
julielenaerts 19fa308c06 Update chill bundles to version 3.6.0 2025-01-16 18:00:48 +01:00
julielenaerts 1b831bc424 Fix activity between dates filter: condition added for alias 2025-01-16 15:19:38 +01:00
julielenaerts 573118e514 Undo change migration 2025-01-16 13:05:18 +01:00
julielenaerts 0cabf5654a Add changie for fix 2025-01-16 12:25:42 +01:00
julielenaerts cfb547d55f Increase length of varchar for id chill_person_marital_status 2025-01-16 12:23:59 +01:00
julielenaerts a915c35026 Rector changes 2025-01-16 10:25:02 +01:00
julielenaerts 018f8aef5c Add export button to social actions template 2025-01-15 16:45:05 +01:00
julielenaerts de6385ba21 Refactor SocialIssuesExportController to include method for exporting social actions 2025-01-15 16:44:45 +01:00
julielenaerts edb51dd3cd Add export button to template 2025-01-15 16:35:09 +01:00
julielenaerts c379bccad4 Create social issue export controller 2025-01-15 16:33:57 +01:00
julielenaerts bd9ad8a569 remove prettier command from yarn 2025-01-15 13:08:26 +01:00
julielenaerts 0cdd9184a3 Add condition to rendering of schema change 2025-01-14 16:10:58 +01:00
julienfastre cb5fd2b69d Merge branch 'address-importer-ban' into 'master'
Add service and command to import French addresses from BAN

See merge request Chill-Projet/chill-bundles!781
2025-01-13 16:09:17 +00:00
julienfastre feebcf6662 Add changie [ci-skip] 2025-01-13 17:08:45 +01:00
julielenaerts 2a61197999 Merge branch '332-changie-schema-prompt' of https://gitlab.com/Chill-Projet/chill-bundles into 332-changie-schema-prompt 2025-01-13 16:22:14 +01:00
julielenaerts 0a53a9a9d1 Add a prompt to signal a schema change in the db 2025-01-13 16:22:04 +01:00
julielenaerts eea1e40663 Merge branch 'improve_news_item_admin_form' of https://gitlab.com/Chill-Projet/chill-bundles into improve_news_item_admin_form 2025-01-13 16:20:08 +01:00
julielenaerts 1b0771eb07 Add changie 2025-01-13 16:19:52 +01:00
julielenaerts 3a74c48104 Indicate user to set startDate equal to or greater than today + set empty_data in form content field 2025-01-13 16:19:52 +01:00
julienfastre 6de4861b98 Fix email attachment handling in address import reports
Updated attachment logic to use in-memory file contents and apply a `.gz` suffix to filenames. This ensures better file handling and resolves potential issues with attaching files directly from a path.
2025-01-10 23:00:40 +01:00
julienfastre b4a1e824ac Add service and command to import French addresses from BAN
Introduce a service to handle the import of French addresses from the Base Adresse Nationale (BAN) dataset. Add a new console command `chill:main:address-ref-from-ban` to trigger the import by department numbers, with an option to send a report email for unmatched addresses.
2025-01-10 22:52:08 +01:00
julienfastre d87cf925e2 Add changie file for storing document on disk feature 2025-01-09 16:28:36 +01:00
julienfastre ce3cce7b95 Merge branch '346-store-docs-on-disk' into 'master'
Resolve "Permettre de stocker les documents sur disque, localement."

Closes #346

See merge request Chill-Projet/chill-bundles!774
2025-01-09 15:16:45 +00:00
julienfastre 6c97654e5e Add documentation for document storage configuration
Introduce a new guide detailing document storage options, including on-disk storage and cloud-based OpenStack integration. This document explains configuration steps, benefits, and limitations for both methods, and is now linked in the production installation index.
2025-01-09 16:05:58 +01:00
julienfastre 0787e61c22 Set default configuration file for chill_doc_store 2025-01-09 15:25:44 +01:00
julienfastre 73bcfb82b7 Add configuration option to select storage driver
Introduces a new `use_driver` configuration option to specify the desired storage driver (`local_storage` or `openstack`). Ensures proper validation to handle multiple drivers and throws appropriate errors when configurations are inconsistent or missing. Refactors related logic to improve clarity and maintainability.
2025-01-09 15:25:43 +01:00
julienfastre 812e4047d0 Adjust key size in KeyGenerator to 32 bytes.
Changed the key size from 128 bytes to 32 bytes in the KeyGenerator service. This aligns with the expected algorithm requirements and ensures proper cryptographic behavior.
2025-01-09 15:25:43 +01:00
julienfastre 999ac3af2b Add TempUrl signature validation to local storage
Implemented local storage-based file handling with TempUrl signature validation for upload and retrieval. Added validation checks for parameters like max file size/count, expiration, and signature integrity. Included unit tests for TempUrl signature validation and adjusted configuration for local storage.
2025-01-09 15:25:42 +01:00
julienfastre 0c628c39db store encrypted content 2025-01-09 15:25:42 +01:00
julienfastre c65f1d495d Refactor ConfigureOpenstackObjectStorageCommand
- change namespace for more obvious handling;
- remove command of local storage is configured
2025-01-09 15:25:41 +01:00
julienfastre 83f7086bb0 Configure DI for providing kernel secret for TempUrlLocalStorageGenerator 2025-01-09 15:25:41 +01:00
julienfastre c1e449f48e Implements StoredObjectManager for local storage 2025-01-09 15:25:41 +01:00
julienfastre 1f6de3cb11 Implement TempUrlLocalStorageGenerator and its tests
Added the full implementation for TempUrlLocalStorageGenerator, including methods to generate signed URLs and POST requests with expiration and signature logic. Introduced corresponding unit tests to validate functionality using mocked dependencies.
2025-01-09 15:25:40 +01:00
julienfastre 3a2548ed89 Select storage depending on configuration 2025-01-09 15:25:39 +01:00
julienfastre d7652658f2 Define new configuration for local storage 2025-01-09 15:25:39 +01:00
julienfastre 67b5bc6dba Implements required interface to store documents on disk 2025-01-09 15:25:38 +01:00
julienfastre e25c1e1816 Refactor object storage to separate local storage and openstack storage 2025-01-09 15:25:38 +01:00
julienfastre 282b7f7fbb Merge branch 'import-addresses-handle-no-postcode' into 'master'
Allow addresses without postal code to be imported without failure, and add email reporting for unimported addresses in import commands

See merge request Chill-Projet/chill-bundles!780
2025-01-09 11:52:21 +00:00
julienfastre ab311eaecb Add email reporting for unimported addresses in import commands
Enhanced address import commands to optionally send a recap of unimported addresses via email. Updated import logic to handle cases where postal codes are missing, log issues, and generate compressed CSV reports with failed entries.
2025-01-09 12:21:10 +01:00
julielenaerts b37d7fb907 Add changie 2025-01-08 16:21:36 +01:00
julielenaerts 57b8dacba0 Indicate user to set startDate equal to or greater than today + set empty_data in form content field 2025-01-08 16:18:13 +01:00
julielenaerts edcc01149b Merge branch 'master' of gitlab.com:Chill-Projet/chill-bundles 2025-01-07 16:59:32 +01:00
julielenaerts 27b2d77fdb Fix EntityToJsonTransformer for saved exports 2025-01-07 16:59:16 +01:00
julienfastre 96bb98f854 upgrade yarn deps 2025-01-07 10:03:40 +01:00
julienfastre 68ed2db51e Refactor exception type to InvalidConfigurationException.
Replaced InvalidArgumentException with InvalidConfigurationException for widget service alias conflicts. This ensures the exception better reflects the configuration-related nature of the error.
2025-01-07 10:03:24 +01:00
julielenaerts 184bb095d8 Update chill-bundles version to 3.5.2 2024-12-19 10:45:07 +01:00
LenaertsJ 78c8e94765 Merge branch '345-export-activity-bug' into 'master'
Fix the filtering of users that have been associated to an activity between certain dates

Closes #345

See merge request Chill-Projet/chill-bundles!773
2024-12-19 09:41:21 +00:00
LenaertsJ c8d1a91953 Fix the filtering of users that have been associated to an activity between certain dates 2024-12-19 09:41:21 +00:00
LenaertsJ 3e8e2b0fa8 Merge branch 'add-employment-status' into 'master'
add an employmentStatus property to the person entity

See merge request Chill-Projet/chill-bundles!763
2024-12-17 15:15:57 +00:00
Christophe Siraut 2c9c700ca7 composer.json: specify doctrine/data-fixtures version 2024-12-16 17:35:22 +01:00
Christophe Siraut 110db30748 ChillPersonBundle: add employmentStatus property to Person 2024-12-16 17:35:19 +01:00
Christophe Siraut 1f96f76f87 ChillPersonBundle: add a visibility parameter to addFieldNode() 2024-12-16 16:54:18 +01:00
Christophe Siraut 65902ea231 ChillCUstomFieldsBundle: Symfony\Component\Frm\FormFactory::createNamedBuilder(): Argument #1 () must be of type string 2024-12-16 16:54:18 +01:00
Christophe Siraut 88c0b1570d composer: require-dev php-cs-fixer 2024-12-16 16:54:18 +01:00
julienfastre 4933d2251c fix tests about PdfSignedMessageHandler.php 2024-12-16 16:50:07 +01:00
julienfastre c939ff4a4e Release v3.5.1 2024-12-16 15:45:29 +01:00
julienfastre 82fb98348b Wrap PdfSignedMessage handling in a transaction
Ensure atomicity when writing stored objects and marking signatures as signed by wrapping these operations in a database transaction. This reduces the risk of partial updates and improves data consistency.
2024-12-16 15:44:40 +01:00
julielenaerts d56d00421a Add convetion on database table and add translation file in english for the conventions 2024-12-12 11:37:54 +01:00
julielenaerts de11fa86c6 Add database table naming convention 2024-12-12 10:52:39 +01:00
julielenaerts 4cc254a3e5 Add script to package.json for eslint + take ts files into account with new baseline 2024-12-11 14:24:53 +01:00
julielenaerts 22ce16ef49 Fix display of gender label in the filiation 2024-12-11 14:12:54 +01:00
julielenaerts 1e52a93cbe ignore certain folders for eslint 2024-12-11 12:26:41 +01:00
julielenaerts 16fe07cce7 More automatic eslint fixes, update baseline and eslint docs 2024-12-11 11:32:29 +01:00
LenaertsJ e8962782ed Merge branch 'implement_eslint' into 'master'
Implement ESLint

See merge request Chill-Projet/chill-bundles!752
2024-12-11 10:26:35 +00:00
julielenaerts 64a853fb6d Renew baseline after applying prettier 2024-12-11 10:50:01 +01:00
julielenaerts ebfd48e41f Apply prettier to files 2024-12-11 10:49:11 +01:00
julielenaerts a6aa2a81c2 Resolve merge with master 2024-12-11 10:46:06 +01:00
julielenaerts 98d29c2134 Add baseline to eslint 2024-12-11 10:38:55 +01:00
julielenaerts 60386ae9ac Add a prompt to signal a schema change in the db 2024-12-10 18:30:44 +01:00
julielenaerts 559901e528 Update chill bundles version to v3.5.0 2024-12-09 11:35:16 +01:00
julielenaerts 05bc69fd33 Fix display of gender label
Label already localized in serialization so not to be accessed as label.fr within vue component
2024-12-09 11:32:28 +01:00
julienfastre 49da62d364 Merge branch 'signature-state-change-wrapped-into-transaction' into 'master'
Refactor transaction handling for signature state changes, to wrap them into transactions

See merge request Chill-Projet/chill-bundles!771
2024-12-06 11:43:08 +00:00
julienfastre 3af7824d01 Refactor transaction handling for signature state changes, to wrap them into transactions
Wrap signature state changes in transactions to prevent race conditions and ensure data integrity. Update controller and test class names to reflect broader state change capabilities. Enhance documentation with comments to clarify transaction requirements and procedure details for signature operations.
2024-12-06 12:37:17 +01:00
julienfastre 033053c437 Restrict the version of amqp-messenger 2024-12-06 12:37:16 +01:00
julienfastre 633bb00154 fix typing of Datetime 2024-12-06 12:37:16 +01:00
julienfastre f5c1b5cf8a Merge branch '318-signature-vue-app-show-full-doc' into 'master'
Resolve "[App de signature] Pouvoir voir le document en continu (toutes les pages ensemble)"

Closes #318

See merge request Chill-Projet/chill-bundles!761
2024-12-05 16:31:04 +00:00
julienfastre ccd71da4e4 Add changie 2024-12-05 17:25:08 +01:00
julienfastre 1eadb3bbdb add missing configuration for chill_workflow_signature_documents.yaml 2024-12-05 17:16:06 +01:00
nobohan 0bb5a79cae FEATURE signature: show full pages - show next signature button even if one signature 2024-12-05 17:16:06 +01:00
nobohan bd3198e42b FEATURE signature: show full pages - UI and turn pages 2024-12-05 17:16:05 +01:00
nobohan 96dfddc55f FEATURE signature: show full pages - can add zone + fix hitSignature is canvas-aware 2024-12-05 17:16:05 +01:00
nobohan da37a3db5f FEATURE signature: show full pages - can select zone 2024-12-05 17:16:04 +01:00
nobohan c2882b1079 FEATURE signature: show full pages - WIP 2024-12-05 17:16:01 +01:00
julienfastre b9e515f4e6 Merge branch '317-add-zone-bug-with-zoom' into 'master'
Resolve "Lorsqu'on place manuellement une zone de signature avec le zoom actif, la zone n'est pas placée correctement sur la page"

Closes #317

See merge request Chill-Projet/chill-bundles!757
2024-12-05 15:49:38 +00:00
nobohan df2ea7e1ba FIXED adding zone in signature vue app was not placed correctly when zooming 2024-12-05 16:41:51 +01:00
nobohan d59cda9cc4 DX format signature vue app 2024-12-05 16:41:51 +01:00
julielenaerts 54e10cacd3 git use apk instead of apt-get to install jq 2024-12-05 16:25:40 +01:00
julielenaerts 3ca126804b Implement baseline comparison for eslint in the CI 2024-12-05 16:13:07 +01:00
julielenaerts 40d733c290 Add a baseline for eslint 2024-12-05 16:08:42 +01:00
julienfastre 7a98bb5a06 release v3.4.3 2024-12-05 15:44:51 +01:00
julienfastre 2ce8f540fe release v3.4.3 2024-12-05 15:34:28 +01:00
julienfastre 6c4d8990cc Merge branch '342-error-while-deploying-chill-version-v3-4-2-migrations-are-blocked' into 'master'
Resolve "Error while deploying chill version v3.4.2: migrations are blocked"

Closes #342

See merge request Chill-Projet/chill-bundles!770
2024-12-05 14:33:34 +00:00
julienfastre 351e9c3fcc Remove custom join table configuration for documents
The custom join table setup for the 'documents' relation has been removed. This change relies on the default naming and configuration provided by Doctrine, simplifying the code and reducing potential configuration errors.
2024-12-05 15:32:35 +01:00
julienfastre 1b65cac1df Make person phone number nullable
Removed the "not null" constraint from the person phone number field to allow for better flexibility in data storage, such as storing notes. This change rectifies issues in certain instances where the migration had incorrectly set the field to "not null". Adjustments include updating the database schema and modifying the entity definition to reflect this change.
2024-12-05 15:30:25 +01:00
julielenaerts aa0785fc71 Apply prettier rules 2024-11-14 18:47:38 +01:00
julielenaerts 610227815a Add prettier to eslint to format vue, js and ts code + add script to run it locally 2024-11-14 18:46:22 +01:00
julielenaerts 9d9f062417 add eslint to ci gitlab 2024-11-14 18:37:37 +01:00
julielenaerts 0454e5d758 eslint corrections in mainbundle 2024-11-14 16:46:07 +01:00
julielenaerts 2d6d2a1f58 eslint corrections in personbundle 2024-11-14 16:45:50 +01:00
julielenaerts c971e34675 JS correction in ChillWopiBundle required by ESLint 2024-11-12 15:39:52 +01:00
julielenaerts be2a119163 JS correction in ChillThirdpartyBundle required by ESLint 2024-11-12 15:39:31 +01:00
julielenaerts 22ecb11227 JS corrections in ChillPersonBundle required by ESLint 2024-11-12 15:38:46 +01:00
julielenaerts dd854ea339 Switch back to using .mjs extension otherwise webpack doesn't compile well with type:module specified in package.json file 2024-11-05 15:48:48 +01:00
julielenaerts f05c25853c Fix of errors: automatic and some manual 2024-11-04 19:56:03 +01:00
julielenaerts 90798b12e5 Add ts parser and adjust config 2024-11-04 19:55:27 +01:00
julielenaerts f91f5ce27e Add eslint documentation to developers manual 2024-11-04 17:57:13 +01:00
julielenaerts 96f73b419d Eslint correction always return something in computed property 2024-10-31 19:11:49 +01:00
julielenaerts 273f91fd00 Add config for eslint 2024-10-31 19:11:16 +01:00
julielenaerts 27ecae4486 first eslint corrections 2024-10-31 17:28:02 +01:00
julielenaerts f90f1c7ef8 Install eslint and eslint vue plugin + config file 2024-10-31 17:27:45 +01:00
julienfastre 1df542603e Refactor export download script to use ES6 and webpack
The export download script was refactored to use ES6 syntax and webpack's modular system. This included separating out the download script into its own file for better organization, removing globally-scoped JavaScript, and adding the new download script as a webpack entry point. Also, the import method for the 'mime' library was adjusted to use ES6 syntax.
2024-06-04 21:51:42 +02:00
julienfastre 80bcc68ce5 WIP temporarily force extension to xlsx 2024-06-04 15:40:05 +02:00
julienfastre 154fc3e2f6 Increase size between user-groups in AddresseeSelectorComponent.vue 2024-06-04 11:59:26 +02:00
julienfastre e45af94c78 Update ticket history interface and functionality
Reworked the ticket history interface and added new functionalities. The history interface now supports multiple patients and shows changes in patients' state. Additionally, new ticket creation is now displayed in the history line, along with the creator information. Some minor textual changes were made to reflect support for multiple patients. Implemented code cleanup and removed debug statements for a cleaner codebase.
2024-06-03 23:25:53 +02:00
julienfastre 166a6fde20 Add feature to set concerned persons in a ticket
This commit adds the functionality to set and change the concerned persons in a ticket within the ChillTicketBundle. New vuejs components, serializers, and store modules have been introduced to achieve this. Moreover, necessary changes have been made in existing components and store index to support this functionality.
2024-06-03 22:30:12 +02:00
julienfastre 631f047338 Manage the persons' assocation with ticket through SetPersonsCommand and dedicated handler 2024-06-03 13:53:28 +02:00
julienfastre a777588bb8 fixup! Add TicketListController test 2024-06-03 13:26:01 +02:00
julienfastre ca78d112c2 Add chill_ticket.yaml to configure routes
This commit adds a new file, chill_ticket.yaml, under the tests/app/config/routes directory in the ChillTicketBundle. This file is used to define the routes for the ChillTicket application.
2024-06-03 13:23:21 +02:00
julienfastre bcfd317d83 Remove ChillEventBundle and refactor framework.yaml configurations
This commit involves the deletion of ChillEventBundle from the bundles configuration. Additionally, test framework configurations are handled in a consolidated manner by moving assets configurations (json_manifest_path) from test/framework.yaml to framework.yaml. The obsolete test/framework.yaml has been deleted as it is no longer needed.
2024-06-03 13:23:09 +02:00
julienfastre 348740f073 Add TicketListController test
A new file, TicketListControllerTest.php, has been added to the test suite. This file includes tests to ensure that the TicketList controller is working as expected, including checking the successful response of the 'GET' request.
2024-06-03 13:22:46 +02:00
julienfastre 0d74f0980f Multiple fixes and improvements 2024-06-03 12:50:29 +02:00
julienfastre be19dc00db Replace person-render-box with on-the-fly in BannerComponent
This change replaces the usage of person-render-box component with the on-the-fly component in the BannerComponent.vue file of ChillTicketBundle. Also, OnTheFly component is now being imported. This update simplifies the structure and improves the readability of the code.
2024-06-03 11:20:50 +02:00
julienfastre 643028ffd6 Update styles and markup for badges and ticket events
Updated the SCSS for badge components, including the introduction of a margin and specific font-weight for user-group badges. Additionally, changes have been made to the TicketApp store to comment out a specific condition. A few updates were made to the twig files in the ChillTicketBundle and ChillMainBundle to reflect these style changes.
2024-06-03 11:13:49 +02:00
julienfastre ac4e2e5bf2 Update time calculations in BannerComponent and TicketNormalizer
Refactored BannerComponent to use an imported date function, improved time calculation logic, and enhanced code readability. Also, updated TicketNormalizer to properly normalize various datetime and user-related fields. A new date validation check has been added in the date utility file.
2024-06-01 00:31:39 +02:00
julienfastre 498572b96e Refactor addressee history management
This commit refactors the management of addressees history in the ticketing system. Instead of individual addition and removal events for addressees, a new event 'addressees_state' is introduced to capture the state of addressees at any given point in the history. The structure and logic of normalized tickets have been adjusted accordingly.
2024-05-31 23:43:32 +02:00
julienfastre d2a61ce69b Add return path support for ticket creation and editing
This commit introduces support for a return path query parameter during ticket creation and editing operations. This enables a more user-friendly redirection after a form submission operation where the return path provides more context on the next page. The return path is now also considered in the Vue.js components, with necessary checks and validations. A 'Cancel' button has been added to the ActionToolbarComponent.vue where the return path exists.
2024-05-31 22:23:13 +02:00
julienfastre a9c0567ee1 add script to run php-cs-fixer 2024-05-31 22:22:49 +02:00
julienfastre 76cec5b5a8 fix indentation 2024-05-31 22:22:34 +02:00
julienfastre efe8a67697 Upgrade CKEditor and refactor configuration with use of typescript 2024-05-31 21:46:19 +02:00
julienfastre 26dfa9b028 Add ticket listing and related enhancements
Added a new functionality for listing tickets with the ability for the user to order the list. A method was added to the User class to identify if an object is an instance of User. Similarly, a method was added to the UserGroup class. User.php, UserGroup.php, TicketRepository.php, and TicketRepositoryInterface.php were updated. A new TicketListController, MotiveRepository, and SectionMenuBuilder were created. Translations were included, and services.yaml was updated.
2024-05-31 12:32:01 +02:00
julienfastre 50025044d3 Add UserGroupRender and Interface for UserGroup templating
A new UserGroupRender class was added to manage the templating logic for UserGroup entities. The UserGroupRenderInterface was also created, extending the ChillEntityRenderInterface. Additionally, a Twig template for rendering user groups was added.
2024-05-31 12:31:44 +02:00
julienfastre e6202a2e34 Remove unnecessary fields and methods from Ticket entity
The "updatedAt" field and "getUpdatedAt" method, as well as the "createdBy" field and the "getCreatedBy" method have been removed from the Ticket entity. These fields and related methods were not necessary and their removal simplifies the entity structure.
2024-05-30 16:06:34 +02:00
julienfastre b863bd967d Update address list import to latest compiled addresses
The import of the address list has been upgraded to use the latest version of the compiled addresses from Belgian-best-address. In the AddressReferenceBEFromBestAddress class, the RELEASE constant has been updated to point to the v1.1.1 tag.
2024-05-30 16:01:34 +02:00
julienfastre e65bcf7275 Restore feature to see chill assets style preview in dev environment
This commit introduces a new dev.assets.html.twig file and updates the chill.yaml file to add new paths for the SASS Assets tests.
2024-05-28 16:33:13 +02:00
julienfastre e00ece4200 Update form builder parameter in SearchController
Changed the first argument in the `createNamedBuilder` method from `null` to an empty string. This adjustment ensures the form factory correctly creates the builder in the SearchController.
2024-05-28 15:58:17 +02:00
julienfastre 640fd71402 merge ticket-app-master and fix rector / cs 2024-05-28 15:54:52 +02:00
julienfastre aae50ca290 Merge branch 'ticket-app-master' into chill-bundles-ticket-app-adaptations 2024-05-28 15:08:59 +02:00
julienfastre 1fa483598b Merge branch 'upgrade-sf5' into ticket-app-master 2024-05-28 14:59:25 +02:00
julienfastre e4b6a468f8 adding fixtures for ticket in every environment 2024-05-28 13:47:58 +02:00
Boris Waaub 66c7758023 Adapt module name 2024-05-22 11:17:07 +02:00
Boris Waaub 4750d2c24e Adapt module name 2024-05-22 11:16:18 +02:00
Boris Waaub ca05e3d979 Layout adaptation 2024-05-22 11:12:22 +02:00
Boris Waaub a20f9b4f86 Generalize ticket actions 2024-05-22 00:38:47 +02:00
Boris Waaub c73c1eb8d5 Rename "appelant" by "patient" 2024-05-21 22:24:30 +02:00
Boris Waaub 8778bb0731 Use colors and badges for history and banner 2024-05-21 22:22:33 +02:00
Boris Waaub c7d20eebc5 chore: Remove unused code in AddresseeSelectorComponent.vue 2024-05-21 20:53:15 +02:00
Boris Waaub b9e130c159 Use suggestion for user asignee 2024-05-21 20:44:23 +02:00
Boris Waaub 3e8bc94af3 Remove user object display 2024-05-21 18:14:11 +02:00
Boris Waaub 0c914c9f9f Remove "remove_addressee" history line 2024-05-21 17:32:40 +02:00
Boris Waaub 580a60c939 Add user_group for returning type 2024-05-21 17:32:05 +02:00
Boris Waaub 4996ac3b7c Adapt layout action toolbar 2024-05-21 15:22:13 +02:00
Boris Waaub 2a23bf19cb use record_actions sticky-form-buttons 2024-05-21 10:53:25 +02:00
Boris Waaub 650d2596d9 Update ticket display to use ticket ID instead of external reference 2024-05-21 09:54:06 +02:00
Boris Waaub 2bdd5a329e Merge branch 'ticket-app-master' of gitlab.com:boriswa/chill-bundles into ticket-app-master 2024-05-21 09:53:32 +02:00
julienfastre 78d1776733 Add functionality to find a caller by phone number
Added a new method in PersonRepository to allow querying people by phone number. Also, a new REST API endpoint "/public/api/1.0/ticket/find-caller" was introduced and it can find a caller by their phone number. Accompanied this feature addition with corresponding test cases.
2024-05-17 13:14:26 +02:00
julienfastre 66dc603c85 fix cs with new version of php-cs-fixer 2024-05-17 12:20:33 +02:00
julienfastre 3a8154ecce Replace PhoneNumberUtil with PhonenumberHelper
The PhoneNumberUtil has been replaced with PhonenumberHelper in AssociateByPhonenumberCommandHandler and its test class. The purpose of this change is to improve phone number parsing which is now delegated to the PhonenumberHelper class in the Chill\MainBundle\Phonenumber namespace. As a consequence, the related dependencies in both the service and the test class have been updated accordingly.
2024-05-17 12:17:00 +02:00
julienfastre c81828e04f Add phone number parsing functionality
Added a new method 'parse' in the PhonenumberHelper class in ChillMainBundle to sanitize and parse phone numbers. This method specifically handles phone numbers that start with '00', '+' or '0'. Associated unit tests for this new method were also added in PhonenumberHelperTest.php.
2024-05-17 12:16:28 +02:00
Boris Waaub ec17dd7de2 Merge branch 'master' of https://gitlab.com/Chill-Projet/chill-bundles into ticket-app-master 2024-05-13 16:08:19 +02:00
julienfastre 76c076a5f3 Merge branch 'ticket-app-create-template' into 'ticket-app-master'
Mise à jour des messages de l'interface utilisateur pour inclure les...

See merge request Chill-Projet/chill-bundles!689
2024-05-13 13:34:43 +00:00
Boris Waaub f0045edd6c FIX: Ouvert depuis 2024-05-13 12:33:11 +02:00
Boris Waaub d00b76ffcd $tc n'est plus supporté pour i18n composition api, il faut utiliser $t.
FIX: Person PersonRenderBox
2024-05-13 12:16:07 +02:00
Boris Waaub 8991f0ef3f Modification i18n 2024-05-13 12:00:11 +02:00
Boris Waaub d6f5eae0c9 Rendre les commentaire markdown 2024-05-13 11:59:50 +02:00
Boris Waaub 821fce3dd8 $tc n'est plus supporté pour i18n composiontion api, il faut utiliser $t.
Source : https://github.com/intlify/vue-cli-plugin-i18n/issues/214
i18n composion api : https://vue-i18n.intlify.dev/api/composition
2024-05-13 11:38:28 +02:00
Boris Waaub 1d33ae1e39 use ckeditor 2024-05-08 18:03:50 +02:00
Boris Waaub 19af0feb57 Use PersonRenderBox 2024-05-08 17:54:03 +02:00
Boris Waaub 1c09e9a692 Merge branch 'ticket-app-master' into ticket-app-create-template 2024-05-08 16:05:35 +02:00
Boris Waaub d72e748388 Merge branch 'ticket-app-master' of https://gitlab.com/boriswa/chill-bundles into ticket-app-master 2024-05-08 16:02:09 +02:00
Boris Waaub ab850b7b70 Fusionner les utilisateurs/goupes en une "Card" 2024-05-06 20:07:15 +02:00
Boris Waaub 3f9745d8cf Use teleport for banner 2024-05-06 18:03:04 +02:00
Boris Waaub 473765366a Add tranfert with AddPerson 2024-05-06 16:38:56 +02:00
Boris Waaub 6500c24a7f Déplacer le répertoire translation dans source 2024-05-02 14:10:22 +02:00
Boris Waaub 1d00457141 Ajouter les propriétés createdAt et updatedBy à l'interface Ticket 2024-05-02 14:09:52 +02:00
Boris Waaub eb0bf56cff Add user group addressee 2024-05-02 13:18:45 +02:00
Boris Waaub 7b8cd90cf1 Add user store 2024-05-02 12:03:10 +02:00
Boris Waaub a27d92aba0 Add comment and motive 2024-05-02 00:50:33 +02:00
Boris Waaub 85bdfb9e21 Remove banner component 2024-05-01 22:04:07 +02:00
Boris Waaub 4cffcf4de1 Use translate in setup 2024-05-01 22:03:36 +02:00
Boris Waaub b2587a688f Déplacer le composant banner dans twig 2024-05-01 15:51:12 +02:00
Boris Waaub c9f0e9843b Déplacer le composant banner dans twig 2024-05-01 15:49:32 +02:00
Boris Waaub b40ad9e445 Mise à jour des messages de l'interface utilisateur pour inclure les fonctionnalités de commentaire, de motif et de transfert 2024-04-25 11:16:08 +02:00
Boris Waaub 3e10e47e29 Merge branch 'ticket-app-master' into ticket-app-create-template 2024-04-25 10:37:42 +02:00
Boris Waaub 2a1963e993 Mise à jour de l'interface utilisateur pour le composant ActionToolbarComponent 2024-04-25 10:36:45 +02:00
julienfastre 34c171659b Merge branch 'ticket-app/backend-3' into 'ticket-app-master'
Add functionality to set addressees for a ticket

See merge request Chill-Projet/chill-bundles!683
2024-04-24 16:50:29 +00:00
julienfastre 2d8b960d9e Re-open the same ticket if a ticket already exists with the same externalRef, instead of creating a new one 2024-04-24 18:48:00 +02:00
julienfastre 831ae03431 Merge branch 'ticket-app/backend-2' into 'ticket-app-master'
Add functionality to add comments to tickets

See merge request Chill-Projet/chill-bundles!681
2024-04-23 21:42:07 +00:00
julienfastre 45828174d1 Add addressee history to ticket serialization
This update extends the tickets serialization and normalisation process to include addressee history. With the changes, AddresseeHistory class now also keeps track of who removed an addressee. Additional types, tests and interfaces have been introduced to support this change.
2024-04-23 23:39:01 +02:00
julienfastre ed45f14a45 Add tracking of addressee history in ticket system
The updates introduce tracking for the history of addressees in the ticket system, both when added and when removed. The user who removed an addressee is now recorded. The changes also ensure these updated aspects are correctly normalized and users can see them in the ticket history. A new database migration file was created for the changes.
2024-04-23 23:38:34 +02:00
julienfastre fa67835690 Add functionality to add single addressee to tickets
This update introduces a new feature allowing end-users to add a single addressee to a ticket without removing the existing ones. This was achieved by adding a new API endpoint and updating the SetAddresseesController to handle the addition of a single addressee. Accompanying tests have also been provided to ensure the new feature works as expected.
2024-04-23 23:00:12 +02:00
julienfastre b434d38091 Add functionality to set addressees for a ticket
This update includes the implementation of methods to add and retrieve addressee history in the Ticket entity, a handler for addressee setting command, denormalizer for transforming request data to SetAddresseesCommand, and corresponding tests. Additionally, it adds a SetAddresseesController for handling addressee related requests and updates the API specifications.
2024-04-23 22:50:51 +02:00
Boris Waaub 800a952532 Add base template 2024-04-23 20:41:32 +02:00
julienfastre 9f355032a8 Create a "do not exclude" validation constraint for user groups 2024-04-22 12:41:43 +02:00
julienfastre 0bc6e62d4d Add fixtures for UserGroup 2024-04-22 12:01:49 +02:00
julienfastre 46fb1c04b5 Add color and exclusion fields to UserGroup
This commit introduces new fields to the UserGroup entity, specifically background color, foreground color, and an exclusion key. These have been implemented both in the PHP entity and TypeScript interface definitions. Additionally, a Doctrine migration has been created to reflect these changes on the database side.
2024-04-22 12:01:28 +02:00
julienfastre 3b2c3d1464 Merge branch 'ticket-app-create-store' into 'ticket-app-master'
Create vuex store

See merge request Chill-Projet/chill-bundles!678
2024-04-22 08:29:56 +00:00
Boris Waaub 0bd6038160 Merge branch chill-bundles:master into ticket-app-master 2024-04-19 15:54:24 +00:00
Boris Waaub baab8e94ce Add ticket to storeand catch error with toast in component 2024-04-19 17:46:12 +02:00
julienfastre e2deb55fdb Create api endpoint for listing user-group 2024-04-19 15:34:43 +02:00
Boris Waaub 2cdfb50058 Mise en œuvre de la fonctionnalité de remplacement du motif du ticket
La validation introduit plusieurs fonctionnalités liées à la gestion du motif du ticket dans le bundle Chill-TicketBundle :
- Ajoute la possibilité de remplacer le motif d'un ticket par un nouveau.
- Fournit des fonctionnalités de gestion de l'historique des motifs du ticket.
- Implémente les modifications pertinentes au niveau du contrôleur, du gestionnaire d'actions et de l'entité.
- Intègre de nouvelles points d'API et met à jour le fichier de spécification de l'API pour la nouvelle fonctionnalité.
- Inclut des tests pour garantir le bon fonctionnement de la nouvelle fonctionnalité.
2024-04-19 14:12:09 +02:00
julienfastre 39d701feb2 Serialize ticket's Comment 2024-04-18 22:10:56 +02:00
julienfastre 613ee8b186 Add functionality to add comments to tickets
A new controller, 'AddCommentController', has been added. This controller implements the 'AddCommentCommandHandler', allowing users to add comments to tickets. Additionally, corresponding test cases were implemented. The Ticket entity was also updated to accept and manage comments. API endpoint specs were updated to reflect these changes.
2024-04-18 21:57:55 +02:00
julienfastre 56a1a488de Return the content of the ticket on replace motive POST request 2024-04-18 15:44:05 +02:00
julienfastre 3f789ad0f4 Merge branch 'ticket-app/create-entities' into 'ticket-app-master'
Add phone number search function to PersonACLAwareRepository

See merge request Chill-Projet/chill-bundles!677
2024-04-18 11:21:46 +00:00
julienfastre 467bea7cde Serialization of tickets with history 2024-04-18 13:13:09 +02:00
julienfastre 670b8eb82b Implement functionality to replace ticket's motive
The commit introduces several features related to ticket motive management in the Chill-TicketBundle:
- Adds capability to replace a ticket's motive with a new one.
- Provides ticket motive history management features.
- Implements relevant changes in Controller, Action Handler, and Entity levels.
- Incorporates new API endpoints and updates the API specification file for the new feature.
- Includes tests to ensure the new functionality works as expected.
2024-04-18 13:13:08 +02:00
julienfastre a9760b323f Add ChillTicketBundle to configuration and autoload-dev
The commit includes the ChillTicketBundle in the bundles configuration file for testing. Additionally, the autoload-dev directive in the composer.json file was updated to include the "App" namespace for testing purposes. This ensures that the tests related to the "App" namespace are correctly autoloaded.
2024-04-18 13:13:08 +02:00
julienfastre 71a3a1924a Add Motive API and related fixtures to ChillTicketBundle
This update introduces the Motive API Controller to the ChillTicket bundle with its corresponding service configuration. Also included are related data fixtures for loading motive information. The motive entity has been updated to improve its serialization properties and new types were added to the TypeScript definitions of the bundle.
2024-04-18 13:13:07 +02:00
julienfastre ecdc1e25bf Layout of banner for ticket 2024-04-18 13:13:07 +02:00
julienfastre dd37427be1 Bootstrap ticket layout and vue app to edit ticket 2024-04-18 13:13:07 +02:00
julienfastre c8467df1b1 fixup! Rename Command directory to Action to avoid confusion with symfony commands 2024-04-18 13:13:06 +02:00
julienfastre 4c89a954fa Refactor test, fixing the constructor 2024-04-18 13:13:05 +02:00
julienfastre 7c1f3b114d Rename Command directory to Action to avoid confusion with symfony commands 2024-04-18 13:13:05 +02:00
julienfastre 36bc4dab24 Configure a testsuite for TicketBundle 2024-04-18 13:13:04 +02:00
julienfastre 4b30d92282 Add ticket creation and associating by phone number functionality
This update introduces new features allowing the creation of tickets and associating them with a phone number. Specifically, relevant commands and their handlers have been created along with corresponding tests. An endpoint for ticket creation has also been set up, and the ViewTicketController has been renamed and refactored to EditTicketController to better reflect its function.
2024-04-18 13:13:04 +02:00
julienfastre 75fbec5489 Create entities and doctrine mapping for ticket 2024-04-18 13:13:03 +02:00
julienfastre 912fdd6349 Add phone number search function to PersonACLAwareRepository
A new function, findByPhone, has been added to the PersonACLAwareRepository. This function allows searching for people based on their phone numbers. Changes also reflect in the PersonACLAwareRepositoryInterface, and new test cases have been added to the PersonACLAwareRepositoryTest.
2024-04-16 14:41:55 +02:00
julienfastre 5832542978 load also tests for ticket bundle 2024-04-16 14:41:39 +02:00
julienfastre 5c3585a1ed Fix loading of environment variable in bootstrap process 2024-04-16 14:41:29 +02:00
julienfastre a2f1e20ddf Fix cs 2024-04-15 15:49:47 +02:00
julienfastre 4d67702a76 Bootstrap loading of controllers and routes for ticket bundle 2024-04-15 15:48:25 +02:00
julienfastre 18e442db29 Merge branch 'ticket-app-init' into 'ticket-app-master'
Add ChillTicketBundle webpack configuration

See merge request Chill-Projet/chill-bundles!673
2024-04-15 12:44:21 +00:00
Boris Waaub deb3d92189 Add ChillTicketBundle webpack configuration 2024-04-15 14:34:09 +02:00
julienfastre a59ea7db31 Compiles with ticket bundle 2024-04-15 13:48:49 +02:00
julienfastre a738b0cac9 Initialize ChillTicketBundle 2024-04-15 13:22:36 +02:00
3577 changed files with 121173 additions and 74794 deletions
@@ -0,0 +1,6 @@
kind: Feature
body: |
Upgrade import of address list to the last version of compiled addresses of belgian-best-address
time: 2024-05-30T16:00:03.440767606+02:00
custom:
Issue: ""
@@ -0,0 +1,6 @@
kind: Feature
body: |
Upgrade CKEditor and refactor configuration with use of typescript
time: 2024-05-31T19:02:42.776662753+02:00
custom:
Issue: ""
@@ -0,0 +1,6 @@
kind: Feature
body: Create invitation list in user menu
time: 2025-08-08T12:08:02.446361367+02:00
custom:
Issue: "385"
SchemaChange: No schema change
@@ -0,0 +1,6 @@
kind: Feature
body: Admin interface for Motive entity
time: 2025-10-07T15:59:45.597029709+02:00
custom:
Issue: ""
SchemaChange: No schema change
@@ -0,0 +1,6 @@
kind: Feature
body: Add an admin interface for Motive entity
time: 2025-10-22T11:15:52.13937955+02:00
custom:
Issue: ""
SchemaChange: Add columns or tables
@@ -0,0 +1,6 @@
kind: Fixed
body: Fix suggestion of referrer when creating notification for accompanyingPeriodWorkDocument
time: 2025-11-06T16:16:05.861813041+01:00
custom:
Issue: "428"
SchemaChange: No schema change
+6
View File
@@ -0,0 +1,6 @@
## v3.10.0 - 2025-03-17
### Feature
* ([#363](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/363)) Display social actions grouped per social issue within activity form
### Fixed
* ([#362](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/362)) Fix Dependency Injection, which prevented to save the CalendarRange
* ([#368](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/368)) fix search query for user groups
+3
View File
@@ -0,0 +1,3 @@
## v3.10.1 - 2025-03-17
### DX
* Remove yarn dependency to symfony/ux-translator, to ease the build process
+3
View File
@@ -0,0 +1,3 @@
## v3.10.2 - 2025-03-17
### Fixed
* Replace a ts-expect-error with a ts-ignore
+3
View File
@@ -0,0 +1,3 @@
## v3.10.3 - 2025-03-18
### DX
* Eslint fixes
+19
View File
@@ -0,0 +1,19 @@
## v3.11.0 - 2025-04-17
### Feature
* ([#365](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/365)) Add counters of actions and activities, with 2 boxes to (1) show the number of active actions on total actions and (2) show the number of activities in a accompanying period, and pills in menus for showing the number of active actions and the number of activities.
* ([#364](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/364)) Added a second phone number "telephone2" to the thirdParty entity. Adapted twig templates and vuejs apps to handle this phone number
**Schema Change**: Add columns or tables
* Signature: add a button to go directly to the signature zone, even if there is only one
### Fixed
* Fixed wrong translations in the on-the-fly for creation of thirdParty
* Fixed update of phone number in on-the-fly edition of thirdParty
* Fixed closing of modal when editing thirdParty in accompanying course works
* Shorten the delay between two execution of AccompanyingPeriodStepChangeCronjob, to ensure at least one execution in a day
* ([#102](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/102)) Fix display of title in document list
* When cleaning the old stored object versions, do not throw an error if the stored object is not found on disk
* Add consistent log prefix and key to logs when stale workflows are automatically canceled
* ([#380](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/380)) Remove the "not null" validation constraint on recently added properties on HouseholdComposition
### DX
* Add new chill-col style for displaying title and aside in a flex table
+22
View File
@@ -0,0 +1,22 @@
## v3.12.0 - 2025-06-30
### Feature
* ([#377](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/377)) Add the document file name to the document title when a user upload a document, unless there is already a document title.
* Add desactivation date for social action and issue csv export
* Add Emoji and Fullscreen feature to ckeditor configuration
* ([#321](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/321)) Create editor which allow us to toggle between rich and simple text editor
* Do not remove workflow which are automatically canceled after staling for more than 30 days
### Fixed
* ([#376](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/376)) trying to prevent bug of typeerror in doc-history + improved display of document history
* ([#381](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/381)) Display previous participation in acc course work even if the person has left the acc course
* ([#372](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/372)) Fix display of text in calendar events
* Add missing translation for user_group.no_user_groups
* Fix admin entity edit actions for event admin entities and activity reason (category) entities
* ([#392](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/392)) Allow null and cast as string to setContent method for NewsItem
* ([#393](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/393)) Doc Generation: the "dump only" method send the document as an email attachment.
### DX
* ([#352](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/352)) Remove dead code for wopi-link module
* Replace library node-sass by sass, and upgrade bootstrap to version 5.3 (yarn upgrade / install is required)
### UX
* ([#374](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/374)) Remove default filter in_progress for the page 'my tasks'; Allows for new tasks to be displayed upon opening of the page
* Improve labeling of fields in person resource creation form
+3
View File
@@ -0,0 +1,3 @@
## v3.12.1 - 2025-06-30
### Fixed
* Fix loading of the list of documents
+4
View File
@@ -0,0 +1,4 @@
## v3.4.3 - 2024-12-05
### Fixed
* Remove the "not null" constraint on person supplementary phones
* Remove doctrine annotation that prevent from adding documents to activities
+6
View File
@@ -0,0 +1,6 @@
## v3.5.0 - 2024-12-09
### Feature
* ([#318](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/318)) Show all the pages of the documents in the signature app
### Fixed
* Wrap the signature's change state into a transaction, to avoid race conditions
* Fix display of gender label
+4
View File
@@ -0,0 +1,4 @@
## v3.5.1 - 2024-12-16
### Fixed
* Filiation: fix the display of the gender label in the graph
* Wrap handling of PdfSignedMessage into transactions
+3
View File
@@ -0,0 +1,3 @@
## v3.5.2 - 2024-12-19
### Fixed
* ([#345](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/345)) Export: activity filtering of users that were associated to an activity between certain dates. Results contained activities that were not within the specified date range"
+3
View File
@@ -0,0 +1,3 @@
## v3.5.3 - 2025-01-07
### Fixed
* Fix the EntityToJsonTransformer to return an empty array if the value is ""
+9
View File
@@ -0,0 +1,9 @@
## v3.6.0 - 2025-01-16
### Feature
* Importer for addresses does not fails when the postal code is not found with some addresses, and compute a recap list of all addresses that could not be imported. This recap list can be send by email.
* ([#346](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/346)) Create a driver for storing documents on disk (instead of openstack object store)
* Add address importer from french Base d'Adresse Nationale (BAN)
* ([#343](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/343)) Add csv export for social issues and social actions
### Fixed
* Export: fix missing alias in activity between certain dates filter. Condition added for alias.
+62
View File
@@ -0,0 +1,62 @@
## v3.7.0 - 2025-01-21
### Feature
* Use the Notifier component from Symfony to sens short messages (SMS). This allow to use more provider.
### Fixed
* ([#348](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/348)) [export] Fix aggregation of referrer's scope and job: fix the date range comparison
### Warning on configuration of Notifier component
If installed in an symfony app where the recipes are activated, this configuration should be added automatically:
```yaml
framework:
notifier:
chatter_transports:
texter_transports:
ovhcloud: '%env(OVHCLOUD_DSN)%'
channel_policy:
# use chat/slack, chat/telegram, sms/twilio or sms/nexmo
urgent: ['email']
high: ['email']
medium: ['email']
low: ['email']
admin_recipients:
- { email: admin@example.com }
```
Actually, you should either:
- remove the configuration of ovhcloud added by the recipe
- or remove the previous configuration of chill, to avoid keeping legacy configuration
#### Remove the added configuration and keep the legacy configuration
To remove the configuration:
```diff
framework:
notifier:
chatter_transports:
texter_transports:
- ovhcloud: '%env(OVHCLOUD_DSN)%'
```
In that case, the previous configuration, which was stored under the `chill_main.short_messages.dsn` will be reconfigured into the Notifier component's configuration.
#### Properly configure SMS
You can also properly configure it, as [described in the OVH cloud provider repository](https://github.com/symfony/ovh-cloud-notifier/tree/5.4?tab=readme-ov-file#dsn-example) (where the scheme is `ovhcloud`):
**NOTE**: You have access to all notifier available with the [Notifier component](https://symfony.com/doc/current/notifier.html#notifier-sms-channel). You are not restricted to use OVH as a provider.
```diff
framework:
notifier:
chatter_transports:
texter_transports:
+ ovhcloud: '%env(OVHCLOUD_DSN)%' # this value should be located in a variable, and have `ovhcloud://` as a scheme
chill_main:
- short_messages:
- dsn: '%env(string:SHORT_MESSAGE_DSN)%'
```
+3
View File
@@ -0,0 +1,3 @@
## v3.7.1 - 2025-01-21
### Fixed
* Fix legacy configuration processor for notifier component
+11
View File
@@ -0,0 +1,11 @@
## v3.8.0 - 2025-02-03
### Feature
* Improve the UX of the news item admin form to prevent wrong usage
* ([#319](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/319)) Notification list: display the concerned person's badges in the list
* ([#320](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/320)) Show the first 3 persons directly in the accompanying period's banner
* ([#334](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/334)) Suggest current user when creating an activity
* ([#331](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/331)) Add attachments to workflows
### Fixed
* ([#350](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/350)) Add validation error to manual selection of person in PersonDuplicateController
* ([#354](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/354)) Fix document category creation
* ([#351](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/351)) Add definitive whitespace between span elements in vue PersonText component
+3
View File
@@ -0,0 +1,3 @@
## v3.8.1 - 2025-02-05
### Fixed
* Fix household link in the parcours banner
+3
View File
@@ -0,0 +1,3 @@
## v3.8.2 - 2025-02-10
### Fixed
* ([#358](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/358)) Remove "filter" button on list of documents in the workflow's "add attachement" modal
+10
View File
@@ -0,0 +1,10 @@
## v3.9.0 - 2025-02-27
### Feature
* ([#349](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/349)) Suggest all referrers within actions of the accompanying period when creating an activity
* ([#343](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/343)) Add possibility to export a csv with all social issues and social actions
* ([#360](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/360)) Restore document to previous kept version when a workflow is canceled
* ([#341](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/341)) Add a list of third parties from within the admin (csv download)
### Fixed
* fix generation of document with accompanying period context, and list of activities and works
### DX
* ([#333](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/333)) Create an unique source of trust for translations
+3
View File
@@ -0,0 +1,3 @@
## v3.9.1 - 2025-02-27
### Fixed
* Fix post/patch request with missing 'type' property for gender
+3
View File
@@ -0,0 +1,3 @@
## v3.9.2 - 2025-02-27
### Fixed
* Use fetchResults method to fetch all social issues instead of only the first page
+74
View File
@@ -0,0 +1,74 @@
## v4.0.0 - 2025-07-08
### Feature
* ([#359](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/359)) Allow the merge of two accompanying period works
### Fixed
* ([#390](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/390)) Display the list of participant in the results, even if there is only one participant and that the search result display the requestor
* Fix admin entity edit actions for event admin entities and activity reason (category) entities
* Fix translations for social action fields in admin form: results, goals, evaluations
### DX
* Rewrite exports to run them asynchronously
**Schema Change**: Add columns or tables
* Allow TranslatableMessage in flash messages
### UX
* Improve labeling of fields in person resource creation form
**Release notes**
- Add new methods to serialize data using the rector rule
- Remove all references to the Request in filters, aggregators, filters. Actually, the most frequent occurence is `$security->getUser()`.
- Refactor manually the initializeQuery method
- Remove the injection of ExportManager into the constructor of each export element:
```diff
- class MyFormatter implements FormatterInterface
+ class MyFormatter implements FormatterInterface, \Chill\MainBundle\Export\ExportManagerAwareInterface
{
+ use \Chill\MainBundle\Export\Helper\ExportManagerAwareTrait;
- public function __construct(private ExportManager $exportmanager) {}
public function MyMethod(): void
{
- $this->exportManager->getFilter('alias');
+ $this->getExportManager()->getFilter('alias');
}
}
```
- configure messenger to handle export in a queue:
```diff
# config/packages/messenger.yaml
framework:
messenger:
routing:
+ 'Chill\MainBundle\Export\Messenger\ExportRequestGenerationMessage': priority
```
- add missing methods to exports, aggregators, filters, formatter:
```php
public function normalizeFormData(array $formData): array;
public function denormalizeFormData(array $formData, int $fromVersion): array;
```
There are rector rules to generate those methods:
- `Chill\Utils\Rector\Rector\ChillBundleAddNormalizationMethodsOnExportRector`
See:
```php
// upgrade chill exports
$rectorConfig->rules([\Chill\Utils\Rector\Rector\ChillBundleAddNormalizationMethodsOnExportRector::class]);
```
This rule will create most of the work necessary, but some manuals changes are still necessary:
- we must set manually the correct repository for method `denormalizeDoctrineEntity`;
- when the form data contains some entities, and the form type is not one of EntityType::class, PickUserDynamicType::class, PickUserLocationType::class, PickThirdpartyDynamicType::class, Select2CountryType::class, then we must handle the normalization manually (using the `\Chill\MainBundle\Export\ExportDataNormalizerTrait`)
+4
View File
@@ -0,0 +1,4 @@
## v4.0.1 - 2025-07-08
### Fixed
* Fix package.json for compilation
+4
View File
@@ -0,0 +1,4 @@
## v4.0.2 - 2025-07-09
### Fixed
* Fix add missing translation
* Fix the transfer of evaluations and documents during of accompanyingperiodwork
+12
View File
@@ -0,0 +1,12 @@
## v4.1.0 - 2025-08-26
### Feature
* ([#400](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/400)) Add filter to social actions list to filter out actions where current user intervenes
* ([#399](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/399)) Show filters on list pages unfolded by default
* Expansion of event module with new fields in the creation form: thematic, internal/external animator, responsable, and budget elements. Filtering options in the event list + adapted exports
**Schema Change**: Add columns or tables
### Fixed
* ([#382](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/382)) adjust display logic for accompanying period dates, include closing date if period is closed.
* ([#384](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/384)) add min and step attributes to integer field in DateIntervalType
### UX
* Limit display of participations in event list
+6
View File
@@ -0,0 +1,6 @@
## v4.10.0 - 2025-12-09
### Feature
* [MR 928](https://gitlab.com/Chill-Projet/chill-bundles/-/merge_requests/928) [#462](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/462) Add the future appointments for the person in search results
### Fixed
* Remove dependency to package @symfony/ux-translator
+6
View File
@@ -0,0 +1,6 @@
## v4.10.1 - 2025-12-11
### Fixed
* Fix missing translation variable in NewLocation component
* ([#476](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/476)) Fix display of header for ByActivityNumberAggregator
* Fix use of ByActivityNumberAggregator in combination with activity count exports
* ([#483](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/483)) Tentatively fix usage of CTRL+C in collabora editor with chrome / edge browser
+10
View File
@@ -0,0 +1,10 @@
## v4.2.0 - 2025-09-02
### Feature
* ([#64](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/64)) Add external identifier for a Person
**Schema Change**: Add columns or tables
* ([#330](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/330) Allow users to choose for which notifications they want to receive an email
### Fixed
* ([#422](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/422)) Fixed html layout of pages for recovering password
* Fix typo in 'uncheckAll' script for centers selection
* Fix incorrect parameter name in event details link
+6
View File
@@ -0,0 +1,6 @@
## v4.2.1 - 2025-09-03
### Fixed
* Fix exports to work with DirectExportInterface
### DX
* Improve error message when a stored object cannot be written on local disk
+10
View File
@@ -0,0 +1,10 @@
## v4.3.0 - 2025-09-08
### Feature
* ([#409](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/409)) Add 45 and 60 min calendar ranges
* Add a command to generate a list of permissions
* ([#412](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/412)) Add an absence end date
**Schema Change**: Add columns or tables
### Fixed
* fix date formatting in calendar range display
* Change route URL to avoid clash with person duplicate controller method
+8
View File
@@ -0,0 +1,8 @@
## v4.4.0 - 2025-09-11
### Feature
* ([#359](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/359)) Allow the merge of two accompanying period works
* ([#369](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/369)) Duplication of a document to another accompanying period work evaluation
* ([#359](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/359)) Fusion of two accompanying period works
### Fixed
* Fix display of 'duplicate' and 'merge' buttons in CRUD templates
* Fix saving notification preferences in user's profile
+3
View File
@@ -0,0 +1,3 @@
## v4.4.1 - 2025-09-11
### Fixed
* fix translations in duplicate evaluation document modal and realign close modal button
+3
View File
@@ -0,0 +1,3 @@
## v4.4.2 - 2025-09-12
### Fixed
* Fix document generation and workflow generation do not work on accompanying period work documents
+13
View File
@@ -0,0 +1,13 @@
## v4.5.0 - 2025-10-03
### Feature
* Only allow delete of attachment on workflows that are not final
* Move up signature buttons on index workflow page for easier access
* Filter out document from attachment list if it is the same as the workflow document
* Block edition on attached document on workflow, if the workflow is finalized or sent external
* Convert workflow's attached document to pdf while sending them external
* After a signature is canceled or rejected, going to a waiting page until the post-process routines apply a workflow transition
### Fixed
* ([#426](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/426)) Increased the number of required characters when setting a new password in Chill from 9 to 14 - GDPR compliance
* Fix permissions on storedObject which are subject by a workflow
### DX
* Introduce a WaitingScreen component to display a waiting screen
+4
View File
@@ -0,0 +1,4 @@
## v4.5.1 - 2025-10-03
### Fixed
* Add missing javascript dependency
* Add exception handling for conversion of attachment on sending external, when documens are already in pdf
+14
View File
@@ -0,0 +1,14 @@
## v4.6.0 - 2025-10-15
### Feature
* ([#423](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/423)) Create environment banner that can be activated and configured depending on the image deployed
* ([#394](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/394)) Only show active workflow on the page "my tracked workflow"
### Fixed
* Fix loading of classLists in SocialIssuesAcc.vue, ensure elements are present
* Fix the rendering of list of StoredObjectVersions, where there are kept version (before converting to pdf) and intermediate versions deleted
* ([#434](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/434)) Notification: fix editing of sent notification by removing form.addressesEmails, a field that no longer exists
* Fix loading of social issues and social actions within vue component
* ([#446](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/446)) Add unique condition on stored object filename, with cleaning step on existing duplicate filenames
**Schema Change**: Drop or rename table or columns, or enforce new constraint that must be manually fixed
* [workflow] take permissions into account to delete the workflow attachment
* ([#448](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/448)) Fix the execution of daily cronjob notification, when the previous last execution storage was invalid
+3
View File
@@ -0,0 +1,3 @@
## v4.6.1 - 2025-10-27
### Fixed
* Fix export case where no 'reason' is picked within the PersonHavingActivityBetweenDateFilter.php
+21
View File
@@ -0,0 +1,21 @@
## v4.7.0 - 2025-11-10
### Feature
* ([#385](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/385)) Create invitation list in user menu
* ([#404](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/404)) Add columns for comments linked to an activity in the activity list export
### Fixed
* ([#451](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/451)) Fix: display also social actions linked to parents of the selected social issue
* ([#453](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/453)) Fix: export actions and their results in csv even when action does not have any goals attached to it.
* Fix the possibility to delete a workflow
**Schema Change**: Drop or rename table or columns, or enforce new constraint that must be manually fixed
* ([#457](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/457)) Fix the fusion of thirdparty properties that are located in another schema than public for TO_ONE relations + add extra loop for MANY_TO_MANY relations where thirdparty is the source instead of the target
* ([#428](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/428)) Fix suggestion of referrer when creating notification for accompanyingPeriodWorkDocument
### DX
* Send notifications log to dedicated channel, if it exists
### UX
* ([#425](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/425)) Change the terms 'cercle' and 'centre' to 'service', and 'territoire' respectively.
* ([#542](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/542)) Improve the ux for selecting whether user wants to be notified of the final step of a workflow or all steps
* Expand timeSpent choices for evaluation document and translate them to user locale or fallback 'fr'
* ([#455](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/455)) Change the order of display for results and objectives in the social work/action form
* Wrap text when it is too long within badges
+9
View File
@@ -0,0 +1,9 @@
## v4.8.0 - 2025-11-17
### Feature
* ([#461](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/461)) Make a calendar item on the 'mes rendez-vous' page clickable. Clicking will navigate to the edit page of the calendar item.
### Fixed
* ([#463](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/463)) Display calendar items for which an invite was accepted on the mes rendez-vous page
* Improve accessibility on login page
### UX
* ([#449](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/449)) Remove the label if there is only one scope and no scope picking field is displayed.
+6
View File
@@ -0,0 +1,6 @@
## v4.8.1 - 2025-11-20
### Fixed
* Insert name of file as the document title when uploading
* Add missing path paramater 'id' for editing multiple participations
* ([#471](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/471)) Hide the display of inactive user groups in the api
+10
View File
@@ -0,0 +1,10 @@
## v4.8.2 - 2025-11-26
### Fixed
* ([#466](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/466)) Associate activity's creator as a participant by default, and retro-actively append the creator to each activity
**Schema Change**: Add columns or tables
* Fix template parameter for update_multiple route on event participations
### UX
* ([#470](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/470)) Alphabetically order userJobs and mainLocations within user creation form
* ([#437](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/437)) Change position and color of confirm parcours button
+14
View File
@@ -0,0 +1,14 @@
## v4.9.0 - 2025-12-05
### Feature
* ([#459](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/459)) Add a counter for invitations awaiting reply
### Fixed
* ([#475](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/475)) Do not suggest a user that is no longer active in the activity form.
* ([#441](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/441)) Remove double display of person id in the banner when there is a deathdate
### DX
* ([#280](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/280)) Add missing fixtures for proper loading of AccompanyingPeriods
* ([#386](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/386)) Use mkdocs with mkdocs-material instead of sphinx to build chill developer documentation
### UX
* ([#456](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/456)) Display whether doc generation template is active or not in admin and order templates alphabetically
* ([#460](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/460)) Display calendar item info on cancel page
* ([#424](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/424)) Display entire comment for activity item within list
* ([#474](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/474)) Improve accessibility of event form
+16 -2
View File
@@ -7,15 +7,29 @@ versionFormat: '## {{.Version}} - {{.Time.Format "2006-01-02"}}'
kindFormat: '### {{.Kind}}' kindFormat: '### {{.Kind}}'
# Note: it is possible to add a `.custom.Long` text manually into the yaml file produced by `changie new`. This will add a long description. # Note: it is possible to add a `.custom.Long` text manually into the yaml file produced by `changie new`. This will add a long description.
changeFormat: >- changeFormat: >-
* {{ if not (eq .Custom.Issue "") }}([#{{ .Custom.Issue }}](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/{{ .Custom.Issue }})) {{ end }}{{.Body}} {{ if and (.Custom.Long) (not (eq .Custom.Long "")) }} * {{ if not (eq .Custom.Issue "") }}([#{{ .Custom.Issue }}](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/{{ .Custom.Issue }})) {{ end }}{{ .Body }} {{ if and .Custom.SchemaChange (ne .Custom.SchemaChange "No schema change") }}
**Schema Change**: {{ .Custom.SchemaChange }}
{{- end -}}
{{ if and (.Custom.Long) (not (eq .Custom.Long "")) }}{{ .Custom.Long }}{{ end }}
{{ .Custom.Long }}{{ end }}
custom: custom:
- key: SchemaChange
label: Is a schema change required?
optional: false
type: enum
enumOptions:
- "No schema change"
- "Add columns or tables"
- "Drop or rename table or columns, or enforce new constraint that must be manually fixed"
- key: Issue - key: Issue
label: Issue number (on chill-bundles repository) (optional) label: Issue number (on chill-bundles repository) (optional)
optional: true optional: true
type: int type: int
minInt: 1 minInt: 1
body: body:
# allow multiline messages # allow multiline messages
block: true block: true
+4 -4
View File
@@ -19,11 +19,11 @@ max_line_length = 80
[COMMIT_EDITMSG] [COMMIT_EDITMSG]
max_line_length = 0 max_line_length = 0
[*.{js, vue, ts}] [*.{js,vue,ts}]
indent_size = 2 indent_size = 2
indent_style = space indent_style = space
[.rst] [*.rst]
ident_size = 3 indent_size = 3
ident_style = space indent_style = space
+9 -1
View File
@@ -86,5 +86,13 @@ ADD_ADDRESS_MAP_CENTER_Z=15
## Redis Cache & redis database ## Redis Cache & redis database
REDIS_HOST=redis REDIS_HOST=redis
REDIS_PORT=6379 REDIS_PORT=6379
REDIS_URL=redis://${REDIS_HOST}:${REDIS_PORT} REDIS_URL="redis://${REDIS_HOST}:${REDIS_PORT}"
###< chill-project/chill-bundles ### ###< chill-project/chill-bundles ###
###> symfony/ovh-cloud-notifier ###
# OVHCLOUD_DSN=ovhcloud://APPLICATION_KEY:APPLICATION_SECRET@default?consumer_key=CONSUMER_KEY&service_name=SERVICE_NAME
###< symfony/ovh-cloud-notifier ###
###> symfony/loco-translation-provider ###
#LOCO_DSN=loco://API_KEY@default
###< symfony/loco-translation-provider ###
+4
View File
@@ -0,0 +1,4 @@
###> symfony/framework-bundle ###
APP_SECRET=72759e571285ef25677c88f967a73386
###< symfony/framework-bundle ###
+3 -37
View File
@@ -1,39 +1,5 @@
# variables for .env environement # define your env variables for the test env here
# those variables suits for gitlab-ci
# Run tests from root to adapt your own environment
KERNEL_CLASS='App\Kernel' KERNEL_CLASS='App\Kernel'
APP_SECRET='$ecretf0rt3st' APP_SECRET='$ecretf0rt3st'
SYMFONY_DEPRECATIONS_HELPER=999999
ADMIN_PASSWORD=password DEFAULT_CARRIER_CODE=TEST
JWT_SECRET_KEY=%kernel.project_dir%/config/jwt/private.pem
JWT_PUBLIC_KEY=%kernel.project_dir%/config/jwt/public.pem
JWT_PASSPHRASE=2a30f6ba26521a2613821da35f28386e
TWILIO_SID=~
TWILIO_SECRET=~
DEFAULT_CARRIER_CODE=BE
ADD_ADDRESS_DEFAULT_COUNTRY=BE
ADD_ADDRESS_MAP_CENTER_X=50.8443
ADD_ADDRESS_MAP_CENTER_Y=4.3523
ADD_ADDRESS_MAP_CENTER_Z=15
SHORT_MESSAGE_DSN=null://null
MESSENGER_TRANSPORT_DSN=sync://
###> doctrine/doctrine-bundle ###
# Format described at https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url
# IMPORTANT: You MUST configure your server version, either here or in config/packages/doctrine.yaml
#
DATABASE_URL="postgresql://app:!ChangeMe!@127.0.0.1:5454/test?serverVersion=14&charset=utf8"
###< doctrine/doctrine-bundle ###
ASYNC_UPLOAD_TEMP_URL_KEY=
ASYNC_UPLOAD_TEMP_URL_BASE_PATH=
ASYNC_UPLOAD_TEMP_URL_CONTAINER=
MAILER_DSN=null://null
REDIS_HOST=127.0.0.1
REDIS_PORT=6363
File diff suppressed because it is too large Load Diff
+13 -1
View File
@@ -5,16 +5,22 @@ composer.lock
docs/build/ docs/build/
.php_cs.cache .php_cs.cache
.cache/* .cache/*
yarn.lock
docker/db/data docker/db/data
docker/rabbitmq/data docker/rabbitmq/data
# in this development bundle, we want to ignore directories related to a real app # in this development bundle, we want to ignore directories related to a real app
assets/* assets/*
!assets/translator.ts
!assets/ux-translator
migrations/* migrations/*
templates/* templates/*
translations/* translations/*
# we allow developers to add customization on their installation, without commiting it
config/packages/dev/*
###> symfony/framework-bundle ### ###> symfony/framework-bundle ###
/.env.local /.env.local
/.env.local.php /.env.local.php
@@ -27,7 +33,7 @@ translations/*
###> phpunit/phpunit ### ###> phpunit/phpunit ###
/phpunit.xml /phpunit.xml
.phpunit.result.cache /.phpunit.cache/
###< phpunit/phpunit ### ###< phpunit/phpunit ###
/.php-cs-fixer.cache /.php-cs-fixer.cache
@@ -51,3 +57,9 @@ phpstan.neon
npm-debug.log npm-debug.log
yarn-error.log yarn-error.log
###< symfony/webpack-encore-bundle ### ###< symfony/webpack-encore-bundle ###
###> friendsofphp/php-cs-fixer ###
/.php-cs-fixer.php
/.php-cs-fixer.cache
###< friendsofphp/php-cs-fixer ###
/config/reference.php
+90 -18
View File
@@ -3,8 +3,9 @@
# Select what we should cache between builds # Select what we should cache between builds
cache: cache:
paths: paths:
- /vendor/ - vendor/
- .cache - .cache
- node_modules/
# Bring in any services we need http://docs.gitlab.com/ee/ci/docker/using_docker_images.html#what-is-a-service # Bring in any services we need http://docs.gitlab.com/ee/ci/docker/using_docker_images.html#what-is-a-service
# See http://docs.gitlab.com/ee/ci/services/README.html for examples. # See http://docs.gitlab.com/ee/ci/services/README.html for examples.
@@ -22,6 +23,7 @@ services:
variables: variables:
APP_ENV: test APP_ENV: test
GIT_DEPTH: 1 GIT_DEPTH: 1
ADMIN_PASSWORD: admin
# Configure postgres environment variables (https://hub.docker.com/r/_/postgres/) # Configure postgres environment variables (https://hub.docker.com/r/_/postgres/)
POSTGRES_USER: postgres POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres POSTGRES_PASSWORD: postgres
@@ -37,15 +39,67 @@ variables:
TZ: Europe/Brussels TZ: Europe/Brussels
# avoid direct deprecations (using symfony phpunit bridge: https://symfony.com/doc/4.x/components/phpunit_bridge.html#internal-deprecations # avoid direct deprecations (using symfony phpunit bridge: https://symfony.com/doc/4.x/components/phpunit_bridge.html#internal-deprecations
SYMFONY_DEPRECATIONS_HELPER: max[total]=99999999&max[self]=0&max[direct]=45&verbose=0 SYMFONY_DEPRECATIONS_HELPER: max[total]=99999999&max[self]=0&max[direct]=45&verbose=0
# consider the root package at the dev-master version
# this is required to work with packages
# see https://getcomposer.org/doc/articles/troubleshooting.md#dependencies-on-the-root-package
COMPOSER_ROOT_VERSION: dev-master
MAILER_DSN: 'null://null'
stages: stages:
- mirror
- Composer install - Composer install
- Tests - Tests
- Deploy - Deploy
mirror_chill_zimbra_bundle:
stage: mirror
image: alpine:latest
variables:
GIT_DEPTH: 0 # <-- access to the full git history
rules:
# 1) Allow manual run from GitLab UI, whatever the branch
- if: '$CI_PIPELINE_SOURCE == "web"'
# 2) Auto-run on commits to master or 472-zimbra-connector
# but only if relevant files changed
- if: '$CI_COMMIT_BRANCH == "master" || $CI_COMMIT_BRANCH == "472-zimbra-connector"'
changes:
- packages/ChillZimbraBundle/**/*
- .gitlab-ci.yml
# 3) Otherwise: never run
- when: never
before_script:
- apk add --no-cache git git-subtree openssh
# Config git
- git config --global user.email "ci@gitlab.com"
- git config --global user.name "GitLab CI"
# Préparation SSH
- mkdir -p ~/.ssh
- cp "$DEPLOY_KEY" ~/.ssh/id_ed25519
- printf '\n' >> ~/.ssh/id_ed25519
- chmod 600 ~/.ssh/id_ed25519
- ssh-keyscan gitlab.com >> ~/.ssh/known_hosts
# Ajout du remote vers le repo dédié
- git remote add chill-zimbra-connector git@gitlab.com:Chill-Projet/chill-zimbra-connector.git || true
script:
# On s'assure d'être sur la bonne branche (celle qui a déclenché le job, master)
- git checkout "$CI_COMMIT_REF_NAME"
# Crée une branche temporaire qui contient uniquement l'historique de packages/ChillZimbraBundle
- git subtree split --prefix=packages/ChillZimbraBundle -b chill_zimbra_temp
# Push vers le repo cible, branche master du repo chill-zimbra-connector
- git push chill-zimbra-connector chill_zimbra_temp:main
build: build:
stage: Composer install stage: Composer install
image: gitea.champs-libres.be/chill-project/chill-skeleton-basic/base-image:php82 image: chill/base-image:8.4-edge
before_script: before_script:
- composer config -g cache-dir "$(pwd)/.cache" - composer config -g cache-dir "$(pwd)/.cache"
script: script:
@@ -60,7 +114,7 @@ build:
code_style: code_style:
stage: Tests stage: Tests
image: gitea.champs-libres.be/chill-project/chill-skeleton-basic/base-image:php82 image: chill/base-image:8.4-edge
script: script:
- php-cs-fixer fix --dry-run -v --show-progress=none - php-cs-fixer fix --dry-run -v --show-progress=none
cache: cache:
@@ -73,39 +127,57 @@ code_style:
phpstan_tests: phpstan_tests:
stage: Tests stage: Tests
image: gitea.champs-libres.be/chill-project/chill-skeleton-basic/base-image:php82 image: chill/base-image:8.4-edge
dependencies:
- build
variables: variables:
COMPOSER_MEMORY_LIMIT: 3G COMPOSER_MEMORY_LIMIT: 3G
before_script: before_script:
- bin/console cache:clear --env=dev - bin/console cache:clear --env=dev
script: script:
- composer exec phpstan -- analyze --memory-limit=3G - composer exec phpstan -- analyze --memory-limit=3G
cache:
paths:
- .cache/
artifacts:
expire_in: 1 day
paths:
- vendor/
rector_tests: rector_tests:
stage: Tests stage: Tests
image: gitea.champs-libres.be/chill-project/chill-skeleton-basic/base-image:php82 image: chill/base-image:8.4-edge
dependencies:
- build
before_script: before_script:
- bin/console cache:clear --env=dev - bin/console cache:clear --env=dev
script: script:
- composer exec rector -- process --dry-run - composer exec rector -- process --dry-run
lint:
stage: Tests
image: node:20-alpine
before_script:
- apk add --no-cache python3 make g++ py3-setuptools
- export PYTHON="$(which python3)"
- export PATH="./node_modules/.bin:$PATH"
script:
- yarn install --ignore-optional
- npx eslint-baseline "src/**/*.{js,ts,vue}"
cache: cache:
paths: paths:
- .cache/ - node_modules/
artifacts:
expire_in: 1 day # psalm_tests:
paths: # stage: Tests
- vendor/ # image: gitea.champs-libres.be/chill-project/chill-skeleton-basic/base-image:php82
# script:
# - bin/psalm
# allow_failure: true
# artifacts:
# expire_in: 30 min
# paths:
# - bin
# - tests/app/vendor/
unit_tests: unit_tests:
stage: Tests stage: Tests
image: gitea.champs-libres.be/chill-project/chill-skeleton-basic/base-image:php82 image: chill/base-image:8.4-edge
dependencies:
- build
variables: variables:
COMPOSER_MEMORY_LIMIT: 3G COMPOSER_MEMORY_LIMIT: 3G
before_script: before_script:
+393
View File
@@ -0,0 +1,393 @@
# Project Guidelines for Junie
## Project Overview
Chill is a comprehensive web application built as a set of Symfony bundles. It is a case management system, for social work. The project consists of multiple specialized bundles that provide different functionalities:
- **ChillMainBundle**: Core bundles that provide the foundation of the application
- **ChillPersonBundle**: Core bundles that provide the foundation of the bundles associated to person (which is the case for all other bundles)
- **ChillCalendarBundle**: Calendar and scheduling functionality
- **ChillDocStoreBundle** and **ChillDocGeneratorBundle**: Document management and generation
- **ChillActivityBundle**, **ChillEventBundle**, **ChillTaskBundle**: Activity and task tracking
- **ChillBudgetBundle**: Financial management
- **ChillThirdPartyBundle**: Integration with external systems
- **ChillCustomFieldsBundle**: Extensibility through custom fields
- **ChillReportBundle**: Save arbitrary reports about persons
- **ChillTicketBundle**: Record and track issues about persons
- And several other specialized bundles
## Technology Stack
- **Backend**: PHP 8.3+, Symfony 5.4
- **Frontend**: JavaScript/TypeScript, Vue.js 3, Bootstrap 5
- **Build Tools**: Webpack Encore, Yarn
- **Database**: PostgreSQL with materialized views. We do not support other databases.
- **Other Services**: Redis, AMQP (RabbitMQ), SMTP
## Project Structure
Note: This is a project that's existed for a long time, and throughout the years we've used multiple structures inside each bundle. When having the choice, the developers should choose the new structure.
The project follows a standard Symfony bundle structure:
- `/src/Bundle/`: Contains all the Chill bundles. The code is either at the root of the bundle directory, or within a `src/` directory (preferred). See psr4 mapping at the root's `composer.json`.
- each bundle comes with its own tests, either in the `Tests` directory (when the code is directly within the bundle directory (for instance `src/Bundle/ChillMainBundle/Tests`, `src/Bundle/ChillPersonBundle/Tests`)), or inside the `tests` directory, alongside the `src/` sub-directory (example: `src/Bundle/ChillWopiBundle/tests`) (this is the preferred way).
- `/docs/`: Contains project documentation
Each bundle typically has the following structure:
- `Controller/`: Contains controllers
- `Entity/`: Contains Doctrine entities
- `Repository/`: Contains Doctrine repositories
- `Resources/`: Contains views, translations, and public assets
- `DependencyInjection/`: Contains service configuration
- `Export/`: Contains services related to exports
- `Security/`: Contains services related to security. Most of the time, those are new voters, and so on.
### A special word about TicketBundle
The ticket bundle is developed using a kind of "Command" pattern. The controller fills a "Command," and a "CommandHandler" handles this command. They are saved in the `src/Bundle/ChillTicketBundle/src/Action` directory.
## Development Guidelines
### Building and Configuration Instructions
All the commands should be run through the `symfony` command, which will configure the required variables.
For assets, we must ensure that we use node at version `^20.0.0`. This is done using `nvm use 20`.
#### Initial Setup
1. **Clone the Repository**:
```bash
git clone <repository-url>
cd chill-bundles
```
2. **Install PHP Dependencies**:
```bash
composer install
```
3. **Install JavaScript Dependencies**:
```bash
nvm use 20
yarn install
```
4. **Configure Environment Variables**:
- Create a `.env.local` file with minimal configuration
```bash
echo "APP_ENV=dev" >> .env.local
```
5. Start the associated services (database, and so on):
```bash
docker compose up -d
```
6. **Set Up the Database**:
```bash
# Create the database
symfony console doctrine:database:create
# Run migrations
symfony console doctrine:migrations:migrate
# Load fixtures (optional)
symfony console doctrine:fixtures:load
```
7. **Build Assets**:
```bash
nvm use 20
yarn run encore dev
```
8. **Start the Development Server**:
```bash
symfony server:start -d
```
#### Docker Setup
The project includes a Docker configuration for easier development:
1. **Start Docker Services**:
```bash
docker-compose up -d
```
2. **Access the Application**:
- The application will be available at `http://localhost:8000`
- PostgreSQL will be available at `localhost:5432`
- Redis will be available at `localhost:6379`
#### Building Assets
Before submitting any changes, you should build the project to ensure that all assets are properly compiled:
```bash
# For production
yarn run encore production
# For development with hot-reloading
yarn run encore dev --watch
# for development
yarn run encore dev
```
#### Configuration Files
Key configuration files:
- `config/packages/*.yaml`: Symfony bundle configurations
- `webpack.config.js`: Webpack Encore configuration
- `composer.json`: PHP dependencies and scripts
- `package.json`: JavaScript dependencies and scripts
- `.env`: Default environment variables. Must usually not be updated: use `.env.local` instead.
### Database migrations
Each time a doctrine entity is created, we generate migration to adapt the database.
The migration is created using the command `symfony console doctrine:migrations:diff --no-interaction --namespace <namespace>`, where the namespace is the relevant namespace for migration. As this is a bash script, remember to quote the `\` (`\` must become `\\` in your command).
Each bundle has his own namespace for migration (always ask me to confirm that command with a list of updated / created entities so that I can confirm to you that it is ok):
- `Chill\Bundle\ActivityBundle` writes migrations to `Chill\Migrations\Activity`;
- `Chill\Bundle\BudgetBundle` writes migrations to `Chill\Migrations\Budget`;
- `Chill\Bundle\CustomFieldsBundle` writes migrations to `Chill\Migrations\CustomFields`;
- `Chill\Bundle\DocGeneratorBundle` writes migrations to `Chill\Migrations\DocGenerator`;
- `Chill\Bundle\DocStoreBundle` writes migrations to `Chill\Migrations\DocStore`;
- `Chill\Bundle\EventBundle` writes migrations to `Chill\Migrations\Event`;
- `Chill\Bundle\CalendarBundle` writes migrations to `Chill\Migrations\Calendar`;
- `Chill\Bundle\FamilyMembersBundle` writes migrations to `Chill\Migrations\FamilyMembers`;
- `Chill\Bundle\FranceTravailApiBundle` writes migrations to `Chill\Migrations\FranceTravailApi`;
- `Chill\Bundle\JobBundle` writes migrations to `Chill\Migrations\Job`;
- `Chill\Bundle\MainBundle` writes migrations to `Chill\Migrations\Main`;
- `Chill\Bundle\PersonBundle` writes migrations to `Chill\Migrations\Person`;
- `Chill\Bundle\ReportBundle` writes migrations to `Chill\Migrations\Report`;
- `Chill\Bundle\TaskBundle` writes migrations to `Chill\Migrations\Task`;
- `Chill\Bundle\ThirdPartyBundle` writes migrations to `Chill\Migrations\ThirdParty`;
- `Chill\Bundle\TicketBundle` writes migrations to `Chill\Migrations\Ticket`;
- `Chill\Bundle\WopiBundle` writes migrations to `Chill\Migrations\Wopi`;
Once created the, comment's classes should be removed and a description of the changes made to the entities should be added to the migrations, using the `getDescription` method. The migration should not be cleaned by any artificial intelligence, as modifying this migration is error prone.
### Guidelines related to code structure and requirements
#### Usage of clock
When we need to use a DateTime or DateTimeImmutable that need to express "now", we prefer the usage of
`Symfony\Component\Clock\ClockInterface`, where possible. This is usually not possible in doctrine entities,
where injection does not work when restoring an entity from a database, but usually possible in services.
In test, we use `\Symfony\Component\Clock\MockClock` which is an implementation of `Symfony\Component\Clock\ClockInterface`
where we have full and easy control of the date.
### Testing Information
The project uses PHPUnit for testing. Each bundle has its own test suite, and there's also a global test suite at the root level.
#### Use of mock in tests
##### General mocking
For creating mock, we prefer using prophecy (library phpspec/prophecy).
##### Useful helpers and tips that avoid creating a mock
Some notable implementations that are test helpers and avoid creating a mock:
- `\Psr\Log\NullLogger`, an implementation of `\Psr\Log\LoggerInterface`;
- `\Symfony\Component\Clock\MockClock`, an implementation of `Symfony\Component\Clock\ClockInterface` (already mentioned above);
- `\Symfony\Component\HttpClient\MockHttpClient`, an implementation of `\Symfony\Contracts\HttpClient\HttpClientInterface`;
- When using `\Symfony\Component\Mailer\MailerInterface`, we can create the mock with "InMemoryTransport":
```php
use Symfony\Component\Mailer\Transport\InMemoryTransport;
use \Symfony\Component\Mailer\Mailer;
$transport = new InMemoryTransport();
$mailer = new Mailer($transport);
// After sending:
$messages = $transport->getSent(); // array of SentMessage
```
- When using `\Symfony\Contracts\EventDispatcher\EventDispatcherInterface`, we can use directly an instance of `\Symfony\Component\EventDispatcher\EventDispatcher`;
##### When we prefer not creating a mock
- When we use Doctrine Entities related to the project, we prefer not to use a mock: we instantiate them directly (unless it requires too much code to write);
##### Mocking final and readonly classes
Classes marked as final can't be mocked. To avoid that, either:
- we remove the `final` keyword from the class;
- we extract an interface from the final class.
This must be a decision made by a human, not by an AI. Every AI task must abort with an explicit message in that case.
#### Running Tests
The tests are run from the project's root (not from the bundle's root: so, do not change the directory to any bundle directory before running tests).
Tests must be run using the `symfony` command:
```bash
# Run a specific test file
symfony composer exec phpunit -- path/to/TestFile.php
# Run a specific test method
symfony composer exec phpunit -- --filter methodName path/to/TestFile.php
```
When writing tests, only test specific files. Do not run all tests or the full
test suite.
#### Test Structure
Tests are organized by bundle and follow the same structure as the bundle itself:
- Unit tests: Test individual components in isolation
- Integration tests: Test components working together
- Functional tests: Test the application from the user's perspective
#### Writing Tests
Tests should be placed in the appropriate bundle's test directory. For example, tests for the TicketBundle should be placed in `src/Bundle/ChillTicketBundle/tests/`.
Here's an example of a simple entity test:
```php
<?php
namespace Chill\TicketBundle\Tests\Entity;
use Chill\TicketBundle\Entity\Ticket;
use PHPUnit\Framework\TestCase;
class TicketTest extends TestCase
{
public function testGetAndSetExternalRef(): void
{
$ticket = new Ticket();
$externalRef = 'REF-123';
// Set the external reference
$ticket->setExternalRef($externalRef);
// Verify that getExternalRef returns the correct value
self::assertSame($externalRef, $ticket->getExternalRef());
// Change the external reference
$newExternalRef = 'REF-456';
$ticket->setExternalRef($newExternalRef);
// Verify that getExternalRef returns the updated value
self::assertSame($newExternalRef, $ticket->getExternalRef());
}
}
```
#### Test Database
For tests that require a database, the project uses a postgresql database filled with fixtures (usage of doctrine-fixtures). You can configure a different database for testing in the `.env.test` file.
### Code Quality Tools
The project uses several tools to maintain code quality:
#### PHP Code Style
The project uses PHP-CS-Fixer for code style. You can run it with:
```bash
# Using the composer script
composer php-cs-fixer
# Or directly
php-cs-fixer fix --config=./.php-cs-fixer.dist.php
```
#### Static Analysis
The project uses PHPStan for static analysis. You can run it with:
```bash
# Using the composer script
composer phpstan
# Or directly
vendor/bin/phpstan analyse
```
#### Automated Refactoring
The project uses Rector for automated refactoring. You can run it with:
```bash
# Using the composer script
composer rector
# Or directly
vendor/bin/rector
```
#### JavaScript/TypeScript Linting
The project uses ESLint for JavaScript/TypeScript code quality. You can run it with:
```bash
yarn run eslint
```
## Deployment
The project can be deployed in a production environment following Symfony's deployment guidelines. The documentation provides detailed instructions for setting up a production environment.
### Production Deployment Checklist
1. Set environment variables for production
2. Optimize Composer autoloader: `composer install --no-dev --optimize-autoloader`
3. Compile assets for production: `yarn run encore production`
4. Clear and warm up the cache: `php bin/console cache:clear --env=prod`
5. Run database migrations: `php bin/console doctrine:migrations:migrate --env=prod`
## Documentation
Comprehensive documentation is available in the `/docs/` directory, including installation instructions, configuration guides, and operational procedures.
This documentation is written using the mkdocs tool.
## Development Workflow
1. **Create a Feature Branch**: Always create a new branch for your feature or bugfix
2. **Write Tests**: Write tests for your changes before implementing them
3. **Implement Changes**: Implement your changes following the project's coding standards
4. **Run Tests**: Make sure all tests pass
5. **Run Code Quality Tools**: Make sure your code passes all code quality checks
6. **Submit a Pull Request**: Submit a pull request for review
## Debugging
The project includes several tools for debugging:
- **Symfony Profiler**: Available in development mode at `/_profiler`
- **Xdebug**: Configure your IDE to use Xdebug for step-by-step debugging
- **Symfony Debug Toolbar**: Available at the bottom of the page in development mode
## Conclusion
When working with this project, Junie should:
1. Understand the modular bundle structure and how the different components interact
2. Build the project before submitting changes to ensure assets are properly compiled
3. Run relevant tests to ensure changes don't break existing functionality
4. Follow the established code style and patterns
5. Use the provided tools for debugging and code quality
+2 -1
View File
@@ -14,6 +14,7 @@ $finder = PhpCsFixer\Finder::create();
$finder $finder
->in(__DIR__.'/src') ->in(__DIR__.'/src')
->in(__DIR__.'/utils') ->in(__DIR__.'/utils')
->in(__DIR__.'/packages')
->append([__FILE__]) ->append([__FILE__])
->exclude(['docs/', 'tests/app']) ->exclude(['docs/', 'tests/app'])
->notPath('tests/app') ->notPath('tests/app')
@@ -25,7 +26,7 @@ $config = new PhpCsFixer\Config();
$config $config
->setFinder($finder) ->setFinder($finder)
->setRiskyAllowed(true) ->setRiskyAllowed(true)
->setCacheFile('.cache/php-cs-fixer.cache') ->setCacheFile('var/php-cs-fixer.cache')
->setUsingCache(true) ->setUsingCache(true)
->setParallelConfig(PhpCsFixer\Runner\Parallel\ParallelConfigFactory::detect()) ->setParallelConfig(PhpCsFixer\Runner\Parallel\ParallelConfigFactory::detect())
; ;
+4
View File
@@ -0,0 +1,4 @@
{
"tabWidth": 2,
"useTabs": false
}
+4 -4
View File
@@ -4,11 +4,11 @@ version: 2
build: build:
os: ubuntu-22.04 os: ubuntu-22.04
tools: tools:
python: "3.7" python: "3.11"
sphinx: mkdocs:
configuration: docs/source/conf.py configuration: docs/mkdocs.yml
python: python:
install: install:
- requirements: docs/requirements.txt - requirements: docs/requirements.txt
+30
View File
@@ -0,0 +1,30 @@
{
// Use IntelliSense to learn about possible attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Chill Debug",
"type": "php",
"request": "launch",
"port": 9000,
"pathMappings": {
"/var/www/html": "${workspaceFolder}"
},
"preLaunchTask": "symfony"
},
{
"name": "Yarn Encore Dev (Watch)",
"type": "node-terminal",
"request": "launch",
"command": "yarn encore dev --watch",
"cwd": "${workspaceFolder}"
}
],
"compounds": [
{
"name": "Chill Debug + Yarn Encore Dev (Watch)",
"configurations": ["Chill Debug", "Yarn Encore Dev (Watch)"]
}
]
}
+23
View File
@@ -0,0 +1,23 @@
{
"tasks": [
{
"type": "shell",
"command": "symfony",
"args": [
"server:start",
"--allow-http",
"--no-tls",
"--port=8000",
"--allow-all-ip",
"-d"
],
"label": "symfony"
},
{
"type": "shell",
"command": "yarn",
"args": ["encore", "dev", "--watch"],
"label": "webpack"
}
]
}
+468
View File
@@ -6,6 +6,474 @@ adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html),
and is generated by [Changie](https://github.com/miniscruff/changie). and is generated by [Changie](https://github.com/miniscruff/changie).
## v4.10.1 - 2025-12-11
### Fixed
* Fix missing translation variable in NewLocation component
* ([#476](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/476)) Fix display of header for ByActivityNumberAggregator
* Fix use of ByActivityNumberAggregator in combination with activity count exports
* ([#483](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/483)) Tentatively fix usage of CTRL+C in collabora editor with chrome / edge browser
## v4.10.0 - 2025-12-09
### Feature
* [MR 928](https://gitlab.com/Chill-Projet/chill-bundles/-/merge_requests/928) [#462](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/462) Add the future appointments for the person in search results
### Fixed
* Remove dependency to package @symfony/ux-translator
## v4.9.0 - 2025-12-05
### Feature
* ([#459](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/459)) Add a counter for invitations awaiting reply
### Fixed
* ([#475](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/475)) Do not suggest a user that is no longer active in the activity form.
* ([#441](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/441)) Remove double display of person id in the banner when there is a deathdate
### DX
* ([#280](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/280)) Add missing fixtures for proper loading of AccompanyingPeriods
* ([#386](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/386)) Use mkdocs with mkdocs-material instead of sphinx to build chill developer documentation
### UX
* ([#456](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/456)) Display whether doc generation template is active or not in admin and order templates alphabetically
* ([#460](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/460)) Display calendar item info on cancel page
* ([#424](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/424)) Display entire comment for activity item within list
* ([#474](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/474)) Improve accessibility of event form
## v4.8.2 - 2025-11-26
### Fixed
* ([#466](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/466)) Associate activity's creator as a participant by default, and retro-actively append the creator to each activity
**Schema Change**: Add columns or tables
* Fix template parameter for update_multiple route on event participations
### UX
* ([#470](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/470)) Alphabetically order userJobs and mainLocations within user creation form
* ([#437](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/437)) Change position and color of confirm parcours button
## v4.8.1 - 2025-11-20
### Fixed
* Insert name of file as the document title when uploading
* Add missing path paramater 'id' for editing multiple participations
* ([#471](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/471)) Hide the display of inactive user groups in the api
## v4.8.0 - 2025-11-17
### Feature
* ([#461](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/461)) Make a calendar item on the 'mes rendez-vous' page clickable. Clicking will navigate to the edit page of the calendar item.
### Fixed
* ([#463](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/463)) Display calendar items for which an invite was accepted on the mes rendez-vous page
* Improve accessibility on login page
### UX
* ([#449](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/449)) Remove the label if there is only one scope and no scope picking field is displayed.
## v4.7.0 - 2025-11-10
### Feature
* ([#385](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/385)) Create invitation list in user menu
* ([#404](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/404)) Add columns for comments linked to an activity in the activity list export
### Fixed
* ([#451](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/451)) Fix: display also social actions linked to parents of the selected social issue
* ([#453](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/453)) Fix: export actions and their results in csv even when action does not have any goals attached to it.
* Fix the possibility to delete a workflow
**Schema Change**: Drop or rename table or columns, or enforce new constraint that must be manually fixed
* ([#457](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/457)) Fix the fusion of thirdparty properties that are located in another schema than public for TO_ONE relations + add extra loop for MANY_TO_MANY relations where thirdparty is the source instead of the target
* ([#428](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/428)) Fix suggestion of referrer when creating notification for accompanyingPeriodWorkDocument
### DX
* Send notifications log to dedicated channel, if it exists
### UX
* ([#425](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/425)) Change the terms 'cercle' and 'centre' to 'service', and 'territoire' respectively.
* ([#542](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/542)) Improve the ux for selecting whether user wants to be notified of the final step of a workflow or all steps
* Expand timeSpent choices for evaluation document and translate them to user locale or fallback 'fr'
* ([#455](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/455)) Change the order of display for results and objectives in the social work/action form
* Wrap text when it is too long within badges
## v4.6.1 - 2025-10-27
### Fixed
* Fix export case where no 'reason' is picked within the PersonHavingActivityBetweenDateFilter.php
## v4.6.0 - 2025-10-15
### Feature
* ([#423](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/423)) Create environment banner that can be activated and configured depending on the image deployed
* ([#394](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/394)) Only show active workflow on the page "my tracked workflow"
### Fixed
* Fix loading of classLists in SocialIssuesAcc.vue, ensure elements are present
* Fix the rendering of list of StoredObjectVersions, where there are kept version (before converting to pdf) and intermediate versions deleted
* ([#434](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/434)) Notification: fix editing of sent notification by removing form.addressesEmails, a field that no longer exists
* Fix loading of social issues and social actions within vue component
* ([#446](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/446)) Add unique condition on stored object filename, with cleaning step on existing duplicate filenames
**Schema Change**: Drop or rename table or columns, or enforce new constraint that must be manually fixed
* [workflow] take permissions into account to delete the workflow attachment
* ([#448](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/448)) Fix the execution of daily cronjob notification, when the previous last execution storage was invalid
## v4.5.1 - 2025-10-03
### Fixed
* Add missing javascript dependency
* Add exception handling for conversion of attachment on sending external, when documens are already in pdf
## v4.5.0 - 2025-10-03
### Feature
* Only allow delete of attachment on workflows that are not final
* Move up signature buttons on index workflow page for easier access
* Filter out document from attachment list if it is the same as the workflow document
* Block edition on attached document on workflow, if the workflow is finalized or sent external
* Convert workflow's attached document to pdf while sending them external
* After a signature is canceled or rejected, going to a waiting page until the post-process routines apply a workflow transition
### Fixed
* ([#426](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/426)) Increased the number of required characters when setting a new password in Chill from 9 to 14 - GDPR compliance
* Fix permissions on storedObject which are subject by a workflow
### DX
* Introduce a WaitingScreen component to display a waiting screen
## v4.4.2 - 2025-09-12
### Fixed
* Fix document generation and workflow generation do not work on accompanying period work documents
## v4.4.1 - 2025-09-11
### Fixed
* fix translations in duplicate evaluation document modal and realign close modal button
## v4.4.0 - 2025-09-11
### Feature
* ([#359](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/359)) Allow the merge of two accompanying period works
* ([#369](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/369)) Duplication of a document to another accompanying period work evaluation
* ([#359](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/359)) Fusion of two accompanying period works
### Fixed
* Fix display of 'duplicate' and 'merge' buttons in CRUD templates
* Fix saving notification preferences in user's profile
## v4.3.0 - 2025-09-08
### Feature
* ([#409](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/409)) Add 45 and 60 min calendar ranges
* Add a command to generate a list of permissions
* ([#412](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/412)) Add an absence end date
**Schema Change**: Add columns or tables
### Fixed
* fix date formatting in calendar range display
* Change route URL to avoid clash with person duplicate controller method
## v4.2.1 - 2025-09-03
### Fixed
* Fix exports to work with DirectExportInterface
### DX
* Improve error message when a stored object cannot be written on local disk
## v4.2.0 - 2025-09-02
### Feature
* ([#64](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/64)) Add external identifier for a Person
**Schema Change**: Add columns or tables
* ([#330](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/330) Allow users to choose for which notifications they want to receive an email
### Fixed
* ([#422](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/422)) Fixed html layout of pages for recovering password
* Fix typo in 'uncheckAll' script for centers selection
* Fix incorrect parameter name in event details link
## v4.1.0 - 2025-08-26
### Feature
* ([#400](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/400)) Add filter to social actions list to filter out actions where current user intervenes
* ([#399](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/399)) Show filters on list pages unfolded by default
* Expansion of event module with new fields in the creation form: thematic, internal/external animator, responsable, and budget elements. Filtering options in the event list + adapted exports
**Schema Change**: Add columns or tables
### Fixed
* ([#382](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/382)) adjust display logic for accompanying period dates, include closing date if period is closed.
* ([#384](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/384)) add min and step attributes to integer field in DateIntervalType
### UX
* Limit display of participations in event list
## v4.0.2 - 2025-07-09
### Fixed
* Fix add missing translation
* Fix the transfer of evaluations and documents during of accompanyingperiodwork
## v4.0.1 - 2025-07-08
### Fixed
* Fix package.json for compilation
## v4.0.0 - 2025-07-08
### Feature
* ([#359](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/359)) Allow the merge of two accompanying period works
### Fixed
* ([#390](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/390)) Display the list of participant in the results, even if there is only one participant and that the search result display the requestor
* Fix admin entity edit actions for event admin entities and activity reason (category) entities
* Fix translations for social action fields in admin form: results, goals, evaluations
### DX
* Rewrite exports to run them asynchronously
**Schema Change**: Add columns or tables
* Allow TranslatableMessage in flash messages
### UX
* Improve labeling of fields in person resource creation form
**Release notes**
- Add new methods to serialize data using the rector rule
- Remove all references to the Request in filters, aggregators, filters. Actually, the most frequent occurence is `$security->getUser()`.
- Refactor manually the initializeQuery method
- Remove the injection of ExportManager into the constructor of each export element:
```diff
- class MyFormatter implements FormatterInterface
+ class MyFormatter implements FormatterInterface, \Chill\MainBundle\Export\ExportManagerAwareInterface
{
+ use \Chill\MainBundle\Export\Helper\ExportManagerAwareTrait;
- public function __construct(private ExportManager $exportmanager) {}
public function MyMethod(): void
{
- $this->exportManager->getFilter('alias');
+ $this->getExportManager()->getFilter('alias');
}
}
```
- configure messenger to handle export in a queue:
```diff
# config/packages/messenger.yaml
framework:
messenger:
routing:
+ 'Chill\MainBundle\Export\Messenger\ExportRequestGenerationMessage': priority
```
- add missing methods to exports, aggregators, filters, formatter:
```php
public function normalizeFormData(array $formData): array;
public function denormalizeFormData(array $formData, int $fromVersion): array;
```
There are rector rules to generate those methods:
- `Chill\Utils\Rector\Rector\ChillBundleAddNormalizationMethodsOnExportRector`
See:
```php
// upgrade chill exports
$rectorConfig->rules([\Chill\Utils\Rector\Rector\ChillBundleAddNormalizationMethodsOnExportRector::class]);
```
This rule will create most of the work necessary, but some manuals changes are still necessary:
- we must set manually the correct repository for method `denormalizeDoctrineEntity`;
- when the form data contains some entities, and the form type is not one of EntityType::class, PickUserDynamicType::class, PickUserLocationType::class, PickThirdpartyDynamicType::class, Select2CountryType::class, then we must handle the normalization manually (using the `\Chill\MainBundle\Export\ExportDataNormalizerTrait`)
## v3.12.1 - 2025-06-30
### Fixed
* Fix loading of the list of documents
## v3.12.0 - 2025-06-30
### Feature
* ([#377](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/377)) Add the document file name to the document title when a user upload a document, unless there is already a document title.
* Add desactivation date for social action and issue csv export
* Add Emoji and Fullscreen feature to ckeditor configuration
* ([#321](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/321)) Create editor which allow us to toggle between rich and simple text editor
* Do not remove workflow which are automatically canceled after staling for more than 30 days
### Fixed
* ([#376](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/376)) trying to prevent bug of typeerror in doc-history + improved display of document history
* ([#381](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/381)) Display previous participation in acc course work even if the person has left the acc course
* ([#372](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/372)) Fix display of text in calendar events
* Add missing translation for user_group.no_user_groups
* Fix admin entity edit actions for event admin entities and activity reason (category) entities
* ([#392](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/392)) Allow null and cast as string to setContent method for NewsItem
* ([#393](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/393)) Doc Generation: the "dump only" method send the document as an email attachment.
### DX
* ([#352](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/352)) Remove dead code for wopi-link module
* Replace library node-sass by sass, and upgrade bootstrap to version 5.3 (yarn upgrade / install is required)
### UX
* ([#374](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/374)) Remove default filter in_progress for the page 'my tasks'; Allows for new tasks to be displayed upon opening of the page
* Improve labeling of fields in person resource creation form
## v3.11.0 - 2025-04-17
### Feature
* ([#365](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/365)) Add counters of actions and activities, with 2 boxes to (1) show the number of active actions on total actions and (2) show the number of activities in a accompanying period, and pills in menus for showing the number of active actions and the number of activities.
* ([#364](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/364)) Added a second phone number "telephone2" to the thirdParty entity. Adapted twig templates and vuejs apps to handle this phone number
**Schema Change**: Add columns or tables
* Signature: add a button to go directly to the signature zone, even if there is only one
### Fixed
* Fixed wrong translations in the on-the-fly for creation of thirdParty
* Fixed update of phone number in on-the-fly edition of thirdParty
* Fixed closing of modal when editing thirdParty in accompanying course works
* Shorten the delay between two execution of AccompanyingPeriodStepChangeCronjob, to ensure at least one execution in a day
* ([#102](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/102)) Fix display of title in document list
* When cleaning the old stored object versions, do not throw an error if the stored object is not found on disk
* Add consistent log prefix and key to logs when stale workflows are automatically canceled
* ([#380](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/380)) Remove the "not null" validation constraint on recently added properties on HouseholdComposition
### DX
* Add new chill-col style for displaying title and aside in a flex table
## v3.10.3 - 2025-03-18
### DX
* Eslint fixes
## v3.10.2 - 2025-03-17
### Fixed
* Replace a ts-expect-error with a ts-ignore
## v3.10.1 - 2025-03-17
### DX
* Remove yarn dependency to symfony/ux-translator, to ease the build process
## v3.10.0 - 2025-03-17
### Feature
* ([#363](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/363)) Display social actions grouped per social issue within activity form
### Fixed
* ([#362](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/362)) Fix Dependency Injection, which prevented to save the CalendarRange
* ([#368](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/368)) fix search query for user groups
## v3.9.2 - 2025-02-27
### Fixed
* Use fetchResults method to fetch all social issues instead of only the first page
## v3.9.1 - 2025-02-27
### Fixed
* Fix post/patch request with missing 'type' property for gender
## v3.9.0 - 2025-02-27
### Feature
* ([#349](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/349)) Suggest all referrers within actions of the accompanying period when creating an activity
* ([#343](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/343)) Add possibility to export a csv with all social issues and social actions
* ([#360](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/360)) Restore document to previous kept version when a workflow is canceled
* ([#341](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/341)) Add a list of third parties from within the admin (csv download)
### Fixed
* fix generation of document with accompanying period context, and list of activities and works
### DX
* ([#333](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/333)) Create an unique source of trust for translations
## v3.8.2 - 2025-02-10
### Fixed
* ([#358](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/358)) Remove "filter" button on list of documents in the workflow's "add attachement" modal
## v3.8.1 - 2025-02-05
### Fixed
* Fix household link in the parcours banner
## v3.8.0 - 2025-02-03
### Feature
* Improve the UX of the news item admin form to prevent wrong usage
* ([#319](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/319)) Notification list: display the concerned person's badges in the list
* ([#320](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/320)) Show the first 3 persons directly in the accompanying period's banner
* ([#334](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/334)) Suggest current user when creating an activity
* ([#331](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/331)) Add attachments to workflows
### Fixed
* ([#350](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/350)) Add validation error to manual selection of person in PersonDuplicateController
* ([#354](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/354)) Fix document category creation
* ([#351](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/351)) Add definitive whitespace between span elements in vue PersonText component
## v3.7.1 - 2025-01-21
### Fixed
* Fix legacy configuration processor for notifier component
## v3.7.0 - 2025-01-21
### Feature
* Use the Notifier component from Symfony to sens short messages (SMS). This allow to use more provider.
### Fixed
* ([#348](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/348)) [export] Fix aggregation of referrer's scope and job: fix the date range comparison
### Warning on configuration of Notifier component
If installed in an symfony app where the recipes are activated, this configuration should be added automatically:
```yaml
framework:
notifier:
chatter_transports:
texter_transports:
ovhcloud: '%env(OVHCLOUD_DSN)%'
channel_policy:
# use chat/slack, chat/telegram, sms/twilio or sms/nexmo
urgent: ['email']
high: ['email']
medium: ['email']
low: ['email']
admin_recipients:
- { email: admin@example.com }
```
Actually, you should either:
- remove the configuration of ovhcloud added by the recipe
- or remove the previous configuration of chill, to avoid keeping legacy configuration
#### Remove the added configuration and keep the legacy configuration
To remove the configuration:
```diff
framework:
notifier:
chatter_transports:
texter_transports:
- ovhcloud: '%env(OVHCLOUD_DSN)%'
```
In that case, the previous configuration, which was stored under the `chill_main.short_messages.dsn` will be reconfigured into the Notifier component's configuration.
#### Properly configure SMS
You can also properly configure it, as [described in the OVH cloud provider repository](https://github.com/symfony/ovh-cloud-notifier/tree/5.4?tab=readme-ov-file#dsn-example) (where the scheme is `ovhcloud`):
**NOTE**: You have access to all notifier available with the [Notifier component](https://symfony.com/doc/current/notifier.html#notifier-sms-channel). You are not restricted to use OVH as a provider.
```diff
framework:
notifier:
chatter_transports:
texter_transports:
+ ovhcloud: '%env(OVHCLOUD_DSN)%' # this value should be located in a variable, and have `ovhcloud://` as a scheme
chill_main:
- short_messages:
- dsn: '%env(string:SHORT_MESSAGE_DSN)%'
```
## v3.6.0 - 2025-01-16
### Feature
* Importer for addresses does not fails when the postal code is not found with some addresses, and compute a recap list of all addresses that could not be imported. This recap list can be send by email.
* ([#346](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/346)) Create a driver for storing documents on disk (instead of openstack object store)
* Add address importer from french Base d'Adresse Nationale (BAN)
* ([#343](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/343)) Add csv export for social issues and social actions
### Fixed
* Export: fix missing alias in activity between certain dates filter. Condition added for alias.
## v3.5.3 - 2025-01-07
### Fixed
* Fix the EntityToJsonTransformer to return an empty array if the value is ""
## v3.5.2 - 2024-12-19
### Fixed
* ([#345](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/345)) Export: activity filtering of users that were associated to an activity between certain dates. Results contained activities that were not within the specified date range"
## v3.5.1 - 2024-12-16
### Fixed
* Filiation: fix the display of the gender label in the graph
* Wrap handling of PdfSignedMessage into transactions
## v3.5.0 - 2024-12-09
### Feature
* ([#318](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/318)) Show all the pages of the documents in the signature app
### Fixed
* Wrap the signature's change state into a transaction, to avoid race conditions
* Fix display of gender label
## v3.4.3 - 2024-12-05
### Fixed
* Remove the "not null" constraint on person supplementary phones
* Remove doctrine annotation that prevent from adding documents to activities
## v3.4.2 - 2024-12-05 ## v3.4.2 - 2024-12-05
### Fixed ### Fixed
* ([#329](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/329)) Fix the serialization of gender for the generation of documents * ([#329](https://gitlab.com/Chill-Projet/chill-bundles/-/issues/329)) Fix the serialization of gender for the generation of documents
+386
View File
@@ -0,0 +1,386 @@
# Chill Conventions
In Progress
## Translations
Per bundle, all translations for Twig pages are located in a single file: translations/messages.fr.yaml.
## File Locations
Controllers, form types, and Twig templates are placed in the root folders Controller, Form, and Resources/views, respectively.
Admin pages are no longer placed in subfolders under Admin.
## Assets: Entrypoint Naming
There are three types of entry points:
* Vue application-specific (often for a single page): Prefixed with vue_.
* Reusable JavaScript/CSS code:
Examples include:
* ckeditor
* async_upload (used for forms)
* bootstrap
* chill.js
* ...
=> We prefix with `mod_`
* Page-specific CSS/JS:
* Often reuses functionalities like ShowHide.
=> We prefix with `page_`.
## Folder Structure
````
# Under Resources/public:
- chill/ => Contains the theme (Chill).
- chillmain.scss: Compiled into the chill entrypoint.
- lib/ => Libraries never used as entrypoints but reused elsewhere.
- Examples: ShowHide, Collection, Select2.
- module/: Ends up in reusable entrypoints (mod_).
- bootstrap
- custom.scss
- custom/
- variable.scss
- ...
- AsyncUpload.
- vue/ => Vue applications only (vue_).
- Examples: _components, app.
- page/ => Page-specific assets (page_).
- login
- person
- personvendee
- household_edit_metadata
- index.js
````
# Stylesheet Organization
1. The mod_bootstrap (module bootstrap) entry point is the first level. All parts (modules) of bootstrap are included in the bootstrap.js file located in ChillMainBundle/Resources/public/module/bootstrap.
* At the beginning, this file imports the variables.scss file, which determines most of the bootstrap settings as customized. This file overrides the original, and many variables are adjusted for Chill.
* Care must be taken to ensure this file can always be compared to the original bootstrap file. In the event of a bootstrap update, a diff must be generated and this diff applied to the variable file of the new version.
* At the end, it imports the custom.scss file, which includes bootstrap adaptations to prepare it for our Chill theme.
* This `custom.scss` file can be split into smaller files using `@import 'custom/...'`.
* The idea is that this first bootstrap layer sets an important part of the applications styles, particularly those related to layout positioning, responsive breakpoints, and the default margins and spacing applied to elements being manipulated.
2. The chill entry point is the second level. It contains the Chill theme, which is recognizable in the application.
* Each bundle has a `Resources/public/chill` folder containing a main sass file, which can optionally be split using `@imports`. All these files are compiled into a single Chill entry point, which serves as the applications theme and overrides bootstrap.
* The chillmain.scss file should contain the most general style cascades, those applied to many areas of the application.
* The chillperson.scss file also includes styles specific to different contexts related to people: person, household, and accompanying course.
* Some smaller bundles contain only styles specific to their functionality.
3. The vue_ entry points are used for Vue components. Vue files can contain an scss style block. These styles are specific to the component and its inheritance, with the scoped tag precisely defining their scope (see the documentation).
4. The page_ entry points are used to add assets specific to certain pages, most often scripts and styles.
## HTML Tagging and Style Cascades
The following example shows how to tag a code element without overdoing it. Note that:
* It is not necessary to tag all inner classes.
* The parent class should not be repeated in all child classes. Sass cascading allows for flexible HTML structuring without overloading the tag hierarchy.
* Often, the first class will have variations created with additional classes that start in the same way: bloc-dark simply adds the dark version of bloc. We do not use bloc dark because we dont want the dark class of bloc to interact with the same dark class of table. As a result, we will have an element bloc bloc-dark and another element table table-dark.
```html
<div class="bloc bloc-dark my-bloc">
<h3>My Title</h3>
<ul class="record_actions">
<li>
<a class="btn btn-edit"></a>
</li>
</ul>
</div>
```
Finally, it is important to define what a block, an action zone, and a button are. These three elements exist independently and are the only ones we tag.
For example, to style the title, we simply specify h3 within the block cascade.
```scss
div.bloc {
// un bloc générique, utilisé à plusieurs endroits
&.bloc-dark {
// la version sombre du bloc
}
h3 {}
ul {
// une liste standard dans bloc
li {
// des items de liste standard dans bloc
}
}
}
div.mon-bloc {
// des exceptions spécifiques à mon-bloc,
// qui sont des adaptations de bloc
}
ul.record_actions {
// va uniformiser tous les record_actions de l'application
li {
//...
}
}
.btn {
// les boutons de bootstrap
.btn-edit {
// chill étends les boutons bootstrap pour ses propres besoins
}
}
</style>
```
## Render box
## URL
## Route Naming Conventions
:::warning
These rules have not always been followed in the past. They are desired for the future.
:::
Routes follow this structure:
`chill_(api|crud)_bundle_(api)_entity_action`
1. First, chill_ (for all Chill modules).
2. Then, crud or api, optional, automatically added if the route is generated by the configuration.
3. Then, a string indicating the bundle (`main`, `person`, `activity`, ...).
4. Then, api, if the route is an API route.
5. Then, a string indicating the entity the route targets, and possibly the sub-entities.
6. Then, an action (`list`, `view`, `edit`, `new`, ...).
Indicating `api` in the fourth position allows distinguishing API routes generated by the configuration (which are all prefixed with `chill_api`) from those generated manually. (For example: `chill_api_household__index` and `chill_person_api_household_members_move`).
If points 4 and 5 are missing, they are replaced by other elements to ensure the uniqueness of the route and its clear understanding.
#### HTML pages
:::warning
These rules have not always been followed in the past. They are desired for the future.
:::
Syntaxe:
```
/{_locale}/bundle/entity/{id}/action
/{_locale}/bundle/entity/sub-entity/{id}/action
```
The following elements should be included in the list:
1. The locale;
2. An identifier for the bundle;
3. The entity it relates to;
4. Any sub-entities that the URL refers to;
5. The action.
```
# list of activities for a person
/fr/activity/person/25/activity/list
# new activity
/fr/activity/activity/new?person_id=25
```
#### Pour les API
:::info
Automatically generated routes are prefixed with `chill_api`
:::
Syntaxe:
```
/api/1.0/bundle/entity/{id}/action
/api/1.0/bundle/entity/sub-entity/{id}/action
```
The following elements should be included in the list:
1. The string `/api/` followed by the version (e.g., 1.0);
2. An identifier for the bundle;
3. The entity it relates to;
4. Any sub-entities that the URL refers to;
5. The action.
These elements may be interspersed with the entity identifier. In this case, the identifier should be placed immediately after the entity it relates to.
#### URLS for admin pages
Same conventions as for other html pages, **but `admin` is added in second position**. Soit:
`/{_locale}/admin/bundle/entity/{id}/action`
## Database table naming convention
When creating a new entity and the corresponding database table, we follow the following naming convention for the database table:
`chill_{bundle_identifier}_{entity_name}`.
Eg. chill_person_spoken_languages
## UI Rules
### Page Titles
#### Every page must have a title (in the head tag and page header).
Each page contains a title in the <head> tag. This title is typically the same as the header title on the page.
Tip: It is possible to use the block function in Twig for this.
Example:
```htmlmixed=
{% block title "Titre de la page" %}
{% block content %}
<h1>
{{ block('title')}}
</h1>
{% endblock %}
```
### entity_render usage
#### in Twig
Always use chill_entity_render_box for rendering entities like:
* User
* Person
* SocialAction
* SocialIssue
* Address
* Thirdparty
* ...
Example:
```
address|chill_entity_render_box
```
Justification:
1. Customization by installation: Some elements are sometimes customized during installation (for example, the name of each user will be followed by the name of the service).
2. To streamline and make displays consistent: Ensures uniformity in the way information is displayed across different pages or sections.
3. To simplify Twig code: By using blocks and centralizing title logic, it reduces repetition and makes the Twig code easier to maintain.
* Three rendering modes:
* inline
* block
* item.
#### In Vue
There is always a renderbox equivalent in vue.
#### HTML Links to Sections
Always include links/icons for accessing records, such as person or household details, if the user has access.
### Form Guidelines
#### Vocabulary:
* `Create` in a `bt bt-create` for links to the form to create an entity (to access the form).
* `Save` in a `bt bt-save` for "Save" buttons (in either an edit or create form).
* `Save and new`
* `Save and view`
* `Edit` in a `bt bt-edit` for links to the edit form.
* `Duplicate` (specify where it can be seen).
* `Cancel` for leaving an edit page with a link to the list, or the `returnPath`.
#### After Saving:
Redirect to the returnPath if available; otherwise, redirect to the view page.
### Sticky Form Buttons:
Buttons like "Cancel" and "Save" must be within a "sticky-form" bar at the bottom of the form.
If relevant:
* The banner contains a "Cancel" button that returns to the previous page. It is mandatory for forms, but optional for lists or "summary" pages.
* This "Cancel" button is always on the left.
```
<ul class="record_actions sticky-form-buttons">
<li class="cancel">
<a href="{{ chill_entity_return_path('route_name' { 'route': 'option' } )}}">{{ return_path_label }}</a>
</li>
<li>
<!-- action 1 -->
</li>
</ul>
```
### Flash Messages
#### Display a flash message upon entity creation:
Everytime an entity has been created
> "The entity has been created."
The name of the element can be replaced with something more relevant:
> * The activity has been created
> * The appointment has been created
> * ...
#### On Saving an Entity
Each time an entity is saved, a flash message should appear:
> The data has been modified
#### Form Error (Validation Error)
At the top of the form, a flash message should indicate that validations have failed:
> This form contains errors
Errors should appear attached to the field they concern. However, it is acceptable to display errors at the root of the form if it is technically difficult to attach errors.
### Return Links
Each time a link is provided, check whether the function chill_return_path, chill_forward_return_path, or chill_return_path_or should be used.
* From the list page, to the opening of an element, or the creation button => use chill_path_add_return_path
* In these edit pages:
* use chill_return_path_or in the "Cancel" button;
* for the "Save and view" and "Save and close" buttons => ?
### Assets for Suggestion Lists
Create a list of suggestions to add (the entire item is clickable)
```html
<ul class="list-suggest add-items">
<li>
<span>item</span>
</li>
</ul>
```
Create a list of suggestions to remove (with a clickable red cross, the anchor <a> is empty)
```html
<ul class="list-suggest remove-items">
<li>
<span>
item
</span>
</li>
</ul>
```
Create a removable title (with a clickable red cross, the anchor <a> is empty)
```html
<div class="item-title">
<span>title</span>
</div>
```
The classes `cols` or `inline` can be added alongside `list-suggest` to modify the layout of the list. In the last example, add a `removable` class to the `<span>` if you want to make the item removable.
+8 -5
View File
@@ -4,7 +4,6 @@ en cours de rédaction
## Translations ## Translations
Par bundle, toutes les traductions des pages twig se trouvent dans un seul fichier `translations/messages.fr.yaml`. Par bundle, toutes les traductions des pages twig se trouvent dans un seul fichier `translations/messages.fr.yaml`.
## Emplacement des fichiers ## Emplacement des fichiers
@@ -55,7 +54,7 @@ Arborescence:
- person - person
- personvendee - personvendee
- household_edit_metadata - household_edit_metadata
- index.js - index.ts
``` ```
## Organisation des feuilles de styles ## Organisation des feuilles de styles
@@ -142,7 +141,6 @@ ul.record_actions {
## Render box ## Render box
## URL ## URL
### Nommage des routes ### Nommage des routes
@@ -234,6 +232,13 @@ Même conventions que dans les autres pages html de l'application, **mais `admin
`/{_locale}/admin/bundle/entity/{id}/action` `/{_locale}/admin/bundle/entity/{id}/action`
### Nommage des tables de base de donnée
Lors de la création d'une nouvelle entité et de la table de base de données correspondante, nous suivons la convention d'appellation suivante pour la table de base de données :
`chill_{bundle_identifier}_{nom_de_l'entité}`.
Par exemple : chill_person_spoken_languages
## Règles UI chill ## Règles UI chill
@@ -293,8 +298,6 @@ A prevoir:
> quand on passe loption render: bloc, on peut placer le render_box dans une boucle for plus large qui fonctionne avec la classe flex-table ou la classe flex-bloc, ce qui donnera un affichage en rangée (table) ou en blocs. [name=Mathieu] > quand on passe loption render: bloc, on peut placer le render_box dans une boucle for plus large qui fonctionne avec la classe flex-table ou la classe flex-bloc, ce qui donnera un affichage en rangée (table) ou en blocs. [name=Mathieu]
#### En vue #### En vue
Il existe systématiquement une "box" équivalente en vue. Il existe systématiquement une "box" équivalente en vue.
+12
View File
@@ -0,0 +1,12 @@
import {
trans,
setLocale,
getLocale,
setLocaleFallbacks,
} from "./ux-translator";
setLocaleFallbacks({ en: "fr", nl: "fr", fr: "en" });
setLocale("fr");
export { trans, getLocale };
export * from "../var/translations";
+3
View File
@@ -0,0 +1,3 @@
This directory import the symfony ux-translator files directly into chill-bundles.
This remove the yarn dependencies from the real package, which breaks our installation.
+1
View File
@@ -0,0 +1 @@
export declare function format(id: string, parameters: Record<string, string | number>, locale: string): string;
@@ -0,0 +1 @@
export declare function formatIntl(id: string, parameters: Record<string, string | number>, locale: string): string;
+27
View File
@@ -0,0 +1,27 @@
export type DomainType = string;
export type LocaleType = string;
export type TranslationsType = Record<DomainType, {
parameters: ParametersType;
}>;
export type NoParametersType = Record<string, never>;
export type ParametersType = Record<string, string | number | Date> | NoParametersType;
export type RemoveIntlIcuSuffix<T> = T extends `${infer U}+intl-icu` ? U : T;
export type DomainsOf<M> = M extends Message<infer Translations, LocaleType> ? keyof Translations : never;
export type LocaleOf<M> = M extends Message<TranslationsType, infer Locale> ? Locale : never;
export type ParametersOf<M, D extends DomainType> = M extends Message<infer Translations, LocaleType> ? Translations[D] extends {
parameters: infer Parameters;
} ? Parameters : never : never;
export interface Message<Translations extends TranslationsType, Locale extends LocaleType> {
id: string;
translations: {
[domain in DomainType]: {
[locale in Locale]: string;
};
};
}
export declare function setLocale(locale: LocaleType | null): void;
export declare function getLocale(): LocaleType;
export declare function throwWhenNotFound(enabled: boolean): void;
export declare function setLocaleFallbacks(localeFallbacks: Record<LocaleType, LocaleType>): void;
export declare function getLocaleFallbacks(): Record<LocaleType, LocaleType>;
export declare function trans<M extends Message<TranslationsType, LocaleType>, D extends DomainsOf<M>, P extends ParametersOf<M, D>>(...args: P extends NoParametersType ? [message: M, parameters?: P, domain?: RemoveIntlIcuSuffix<D>, locale?: LocaleOf<M>] : [message: M, parameters: P, domain?: RemoveIntlIcuSuffix<D>, locale?: LocaleOf<M>]): string;
+1
View File
@@ -0,0 +1 @@
export * from './translator';
+283
View File
@@ -0,0 +1,283 @@
import { IntlMessageFormat } from 'intl-messageformat';
function strtr(string, replacePairs) {
const regex = Object.entries(replacePairs).map(([from]) => {
return from.replace(/([-[\]{}()*+?.\\^$|#,])/g, '\\$1');
});
if (regex.length === 0) {
return string;
}
return string.replace(new RegExp(regex.join('|'), 'g'), (matched) => replacePairs[matched].toString());
}
function format(id, parameters, locale) {
if (null === id || '' === id) {
return '';
}
if (typeof parameters['%count%'] === 'undefined' || Number.isNaN(parameters['%count%'])) {
return strtr(id, parameters);
}
const number = Number(parameters['%count%']);
let parts = [];
if (/^\|+$/.test(id)) {
parts = id.split('|');
}
else {
parts = id.match(/(?:\|\||[^|])+/g) || [];
}
const intervalRegex = /^(?<interval>({\s*(-?\d+(\.\d+)?[\s*,\s*\-?\d+(.\d+)?]*)\s*})|(?<left_delimiter>[[\]])\s*(?<left>-Inf|-?\d+(\.\d+)?)\s*,\s*(?<right>\+?Inf|-?\d+(\.\d+)?)\s*(?<right_delimiter>[[\]]))\s*(?<message>.*?)$/s;
const standardRules = [];
for (let part of parts) {
part = part.trim().replace(/\|\|/g, '|');
const matches = part.match(intervalRegex);
if (matches) {
const matchGroups = matches.groups || {};
if (matches[2]) {
for (const n of matches[3].split(',')) {
if (number === Number(n)) {
return strtr(matchGroups.message, parameters);
}
}
}
else {
const leftNumber = '-Inf' === matchGroups.left ? Number.NEGATIVE_INFINITY : Number(matchGroups.left);
const rightNumber = ['Inf', '+Inf'].includes(matchGroups.right)
? Number.POSITIVE_INFINITY
: Number(matchGroups.right);
if (('[' === matchGroups.left_delimiter ? number >= leftNumber : number > leftNumber) &&
(']' === matchGroups.right_delimiter ? number <= rightNumber : number < rightNumber)) {
return strtr(matchGroups.message, parameters);
}
}
}
else {
const ruleMatch = part.match(/^\w+:\s*(.*?)$/);
standardRules.push(ruleMatch ? ruleMatch[1] : part);
}
}
const position = getPluralizationRule(number, locale);
if (typeof standardRules[position] === 'undefined') {
if (1 === parts.length && typeof standardRules[0] !== 'undefined') {
return strtr(standardRules[0], parameters);
}
throw new Error(`Unable to choose a translation for "${id}" with locale "${locale}" for value "${number}". Double check that this translation has the correct plural options (e.g. "There is one apple|There are %count% apples").`);
}
return strtr(standardRules[position], parameters);
}
function getPluralizationRule(number, locale) {
number = Math.abs(number);
let _locale = locale;
if (locale === 'pt_BR' || locale === 'en_US_POSIX') {
return 0;
}
_locale = _locale.length > 3 ? _locale.substring(0, _locale.indexOf('_')) : _locale;
switch (_locale) {
case 'af':
case 'bn':
case 'bg':
case 'ca':
case 'da':
case 'de':
case 'el':
case 'en':
case 'en_US_POSIX':
case 'eo':
case 'es':
case 'et':
case 'eu':
case 'fa':
case 'fi':
case 'fo':
case 'fur':
case 'fy':
case 'gl':
case 'gu':
case 'ha':
case 'he':
case 'hu':
case 'is':
case 'it':
case 'ku':
case 'lb':
case 'ml':
case 'mn':
case 'mr':
case 'nah':
case 'nb':
case 'ne':
case 'nl':
case 'nn':
case 'no':
case 'oc':
case 'om':
case 'or':
case 'pa':
case 'pap':
case 'ps':
case 'pt':
case 'so':
case 'sq':
case 'sv':
case 'sw':
case 'ta':
case 'te':
case 'tk':
case 'ur':
case 'zu':
return 1 === number ? 0 : 1;
case 'am':
case 'bh':
case 'fil':
case 'fr':
case 'gun':
case 'hi':
case 'hy':
case 'ln':
case 'mg':
case 'nso':
case 'pt_BR':
case 'ti':
case 'wa':
return number < 2 ? 0 : 1;
case 'be':
case 'bs':
case 'hr':
case 'ru':
case 'sh':
case 'sr':
case 'uk':
return 1 === number % 10 && 11 !== number % 100
? 0
: number % 10 >= 2 && number % 10 <= 4 && (number % 100 < 10 || number % 100 >= 20)
? 1
: 2;
case 'cs':
case 'sk':
return 1 === number ? 0 : number >= 2 && number <= 4 ? 1 : 2;
case 'ga':
return 1 === number ? 0 : 2 === number ? 1 : 2;
case 'lt':
return 1 === number % 10 && 11 !== number % 100
? 0
: number % 10 >= 2 && (number % 100 < 10 || number % 100 >= 20)
? 1
: 2;
case 'sl':
return 1 === number % 100 ? 0 : 2 === number % 100 ? 1 : 3 === number % 100 || 4 === number % 100 ? 2 : 3;
case 'mk':
return 1 === number % 10 ? 0 : 1;
case 'mt':
return 1 === number
? 0
: 0 === number || (number % 100 > 1 && number % 100 < 11)
? 1
: number % 100 > 10 && number % 100 < 20
? 2
: 3;
case 'lv':
return 0 === number ? 0 : 1 === number % 10 && 11 !== number % 100 ? 1 : 2;
case 'pl':
return 1 === number
? 0
: number % 10 >= 2 && number % 10 <= 4 && (number % 100 < 12 || number % 100 > 14)
? 1
: 2;
case 'cy':
return 1 === number ? 0 : 2 === number ? 1 : 8 === number || 11 === number ? 2 : 3;
case 'ro':
return 1 === number ? 0 : 0 === number || (number % 100 > 0 && number % 100 < 20) ? 1 : 2;
case 'ar':
return 0 === number
? 0
: 1 === number
? 1
: 2 === number
? 2
: number % 100 >= 3 && number % 100 <= 10
? 3
: number % 100 >= 11 && number % 100 <= 99
? 4
: 5;
default:
return 0;
}
}
function formatIntl(id, parameters, locale) {
if (id === '') {
return '';
}
const intlMessage = new IntlMessageFormat(id, [locale.replace('_', '-')], undefined, { ignoreTag: true });
parameters = { ...parameters };
Object.entries(parameters).forEach(([key, value]) => {
if (key.includes('%') || key.includes('{')) {
delete parameters[key];
parameters[key.replace(/[%{} ]/g, '').trim()] = value;
}
});
return intlMessage.format(parameters);
}
let _locale = null;
let _localeFallbacks = {};
let _throwWhenNotFound = false;
function setLocale(locale) {
_locale = locale;
}
function getLocale() {
return (_locale ||
document.documentElement.getAttribute('data-symfony-ux-translator-locale') ||
(document.documentElement.lang ? document.documentElement.lang.replace('-', '_') : null) ||
'en');
}
function throwWhenNotFound(enabled) {
_throwWhenNotFound = enabled;
}
function setLocaleFallbacks(localeFallbacks) {
_localeFallbacks = localeFallbacks;
}
function getLocaleFallbacks() {
return _localeFallbacks;
}
function trans(message, parameters = {}, domain = 'messages', locale = null) {
if (typeof domain === 'undefined') {
domain = 'messages';
}
if (typeof locale === 'undefined' || null === locale) {
locale = getLocale();
}
if (typeof message.translations === 'undefined') {
return message.id;
}
const localesFallbacks = getLocaleFallbacks();
const translationsIntl = message.translations[`${domain}+intl-icu`];
if (typeof translationsIntl !== 'undefined') {
while (typeof translationsIntl[locale] === 'undefined') {
locale = localesFallbacks[locale];
if (!locale) {
break;
}
}
if (locale) {
return formatIntl(translationsIntl[locale], parameters, locale);
}
}
const translations = message.translations[domain];
if (typeof translations !== 'undefined') {
while (typeof translations[locale] === 'undefined') {
locale = localesFallbacks[locale];
if (!locale) {
break;
}
}
if (locale) {
return format(translations[locale], parameters, locale);
}
}
if (_throwWhenNotFound) {
throw new Error(`No translation message found with id "${message.id}".`);
}
return message.id;
}
export { getLocale, getLocaleFallbacks, setLocale, setLocaleFallbacks, throwWhenNotFound, trans };
+1
View File
@@ -0,0 +1 @@
export declare function strtr(string: string, replacePairs: Record<string, string | number>): string;
+34
View File
@@ -0,0 +1,34 @@
{
"name": "@symfony/ux-translator",
"description": "Symfony Translator for JavaScript",
"license": "MIT",
"version": "1.0.0",
"main": "dist/translator_controller.js",
"types": "dist/translator_controller.d.ts",
"scripts": {
"build": "node ../../../bin/build_package.js .",
"watch": "node ../../../bin/build_package.js . --watch",
"test": "../../../bin/test_package.sh .",
"check": "biome check",
"ci": "biome ci"
},
"symfony": {
"importmap": {
"intl-messageformat": "^10.5.11",
"@symfony/ux-translator": "path:%PACKAGE%/dist/translator_controller.js",
"@app/translations": "path:var/translations/index.js",
"@app/translations/configuration": "path:var/translations/configuration.js"
}
},
"peerDependencies": {
"intl-messageformat": "^10.5.11"
},
"peerDependenciesMeta": {
"intl-messageformat": {
"optional": false
}
},
"devDependencies": {
"intl-messageformat": "^10.5.11"
}
}
+5 -5
View File
@@ -2,7 +2,7 @@ services:
###> doctrine/doctrine-bundle ### ###> doctrine/doctrine-bundle ###
database: database:
ports: ports:
- "127.0.0.1:5454:5432" - "127.0.0.1:5455:5432"
###< doctrine/doctrine-bundle ### ###< doctrine/doctrine-bundle ###
###> symfony/mailer ### ###> symfony/mailer ###
@@ -14,20 +14,20 @@ services:
environment: environment:
MP_SMTP_AUTH_ACCEPT_ANY: 1 MP_SMTP_AUTH_ACCEPT_ANY: 1
MP_SMTP_AUTH_ALLOW_INSECURE: 1 MP_SMTP_AUTH_ALLOW_INSECURE: 1
###< symfony/mailer ### ###< symfony/mailer ###
redis: redis:
ports: ports:
- 127.0.0.1:6363:6379 - 127.0.0.1:6364:6379
relatorio: relatorio:
ports: ports:
- 8888 - 8888
rabbitmq: rabbitmq:
ports: ports:
- 127.0.0.1:5689:5672 - 127.0.0.1:5690:5672
- 127.0.0.1:15689:15672 - 127.0.0.1:15690:15672
# required to make data persistent # required to make data persistent
hostname: my-rabbit hostname: my-rabbit
volumes: volumes:
+79 -61
View File
@@ -7,74 +7,86 @@
"chill", "chill",
"social worker" "social worker"
], ],
"repositories": [{
"type": "path",
"url": "./packages/ChillZimbraBundle",
"options": {
"symlink": true
}
}],
"require": { "require": {
"php": "^8.2", "php": "^8.4",
"ext-dom": "*", "ext-dom": "*",
"ext-json": "*", "ext-json": "*",
"ext-openssl": "*", "ext-openssl": "*",
"ext-redis": "*", "ext-redis": "*",
"champs-libres/wopi-bundle": "dev-master@dev", "ext-zlib": "*",
"champs-libres/wopi-lib": "dev-master@dev", "champs-libres/wopi-bundle": "1.0.0",
"champs-libres/wopi-lib": "1.0.0",
"doctrine/data-fixtures": "^1.8",
"doctrine/doctrine-bundle": "^2.1", "doctrine/doctrine-bundle": "^2.1",
"doctrine/doctrine-migrations-bundle": "^3.0", "doctrine/doctrine-migrations-bundle": "^3.0",
"doctrine/orm": "^2.13.0", "doctrine/orm": "^3.5.2",
"erusev/parsedown": "^1.7", "erusev/parsedown": "^1.7",
"knplabs/knp-menu-bundle": "^3.0", "knplabs/knp-menu-bundle": "^3.0",
"knplabs/knp-time-bundle": "^1.12", "knplabs/knp-time-bundle": "^2.4",
"knpuniversity/oauth2-client-bundle": "^2.10", "knpuniversity/oauth2-client-bundle": "^2.10",
"league/csv": "^9.7.1", "league/csv": "^9.7.1",
"lexik/jwt-authentication-bundle": "^2.16", "lexik/jwt-authentication-bundle": "^3.1.1",
"nyholm/psr7": "^1.4", "nyholm/psr7": "^1.4",
"ocramius/package-versions": "^1.10 || ^2", "ocramius/package-versions": "^1.10 || ^2",
"odolbeau/phone-number-bundle": "^3.6", "odolbeau/phone-number-bundle": "^3.6",
"ovh/ovh": "^3.0", "ovh/ovh": "^3.0",
"phpoffice/phpspreadsheet": "^1.16", "phpoffice/phpspreadsheet": "^1.16",
"ramsey/uuid-doctrine": "^1.7", "ramsey/uuid-doctrine": "^1.7",
"sensio/framework-extra-bundle": "^5.5",
"smalot/pdfparser": "^2.10", "smalot/pdfparser": "^2.10",
"spomky-labs/base64url": "^2.0", "spomky-labs/base64url": "^2.0",
"symfony/asset": "^5.4", "symfony/amqp-messenger": "^7.3",
"symfony/browser-kit": "^5.4", "symfony/asset": "^7.2",
"symfony/cache": "^5.4", "symfony/browser-kit": "^7.2",
"symfony/clock": "^6.2", "symfony/cache": "^7.2",
"symfony/config": "^5.4", "symfony/clock": "^7.2",
"symfony/console": "^5.4", "symfony/config": "^7.2",
"symfony/css-selector": "^5.4", "symfony/console": "^7.2",
"symfony/dom-crawler": "^5.4", "symfony/css-selector": "^7.2",
"symfony/error-handler": "^5.4", "symfony/dom-crawler": "^7.2",
"symfony/event-dispatcher": "^5.4", "symfony/error-handler": "^7.2",
"symfony/event-dispatcher-contracts": "^2.4", "symfony/event-dispatcher": "^7.2",
"symfony/expression-language": "^5.4", "symfony/event-dispatcher-contracts": "^3.0",
"symfony/filesystem": "^5.4", "symfony/expression-language": "^7.2",
"symfony/finder": "^5.4", "symfony/filesystem": "^7.2",
"symfony/form": "^5.4", "symfony/finder": "^7.2",
"symfony/framework-bundle": "^5.4", "symfony/form": "^7.2",
"symfony/http-client": "^5.4", "symfony/framework-bundle": "^7.2",
"symfony/http-foundation": "^5.4", "symfony/http-client": "^7.2",
"symfony/intl": "^5.4", "symfony/http-foundation": "^7.2",
"symfony/mailer": "^5.4", "symfony/intl": "^7.2",
"symfony/messenger": "^5.4", "symfony/mailer": "^7.2",
"symfony/mime": "^5.4", "symfony/messenger": "^7.2",
"symfony/mime": "^7.2",
"symfony/monolog-bundle": "^3.5", "symfony/monolog-bundle": "^3.5",
"symfony/options-resolver": "^5.4", "symfony/notifier": "^7.2",
"symfony/process": "^5.4", "symfony/options-resolver": "^7.2",
"symfony/property-access": "^5.4", "symfony/ovh-cloud-notifier": "^7.2",
"symfony/property-info": "^5.4", "symfony/polyfill-intl-messageformatter": "^1.32",
"symfony/routing": "^5.4", "symfony/process": "^7.2",
"symfony/security-bundle": "^5.4", "symfony/property-access": "^7.2",
"symfony/security-core": "^5.4", "symfony/property-info": "^7.2",
"symfony/security-csrf": "^5.4", "symfony/routing": "^7.2",
"symfony/security-guard": "^5.4", "symfony/security-bundle": "^7.3",
"symfony/security-http": "^5.4", "symfony/security-core": "^7.2",
"symfony/serializer": "^5.4", "symfony/security-csrf": "^7.2",
"symfony/string": "^5.4", "symfony/security-http": "^7.2",
"symfony/templating": "^5.4", "symfony/serializer": "^7.2",
"symfony/translation": "^5.4", "symfony/string": "^7.2",
"symfony/twig-bundle": "^5.4", "symfony/translation": "^7.3",
"symfony/validator": "^5.4", "symfony/twig-bundle": "^7.3",
"symfony/webpack-encore-bundle": "^1.11", "symfony/ux-translator": "^2.22",
"symfony/workflow": "^5.4", "symfony/validator": "^7.2",
"symfony/yaml": "^5.4", "symfony/var-exporter": "^7.0",
"symfony/webpack-encore-bundle": "^2.0",
"symfony/workflow": "^7.2",
"symfony/yaml": "^7.2",
"thenetworg/oauth2-azure": "^2.0", "thenetworg/oauth2-azure": "^2.0",
"twig/extra-bundle": "^3.0", "twig/extra-bundle": "^3.0",
"twig/intl-extra": "^3.0", "twig/intl-extra": "^3.0",
@@ -85,25 +97,28 @@
"require-dev": { "require-dev": {
"doctrine/doctrine-fixtures-bundle": "^3.3", "doctrine/doctrine-fixtures-bundle": "^3.3",
"fakerphp/faker": "^1.13", "fakerphp/faker": "^1.13",
"jangregor/phpstan-prophecy": "^1.0", "friendsofphp/php-cs-fixer": "3.88.2",
"jangregor/phpstan-prophecy": "^2.2",
"nelmio/alice": "^3.8", "nelmio/alice": "^3.8",
"nikic/php-parser": "^4.15",
"phpspec/prophecy-phpunit": "^2.0", "phpspec/prophecy-phpunit": "^2.0",
"phpstan/extension-installer": "^1.2", "phpstan/extension-installer": "^1.2",
"phpstan/phpstan": "^1.9", "phpstan/phpstan": "^2.1.30",
"phpstan/phpstan-deprecation-rules": "^1.1", "phpstan/phpstan-deprecation-rules": "^2.0",
"phpstan/phpstan-strict-rules": "^1.0", "phpstan/phpstan-doctrine": "^2.0",
"phpstan/phpstan-strict-rules": "^2.0.7",
"phpstan/phpstan-symfony": "^2.0",
"phpunit/phpunit": "^10.5.24", "phpunit/phpunit": "^10.5.24",
"rector/rector": "^1.1.0", "rector/rector": "^2.2",
"symfony/debug-bundle": "^5.4", "symfony/debug-bundle": "^7.2",
"symfony/dotenv": "^5.4", "symfony/dotenv": "^7.2",
"symfony/flex": "^2.4", "symfony/flex": "^2.4",
"symfony/maker-bundle": "^1.20", "symfony/maker-bundle": "^1.20",
"symfony/phpunit-bridge": "^7.1", "symfony/phpunit-bridge": "^7.1",
"symfony/runtime": "^5.4", "symfony/runtime": "^7.2",
"symfony/stopwatch": "^5.4", "symfony/stopwatch": "^7.2",
"symfony/var-dumper": "^5.4", "symfony/var-dumper": "^7.2",
"symfony/web-profiler-bundle": "^5.4" "symfony/web-profiler-bundle": "^7.2",
"symfony/loco-translation-provider": "^6.0"
}, },
"conflict": { "conflict": {
"symfony/symfony": "*" "symfony/symfony": "*"
@@ -126,6 +141,7 @@
"Chill\\TaskBundle\\": "src/Bundle/ChillTaskBundle", "Chill\\TaskBundle\\": "src/Bundle/ChillTaskBundle",
"Chill\\ThirdPartyBundle\\": "src/Bundle/ChillThirdPartyBundle", "Chill\\ThirdPartyBundle\\": "src/Bundle/ChillThirdPartyBundle",
"Chill\\WopiBundle\\": "src/Bundle/ChillWopiBundle/src", "Chill\\WopiBundle\\": "src/Bundle/ChillWopiBundle/src",
"Chill\\TicketBundle\\": "src/Bundle/ChillTicketBundle/src",
"Chill\\Utils\\Rector\\": "utils/rector/src" "Chill\\Utils\\Rector\\": "utils/rector/src"
} }
}, },
@@ -156,7 +172,9 @@
"cache:clear": "symfony-cmd", "cache:clear": "symfony-cmd",
"assets:install %PUBLIC_DIR%": "symfony-cmd" "assets:install %PUBLIC_DIR%": "symfony-cmd"
}, },
"php-cs-fixer": "php-cs-fixer fix --config=./.php-cs-fixer.dist.php --show-progress=none" "php-cs-fixer": "php-cs-fixer fix --config=./.php-cs-fixer.dist.php --show-progress=none",
"phpstan": "phpstan --no-progress",
"rector": "rector --no-progress-bar"
}, },
"extra": { "extra": {
"symfony": { "symfony": {
+3 -2
View File
@@ -2,7 +2,6 @@
return [ return [
Symfony\Bundle\FrameworkBundle\FrameworkBundle::class => ['all' => true], Symfony\Bundle\FrameworkBundle\FrameworkBundle::class => ['all' => true],
loophp\PsrHttpMessageBridgeBundle\PsrHttpMessageBridgeBundle::class => ['all' => true],
ChampsLibres\WopiBundle\WopiBundle::class => ['all' => true], ChampsLibres\WopiBundle\WopiBundle::class => ['all' => true],
Doctrine\Bundle\DoctrineBundle\DoctrineBundle::class => ['all' => true], Doctrine\Bundle\DoctrineBundle\DoctrineBundle::class => ['all' => true],
Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle::class => ['dev' => true, 'test' => true], Doctrine\Bundle\FixturesBundle\DoctrineFixturesBundle::class => ['dev' => true, 'test' => true],
@@ -14,7 +13,6 @@ return [
Lexik\Bundle\JWTAuthenticationBundle\LexikJWTAuthenticationBundle::class => ['all' => true], Lexik\Bundle\JWTAuthenticationBundle\LexikJWTAuthenticationBundle::class => ['all' => true],
Nelmio\Alice\Bridge\Symfony\NelmioAliceBundle::class => ['dev' => true, 'test' => true], Nelmio\Alice\Bridge\Symfony\NelmioAliceBundle::class => ['dev' => true, 'test' => true],
Misd\PhoneNumberBundle\MisdPhoneNumberBundle::class => ['all' => true], Misd\PhoneNumberBundle\MisdPhoneNumberBundle::class => ['all' => true],
Sensio\Bundle\FrameworkExtraBundle\SensioFrameworkExtraBundle::class => ['all' => true],
Symfony\Bundle\DebugBundle\DebugBundle::class => ['dev' => true], Symfony\Bundle\DebugBundle\DebugBundle::class => ['dev' => true],
Symfony\Bundle\MakerBundle\MakerBundle::class => ['dev' => true], Symfony\Bundle\MakerBundle\MakerBundle::class => ['dev' => true],
Symfony\Bundle\MonologBundle\MonologBundle::class => ['all' => true], Symfony\Bundle\MonologBundle\MonologBundle::class => ['all' => true],
@@ -35,5 +33,8 @@ return [
Chill\ThirdPartyBundle\ChillThirdPartyBundle::class => ['all' => true], Chill\ThirdPartyBundle\ChillThirdPartyBundle::class => ['all' => true],
Chill\BudgetBundle\ChillBudgetBundle::class => ['all' => true], Chill\BudgetBundle\ChillBudgetBundle::class => ['all' => true],
Chill\WopiBundle\ChillWopiBundle::class => ['all' => true], Chill\WopiBundle\ChillWopiBundle::class => ['all' => true],
Chill\TicketBundle\ChillTicketBundle::class => ['all' => true],
Symfony\Bundle\WebProfilerBundle\WebProfilerBundle::class => ['dev' => true, 'test' => true], Symfony\Bundle\WebProfilerBundle\WebProfilerBundle::class => ['dev' => true, 'test' => true],
Symfony\UX\Translator\UxTranslatorBundle::class => ['all' => true],
loophp\PsrHttpMessageBridgeBundle\PsrHttpMessageBridgeBundle::class => ['all' => true],
]; ];
+9 -1
View File
@@ -1,6 +1,13 @@
chill_main: chill_main:
available_languages: [ '%env(resolve:LOCALE)%', 'en' ] available_languages: [ '%env(resolve:LOCALE)%', 'en', 'nl' ]
available_countries: ['BE', 'FR'] available_countries: ['BE', 'FR']
top_banner:
visible: false
text:
fr: 'Vous travaillez actuellement avec la version de PRÉ-PRODUCTION.'
nl: 'Je werkt momenteel in de PRE-PRODUCTIE versie'
color: '#353535'
background_color: '#d8bb48'
notifications: notifications:
from_email: '%env(resolve:NOTIFICATION_FROM_EMAIL)%' from_email: '%env(resolve:NOTIFICATION_FROM_EMAIL)%'
from_name: '%env(resolve:NOTIFICATION_FROM_NAME)%' from_name: '%env(resolve:NOTIFICATION_FROM_NAME)%'
@@ -17,6 +24,7 @@ chill_main:
acl: acl:
form_show_scopes: true form_show_scopes: true
form_show_centers: true form_show_centers: true
filter_stats_by_center: true
access_global_history: false access_global_history: false
access_user_change_password: true access_user_change_password: true
access_permissions_group_list: true access_permissions_group_list: true
@@ -0,0 +1,2 @@
chill_aside_activity:
show_concerned_persons_count: hidden
+3
View File
@@ -1,4 +1,7 @@
chill_doc_store: chill_doc_store:
use_driver: local_storage
local_storage:
storage_path: '%kernel.project_dir%/var/storage'
openstack: openstack:
temp_url: temp_url:
temp_url_key: '%env(resolve:ASYNC_UPLOAD_TEMP_URL_KEY)%' # Required temp_url_key: '%env(resolve:ASYNC_UPLOAD_TEMP_URL_KEY)%' # Required
+5
View File
@@ -0,0 +1,5 @@
chill_ticket:
ticket:
person_per_ticket: one # One of "one"; "many"
response_time_exceeded_delay: PT12H
@@ -0,0 +1,11 @@
chill_main:
workflow_signature:
base_signer:
document_kinds:
- { key: id_card, labels: [ { lang: fr, label: "Carte d'identité" } ] }
- { key: passport, labels: [ { lang: fr, label: "Passeport" } ] }
- { key: drivers_license, labels: [ { lang: fr, label: "Permis de conduire" } ] }
- { key: visa_long_stay, labels: [ { lang: fr, label: "Visa de long séjour" } ] }
- { key: resident_permit, labels: [ { lang: fr, label: "Carte de séjour" } ] }
- { key: residency_card, labels: [ { lang: fr, label: "Carte de résident" } ] }
- { key: provisionary_residency_permit, labels: [ { lang: fr, label: "Autorisation provisoire de séjour" } ] }
+11
View File
@@ -0,0 +1,11 @@
# Enable stateless CSRF protection for forms and logins/logouts
framework:
form:
csrf_protection:
token_id: submit
csrf_protection:
stateless_token_ids:
- submit
- authenticate
- logout
+1
View File
@@ -7,6 +7,7 @@ doctrine:
#server_version: '16' #server_version: '16'
use_savepoints: true use_savepoints: true
orm: orm:
enable_lazy_ghost_objects: true
auto_generate_proxy_classes: true auto_generate_proxy_classes: true
naming_strategy: doctrine.orm.naming_strategy.default naming_strategy: doctrine.orm.naming_strategy.default
auto_mapping: true auto_mapping: true
@@ -14,6 +14,7 @@ doctrine_migrations:
'Chill\Migrations\Calendar': '@ChillCalendarBundle/migrations' 'Chill\Migrations\Calendar': '@ChillCalendarBundle/migrations'
'Chill\Migrations\Budget': '@ChillBudgetBundle/migrations' 'Chill\Migrations\Budget': '@ChillBudgetBundle/migrations'
'Chill\Migrations\Report': '@ChillReportBundle/migrations' 'Chill\Migrations\Report': '@ChillReportBundle/migrations'
'Chill\Migrations\Ticket': '@ChillTicketBundle/migrations'
all_or_nothing: all_or_nothing:
true true
+10
View File
@@ -4,6 +4,16 @@ framework:
#csrf_protection: true #csrf_protection: true
http_method_override: false http_method_override: false
# Enable EntityValueResolver for automatic entity injection in controllers
# This replaces the functionality previously provided by SensioFrameworkExtraBundle
http_client:
enabled: true
request:
formats:
json: ['application/json']
# Enables session support. Note that the session will ONLY be started if you read or write from it. # Enables session support. Note that the session will ONLY be started if you read or write from it.
# Remove or comment this section to explicitly disable session support. # Remove or comment this section to explicitly disable session support.
session: session:
+8 -4
View File
@@ -1,11 +1,8 @@
framework: framework:
messenger: messenger:
# reset services after consuming messages
reset_on_message: true
# Uncomment this (and the failed transport below) to send failed messages to this transport for later handling. # Uncomment this (and the failed transport below) to send failed messages to this transport for later handling.
failure_transport: failed failure_transport: failed
transports: transports:
# those transports are added by chill-bundles recipes # those transports are added by chill-bundles recipes
sync: sync:// sync: sync://
@@ -19,7 +16,9 @@ framework:
async: ~ async: ~
auto_setup: true auto_setup: true
priority: '%env(MESSENGER_TRANSPORT_DSN)%/priority' priority:
dsn: '%env(MESSENGER_TRANSPORT_DSN)%/priority'
# end of transports added by chill-bundles recipes # end of transports added by chill-bundles recipes
# https://symfony.com/doc/current/messenger.html#transport-configuration # https://symfony.com/doc/current/messenger.html#transport-configuration
failed: 'doctrine://default?queue_name=failed' failed: 'doctrine://default?queue_name=failed'
@@ -61,6 +60,11 @@ framework:
'Chill\MainBundle\Workflow\Messenger\PostSignatureStateChangeMessage': priority 'Chill\MainBundle\Workflow\Messenger\PostSignatureStateChangeMessage': priority
'Chill\MainBundle\Workflow\Messenger\PostPublicViewMessage': async 'Chill\MainBundle\Workflow\Messenger\PostPublicViewMessage': async
'Chill\MainBundle\Service\Workflow\CancelStaleWorkflowMessage': async 'Chill\MainBundle\Service\Workflow\CancelStaleWorkflowMessage': async
'Chill\MainBundle\Notification\Email\NotificationEmailMessages\SendImmediateNotificationEmailMessage': async
'Chill\MainBundle\Export\Messenger\ExportRequestGenerationMessage': priority
'Chill\MainBundle\Export\Messenger\RemoveExportGenerationMessage': async
'Chill\MainBundle\Notification\Email\NotificationEmailMessages\ScheduleDailyNotificationDigestMessage': async
'Chill\TicketBundle\Messenger\PostTicketUpdateMessage': async
# end of routes added by chill-bundles recipes # end of routes added by chill-bundles recipes
# Route your messages to the transports # Route your messages to the transports
# 'App\Message\YourMessage': async # 'App\Message\YourMessage': async
+13
View File
@@ -0,0 +1,13 @@
framework:
notifier:
texter_transports:
#ovhcloud: '%env(OVHCLOUD_DSN)%'
#ovhcloud: '%env(SHORT_MESSAGE_DSN)%'
channel_policy:
# use chat/slack, chat/telegram, sms/twilio or sms/nexmo
urgent: ['email']
high: ['email']
medium: ['email']
low: ['email']
admin_recipients:
- { email: admin@example.com }
+3
View File
@@ -0,0 +1,3 @@
framework:
property_info:
enabled: true
+4 -8
View File
@@ -1,5 +1,4 @@
security: security:
enable_authenticator_manager: true
# https://symfony.com/doc/current/security.html#registering-the-user-hashing-passwords # https://symfony.com/doc/current/security.html#registering-the-user-hashing-passwords
password_hashers: password_hashers:
Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto' Symfony\Component\Security\Core\User\PasswordAuthenticatedUserInterface: 'auto'
@@ -28,16 +27,13 @@ security:
pattern: ^/wopi pattern: ^/wopi
provider: chill_chain_provider provider: chill_chain_provider
stateless: true stateless: true
guard: jwt: ~
authenticators:
- lexik_jwt_authentication.jwt_token_authenticator
dav: dav:
pattern: ^/dav pattern: ^/dav
provider: chill_chain_provider provider: chill_chain_provider
stateless: true stateless: true
guard: custom_authenticator:
authenticators: - Chill\DocStoreBundle\Security\Authenticator\JWTOnDavUrlAuthenticator
- Chill\DocStoreBundle\Security\Guard\JWTOnDavUrlAuthenticator
# this firewall is the main firewall for chill. It should be the last one in the stack, # this firewall is the main firewall for chill. It should be the last one in the stack,
# unless you have specific needs # unless you have specific needs
chill_main: chill_main:
@@ -63,7 +59,7 @@ security:
# Note: Only the *first* access control that matches will be used # Note: Only the *first* access control that matches will be used
access_control: access_control:
# those lines are added by chill-bundles recipes, and are requires to make chill-bundles working # those lines are added by chill-bundles recipes, and are requires to make chill-bundles working
- { path: ^/(login|logout), roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/(login|logout), roles: PUBLIC_ACCESS }
- { path: ^/public, roles: IS_AUTHENTICATED_ANONYMOUSLY } - { path: ^/public, roles: IS_AUTHENTICATED_ANONYMOUSLY }
- { path: ^/wopi, roles: IS_AUTHENTICATED_FULLY } - { path: ^/wopi, roles: IS_AUTHENTICATED_FULLY }
# access for homepage, the homepage redirect admin to admin section # access for homepage, the homepage redirect admin to admin section
@@ -1,3 +0,0 @@
sensio_framework_extra:
router:
annotations: false
+4
View File
@@ -0,0 +1,4 @@
framework:
serializer:
enabled: true
enable_attributes: true
+7 -2
View File
@@ -1,7 +1,12 @@
# config/packages/translation.yaml
framework: framework:
default_locale: en default_locale: '%env(resolve:LOCALE)%' # LOCALE=fr in .env
translator: translator:
default_path: '%kernel.project_dir%/translations' default_path: '%kernel.project_dir%/translations'
fallbacks: fallbacks:
- en - '%env(resolve:LOCALE)%' # fr
providers: providers:
loco:
dsn: '%env(LOCO_DSN)%'
domains: [ 'messages' ]
locales: [ 'fr', 'nl' ]
-4
View File
@@ -1,4 +0,0 @@
framework:
default_locale: '%env(resolve:LOCALE)%'
translator:
fallbacks: [ '%env(resolve:LOCALE)%' ]
+3
View File
@@ -0,0 +1,3 @@
ux_translator:
# The directory where the JavaScript translations are dumped
dump_directory: '%kernel.project_dir%/var/translations'
+100 -39
View File
@@ -7,7 +7,8 @@ framework:
- Chill\PersonBundle\Entity\AccompanyingPeriod\AccompanyingPeriodWorkEvaluationDocument - Chill\PersonBundle\Entity\AccompanyingPeriod\AccompanyingPeriodWorkEvaluationDocument
- Chill\PersonBundle\Entity\AccompanyingPeriod\AccompanyingPeriodWork - Chill\PersonBundle\Entity\AccompanyingPeriod\AccompanyingPeriodWork
- Chill\DocStoreBundle\Entity\AccompanyingCourseDocument - Chill\DocStoreBundle\Entity\AccompanyingCourseDocument
label: label: Suivi
translated_labels:
fr: 'Suivi' fr: 'Suivi'
support_strategy: Chill\MainBundle\Workflow\RelatedEntityWorkflowSupportsStrategy support_strategy: Chill\MainBundle\Workflow\RelatedEntityWorkflowSupportsStrategy
marking_store: marking_store:
@@ -16,11 +17,13 @@ framework:
places: places:
initial: initial:
metadata: metadata:
label: label: Étape initiale
translated_labels:
fr: Étape initiale fr: Étape initiale
attenteModification: attenteModification:
metadata: metadata:
label: label: En attente de modification du document
translated_labels:
fr: En attente de modification du document fr: En attente de modification du document
validationFilterInputLabels: validationFilterInputLabels:
forward: {fr: Modification effectuée} forward: {fr: Modification effectuée}
@@ -28,7 +31,8 @@ framework:
neutral: {fr: Autre} neutral: {fr: Autre}
attenteMiseEnForme: attenteMiseEnForme:
metadata: metadata:
label: label: En attente de mise en forme
translated_labels:
fr: En attente de mise en forme fr: En attente de mise en forme
validationFilterInputLabels: validationFilterInputLabels:
forward: {fr: Mise en forme terminée} forward: {fr: Mise en forme terminée}
@@ -36,7 +40,8 @@ framework:
neutral: {fr: Autre} neutral: {fr: Autre}
attenteVisa: attenteVisa:
metadata: metadata:
label: label: En attente de visa
translated_labels:
fr: En attente de visa fr: En attente de visa
validationFilterInputLabels: validationFilterInputLabels:
forward: {fr: Visa accordé} forward: {fr: Visa accordé}
@@ -47,7 +52,8 @@ framework:
isSignature: ['user', 'person'] isSignature: ['user', 'person']
onSignatureCompleted: onSignatureCompleted:
transitionName: signatureApplied transitionName: signatureApplied
label: label: En attente de signature
translated_labels:
fr: En attente de signature fr: En attente de signature
validationFilterInputLabels: validationFilterInputLabels:
forward: {fr: Signature accordée} forward: {fr: Signature accordée}
@@ -55,7 +61,8 @@ framework:
neutral: {fr: Autre} neutral: {fr: Autre}
postSignature: postSignature:
metadata: metadata:
label: label: Signatures traitées
translated_labels:
fr: Signatures traitées fr: Signatures traitées
validationFilterInputLabels: validationFilterInputLabels:
forward: {fr: Poursuite du traitement} forward: {fr: Poursuite du traitement}
@@ -63,7 +70,8 @@ framework:
neutral: {fr: Autre} neutral: {fr: Autre}
attenteTraitement: attenteTraitement:
metadata: metadata:
label: label: En attente de traitement
translated_labels:
fr: En attente de traitement fr: En attente de traitement
validationFilterInputLabels: validationFilterInputLabels:
forward: {fr: Traitement terminé favorablement} forward: {fr: Traitement terminé favorablement}
@@ -71,7 +79,8 @@ framework:
neutral: {fr: Autre} neutral: {fr: Autre}
attenteEnvoi: attenteEnvoi:
metadata: metadata:
label: label: En attente d'envoi
translated_labels:
fr: En attente d'envoi fr: En attente d'envoi
validationFilterInputLabels: validationFilterInputLabels:
forward: {fr: Document envoyé} forward: {fr: Document envoyé}
@@ -79,7 +88,8 @@ framework:
neutral: {fr: Autre} neutral: {fr: Autre}
attenteValidationMiseEnForme: attenteValidationMiseEnForme:
metadata: metadata:
label: label: En attente de validation de la mise en forme
translated_labels:
fr: En attente de validation de la mise en forme fr: En attente de validation de la mise en forme
validationFilterInputLabels: validationFilterInputLabels:
forward: {fr: Validation de la mise en forme} forward: {fr: Validation de la mise en forme}
@@ -89,7 +99,8 @@ framework:
metadata: metadata:
isSentExternal: true isSentExternal: true
onExternalView: clotureApresLectureEnvoiExterne onExternalView: clotureApresLectureEnvoiExterne
label: label: En attente d'ouverture par un destinataire externe
translated_labels:
fr: En attente d'ouverture par un destinataire externe fr: En attente d'ouverture par un destinataire externe
validationFilterInputLabels: validationFilterInputLabels:
forward: {fr: Document reçu par un destinataire externe} forward: {fr: Document reçu par un destinataire externe}
@@ -99,13 +110,15 @@ framework:
metadata: metadata:
isFinal: true isFinal: true
isFinalPositive: false isFinalPositive: false
label: label: Annulé
translated_labels:
fr: Annulé fr: Annulé
final: final:
metadata: metadata:
isFinal: true isFinal: true
isFinalPositive: true isFinalPositive: true
label: label: Finalisé
translated_labels:
fr: Finalisé fr: Finalisé
transitions: transitions:
# transition qui avancent # transition qui avancent
@@ -114,7 +127,8 @@ framework:
- initial - initial
to: attenteModification to: attenteModification
metadata: metadata:
label: label: Demande de modification du document
translated_labels:
fr: Demande de modification du document fr: Demande de modification du document
isForward: true isForward: true
demandeMiseEnForme: demandeMiseEnForme:
@@ -123,7 +137,8 @@ framework:
- attenteModification - attenteModification
to: attenteMiseEnForme to: attenteMiseEnForme
metadata: metadata:
label: label: Demande de mise en forme
translated_labels:
fr: Demande de mise en forme fr: Demande de mise en forme
isForward: true isForward: true
demandeValidationMiseEnForme: demandeValidationMiseEnForme:
@@ -131,7 +146,8 @@ framework:
- attenteMiseEnForme - attenteMiseEnForme
to: attenteValidationMiseEnForme to: attenteValidationMiseEnForme
metadata: metadata:
label: label: Demande de validation de la mise en forme
translated_labels:
fr: Demande de validation de la mise en forme fr: Demande de validation de la mise en forme
isForward: true isForward: true
demandeVisa: demandeVisa:
@@ -144,7 +160,8 @@ framework:
- attenteTraitement - attenteTraitement
to: attenteVisa to: attenteVisa
metadata: metadata:
label: label: Demande de visa
translated_labels:
fr: Demande de visa fr: Demande de visa
isForward: true isForward: true
demandeSignature: demandeSignature:
@@ -157,14 +174,18 @@ framework:
- attenteTraitement - attenteTraitement
to: attenteSignature to: attenteSignature
metadata: metadata:
label: {fr: Demande de signature} label: Demande de signature
translated_labels:
fr: Demande de signature
isForward: true isForward: true
signatureApplied: signatureApplied:
from: from:
- attenteSignature - attenteSignature
to: postSignature to: postSignature
metadata: metadata:
label: {fr: Signatures appliquées} label: Signatures appliquées
translated_labels:
fr: Signatures appliquées
isForward: true isForward: true
transitionGuard: 'system' # can be 'system+only-dest' or 'only-dest' (only-dest is default) transitionGuard: 'system' # can be 'system+only-dest' or 'only-dest' (only-dest is default)
demandeTraitement: demandeTraitement:
@@ -177,7 +198,9 @@ framework:
- postSignature - postSignature
to: attenteTraitement to: attenteTraitement
metadata: metadata:
label: {fr: Demande de traitement} label: Demande de traitement
translated_labels:
fr: Demande de traitement
isForward: true isForward: true
demandeEnvoi: demandeEnvoi:
from: from:
@@ -190,7 +213,9 @@ framework:
- attenteTraitement - attenteTraitement
to: attenteEnvoi to: attenteEnvoi
metadata: metadata:
label: {fr: Demande d'envoi} label: Demande d'envoi
translated_labels:
fr: Demande d'envoi
isForward: true isForward: true
demandeEnvoiExterne: demandeEnvoiExterne:
from: from:
@@ -203,7 +228,9 @@ framework:
- attenteTraitement - attenteTraitement
to: attenteReceptionExternal to: attenteReceptionExternal
metadata: metadata:
label: {fr: Envoi sécurisé par courrier électronique} label: Envoi sécurisé par courrier électronique
translated_labels:
fr: Envoi sécurisé par courrier électronique
isForward: true isForward: true
clotureApresLectureEnvoiExterne: clotureApresLectureEnvoiExterne:
from: from:
@@ -213,20 +240,25 @@ framework:
metadata: metadata:
transitionGuard: system transitionGuard: system
isForward: true isForward: true
label: {fr: Consultation de l'envoi sécurisé} label: Consultation de l'envoi sécurisé
translated_labels:
fr: Consultation de l'envoi sécurisé
annulation: annulation:
from: from:
- initial - initial
- attenteModification - attenteModification
- attenteMiseEnForme - attenteMiseEnForme
- attenteValidationMiseEnForme - attenteValidationMiseEnForme
- attenteSignature
- attenteVisa - attenteVisa
- postSignature - postSignature
- attenteTraitement - attenteTraitement
- attenteEnvoi - attenteEnvoi
to: annule to: annule
metadata: metadata:
label: {fr: Annulation} label: Annulation
translated_labels:
fr: Annulation
isForward: false isForward: false
transitionGuard: 'system+only-dest' # can be 'system+only-dest' or 'only-dest' (only-dest is default) transitionGuard: 'system+only-dest' # can be 'system+only-dest' or 'only-dest' (only-dest is default)
# transitions qui répètent l'étape # transitions qui répètent l'étape
@@ -236,27 +268,35 @@ framework:
- attenteValidationMiseEnForme - attenteValidationMiseEnForme
to: attenteMiseEnForme to: attenteMiseEnForme
metadata: metadata:
label: {fr: Demande de mise en forme supplémentaire} label: Demande de mise en forme supplémentaire
translated_labels:
fr: Demande de mise en forme supplémentaire
demandeVisaSupplementaire: demandeVisaSupplementaire:
from: from:
- attenteVisa - attenteVisa
to: attenteVisa to: attenteVisa
metadata: metadata:
label: {fr: Demande de visa supplémentaire} label: Demande de visa supplémentaire
translated_labels:
fr: Demande de visa supplémentaire
isForward: true isForward: true
demandeSignatureSupplementaire: demandeSignatureSupplementaire:
from: from:
- postSignature - postSignature
to: attenteSignature to: attenteSignature
metadata: metadata:
label: {fr: Demande de signature supplémentaire} label: Demande de signature supplémentaire
translated_labels:
fr: Demande de signature supplémentaire
isForward: true isForward: true
demandeTraitementSupplementaire: demandeTraitementSupplementaire:
from: from:
- attenteTraitement - attenteTraitement
to: attenteTraitement to: attenteTraitement
metadata: metadata:
label: {fr: Demande de traitement supplémentaire} label: Demande de traitement supplémentaire
translated_labels:
fr: Demande de traitement supplémentaire
# transitions qui renvoient vers une étape précédente # transitions qui renvoient vers une étape précédente
refusEtModificationDocument: refusEtModificationDocument:
from: from:
@@ -266,7 +306,8 @@ framework:
- attenteEnvoi - attenteEnvoi
to: attenteModification to: attenteModification
metadata: metadata:
label: label: Refus et demande de modification du document
translated_labels:
fr: Refus et demande de modification du document fr: Refus et demande de modification du document
isForward: false isForward: false
refusEtDemandeMiseEnForme: refusEtDemandeMiseEnForme:
@@ -276,7 +317,9 @@ framework:
- attenteEnvoi - attenteEnvoi
to: attenteMiseEnForme to: attenteMiseEnForme
metadata: metadata:
label: {fr: Refus et demande de mise en forme} label: Refus et demande de mise en forme
translated_labels:
fr: Refus et demande de mise en forme
isForward: false isForward: false
refusEtDemandeVisa: refusEtDemandeVisa:
from: from:
@@ -284,21 +327,27 @@ framework:
- attenteEnvoi - attenteEnvoi
to: attenteVisa to: attenteVisa
metadata: metadata:
label: {fr: Refus et demande de visa} label: Refus et demande de visa
translated_labels:
fr: Refus et demande de visa
isForward: false isForward: false
refusEtDemandeSignature: refusEtDemandeSignature:
from: from:
- attenteEnvoi - attenteEnvoi
to: attenteSignature to: attenteSignature
metadata: metadata:
label: {fr: Refus et demande de signature} label: Refus et demande de signature
translated_labels:
fr: Refus et demande de signature
isForward: false isForward: false
refusEtDemandeTraitement: refusEtDemandeTraitement:
from: from:
- attenteEnvoi - attenteEnvoi
to: attenteTraitement to: attenteTraitement
metadata: metadata:
label: {fr: Refus et demande de traitement} label: Refus et demande de traitement
translated_labels:
fr: Refus et demande de traitement
isForward: false isForward: false
# transition vers final # transition vers final
initialToFinal: initialToFinal:
@@ -306,7 +355,9 @@ framework:
- initial - initial
to: final to: final
metadata: metadata:
label: {fr: Clotûre immédiate et cloture positive} label: Clotûre immédiate et cloture positive
translated_labels:
fr: Clotûre immédiate et cloture positive
isForward: true isForward: true
attenteMiseEnFormeToFinal: attenteMiseEnFormeToFinal:
from: from:
@@ -314,33 +365,43 @@ framework:
- attenteValidationMiseEnForme - attenteValidationMiseEnForme
to: final to: final
metadata: metadata:
label: {fr: Mise en forme terminée et cloture positive} label: Mise en forme terminée et cloture positive
translated_labels:
fr: Mise en forme terminée et cloture positive
isForward: true isForward: true
attenteVisaToFinal: attenteVisaToFinal:
from: from:
- attenteVisa - attenteVisa
to: final to: final
metadata: metadata:
label: {fr: Accorde le visa et cloture positive} label: Accorde le visa et cloture positive
translated_labels:
fr: Accorde le visa et cloture positive
isForward: true isForward: true
postSignatureToFinal: postSignatureToFinal:
from: from:
- postSignature - postSignature
to: final to: final
metadata: metadata:
label: {fr: Cloture positive} label: Cloture positive
translated_labels:
fr: Cloture positive
isForward: true isForward: true
attenteTraitementToFinal: attenteTraitementToFinal:
from: from:
- attenteTraitement - attenteTraitement
to: final to: final
metadata: metadata:
label: {fr: Traitement terminé et cloture positive} label: Traitement terminé et cloture positive
translated_labels:
fr: Traitement terminé et cloture positive
isForward: true isForward: true
attenteEnvoiToFinal: attenteEnvoiToFinal:
from: from:
- attenteEnvoi - attenteEnvoi
to: final to: final
metadata: metadata:
label: {fr: Envoyé et cloture positive} label: Envoyé et cloture positive
translated_labels:
fr: Envoyé et cloture positive
isForward: true isForward: true
-3
View File
@@ -1,3 +0,0 @@
kernel:
resource: ../../src/app/Kernel.php
type: annotation
+19
View File
@@ -0,0 +1,19 @@
when@dev:
sass_assets:
path: /_dev/assets
controller: Symfony\Bundle\FrameworkBundle\Controller\TemplateController
defaults:
template: '@ChillMain/Dev/dev.assets.html.twig'
sass_assets_test1:
path: /_dev/assets_test1
controller: Symfony\Bundle\FrameworkBundle\Controller\TemplateController
defaults:
template: '@ChillMain/Dev/dev.assets.test1.html.twig'
sass_assets_test2:
path: /_dev/assets_test2
controller: Symfony\Bundle\FrameworkBundle\Controller\TemplateController
defaults:
template: '@ChillMain/Dev/dev.assets.test2.html.twig'
+12
View File
@@ -0,0 +1,12 @@
when@dev:
swagger_ui:
path: /_dev/swagger
controller: Symfony\Bundle\FrameworkBundle\Controller\TemplateController
defaults:
template: '@ChillMain/Dev/swagger-ui/index.html.twig'
swagger_specs:
path: /_dev/specs.yaml
controller: Symfony\Bundle\FrameworkBundle\Controller\TemplateController
defaults:
template: api/specs.yaml
+2
View File
@@ -0,0 +1,2 @@
chill_ticket_bundle:
resource: '@ChillTicketBundle/config/routes.yaml'

Some files were not shown because too many files have changed in this diff Show More