Commit Graph

57 Commits

Author SHA1 Message Date
9ac9a1cb44 Update Settings.tsx 2025-12-11 23:37:42 +01:00
d21596ba94 Create Documents.tsx 2025-12-11 23:37:04 +01:00
bd65ff2443 Update FamilyList.tsx 2025-12-11 23:18:40 +01:00
ae7002052f Update FamilyList.tsx 2025-12-11 23:11:53 +01:00
71b9a7f4e4 Update FamilyList.tsx 2025-12-11 23:08:02 +01:00
9d74f7adab Update FamilyList.tsx 2025-12-11 23:02:43 +01:00
b774661166 Update FamilyList.tsx 2025-12-11 22:58:38 +01:00
6d07135b97 Update Settings.tsx 2025-12-11 22:51:02 +01:00
b823f0f943 Update FamilyDetail.tsx 2025-12-11 22:47:04 +01:00
771d7cf127 Update FamilyList.tsx 2025-12-11 22:46:22 +01:00
4137e57046 Update FamilyList.tsx 2025-12-11 22:30:33 +01:00
1a613c607c Update FamilyList.tsx 2025-12-11 22:28:13 +01:00
669f55a14d Update Settings.tsx 2025-12-11 22:11:50 +01:00
b76fe3aea5 Update Settings.tsx 2025-12-11 22:03:03 +01:00
5cfc3bc509 Update CondoFinancials.tsx 2025-12-11 21:22:20 +01:00
45c766a7f9 Update Reports.tsx 2025-12-11 21:16:37 +01:00
7cccb65c15 Create CondoFinancials.tsx 2025-12-11 21:14:51 +01:00
7fed3aa3d9 Update Reports.tsx 2025-12-11 20:51:13 +01:00
1f46817c10 Update ExtraordinaryUser.tsx 2025-12-11 00:15:10 +01:00
32adfbbc58 Update ExtraordinaryAdmin.tsx 2025-12-11 00:14:54 +01:00
899aaa90d1 Update ExtraordinaryAdmin.tsx 2025-12-11 00:01:39 +01:00
c2d330b571 Update Tickets.tsx 2025-12-10 23:46:38 +01:00
6f3426804a Update Settings.tsx 2025-12-10 23:46:22 +01:00
4a4b66dd58 Update Reports.tsx 2025-12-10 23:46:05 +01:00
832206fbc0 Update Login.tsx 2025-12-10 23:45:49 +01:00
e470e7c276 Update ExtraordinaryUser.tsx 2025-12-10 23:45:33 +01:00
f6a5b5c5b3 Update ExtraordinaryAdmin.tsx 2025-12-10 23:45:12 +01:00
25eed5a214 Update FamilyDetail.tsx 2025-12-10 23:44:51 +01:00
fc62e22b1c Update ExtraordinaryAdmin.tsx 2025-12-10 23:30:57 +01:00
24db29b709 Update Login.tsx 2025-12-10 23:30:35 +01:00
7479ffa1df Update Reports.tsx 2025-12-10 23:30:14 +01:00
bba7b9ea02 Update Settings.tsx 2025-12-10 23:29:49 +01:00
746333ff2b Update FamilyDetail.tsx 2025-12-10 23:29:14 +01:00
3d084bf8a2 Update FamilyList.tsx 2025-12-10 23:28:43 +01:00
074daa7110 Update ExtraordinaryUser.tsx 2025-12-10 23:19:18 +01:00
a34a27ea85 Update Tickets.tsx 2025-12-10 23:18:15 +01:00
6f70631b78 Update ExtraordinaryUser.tsx 2025-12-09 23:39:48 +01:00
8a43143ead feat(expenses): Add delete expense endpoint and functionality
Implements the ability to delete an expense, including its associated items and shares. Also refactors the expense update logic to correctly handle share updates and adds the corresponding API endpoint and mock DB function.
2025-12-09 23:25:06 +01:00
2a6da489aa feat: Refactor API services and UI components
This commit refactors the API service to use a consistent `fetch` wrapper for all requests, improving error handling and authorization logic. It also updates UI components to reflect changes in API endpoints and data structures, particularly around notifications and extraordinary expenses. Docker configurations are removed as they are no longer relevant for this stage of development.
2025-12-09 23:12:47 +01:00
fa12a8de85 feat(extraordinary-expenses): Add module for extraordinary expenses
Introduces a new module to manage and track extraordinary expenses within condominiums. This includes defining expense items, sharing arrangements, and attaching relevant documents.

The module adds new types for `ExpenseItem`, `ExpenseShare`, and `ExtraordinaryExpense`. Mock database functions are updated to support fetching, creating, and managing these expenses. UI components in `Layout.tsx` and `Settings.tsx` are modified to include navigation and feature toggling for extraordinary expenses. Additionally, new routes are added in `App.tsx` for both administrative and user-facing views of these expenses.
2025-12-09 23:00:05 +01:00
76c1a097b5 feat: Add SMTP testing and improve Docker setup
Introduce a new feature to test SMTP configuration directly from the settings page. This involves adding a new API endpoint and corresponding UI elements to trigger and display the results of an SMTP test.

