Commit Graph

12701 Commits

Author SHA1 Message Date
cd104f10ac Reorder write and flush operations in AuditEventDumper::dump for consistent stored object persistence.
- Moved `storedObjectManager->write` call before `entityManager->flush` to ensure data integrity.
2026-03-05 13:50:03 +01:00
92739182d1 fix configuraiton 2026-03-04 15:20:33 +01:00
39a59fef51 rector fixes 2026-03-04 15:18:34 +01:00
91c2251e43 Merge branch 'master' into 468-rendre-les-acces-des-parcours-et-des-dossiers-d-usagers-visibles-depuis-l-interface-d 2026-03-04 15:17:25 +01:00
9edcaa52e9 Fix phpstan issues 2026-03-04 15:09:53 +01:00
7bf619aeca Refactor transaction logic in AuditDumpRequestHandler and optimize audit dumping process
- Removed unused `StoredObjectRepository` dependency and improved transaction management by replacing `beganTx` flag with `isTransactionActive` checks.
- Adjusted entity locking logic to separate `find()` and `lock()` calls for `StoredObject`.
- Simplified `AuditEventDumper` by removing redundant assertions and unused `AuditTrail` import.
- Standardized subject display configuration in `AuditEventDumper` and ensured consistent data formatting.
2026-03-04 15:09:32 +01:00
5494f227c4 Add audit trail menu, permissions checks, and updated translations
- Added a new menu item for viewing audit trails with associated permissions checks.
- Integrated access control using `ROLE_SEE_AUDIT_TRAILS` in multiple controllers.
- Updated French translations for audit trail-related labels and menu items.
2026-03-03 14:43:29 +01:00
95437bd06d Refactor user repository fields management and enhance query structure
- Moved the `FIELDS` constant from `UserRepository` to `UserRepositoryInterface` to improve consistency and sharing.
- Updated SQL queries to include new fields (`absenceStart`, `mainLanguage`, and `isRoleSeeAuditTrails`).
- Streamlined CSV export logic to reference the shared `FIELDS` constant.
2026-03-03 14:13:16 +01:00
cd29e3150a Add role management for users and update related translations and templates
- Added a `roles` column to the `users` table using a JSONB data type.
- Updated the `User` entity to include role management methods (`getRoles`, `addRole`, `removeRole`).
- Modified the `UserType` form to allow selecting special roles.
- Updated Twig templates to display assigned roles in the user list.
- Added new translations for roles and updated French translation keys in `messages.fr.yml`.
2026-03-03 14:13:04 +01:00
063d6528b7 Add documentation for document editing with Collabora and WebDAV
- Added a new guide on using Collabora Online and WebDAV for document editing in development.
- Updated `index.md` to include a link to the new document.
- Modified `mkdocs.yml` to register the new guide in the development section.
2026-03-02 20:48:38 +01:00
4ccc5d4554 Fix typo in translation placeholder for stored object display in Twig template
- Corrected `{id}` placeholder formatting in `stored_object.html.twig`.
2026-03-02 17:31:28 +01:00
64f6fc5306 Integrate audit functionality across multiple controllers and services for WebDAV, WOPI, and Async Upload
- Added `TriggerAuditInterface` to `WebdavController`, `ConvertController`, and `AsyncUploadController`, with audit triggers for create, update, view, and convert actions using translatable messages.
- Enhanced `ChillWopi` service with audit triggers for file operations (view, update) and integrated French translations for audit labels.
- Updated `messages.fr.yml` to include new translatable keys for audit actions in both WOPI and WebDAV contexts.
- Registered `TriggerAuditInterface` as a dependency in modified classes to enable audit tracking functionality.
2026-03-02 17:31:19 +01:00
2313b053d4 Add audit functionality for SingleTask and integrate subject converter and displayer
- Introduced `SingleTaskSubjectConverter` for audit conversion logic and `SingleTaskSubjectDisplayer` for display logic, including a Twig template.
- Integrated `TriggerAuditInterface` into `SingleTaskController` and added audit triggers for create, view, update, delete, and list actions with translatable descriptions.
- Registered new audit-related services in `services.yaml` and loaded `services.yaml` in the extension.
- Created unit tests to validate the behavior of the subject converter and related functionality.
- Added French translations for audit messages related to `SingleTask`.
2026-03-02 15:35:52 +01:00
9da82878af Update AssociatedEntityToStoredObjectRepository to use iterable instead of array for repositories
- Changed the constructor parameter type from `array` to `iterable` for increased flexibility in handling repository collections.
2026-03-02 13:33:51 +01:00
91e19fb448 Integrate audit functionality for DocumentAccompanyingCourseController actions
- Added `TriggerAuditInterface` to the controller and implemented audit triggers for create, view, update, and delete actions.
- Updated constructor dependencies to include the audit trigger service.
2026-03-02 13:32:38 +01:00
67ffbcfbad Integrate audit functionality for "list" actions in GenericDocForAccompanyingPeriodController and GenericDocForPerson
- Added `TriggerAuditInterface` to both controllers and implemented audit triggers with translatable descriptions for listing actions.
- Updated constructor dependencies to include the audit trigger service.
2026-03-02 13:32:23 +01:00
2c252fa79a Add audit functionality for AccompanyingCourseDocument and integrate subject converter and displayer
- Introduced `AccompanyingCourseDocumentSubjectConverter` for audit conversion logic.
- Added `AccompanyingCourseDocumentSubjectDisplayer` for handling audit display logic, including a Twig template.
- Created unit tests to verify proper behavior of the converter and displayer.
2026-03-02 13:32:14 +01:00
4c8eb4b3b9 Add audit functionality for StoredObject actions and integrate StoredObjectSubjectConverter and StoredObjectSubjectDisplayer
- Introduced `StoredObjectSubjectConverter` for audit conversion logic and `StoredObjectSubjectDisplayer` for display logic.
- Added corresponding Twig template and French translations for audit messages.
- Created unit tests to ensure proper functionality of the converter and displayer.
2026-03-02 12:09:38 +01:00
847610f679 Add support for associating entities with stored objects in the ChillDocStore bundle
- Introduced `AssociatedEntityToStoredObjectInterface` and `AssociatedEntityToStoredObjectRepository` for linking stored objects to specific entities.
- Registered `AssociatedEntityToStoredObjectInterface` with autoconfiguration and added custom repository logic.
- Updated `ChillDocStoreBundle` to tag repositories implementing the new interface for streamlined usage.
2026-03-02 12:09:19 +01:00
222d20734c Add audit functionality for Comment actions and integrate CommentSubjectConverter and CommentSubjectDisplayer
- Introduced `CommentSubjectConverter` and `CommentSubjectDisplayer` for audit conversion and display logic.
- Integrated `TriggerAuditInterface` into `AccompanyingCourseCommentController` and added audit triggers for create, view, update, delete, pin, unpin, and list actions with translatable descriptions.
- Added unit test `CommentSubjectConverterTest` to ensure proper behavior of the subject converter.
- Enhanced French translations (`messages.fr.yml`) with audit-related labels for comment actions.
2026-03-02 10:30:58 +01:00
56069deaf5 Document audit triggers in ApiController actions
- Added examples to demonstrate how to override the `onAfterFlush` method for triggering audits based on HTTP methods.
- Updated developer documentation (`audit.md`) with detailed instructions and code snippets.
2026-02-27 17:40:00 +01:00
7714828637 Integrate audit functionality into AccompanyingCourseWork actions
- Added `TriggerAuditInterface` to controllers and implemented audit triggers for create, update, delete, view, and list actions.
- Replaced `EventDispatcherInterface` with `triggerAudit` calls in relevant points.
- Enhanced French translations (`messages.fr.yml`) with audit-related labels for accompanying course work actions.
2026-02-27 17:37:41 +01:00
e28dc355e8 Add audit functionality for Activity actions
- Introduced `ActivityDisplayer` and `ActivitySubjectConverter` for handling audit display and conversion logic.
- Integrated `TriggerAuditInterface` in `ActivityController` and added audit triggers for create, list, update, delete, and view actions with translatable descriptions.
- Updated `services.yaml` to register new audit-related services.
- Enhanced French translations with audit-related labels for `Activity`.
2026-02-27 16:13:37 +01:00
546d5bf1f7 Update French translation for "list" title in events section
- Changed "Liste des événements" to "Liste des accès" in `messages.fr.yml` for consistency with access terminology.
2026-02-27 16:13:27 +01:00
b354ea1ce2 Add "list" action to audit functionality and French translations
- Introduced `AUDIT_LIST` constant in `AuditTrail` entity to support "list" action auditing.
- Updated French translations (`messages.fr.yml`) to include label for "list" action.
2026-02-27 15:57:21 +01:00
72131dc2f8 Add "list" action to audit functionality and French translations
- Introduced `AUDIT_LIST` constant in `AuditTrail` entity to support "list" action auditing.
- Updated French translations (`messages.fr.yml`) to include label for "list" action.
2026-02-27 15:57:11 +01:00
8d145e3b58 Add audit documentation to developer guide
- Added `audit.md` to explain how to trigger audits, best practices, and internal architecture.
- Updated `mkdocs.yml` to include the new "Audit" section in the developer guide.
2026-02-27 15:27:45 +01:00
96b690b75b Add audit functionality for AccompanyingPeriod actions
- Integrated `TriggerAuditInterface` in `AccompanyingCourseApiController` to handle audit events.
- Added audit triggers for participation, requestor, confidentiality, and intensity actions using translatable descriptions.
- Updated French translations to include new audit-related messages.
2026-02-27 15:04:53 +01:00
99be7d9614 Replace EventDispatcherInterface with TriggerAuditInterface in AccompanyingCourseController
- Migrated from `EventDispatcherInterface` to `TriggerAuditInterface` for handling audit events.
- Updated all audit-related calls to use `triggerAudit` instead of `dispatch` in the controller.
2026-02-26 16:39:50 +01:00
298065bd41 Add audit functionality for HouseholdComposition actions
- Introduced `HouseholdCompositionDisplayer` and `HouseholdCompositionSubjectConverter` to handle audit display and conversion logic.
- Integrated audit triggers for create, view, and delete actions in `HouseholdCompositionController`.
- Added French translations for audit-related messages and household composition labels.
2026-02-26 16:28:46 +01:00
5eaf3ee828 Add audit functionality to HouseholdController, RelationApiController, and repository methods
- Integrated `TriggerAuditInterface` in `HouseholdController` and added audit triggers for view and update actions.
- Added onAfterFlush audit handling in `RelationApiController` to support create, update, and delete events.
- Updated `HouseholdMembersRepository` with a `find` method for retrieving `HouseholdMember` entities.
2026-02-26 16:00:41 +01:00
b000255aea Add audit display functionality for Household and HouseholdMember
- Added `HouseholdSubjectDisplayer` and `HouseholdMemberSubjectDisplayer` classes to handle audit display logic.
- Created Twig templates `household.html.twig` and `household_member.html.twig` for rendering audit information.
- Integrated support for HTML and text formats when displaying audit entries.
2026-02-26 16:00:29 +01:00
7d147f921d Add audit functionality to MembersEditor and trigger audit in HouseholdMemberController
- Added `TriggerAuditInterface` to `MembersEditorFactory` and `MembersEditor` for managing audit events.
- Implemented `triggerAudit` method in `MembersEditor` to log participation edits with translatable descriptions.
- Updated `HouseholdMemberController` to invoke `triggerAudit` after saving changes.
2026-02-26 16:00:23 +01:00
c013cfd032 Add HouseholdConverter and HouseholdParticipationConverter for audit functionality
- Implemented `HouseholdConverter` to handle `Household` entity conversions with support for associated members.
- Added `HouseholdParticipationConverter` to convert `HouseholdMember` entity and retrieve linked person and household subjects.
- Ensures compatibility with the audit system via `SubjectConverterInterface`.
2026-02-26 16:00:05 +01:00
7d62d33058 Integrate audit functionality across Person and PersonResource controllers
- Added `TriggerAuditInterface` to enable seamless audit event handling.
- Implemented audit triggers for create, update, delete, and view actions.
- Enhanced controllers to include translatable audit descriptions for better tracking of actions.
2026-02-26 14:15:03 +01:00
88235c0fa2 Add PersonResource audit functionality
- Implemented `PersonResourceSubjectDisplayer` to provide display logic for `PersonResource` audits.
- Added `PersonResourceSubjectConverter` to handle conversion to `Subject` format.
- Created Twig template `person_resource.html.twig` for rendering `PersonResource` audit display.
2026-02-26 14:14:51 +01:00
1d4d90e48a Add getAssociated method to AbstractPersonResource
- Introduced `getAssociated` method to retrieve either `Person`, `ThirdParty`, or `null`.
- Provides a unified accessor combining `person` and `thirdParty` properties.
2026-02-26 14:14:00 +01:00
8c88fca2ee Add TriggerAuditInterface and TriggerAuditService to handle audit event triggering
- Introduced `TriggerAuditInterface` to define the contract for triggering audit events.
- Implemented `TriggerAuditService` to encapsulate audit event creation and persistence logic.
- Added methods to handle audit actions with metadata and translatable descriptions.
2026-02-26 14:13:44 +01:00
966f9f7e33 Release v4.13.0 v4.13.0 2026-02-23 17:13:24 +01:00
7a5300b713 Merge branch '495-fix-quote-notification-email' into 'master'
Remove unused method `sendNotificationEmailsToAddressesEmails` from `NotificationMailer`

