7 Commits

Author SHA1 Message Date
4e82b8396f refactor: Remove billing module and restore API Platform as core dependency
Änderungen:
- Billing-Modul entfernt: composer remove mycrm/billing-module
- API Platform als Core-Dependency wiederhergestellt
- ApiPlatformBundle in config/bundles.php registriert
- BillingModuleBundle aus config/bundles.php entfernt

Problem behoben:
API Platform wurde versehentlich mit dem Billing-Modul entfernt,
obwohl es eine Core-Dependency für die Hauptanwendung ist.
Alle Entities (Contact, User, Project, etc.) benötigen API Platform.

Lösung:
- composer require api-platform/symfony api-platform/doctrine-orm
- Bundle-Registrierung in config/bundles.php korrigiert
- Cache erfolgreich geleert, Frontend erfolgreich gebaut

Hinweis:
Zukünftige Module sollten keine Core-Dependencies (Symfony, Doctrine,
API Platform) als eigene Abhängigkeiten deklarieren, da diese bereits
im Core vorhanden sind.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-14 18:15:41 +01:00
6246f29135 refactor: Remove test module references from composer and configuration files 2025-12-14 18:07:53 +01:00
5ffd7bd0d1 feat: add api-platform and symfony/uid dependencies; introduce billing module service configuration
- Added api-platform/symfony version 4.1 with necessary configuration files.
- Included symfony/uid version 7.1 with its recipe details.
- Created billing_module.yaml to define the BillingModulePlugin service with autowiring and autoconfiguration.
- Added SoftwareBuddy agent for web development support in PHP (Symfony) and JavaScript (Vue.js).
2025-12-05 15:07:37 +01:00
a787019a3b feat: Implement PDF upload functionality in PDFUploadForm.vue
- Added a file input for PDF uploads with validation for file type and size.
- Implemented file size formatting and user feedback for selected files.
- Created upload and cancel methods with placeholder for future API integration.

feat: Create PaymentForm.vue for handling payments

- Developed a form for entering payment details including date, amount, method, and notes.
- Integrated currency formatting and dropdown for payment methods.
- Implemented save and cancel actions with API call for saving payment data.

docs: Add documentation for dynamic plugin menus and permissions

- Provided guidelines for defining menu items and permissions in plugins.
- Explained the process for synchronizing permissions and integrating menus in the frontend.
- Included examples and best practices for plugin development.

feat: Add database migrations for invoices, invoice items, and payments

- Created migration scripts to define the database schema for invoices, invoice items, and payments.
- Established foreign key relationships between invoices and related entities.

feat: Implement command for synchronizing plugin permissions

- Developed a console command to synchronize plugin permissions with the database.
- Added options for dry-run and force synchronization for unlicensed modules.

feat: Create API controller for plugin menu items

- Implemented API endpoints to retrieve plugin menu items in both flat and grouped formats.
- Ensured access control with role-based permissions for API access.

feat: Develop service for managing plugin menu items

- Created a service to collect and manage menu items from installed plugins.
- Implemented methods for retrieving flat and grouped menu items for frontend use.

feat: Add service for synchronizing plugin permissions

- Developed a service to handle the synchronization of plugin permissions with the database.
- Included logic for creating and updating permission modules based on plugin definitions.
2025-12-05 11:13:41 +01:00
7d6ef9f0eb Update License and P System 2025-12-04 10:53:18 +01:00
9122cd2cc1 feat: Integrate Pocket-ID OIDC for Single Sign-On
- Added knpuniversity/oauth2-client-bundle and league/oauth2-client to composer.json
- Updated composer.lock with new dependencies
- Registered KnpUOAuth2ClientBundle in bundles.php
- Configured security.yaml for custom authenticator and access control
- Created OIDC setup documentation (OIDC_SETUP.md)
- Implemented OAuthController for handling Pocket-ID authentication flow
- Developed PocketIdProvider and PocketIdResourceOwner for OIDC integration
- Created PocketIdAuthenticator for user authentication and management
- Updated login.html.twig to include Pocket-ID login button with styling
- Added knpu_oauth2_client.yaml configuration for Pocket-ID client
2025-11-08 17:32:39 +01:00
c07c90cdaa Initial Commit 2025-11-08 10:26:44 +01:00