6 Commits

Author SHA1 Message Date
f6ba7ebc36 update 2026-02-28 14:48:24 +01:00
a4a35c8d62 feat: Implement module permissions system with database-driven access control
- Added `users_permissions` table for managing user permissions.
- Created `PermissionRepository` for handling permission logic.
- Refactored `controls\Users::permissions()` to utilize the new database structure.
- Introduced AJAX endpoint for saving user permissions.
- Enhanced user management UI with permission checkboxes.
- Added vacation management template for handling employee absences.
- Implemented tests for `PermissionRepository`.
2026-02-26 20:17:03 +01:00
8f2e332069 Add unit tests for MailToTaskImporter attachment name normalization
- Implemented tests for various scenarios of attachment name normalization in MailToTaskImporter.
- Covered cases for technical names, named files, missing extensions, and content-based detection.
- Added tests for extracting names from MIME headers, including handling of Content-Description.
2026-02-18 23:30:11 +01:00
304c87f933 feat: Implement user management functionality with impersonation support 2026-02-09 17:22:52 +01:00
47ffc19a23 Refactor task management and add attachment functionality
- Updated task editing template to handle default status for new tasks and corrected variable names.
- Enhanced work time reporting by rounding time to the nearest quarter hour and adjusting amount formatting.
- Introduced TasksController to manage task-related operations, including status resolution and email notifications.
- Added TaskAttachmentRepository for handling task attachments, including upload, rename, and delete functionalities.
- Implemented WorkTimeRepository to fetch clients with unsettled tasks and calculate total work time.
- Created unit tests for TasksController and TaskAttachmentRepository to ensure functionality and correctness.
2026-02-06 23:11:48 +01:00
5161d0f979 Refactor work time management and billing summary
- Introduced a new `TasksController` to handle work time logic, moving it from the factory layer to the domain layer.
- Created `WorkTimeRepository` to encapsulate data access for work time tasks, including methods to retrieve clients with unsettled tasks and calculate task times.
- Updated the work time view to display a consolidated billing summary with improved UI elements and AJAX functionality for closing tasks.
- Added new styles for the billing summary section in `style.scss`.
- Implemented tests for the `TasksController` and `WorkTimeRepository` to ensure functionality and correctness.
- Established a refactoring plan for future improvements and migrations within the CRM system.
2026-02-06 21:32:11 +01:00