Additionally, this commit refactors the Docker setup by consolidating Dockerfiles and removing unnecessary configuration files. The goal is to streamline the build process and reduce image size and complexity.
2025-12-09 17:44:25 +01:00
a97dcfa33e feat: Implement ticket commenting functionality
Adds the ability for users to comment on tickets, view comments, and distinguish between user and admin responses. Also introduces a new 'SUSPENDED' status for tickets and refactors database schema and API endpoints to support comments.
2025-12-09 15:58:52 +01:00
25eafb1c6e feat: Refine notice filtering and Docker setup
Implement granular notice filtering logic based on user roles and notice targeting.
Update Dockerfiles and .dockerignore for a cleaner build process.
2025-12-09 14:15:43 +01:00
ca38e891c9 feat: Add targeted notices to Condopay
Implements the ability to send notices to specific families within a condominium, rather than broadcasting to all. This includes:
- Updating the `Notice` type with `targetFamilyIds`.
- Adding a `target_families` JSON column to the `notices` table in the database, with a migration for existing installations.
- Modifying the API to handle the new `targetFamilyIds` field during notice creation and retrieval.
- Updating the UI to allow users to select specific families for notices.
2025-12-09 14:04:49 +01:00
3a0021c5d8 feat: Add PayPal configuration to settings
Introduces the ability to configure PayPal credentials for individual condos within the settings. This feature is only visible if PayPal is enabled in the global settings. Also removes and simplifies Dockerfile configurations.
2025-12-09 13:55:11 +01:00
a5645a32c0 feat: Add reports feature
Enables a new reports section in the application. This includes:
- Adding a `reports` flag to `AppFeatures` and `AppSettings`.
- Including a new "Reportistica" link in the main navigation for privileged users.
- Adding a `getCondoPayments` endpoint to the mock DB service.
- Updating the backend to support filtering payments by `condoId`.
- Providing a basic `ReportsPage` component.
2025-12-09 13:35:10 +01:00
0f82df517b feat: Enhance admin access and UI for privileged users
Grant 'poweruser' role access to administrative settings and sections. Update UI to reflect elevated privileges and adjust default tab navigation for these users. Modify server-side access control to include 'poweruser' alongside 'admin' for privileged routes.
2025-12-07 23:30:06 +01:00
80d658a536 feat: Improve payment modal logic and Docker configuration
Refactor the family detail page to introduce a new `handleOpenAddModal` function. This function intelligently sets the default payment method based on the current user's role: 'manual' for admins/power users and 'paypal' for others. This enhances user experience by pre-selecting the most appropriate payment option.

Additionally, the Docker configuration files have been updated. The mult-stage build setup for the frontend and backend has been removed in favor of a simpler structure, streamlining the Docker build process. The `nginx.conf` has also been updated to reflect these changes and ensure proper proxying.
2025-12-07 23:16:47 +01:00
919be985c9 feat: Introduce app feature flags
This commit refactors the application settings to include a new `AppFeatures` interface. This allows for granular control over which features are enabled for the application.

The `AppFeatures` object includes boolean flags for:
- `multiCondo`: Enables or disables the multi-condominium management feature.
- `tickets`: Placeholder for future ticket system integration.
- `payPal`: Enables or disables PayPal payment gateway integration.
- `notices`: Enables or disables the display and management of notices.

These flags are now fetched and stored in the application state, influencing UI elements and logic across various pages to conditionally render features based on their enabled status. For example, the multi-condo selection in `Layout.tsx` and the notice display in `FamilyList.tsx` are now gated by these feature flags. The `FamilyDetail.tsx` page also uses the `payPal` flag to conditionally enable the PayPal payment option.

The `SettingsPage.tsx` has been updated to include a new 'features' tab for managing these flags.
2025-12-07 20:21:01 +01:00
5311400615 feat: Add tickets module and PayPal integration
Introduces a new 'Tickets' module for users to submit and manage issues within their condominium. This includes defining ticket types, statuses, priorities, and categories.

Additionally, this commit integrates PayPal as a payment option for family fee payments, enabling users to pay directly via PayPal using their client ID.

Key changes:
- Added `Ticket` related types and enums.
- Implemented `TicketService` functions for CRUD operations.
- Integrated `@paypal/react-paypal-js` library.
- Added `paypalClientId` to `AppSettings` and `Condo` types.
- Updated `FamilyDetail` page to include PayPal payment option.
- Added 'Segnalazioni' navigation link to `Layout`.
2025-12-07 19:49:59 +01:00