Closes #495

See merge request Chill-Projet/chill-bundles!967
2026-02-23 15:49:39 +00:00
dc3a585e5b Remove unused method sendNotificationEmailsToAddressesEmails from NotificationMailer 2026-02-23 15:49:39 +00:00
7712d76889 Merge branch '494-titre-toute-la-journée-tronqué-sur-la-page-mes-rendez-vous' into 'master'
Resolve "Titre 'Toute la journée' tronqué sur la page Mes Rendez-vous"

Closes #494

See merge request Chill-Projet/chill-bundles!965
2026-02-23 15:08:48 +00:00
Boris Waaub
69bb7026c9 Resolve "Titre 'Toute la journée' tronqué sur la page Mes Rendez-vous" 2026-02-23 15:08:48 +00:00
acd7240903 Merge branch '501-fix-deprecation-markdown-parser' into 'master'
Resolve "Depréciation dans le paquet de transformation markdown"

Closes #501

See merge request Chill-Projet/chill-bundles!966
2026-02-23 14:50:15 +00:00
22049558da Resolve "Depréciation dans le paquet de transformation markdown" 2026-02-23 14:50:14 +00:00
c0f2f3f3e0 Merge branch '500-limit-public-download' into 'master'
Resolve "Téléchargement des documents d'un workflow: limiter à 30 téléchargements plutôt que 100"

Closes #500

See merge request Chill-Projet/chill-bundles!964
2026-02-23 14:24:53 +00:00
bf56b3cc65 Resolve "Téléchargement des documents d'un workflow: limiter à 30 téléchargements plutôt que 100" 2026-02-23 14:24:53 +00:00
f85973f7ae Merge branch '499-fix-loading-postal-code' into 'master'
Resolve "Des codes postaux marqués comme supprimés apparaissent toujours dans la recherche d'adresse"

Closes #499

See merge request Chill-Projet/chill-bundles!963
2026-02-23 14:16:46 +00:00
f1446d7abe Resolve "Des codes postaux marqués comme supprimés apparaissent toujours dans la recherche d'adresse" 2026-02-23 14:16:45 +00:00
1099302ab2 Add French translations and implement UI for audit trail download statuses
- Added new French translations for audit trail download states in `messages.fr.yml`.
- Updated `waitForDump` endpoint to render a Twig template with download status.
- Created `download.html.twig` to display the download status with dynamic messages for different states.
2026-02-23 13:48:40 +01:00