-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix(ZMS): show alternative locations for offices #820
fix(ZMS): show alternative locations for offices #820
Conversation
WalkthroughThis update introduces a new nullable boolean property, Changes
Sequence Diagram(s)sequenceDiagram
participant Facade as ZmsApiFacadeService
participant Mapper as MapperService
participant Office as Office Model
Facade->>Mapper: Request office data (getOffices, getOfficeListByServiceId, etc.)
Mapper->>Office: Instantiate Office(..., showAlternativeLocations)
Office-->>Mapper: Return Office instance with showAlternativeLocations set
Mapper-->>Facade: Return OfficeList with updated property
Possibly related PRs
Suggested reviewers
Poem
🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
Documentation and Community
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
zmscitizenapi/tests/Zmscitizenapi/Services/Core/ZmsApiFacadeServiceTest.php (1)
67-68
: Consider adding test coverage for true value.While the current test covers the basic functionality with showAlternativeLocations set to false, consider adding another test case with showAlternativeLocations set to true for comprehensive coverage.
public function testGetOfficesSuccess(): void { // ... existing test code ... } + +public function testGetOfficesWithAlternativeLocationsSuccess(): void +{ + $provider = new Provider(); + $provider->id = 1; + $provider->name = 'Test Provider'; + $provider->source = 'unittest'; + $provider->data = [ + 'address' => [ + 'street' => 'Test Street', + 'number' => '123', + 'city' => 'Test City', + 'postal_code' => '12345' + ], + 'geo' => ['lat' => 48.137154, 'lon' => 11.576124], + 'showAlternativeLocations' => true + ]; + + // ... rest of the test setup ... + + $result = ZmsApiFacadeService::getOffices(); + $this->assertInstanceOf(OfficeList::class, $result); + $this->assertCount(1, $result->offices); + + $office = $result->offices[0]; + $this->assertTrue($office->showAlternativeLocations); +}
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (11)
zmscitizenapi/src/Zmscitizenapi/Models/Office.php
(4 hunks)zmscitizenapi/src/Zmscitizenapi/Services/Core/MapperService.php
(1 hunks)zmscitizenapi/src/Zmscitizenapi/Services/Core/ZmsApiFacadeService.php
(3 hunks)zmscitizenapi/tests/Zmscitizenapi/Controllers/Office/OfficeListByServiceControllerTest.php
(3 hunks)zmscitizenapi/tests/Zmscitizenapi/Controllers/Office/OfficesListControllerTest.php
(2 hunks)zmscitizenapi/tests/Zmscitizenapi/Controllers/Office/OfficesServicesRelationsControllerTest.php
(2 hunks)zmscitizenapi/tests/Zmscitizenapi/Services/Core/ZmsApiFacadeServiceTest.php
(1 hunks)zmscitizenapi/tests/Zmscitizenapi/fixtures/GET_SourceGet_dldb.json
(2 hunks)zmsentities/schema/citizenapi/collections/officeList.json
(3 hunks)zmsentities/schema/citizenapi/collections/officeServiceAndRelationList.json
(2 hunks)zmsentities/schema/citizenapi/office.json
(3 hunks)
✅ Files skipped from review due to trivial changes (1)
- zmsentities/schema/citizenapi/office.json
⏰ Context from checks skipped due to timeout of 90000ms (2)
- GitHub Check: call-unit-tests / zmsdb-test
- GitHub Check: call-unit-tests / zmsapi-test
🔇 Additional comments (17)
zmscitizenapi/src/Zmscitizenapi/Models/Office.php (3)
27-29
: LGTM! Property declaration follows best practices.The new property is properly typed and documented using PHP 7.4+ property typing.
83-97
: LGTM! Serialization includes the new field.The toArray method properly includes the new field in the serialized output.
45-67
: LGTM! Constructor implementation is correct.The new parameter is logically placed and properly initialized.
Verify that the schema has been updated to include the new field:
✅ Verification successful
🏁 Script executed:
#!/bin/bash # Description: Check if the schema includes the new showAlternativeLocations field cat citizenapi/office.json | jq '.properties.showAlternativeLocations'Length of output: 125
I'm not getting a definitive answer from the initial command because the file
citizenapi/office.json
wasn't found. To further investigate the update to the schema, let's search for any JSON file in the repository that mentions"showAlternativeLocations"
. This should help us locate where the schema might be defined.Please run this script and share the output so we can verify whether the schema update exists in the codebase.
🏁 Script executed:
#!/bin/bash # Search for any JSON file that contains the "showAlternativeLocations" property. rg --type json '"showAlternativeLocations"'Length of output: 560
Schema Update Verification
The schema has been updated to include the new
showAlternativeLocations
field. The search results show that the property is defined in multiple schema files (e.g., inzmsentities/schema/citizenapi/office.json
,officeList.json
, andofficeServiceAndRelationList.json
). This confirms that the necessary schema update has been made.zmscitizenapi/tests/Zmscitizenapi/Controllers/Office/OfficesListControllerTest.php (1)
44-45
: LGTM! Test coverage is comprehensive.The test data includes both true and false cases for the new showAlternativeLocations field, ensuring proper coverage of the feature.
Also applies to: 85-86
zmscitizenapi/tests/Zmscitizenapi/Controllers/Office/OfficesServicesRelationsControllerTest.php (1)
44-45
: LGTM! Test implementation is consistent.The test data structure and values are consistent with other test files in the suite.
Also applies to: 85-86
zmscitizenapi/tests/Zmscitizenapi/Controllers/Office/OfficeListByServiceControllerTest.php (1)
45-46
: LGTM! Test cases properly validate the new property.The test cases have been updated to include the new
showAlternativeLocations
property with appropriate values for different scenarios, ensuring proper validation of the feature.Also applies to: 106-107, 144-145
zmscitizenapi/src/Zmscitizenapi/Services/Core/MapperService.php (1)
66-66
: LGTM! Property mapping is implemented correctly.The
showAlternativeLocations
property is properly mapped from provider data with appropriate null handling using the null coalescing operator.zmscitizenapi/src/Zmscitizenapi/Services/Core/ZmsApiFacadeService.php (1)
66-66
: LGTM! Consistent implementation across all methods.The
showAlternativeLocations
property is consistently added to Office constructor calls across all relevant methods with proper null handling.Also applies to: 255-256, 382-383
zmsentities/schema/citizenapi/collections/officeList.json (2)
28-34
: LGTM! Schema properly defines the new property.The
showAlternativeLocations
property is well-defined with:
- Appropriate type constraints (boolean or null)
- Clear description of its purpose
2-6
: LGTM! Improved schema formatting.The type declarations have been reformatted to a more readable multi-line style while maintaining the same functionality.
Also applies to: 73-76, 80-83, 87-90, 94-97
zmscitizenapi/tests/Zmscitizenapi/fixtures/GET_SourceGet_dldb.json (2)
27-28
: New Boolean Field in Provider Data (id "9999998")
A new property,showAlternativeLocations
with a value offalse
, has been added within thedata
section for the provider with id "9999998". This addition clarifies that alternative locations should not be shown for this provider. Please ensure that any consumers of this JSON structure are updated to handle the new field.
50-51
: Consistent Boolean Assignment for Provider "9999999"
The propertyshowAlternativeLocations
is correctly included with a value oftrue
for the provider with id "9999999". This mirrors the intended behavior for providers that should display alternative locations.zmsentities/schema/citizenapi/collections/officeServiceAndRelationList.json (5)
29-35
: New Schema Field:showAlternativeLocations
A new propertyshowAlternativeLocations
has been introduced in the Office schema. It is defined to accept aboolean
ornull
value. This change aligns the JSON schema with the updated Office model and ensures that downstream consumers can correctly determine whether alternative office locations should be displayed.
73-77
: Schema Formatting Update:displayNameAlternatives
The type declaration fordisplayNameAlternatives
has been reformatted into a multi-line array structure. This update improves readability while preserving the original intended types (array
ornull
).
81-84
: Schema Formatting Update:organization
Theorganization
property now uses a multi-line array format for its type definition ("string"
or"null"
). This change enhances consistency and clarity in the schema without altering its semantics.
88-91
: Schema Formatting Update:organizationUnit
Reformatting of theorganizationUnit
property into a multi-line array improves the overall consistency of the schema. The allowed types remain unchanged ("string"
or"null"
).
95-98
: Schema Formatting Update:slotTimeInMinutes
The type declaration forslotTimeInMinutes
has been reformatted to a multi-line array structure, which enhances clarity. This change does not affect the underlying type semantics (allowing both"integer"
and"null"
).
* add zmsapi methods to base controller * add helper methods to base controller * refactored into services and controllers * remove duplicate function definitions * move helpers from base controller to new utility helper * add a method * Feature mpdzbs 887 zmscitizenapi post reserve appointment and refactor (#574) * endpoint working * fix unit tests * one working test for post-reserve * some clean up * feat(ZMS-2517): fix up response for the reserve post request * feat(ZMS-2517): add more unit tests for validations * feat(ZMS-2517): add more unit tests for validations * feat(ZMS-2517): Zmscitizenapi Refactor Part 1 of 3 move controllers back to root * feat(ZMS-2517): Zmscitizenapi Refactor Part 2 of 3 create ZmsApiFacadeService ZmsApiClientService ValidationService MapperService UtilityHelper and delete fragmented services * feat(ZMS-2517): Zmscitizenapi Refactor Part 3 of 3 clean up validations and unit tests --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): Readd zmscitizenapi to github workflow * feat(MPDZBS-877): Readd files lost in github history * feat(MPDZBS-877): Readd files lost in github history * feat(MPDZBS-877): Resolve merge conflict in zmsentities * feat(MPDZBS-877): Readd zmscitizenapi schemas to zmsentities deleted by github commit history * (feat MPDZBS-877): update local env cli * Feature mpdzbs 887 zms 2518 zmscitizenapi post update appointment (#587) * (feat MPDZBS-877) readd citizenapi to htaccess * feat(MPDZBS-877 ZMS-2517): Working Appointment update with too many emails exception * feat(MPDZBS-877 ZMS-2517): Test rendering working for update appointment test * feat(MPDZBS-877 ZMS-2517): Add 63 validation unit tests for appointment update * feat(MPDZBS-877 ZMS-2517): Refactor exception appointmentNotFound * feat(MPDZBS-877 ZMS-2517): Add two new edge case exception tests * feat(MPDZBS-877 ZMS-2517): Remove error_logs --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): update .gitignore * cleanup(MPDZBS-877): Improve security and cleanup code * fix(MPDZBS-877): fix bin configure * fix(MPDZBS-877): fix config.example.php * cleanup(MPDZBS-877): merge next into feature branch * docs(MPDZBS-877): update docs for zmscitizenapi * clean(MPDZBS-877): change friendly captcha default endpoint to eu * clean(MPDZBS-877): change maintenance and captcha enabled to boolean * clean(MPDZBS-877): improve internal error handling enable middleware * feat(MPDZBS-877): return 503 for maintenance * feat(MPDZBS-877): add generic captcha interface * clean(MPDZBS-877): improve validation for array ids * feat(MPDZBS-877): improve zmscitizenapi typing * clean(MPDZBS-877): typing overhaul using zmsentities * clean(MPDZBS-877): typing overhaul using zmsentities * clean(MPDZBS-877): improve telephone validation regex * clean(MPDZBS-877): improve serviceId validation regex * clean(MPDZBS-877): fix naming issue * clean(MPDZBS-877): make hardcoded source name dynamic * clean(MPDZBS-877): clean up more and change citizenapi to utf8 * clean(MPDZBS-877): improve error messaging codes and expand office api with geocoordinates and address * clean(MPDZBS-877): cleanup syntax and error handling * clean(MPDZBS-877): cleanup syntax and error handling * fix(MPDZBS-877): offices and services mapper * fix(MPDZBS-877): fix reserve appointment validation * fix(MPDZBS-877): improve some validation for empty arrays * feat(MPDZBS-877): Improve ThinnedProcess object and cleanup some stuff with naming (#739) * feat(MPDZB-877): Work on thinnedprocess typing * feat(MPDZB): Refactor part 1 * feat(MPDZB): Refactor part 1 * feat(MPDZB-877): revert to processId in parameter * feat(MPDZBS-877): refactor thinned process to object * feat(MPDZB-877): refactor thinned process and rename controllers --------- Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): zmscitizenapi cleanup (#740) * feat(MPDZB-877): Work on thinnedprocess typing * feat(MPDZB): Refactor part 1 * feat(MPDZB): Refactor part 1 * feat(MPDZB-877): revert to processId in parameter * feat(MPDZBS-877): refactor thinned process to object * feat(MPDZB-877): refactor thinned process and rename controllers * feat(MPDZBs-877): clean up more junk --------- Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBs-877): clean up more stuff validation improvement * Update zmscitizenapi/src/Zmscitizenapi/Captcha.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(MPDZBs-877): clean up captcha add more tests * feat(ZMS-3430): create db indices * feat(MPDZBS-877): Refactor Controllers and improve move typing building models * feat(MPDZBS-877): Refactor Utilities and Helpers * Update zmscitizenapi/src/Zmscitizenapi/Services/MapperService.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(MPDZBS-877): Fix bug * feat(MPDZBS-877): rename scope models in zmscitizenapi * feat(MPDZBS-877): cleanup service model * feat(MPDZBS-877): Improve ThinnedProcess and ThinnedScope models * fix(MPDZBS-877): swagger docs * fix(MPDZBS-877): swagger docs * zms-2871-2874-minus-deletion-by-location-delete-and-orthography-mail-and-notification-buttons * fix(MPDZBS-877): set up models for Office Service and Captcha * fix(MPDZBS-877): Improve captcha typing * Update zmscitizenapi/src/Zmscitizenapi/Models/Captcha/AltchaCaptcha.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(MPDZBS-877): Improve captcha typing cleanup * fix(MPDZBS-877): Improve captcha typing cleanup * fix(MPDZBS-877): remove status from visual response * fix(MPDZBS-877): Improve typing for Office Service and ThinnedScope * fix(MPDZBS-877): Improve typing for Office Service Relations * fix(MPDZBS-877): Improve typing for ThinnedProvider * fix(MPDZBS-877): Refactor model lists to collections * fix(MPDZBS-877): Improve typing for Combinable * fix(MPDZBS-877): Cleanup AltchaCaptcha class * fix(MPDZBS-877): Improve parameters for getAvailableAppointments * fix(MPDZBS-877): Improve typing for AvailableDays and AvailableAppointments * fix(MPDZBS-877): Cleanup schemas * fix(MPDZBS-877): Cleanup schema mismatch * fix(MPDZBS-877): Optimize next loops and schema typing * fix(MPDZBS-877): Improve schema * fix(MPDZBS-877): Improve schema * fix(MPDZBS-877): Improve schema and error catching * fix(MPDZBS-877): Improve api fetching safety * fix(MPDZBS-877): Introduce strict typing for files with logic * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.6 (#738) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency squizlabs/php_codesniffer to v3.11.2 (#751) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(MPDZBS-877): Introduce schema validation into the models * fix(MPDZBS-877): Centralize validation, set default language to german, improve exception handling * fix(MPDZBS-877): authKeyMissMatch error exception * fix(MPDZBS-877): cleanup some code * fix(MPDZBS-877): cleanup collection models * Delete zmscitizenapi/templates/.keep * Revert "Delete zmscitizenapi/templates/.keep" This reverts commit 7725d44. * clean(MPDZBS-877): remove comments * fix(MPDZBS-877): errorCode fix * fix(MPDZBS-877): validation input date bug and add unittest plus authKeyMismatch typo and add unittest * clean(MPDZBS-877): remove unused vars * feat(MPDZBS-877): Improve zmsapi exception handling * feat(MPDZBS-877): Improve contact mapping and provider mapping * Improve exception handling * feat(MPDZBS-877): Refactor office model * feat(MPDZBS-877): fix ProcessFreeSlots typing * clean(MPDZBS-877): refactor and improve contoller legibility * fix(MPDZBS-877): improve post request validation dont get request body on null fix * clean(MPDZBS-877): improve OfficesByServiceList controller * clean(MPDZBS-877): correct not yet implemented controllers * chore(deps): update dependency sass to v1.83.0 (#750) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.7 (#752) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * clean(MPDZBS-877): Add null checks for requests to zmsapi * chore(deps): update dependency phpspec/prophecy-phpunit to v2.3.0 (#647) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * clean(MPDZBS-877): Improve and centralize regex patterns for ValidationService * feat(MPDZBS-877 ZMS-2523): Improve controller typing and add caching for fetchSourceData * fix(MPDZBS-877 ZMS-2523): fix php docker version to 8.0 from 8.0.2 * clean(MPDZBS-877 ZMS-2523): Cleanup Application * clean(MPDZBS-877 ZMS-2523): Cleanup Application * clean(MPDZBS-877 ZMS-2523): Improve cache logger and cache permissions * fix(MPDZBS-877 ZMS-2520): Implement preconfirmed appointment working * clean(MPDZBS-877 ZMS-2520): remove errorlogs * feat(MPDZBS-877 ZMS-2519 ZMS-2521): Implement appointment confirm and cancel controllers and improve request method error handling * feat(MPDZBS-877): remove unused import statements * clean(MPDZBS-877): fix typing * clean(MPDZBS-877): remove unused error message * clean(MPDZBS-877): Refactor folder structure and move logic from controllers to services * clean(MPDZBS-877): improve input validation * fix(MPDZBS-877): Time check with timezone * feat(MPDZBS-877): Implement LoggerService for logging requests and when caching is set * clean(MPDZBS-877): Remove logger redundancy * fix(MPDZBS-877): Add logger response max size 1MB * clean(MPDZBS-877): improve exceptions and handling in logger middleware * feat(MPDZBS-877): optimize logger service * feat(MPDZBS-877): optimize logger service * clean(MPDZBS-877): improve error body logging * feat(MPDZBS-877): optimize logger service caching * clean(MPDZBS-877): add unit test and clean up some stuff * clean(MPDZBS-877): add missing import * fix(ZMS-3500) Differentiate between editing and booking a new appointment when selecting the date (#757) * feat(MPDZBS-877 ZMS-1232): Implement security middleware Cors Csrf Security Headers Rate Limits Request Size Limits and Request Sanitation * feat(MPDZBS-877 ZMS-1232): Refactor contoller tests and fix cors test * feat(MPDZBS-877 ZMS-1232): improve middleware and fix race conditions in rate limiting * clean(MPDZBS-877 ZMS-1232): small improvements to middelware and test assertions * clean(MPDZBS-877 ZMS-1232): reduce excessive logging * clean(MPDZBS-877 ZMS-1232): fix race Condition LoggerService * chore(deps): update dependency seld/jsonlint to v1.11.0 (#754) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency sass to v1.83.1 (#760) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * docs(MPDZBS-877): Add README.md * docs(MPDZBS-877): Add README.md * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * fix(MPDZBS-877): unit test * chore(deps): update dependency core-js to v3.40.0 (#761) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * Update README.md * clean(MPDZBS-877): Centralize environment variables * fix(MPDZBS-877): CORS unit tests * clean(MPDZBS-877): centralize zmsapi exception handling and write more tests * clean(MPDZBS-877): remove error log * feat(MPDZBS-877): add unit test * feat(MPDZBS-877): add MapperServiceTest * feat(MPDZBS-877): add LoggerServiceTest ExceptionServiceTest ValidationServiceTest * feat(MPDZBS-877): add ZmsApiFacadeServiceTest * feat(MPDZBS-877): add ZmsApiClientServiceTest * feat(MPDZBS-877): add AppointmentByIdServiceTest * feat(MPDZBS-877): add AppointmentByIdServiceTest * feat(MPDZBS-877): add AppointmentCancelServiceTest * feat(MPDZBS-877): add AppointmentConfirmServiceTest * feat(MPDZBS-877): add Appointment tests * feat(MPDZBS-877): add AppointmentUpdateServiceTest * feat(MPDZBS-877): add AvailableAppointmentsListServiceTest and AvailableDaysListServiceTest * feat(MPDZBS-877): add Service tests * feat(MPDZBS-877): add captcha service and application tests * feat(MPDZBS-877): remove unneeded test * feat(MPDZBS-877): Add LanguageMiddleware and i18n support * feat(MPDZBS-877): Add LanguageMiddlewareTest * feat(ZMS-3212) Notfall für Tresen deaktiveren * feat(MPDZBS-877): clean up language error messages * feat(MPDZBS-877): disable csrf for now * fix(MPDZBS-877): fix ip client helper * fix(MPDZBS-877): only log error messages in english * feat(MPDZBS-877): disable csrf for now * fix(MPDZBS-877): routing methods post * fix(MPDZBS-877): routing methods get * fix(MPDZBS-877): customTextfield save on appointment update * fix(MPDZBS-877): customTextfield unit test * feat(ZMS-3449): map more data * feat(ZMS-3449): fix mapping * feat(MPDZBS-877): Add showAlternativeLocations to offices endpoints * Revert "feat(MPDZBS-877): Add showAlternativeLocations to offices endpoints" This reverts commit 63fe1a0. * feat(MPDZBS-877 ZMS-1232 ZMS-2509 ZMS-2510 ZMS-2511 ZMS-2512 ZMS-2513 ZMS-2514 ZMS-2515 ZMS-2516 ZMS-2517 ZMS-2518 ZMS-2519 ZMS-2520 ZMS-2521 ZMS-2523 ZMS-2993): Zmscitizenapi into next (#769) * update readmes * refactor some functions to base controller class * add zmsapi methods to base controller * add helper methods to base controller * refactored into services and controllers * remove duplicate function definitions * move helpers from base controller to new utility helper * add a method * Feature mpdzbs 887 zmscitizenapi post reserve appointment and refactor (#574) * endpoint working * fix unit tests * one working test for post-reserve * some clean up * feat(ZMS-2517): fix up response for the reserve post request * feat(ZMS-2517): add more unit tests for validations * feat(ZMS-2517): add more unit tests for validations * feat(ZMS-2517): Zmscitizenapi Refactor Part 1 of 3 move controllers back to root * feat(ZMS-2517): Zmscitizenapi Refactor Part 2 of 3 create ZmsApiFacadeService ZmsApiClientService ValidationService MapperService UtilityHelper and delete fragmented services * feat(ZMS-2517): Zmscitizenapi Refactor Part 3 of 3 clean up validations and unit tests --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): Readd zmscitizenapi to github workflow * feat(MPDZBS-877): Readd files lost in github history * feat(MPDZBS-877): Readd files lost in github history * feat(MPDZBS-877): Resolve merge conflict in zmsentities * feat(MPDZBS-877): Readd zmscitizenapi schemas to zmsentities deleted by github commit history * (feat MPDZBS-877): update local env cli * Feature mpdzbs 887 zms 2518 zmscitizenapi post update appointment (#587) * (feat MPDZBS-877) readd citizenapi to htaccess * feat(MPDZBS-877 ZMS-2517): Working Appointment update with too many emails exception * feat(MPDZBS-877 ZMS-2517): Test rendering working for update appointment test * feat(MPDZBS-877 ZMS-2517): Add 63 validation unit tests for appointment update * feat(MPDZBS-877 ZMS-2517): Refactor exception appointmentNotFound * feat(MPDZBS-877 ZMS-2517): Add two new edge case exception tests * feat(MPDZBS-877 ZMS-2517): Remove error_logs --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): update .gitignore * cleanup(MPDZBS-877): Improve security and cleanup code * fix(MPDZBS-877): fix bin configure * fix(MPDZBS-877): fix config.example.php * cleanup(MPDZBS-877): merge next into feature branch * docs(MPDZBS-877): update docs for zmscitizenapi * clean(MPDZBS-877): change friendly captcha default endpoint to eu * clean(MPDZBS-877): change maintenance and captcha enabled to boolean * clean(MPDZBS-877): improve internal error handling enable middleware * feat(MPDZBS-877): return 503 for maintenance * feat(MPDZBS-877): add generic captcha interface * clean(MPDZBS-877): improve validation for array ids * feat(MPDZBS-877): improve zmscitizenapi typing * clean(MPDZBS-877): typing overhaul using zmsentities * clean(MPDZBS-877): typing overhaul using zmsentities * clean(MPDZBS-877): improve telephone validation regex * clean(MPDZBS-877): improve serviceId validation regex * clean(MPDZBS-877): fix naming issue * clean(MPDZBS-877): make hardcoded source name dynamic * clean(MPDZBS-877): clean up more and change citizenapi to utf8 * clean(MPDZBS-877): improve error messaging codes and expand office api with geocoordinates and address * clean(MPDZBS-877): cleanup syntax and error handling * clean(MPDZBS-877): cleanup syntax and error handling * fix(MPDZBS-877): offices and services mapper * fix(MPDZBS-877): fix reserve appointment validation * fix(MPDZBS-877): improve some validation for empty arrays * feat(MPDZBS-877): Improve ThinnedProcess object and cleanup some stuff with naming (#739) * feat(MPDZB-877): Work on thinnedprocess typing * feat(MPDZB): Refactor part 1 * feat(MPDZB): Refactor part 1 * feat(MPDZB-877): revert to processId in parameter * feat(MPDZBS-877): refactor thinned process to object * feat(MPDZB-877): refactor thinned process and rename controllers --------- Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): zmscitizenapi cleanup (#740) * feat(MPDZB-877): Work on thinnedprocess typing * feat(MPDZB): Refactor part 1 * feat(MPDZB): Refactor part 1 * feat(MPDZB-877): revert to processId in parameter * feat(MPDZBS-877): refactor thinned process to object * feat(MPDZB-877): refactor thinned process and rename controllers * feat(MPDZBs-877): clean up more junk --------- Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBs-877): clean up more stuff validation improvement * Update zmscitizenapi/src/Zmscitizenapi/Captcha.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(MPDZBs-877): clean up captcha add more tests * feat(MPDZBS-877): Refactor Controllers and improve move typing building models * feat(MPDZBS-877): Refactor Utilities and Helpers * Update zmscitizenapi/src/Zmscitizenapi/Services/MapperService.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(MPDZBS-877): Fix bug * feat(MPDZBS-877): rename scope models in zmscitizenapi * feat(MPDZBS-877): cleanup service model * feat(MPDZBS-877): Improve ThinnedProcess and ThinnedScope models * fix(MPDZBS-877): swagger docs * fix(MPDZBS-877): swagger docs * fix(MPDZBS-877): set up models for Office Service and Captcha * fix(MPDZBS-877): Improve captcha typing * Update zmscitizenapi/src/Zmscitizenapi/Models/Captcha/AltchaCaptcha.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(MPDZBS-877): Improve captcha typing cleanup * fix(MPDZBS-877): Improve captcha typing cleanup * fix(MPDZBS-877): remove status from visual response * fix(MPDZBS-877): Improve typing for Office Service and ThinnedScope * fix(MPDZBS-877): Improve typing for Office Service Relations * fix(MPDZBS-877): Improve typing for ThinnedProvider * fix(MPDZBS-877): Refactor model lists to collections * fix(MPDZBS-877): Improve typing for Combinable * fix(MPDZBS-877): Cleanup AltchaCaptcha class * fix(MPDZBS-877): Improve parameters for getAvailableAppointments * fix(MPDZBS-877): Improve typing for AvailableDays and AvailableAppointments * fix(MPDZBS-877): Cleanup schemas * fix(MPDZBS-877): Cleanup schema mismatch * fix(MPDZBS-877): Optimize next loops and schema typing * fix(MPDZBS-877): Improve schema * fix(MPDZBS-877): Improve schema * fix(MPDZBS-877): Improve schema and error catching * fix(MPDZBS-877): Improve api fetching safety * fix(MPDZBS-877): Introduce strict typing for files with logic * fix(MPDZBS-877): Introduce schema validation into the models * fix(MPDZBS-877): Centralize validation, set default language to german, improve exception handling * fix(MPDZBS-877): authKeyMissMatch error exception * fix(MPDZBS-877): cleanup some code * fix(MPDZBS-877): cleanup collection models * Delete zmscitizenapi/templates/.keep * Revert "Delete zmscitizenapi/templates/.keep" This reverts commit 7725d44. * clean(MPDZBS-877): remove comments * fix(MPDZBS-877): errorCode fix * fix(MPDZBS-877): validation input date bug and add unittest plus authKeyMismatch typo and add unittest * clean(MPDZBS-877): remove unused vars * feat(MPDZBS-877): Improve zmsapi exception handling * feat(MPDZBS-877): Improve contact mapping and provider mapping * Improve exception handling * feat(MPDZBS-877): Refactor office model * feat(MPDZBS-877): fix ProcessFreeSlots typing * clean(MPDZBS-877): refactor and improve contoller legibility * fix(MPDZBS-877): improve post request validation dont get request body on null fix * clean(MPDZBS-877): improve OfficesByServiceList controller * clean(MPDZBS-877): correct not yet implemented controllers * clean(MPDZBS-877): Add null checks for requests to zmsapi * clean(MPDZBS-877): Improve and centralize regex patterns for ValidationService * feat(MPDZBS-877 ZMS-2523): Improve controller typing and add caching for fetchSourceData * fix(MPDZBS-877 ZMS-2523): fix php docker version to 8.0 from 8.0.2 * clean(MPDZBS-877 ZMS-2523): Cleanup Application * clean(MPDZBS-877 ZMS-2523): Cleanup Application * clean(MPDZBS-877 ZMS-2523): Improve cache logger and cache permissions * fix(MPDZBS-877 ZMS-2520): Implement preconfirmed appointment working * clean(MPDZBS-877 ZMS-2520): remove errorlogs * feat(MPDZBS-877 ZMS-2519 ZMS-2521): Implement appointment confirm and cancel controllers and improve request method error handling * feat(MPDZBS-877): remove unused import statements * clean(MPDZBS-877): fix typing * clean(MPDZBS-877): remove unused error message * clean(MPDZBS-877): Refactor folder structure and move logic from controllers to services * clean(MPDZBS-877): improve input validation * fix(MPDZBS-877): Time check with timezone * feat(MPDZBS-877): Implement LoggerService for logging requests and when caching is set * clean(MPDZBS-877): Remove logger redundancy * fix(MPDZBS-877): Add logger response max size 1MB * clean(MPDZBS-877): improve exceptions and handling in logger middleware * feat(MPDZBS-877): optimize logger service * feat(MPDZBS-877): optimize logger service * clean(MPDZBS-877): improve error body logging * feat(MPDZBS-877): optimize logger service caching * clean(MPDZBS-877): add unit test and clean up some stuff * clean(MPDZBS-877): add missing import * feat(MPDZBS-877 ZMS-1232): Implement security middleware Cors Csrf Security Headers Rate Limits Request Size Limits and Request Sanitation * feat(MPDZBS-877 ZMS-1232): Refactor contoller tests and fix cors test * feat(MPDZBS-877 ZMS-1232): improve middleware and fix race conditions in rate limiting * clean(MPDZBS-877 ZMS-1232): small improvements to middelware and test assertions * clean(MPDZBS-877 ZMS-1232): reduce excessive logging * clean(MPDZBS-877 ZMS-1232): fix race Condition LoggerService * docs(MPDZBS-877): Add README.md * docs(MPDZBS-877): Add README.md * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * fix(MPDZBS-877): unit test * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * Update README.md * clean(MPDZBS-877): Centralize environment variables * fix(MPDZBS-877): CORS unit tests * clean(MPDZBS-877): centralize zmsapi exception handling and write more tests * clean(MPDZBS-877): remove error log * feat(MPDZBS-877): add unit test * feat(MPDZBS-877): add MapperServiceTest * feat(MPDZBS-877): add LoggerServiceTest ExceptionServiceTest ValidationServiceTest * feat(MPDZBS-877): add ZmsApiFacadeServiceTest * feat(MPDZBS-877): add ZmsApiClientServiceTest * feat(MPDZBS-877): add AppointmentByIdServiceTest * feat(MPDZBS-877): add AppointmentByIdServiceTest * feat(MPDZBS-877): add AppointmentCancelServiceTest * feat(MPDZBS-877): add AppointmentConfirmServiceTest * feat(MPDZBS-877): add Appointment tests * feat(MPDZBS-877): add AppointmentUpdateServiceTest * feat(MPDZBS-877): add AvailableAppointmentsListServiceTest and AvailableDaysListServiceTest * feat(MPDZBS-877): add Service tests * feat(MPDZBS-877): add captcha service and application tests * feat(MPDZBS-877): remove unneeded test * feat(MPDZBS-877): Add LanguageMiddleware and i18n support * feat(MPDZBS-877): Add LanguageMiddlewareTest * feat(MPDZBS-877): clean up language error messages * feat(MPDZBS-877): disable csrf for now * fix(MPDZBS-877): fix ip client helper * fix(MPDZBS-877): only log error messages in english * feat(MPDZBS-877): disable csrf for now * fix(MPDZBS-877): routing methods post * fix(MPDZBS-877): routing methods get * fix(MPDZBS-877): customTextfield save on appointment update * fix(MPDZBS-877): customTextfield unit test * feat(MPDZBS-877): Add showAlternativeLocations to offices endpoints * Revert "feat(MPDZBS-877): Add showAlternativeLocations to offices endpoints" This reverts commit 63fe1a0. --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: Thomas Fink <thomasfink@Thomass-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Thomas Fink <thomasafink@thomass-air.speedport.ip> * docs(MPDZBS-877): Update README.md * feat(ZMS-3449): adjust schema * feat(ZMS-3449): fix object argument * feat(ZMS-3449): fix typo * Update .env.template * feat(ZMS-3449): fix mapping * feat(ZMS-3449): fix tests * feat(ZMS-3449): fix tests * feat(ZMS-3499) refresh queue even when losing focus * Update .env.template * feat(ZMS-3459): return slotTimeInMinutes * feat(ZMS-3430): add indexes * feat(ZMS-3430): remove indexes * writeCanceledSlots-time shortened to 5 minutes * Temporarily disable cors zmscitizenapi (#795) * disable cors middleware * Update CorsMiddlewareTest.php * Update CorsMiddlewareTest.php * Update bootstrap.php * Update SecurityHeadersMiddlewareTest.php * feat(ZMS-3519) sortierung für queueList * feat(ZMS-3430): fix test * feat(ZMS-3503): added logic to end emergency with checkbox * feat(ZMS-3503): removed console.log and unesscessy function * feat(ZMS-3503): removed console.log and unesscessy function * feat(ZMS-3503): removed console.log and unnecessary functions * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.8 [security] (#794) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency sass to v1.83.4 (#806) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * feat(ZMS-3507): redirect without appointment (#775) * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.9 [security] (#814) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * feat(ZMS-3503): added explanation to the function * feat(ZMS-3499) Tabelle für die Warteschlange wird aktualisiert auch bei Mouse-Hovering * feat(ZMS-3460): create endpoint for free appointments grouped by office (#797) * feat(ZMS-3460): create endpoint for free appointments grouped by office * feat(ZMS-3460): fix test * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix route * feat(ZMS-3460): refactoring * feat(ZMS-3460): show provider, not scope id * feat(ZMS-3460): fix provider id --------- Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> * fix(ZMS): show alternative locations for offices (#820) Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> * fix(zms): Update .env.template local env --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: Thomas Fink <thomasfink@Thomass-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Igor Manjencic <manjak.igor@gmail.com> Co-authored-by: matthias1996 <matthias.lorenz@muenchen.de> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Thomas Fink <thomasafink@thomass-air.speedport.ip> Co-authored-by: MoDaae <90261750+MoDaae@users.noreply.github.com> Co-authored-by: mohamad.daaeboul <mohamad.daaeboul@muenchen.de> Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> Co-authored-by: Fabian Breitling <83815772+msfb3@users.noreply.github.com>
* feat(ZMS-3430): create db indices * feat(ZMS-3499) refresh queue even when losing focus * feat(ZMS-3430): add indexes * feat(ZMS-3430): remove indexes * feat(ZMS-3519) sortierung für queueList * feat(ZMS-3430): fix test * feat(ZMS-3503): added logic to end emergency with checkbox * feat(ZMS-3503): removed console.log and unesscessy function * feat(ZMS-3503): removed console.log and unesscessy function * feat(ZMS-3503): removed console.log and unnecessary functions * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.8 [security] (#794) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency sass to v1.83.4 (#806) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * feat(ZMS-3507): redirect without appointment (#775) * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.9 [security] (#814) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * feat(ZMS-3503): added explanation to the function * feat(ZMS-3499) Tabelle für die Warteschlange wird aktualisiert auch bei Mouse-Hovering * feat(ZMS-3460): create endpoint for free appointments grouped by office (#797) * feat(ZMS-3460): create endpoint for free appointments grouped by office * feat(ZMS-3460): fix test * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix route * feat(ZMS-3460): refactoring * feat(ZMS-3460): show provider, not scope id * feat(ZMS-3460): fix provider id --------- Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> * fix(ZMS): show alternative locations for offices (#820) Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> * fix(zms): Update .env.template local env * Next into test (#823) * add zmsapi methods to base controller * add helper methods to base controller * refactored into services and controllers * remove duplicate function definitions * move helpers from base controller to new utility helper * add a method * Feature mpdzbs 887 zmscitizenapi post reserve appointment and refactor (#574) * endpoint working * fix unit tests * one working test for post-reserve * some clean up * feat(ZMS-2517): fix up response for the reserve post request * feat(ZMS-2517): add more unit tests for validations * feat(ZMS-2517): add more unit tests for validations * feat(ZMS-2517): Zmscitizenapi Refactor Part 1 of 3 move controllers back to root * feat(ZMS-2517): Zmscitizenapi Refactor Part 2 of 3 create ZmsApiFacadeService ZmsApiClientService ValidationService MapperService UtilityHelper and delete fragmented services * feat(ZMS-2517): Zmscitizenapi Refactor Part 3 of 3 clean up validations and unit tests --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): Readd zmscitizenapi to github workflow * feat(MPDZBS-877): Readd files lost in github history * feat(MPDZBS-877): Readd files lost in github history * feat(MPDZBS-877): Resolve merge conflict in zmsentities * feat(MPDZBS-877): Readd zmscitizenapi schemas to zmsentities deleted by github commit history * (feat MPDZBS-877): update local env cli * Feature mpdzbs 887 zms 2518 zmscitizenapi post update appointment (#587) * (feat MPDZBS-877) readd citizenapi to htaccess * feat(MPDZBS-877 ZMS-2517): Working Appointment update with too many emails exception * feat(MPDZBS-877 ZMS-2517): Test rendering working for update appointment test * feat(MPDZBS-877 ZMS-2517): Add 63 validation unit tests for appointment update * feat(MPDZBS-877 ZMS-2517): Refactor exception appointmentNotFound * feat(MPDZBS-877 ZMS-2517): Add two new edge case exception tests * feat(MPDZBS-877 ZMS-2517): Remove error_logs --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): update .gitignore * cleanup(MPDZBS-877): Improve security and cleanup code * fix(MPDZBS-877): fix bin configure * fix(MPDZBS-877): fix config.example.php * cleanup(MPDZBS-877): merge next into feature branch * docs(MPDZBS-877): update docs for zmscitizenapi * clean(MPDZBS-877): change friendly captcha default endpoint to eu * clean(MPDZBS-877): change maintenance and captcha enabled to boolean * clean(MPDZBS-877): improve internal error handling enable middleware * feat(MPDZBS-877): return 503 for maintenance * feat(MPDZBS-877): add generic captcha interface * clean(MPDZBS-877): improve validation for array ids * feat(MPDZBS-877): improve zmscitizenapi typing * clean(MPDZBS-877): typing overhaul using zmsentities * clean(MPDZBS-877): typing overhaul using zmsentities * clean(MPDZBS-877): improve telephone validation regex * clean(MPDZBS-877): improve serviceId validation regex * clean(MPDZBS-877): fix naming issue * clean(MPDZBS-877): make hardcoded source name dynamic * clean(MPDZBS-877): clean up more and change citizenapi to utf8 * clean(MPDZBS-877): improve error messaging codes and expand office api with geocoordinates and address * clean(MPDZBS-877): cleanup syntax and error handling * clean(MPDZBS-877): cleanup syntax and error handling * fix(MPDZBS-877): offices and services mapper * fix(MPDZBS-877): fix reserve appointment validation * fix(MPDZBS-877): improve some validation for empty arrays * feat(MPDZBS-877): Improve ThinnedProcess object and cleanup some stuff with naming (#739) * feat(MPDZB-877): Work on thinnedprocess typing * feat(MPDZB): Refactor part 1 * feat(MPDZB): Refactor part 1 * feat(MPDZB-877): revert to processId in parameter * feat(MPDZBS-877): refactor thinned process to object * feat(MPDZB-877): refactor thinned process and rename controllers --------- Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): zmscitizenapi cleanup (#740) * feat(MPDZB-877): Work on thinnedprocess typing * feat(MPDZB): Refactor part 1 * feat(MPDZB): Refactor part 1 * feat(MPDZB-877): revert to processId in parameter * feat(MPDZBS-877): refactor thinned process to object * feat(MPDZB-877): refactor thinned process and rename controllers * feat(MPDZBs-877): clean up more junk --------- Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBs-877): clean up more stuff validation improvement * Update zmscitizenapi/src/Zmscitizenapi/Captcha.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(MPDZBs-877): clean up captcha add more tests * feat(ZMS-3430): create db indices * feat(MPDZBS-877): Refactor Controllers and improve move typing building models * feat(MPDZBS-877): Refactor Utilities and Helpers * Update zmscitizenapi/src/Zmscitizenapi/Services/MapperService.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(MPDZBS-877): Fix bug * feat(MPDZBS-877): rename scope models in zmscitizenapi * feat(MPDZBS-877): cleanup service model * feat(MPDZBS-877): Improve ThinnedProcess and ThinnedScope models * fix(MPDZBS-877): swagger docs * fix(MPDZBS-877): swagger docs * zms-2871-2874-minus-deletion-by-location-delete-and-orthography-mail-and-notification-buttons * fix(MPDZBS-877): set up models for Office Service and Captcha * fix(MPDZBS-877): Improve captcha typing * Update zmscitizenapi/src/Zmscitizenapi/Models/Captcha/AltchaCaptcha.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(MPDZBS-877): Improve captcha typing cleanup * fix(MPDZBS-877): Improve captcha typing cleanup * fix(MPDZBS-877): remove status from visual response * fix(MPDZBS-877): Improve typing for Office Service and ThinnedScope * fix(MPDZBS-877): Improve typing for Office Service Relations * fix(MPDZBS-877): Improve typing for ThinnedProvider * fix(MPDZBS-877): Refactor model lists to collections * fix(MPDZBS-877): Improve typing for Combinable * fix(MPDZBS-877): Cleanup AltchaCaptcha class * fix(MPDZBS-877): Improve parameters for getAvailableAppointments * fix(MPDZBS-877): Improve typing for AvailableDays and AvailableAppointments * fix(MPDZBS-877): Cleanup schemas * fix(MPDZBS-877): Cleanup schema mismatch * fix(MPDZBS-877): Optimize next loops and schema typing * fix(MPDZBS-877): Improve schema * fix(MPDZBS-877): Improve schema * fix(MPDZBS-877): Improve schema and error catching * fix(MPDZBS-877): Improve api fetching safety * fix(MPDZBS-877): Introduce strict typing for files with logic * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.6 (#738) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency squizlabs/php_codesniffer to v3.11.2 (#751) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(MPDZBS-877): Introduce schema validation into the models * fix(MPDZBS-877): Centralize validation, set default language to german, improve exception handling * fix(MPDZBS-877): authKeyMissMatch error exception * fix(MPDZBS-877): cleanup some code * fix(MPDZBS-877): cleanup collection models * Delete zmscitizenapi/templates/.keep * Revert "Delete zmscitizenapi/templates/.keep" This reverts commit 7725d44. * clean(MPDZBS-877): remove comments * fix(MPDZBS-877): errorCode fix * fix(MPDZBS-877): validation input date bug and add unittest plus authKeyMismatch typo and add unittest * clean(MPDZBS-877): remove unused vars * feat(MPDZBS-877): Improve zmsapi exception handling * feat(MPDZBS-877): Improve contact mapping and provider mapping * Improve exception handling * feat(MPDZBS-877): Refactor office model * feat(MPDZBS-877): fix ProcessFreeSlots typing * clean(MPDZBS-877): refactor and improve contoller legibility * fix(MPDZBS-877): improve post request validation dont get request body on null fix * clean(MPDZBS-877): improve OfficesByServiceList controller * clean(MPDZBS-877): correct not yet implemented controllers * chore(deps): update dependency sass to v1.83.0 (#750) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.7 (#752) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * clean(MPDZBS-877): Add null checks for requests to zmsapi * chore(deps): update dependency phpspec/prophecy-phpunit to v2.3.0 (#647) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * clean(MPDZBS-877): Improve and centralize regex patterns for ValidationService * feat(MPDZBS-877 ZMS-2523): Improve controller typing and add caching for fetchSourceData * fix(MPDZBS-877 ZMS-2523): fix php docker version to 8.0 from 8.0.2 * clean(MPDZBS-877 ZMS-2523): Cleanup Application * clean(MPDZBS-877 ZMS-2523): Cleanup Application * clean(MPDZBS-877 ZMS-2523): Improve cache logger and cache permissions * fix(MPDZBS-877 ZMS-2520): Implement preconfirmed appointment working * clean(MPDZBS-877 ZMS-2520): remove errorlogs * feat(MPDZBS-877 ZMS-2519 ZMS-2521): Implement appointment confirm and cancel controllers and improve request method error handling * feat(MPDZBS-877): remove unused import statements * clean(MPDZBS-877): fix typing * clean(MPDZBS-877): remove unused error message * clean(MPDZBS-877): Refactor folder structure and move logic from controllers to services * clean(MPDZBS-877): improve input validation * fix(MPDZBS-877): Time check with timezone * feat(MPDZBS-877): Implement LoggerService for logging requests and when caching is set * clean(MPDZBS-877): Remove logger redundancy * fix(MPDZBS-877): Add logger response max size 1MB * clean(MPDZBS-877): improve exceptions and handling in logger middleware * feat(MPDZBS-877): optimize logger service * feat(MPDZBS-877): optimize logger service * clean(MPDZBS-877): improve error body logging * feat(MPDZBS-877): optimize logger service caching * clean(MPDZBS-877): add unit test and clean up some stuff * clean(MPDZBS-877): add missing import * fix(ZMS-3500) Differentiate between editing and booking a new appointment when selecting the date (#757) * feat(MPDZBS-877 ZMS-1232): Implement security middleware Cors Csrf Security Headers Rate Limits Request Size Limits and Request Sanitation * feat(MPDZBS-877 ZMS-1232): Refactor contoller tests and fix cors test * feat(MPDZBS-877 ZMS-1232): improve middleware and fix race conditions in rate limiting * clean(MPDZBS-877 ZMS-1232): small improvements to middelware and test assertions * clean(MPDZBS-877 ZMS-1232): reduce excessive logging * clean(MPDZBS-877 ZMS-1232): fix race Condition LoggerService * chore(deps): update dependency seld/jsonlint to v1.11.0 (#754) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency sass to v1.83.1 (#760) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * docs(MPDZBS-877): Add README.md * docs(MPDZBS-877): Add README.md * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * fix(MPDZBS-877): unit test * chore(deps): update dependency core-js to v3.40.0 (#761) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * Update README.md * clean(MPDZBS-877): Centralize environment variables * fix(MPDZBS-877): CORS unit tests * clean(MPDZBS-877): centralize zmsapi exception handling and write more tests * clean(MPDZBS-877): remove error log * feat(MPDZBS-877): add unit test * feat(MPDZBS-877): add MapperServiceTest * feat(MPDZBS-877): add LoggerServiceTest ExceptionServiceTest ValidationServiceTest * feat(MPDZBS-877): add ZmsApiFacadeServiceTest * feat(MPDZBS-877): add ZmsApiClientServiceTest * feat(MPDZBS-877): add AppointmentByIdServiceTest * feat(MPDZBS-877): add AppointmentByIdServiceTest * feat(MPDZBS-877): add AppointmentCancelServiceTest * feat(MPDZBS-877): add AppointmentConfirmServiceTest * feat(MPDZBS-877): add Appointment tests * feat(MPDZBS-877): add AppointmentUpdateServiceTest * feat(MPDZBS-877): add AvailableAppointmentsListServiceTest and AvailableDaysListServiceTest * feat(MPDZBS-877): add Service tests * feat(MPDZBS-877): add captcha service and application tests * feat(MPDZBS-877): remove unneeded test * feat(MPDZBS-877): Add LanguageMiddleware and i18n support * feat(MPDZBS-877): Add LanguageMiddlewareTest * feat(ZMS-3212) Notfall für Tresen deaktiveren * feat(MPDZBS-877): clean up language error messages * feat(MPDZBS-877): disable csrf for now * fix(MPDZBS-877): fix ip client helper * fix(MPDZBS-877): only log error messages in english * feat(MPDZBS-877): disable csrf for now * fix(MPDZBS-877): routing methods post * fix(MPDZBS-877): routing methods get * fix(MPDZBS-877): customTextfield save on appointment update * fix(MPDZBS-877): customTextfield unit test * feat(ZMS-3449): map more data * feat(ZMS-3449): fix mapping * feat(MPDZBS-877): Add showAlternativeLocations to offices endpoints * Revert "feat(MPDZBS-877): Add showAlternativeLocations to offices endpoints" This reverts commit 63fe1a0. * feat(MPDZBS-877 ZMS-1232 ZMS-2509 ZMS-2510 ZMS-2511 ZMS-2512 ZMS-2513 ZMS-2514 ZMS-2515 ZMS-2516 ZMS-2517 ZMS-2518 ZMS-2519 ZMS-2520 ZMS-2521 ZMS-2523 ZMS-2993): Zmscitizenapi into next (#769) * update readmes * refactor some functions to base controller class * add zmsapi methods to base controller * add helper methods to base controller * refactored into services and controllers * remove duplicate function definitions * move helpers from base controller to new utility helper * add a method * Feature mpdzbs 887 zmscitizenapi post reserve appointment and refactor (#574) * endpoint working * fix unit tests * one working test for post-reserve * some clean up * feat(ZMS-2517): fix up response for the reserve post request * feat(ZMS-2517): add more unit tests for validations * feat(ZMS-2517): add more unit tests for validations * feat(ZMS-2517): Zmscitizenapi Refactor Part 1 of 3 move controllers back to root * feat(ZMS-2517): Zmscitizenapi Refactor Part 2 of 3 create ZmsApiFacadeService ZmsApiClientService ValidationService MapperService UtilityHelper and delete fragmented services * feat(ZMS-2517): Zmscitizenapi Refactor Part 3 of 3 clean up validations and unit tests --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): Readd zmscitizenapi to github workflow * feat(MPDZBS-877): Readd files lost in github history * feat(MPDZBS-877): Readd files lost in github history * feat(MPDZBS-877): Resolve merge conflict in zmsentities * feat(MPDZBS-877): Readd zmscitizenapi schemas to zmsentities deleted by github commit history * (feat MPDZBS-877): update local env cli * Feature mpdzbs 887 zms 2518 zmscitizenapi post update appointment (#587) * (feat MPDZBS-877) readd citizenapi to htaccess * feat(MPDZBS-877 ZMS-2517): Working Appointment update with too many emails exception * feat(MPDZBS-877 ZMS-2517): Test rendering working for update appointment test * feat(MPDZBS-877 ZMS-2517): Add 63 validation unit tests for appointment update * feat(MPDZBS-877 ZMS-2517): Refactor exception appointmentNotFound * feat(MPDZBS-877 ZMS-2517): Add two new edge case exception tests * feat(MPDZBS-877 ZMS-2517): Remove error_logs --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): update .gitignore * cleanup(MPDZBS-877): Improve security and cleanup code * fix(MPDZBS-877): fix bin configure * fix(MPDZBS-877): fix config.example.php * cleanup(MPDZBS-877): merge next into feature branch * docs(MPDZBS-877): update docs for zmscitizenapi * clean(MPDZBS-877): change friendly captcha default endpoint to eu * clean(MPDZBS-877): change maintenance and captcha enabled to boolean * clean(MPDZBS-877): improve internal error handling enable middleware * feat(MPDZBS-877): return 503 for maintenance * feat(MPDZBS-877): add generic captcha interface * clean(MPDZBS-877): improve validation for array ids * feat(MPDZBS-877): improve zmscitizenapi typing * clean(MPDZBS-877): typing overhaul using zmsentities * clean(MPDZBS-877): typing overhaul using zmsentities * clean(MPDZBS-877): improve telephone validation regex * clean(MPDZBS-877): improve serviceId validation regex * clean(MPDZBS-877): fix naming issue * clean(MPDZBS-877): make hardcoded source name dynamic * clean(MPDZBS-877): clean up more and change citizenapi to utf8 * clean(MPDZBS-877): improve error messaging codes and expand office api with geocoordinates and address * clean(MPDZBS-877): cleanup syntax and error handling * clean(MPDZBS-877): cleanup syntax and error handling * fix(MPDZBS-877): offices and services mapper * fix(MPDZBS-877): fix reserve appointment validation * fix(MPDZBS-877): improve some validation for empty arrays * feat(MPDZBS-877): Improve ThinnedProcess object and cleanup some stuff with naming (#739) * feat(MPDZB-877): Work on thinnedprocess typing * feat(MPDZB): Refactor part 1 * feat(MPDZB): Refactor part 1 * feat(MPDZB-877): revert to processId in parameter * feat(MPDZBS-877): refactor thinned process to object * feat(MPDZB-877): refactor thinned process and rename controllers --------- Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBS-877): zmscitizenapi cleanup (#740) * feat(MPDZB-877): Work on thinnedprocess typing * feat(MPDZB): Refactor part 1 * feat(MPDZB): Refactor part 1 * feat(MPDZB-877): revert to processId in parameter * feat(MPDZBS-877): refactor thinned process to object * feat(MPDZB-877): refactor thinned process and rename controllers * feat(MPDZBs-877): clean up more junk --------- Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> * feat(MPDZBs-877): clean up more stuff validation improvement * Update zmscitizenapi/src/Zmscitizenapi/Captcha.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(MPDZBs-877): clean up captcha add more tests * feat(MPDZBS-877): Refactor Controllers and improve move typing building models * feat(MPDZBS-877): Refactor Utilities and Helpers * Update zmscitizenapi/src/Zmscitizenapi/Services/MapperService.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * feat(MPDZBS-877): Fix bug * feat(MPDZBS-877): rename scope models in zmscitizenapi * feat(MPDZBS-877): cleanup service model * feat(MPDZBS-877): Improve ThinnedProcess and ThinnedScope models * fix(MPDZBS-877): swagger docs * fix(MPDZBS-877): swagger docs * fix(MPDZBS-877): set up models for Office Service and Captcha * fix(MPDZBS-877): Improve captcha typing * Update zmscitizenapi/src/Zmscitizenapi/Models/Captcha/AltchaCaptcha.php Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> * fix(MPDZBS-877): Improve captcha typing cleanup * fix(MPDZBS-877): Improve captcha typing cleanup * fix(MPDZBS-877): remove status from visual response * fix(MPDZBS-877): Improve typing for Office Service and ThinnedScope * fix(MPDZBS-877): Improve typing for Office Service Relations * fix(MPDZBS-877): Improve typing for ThinnedProvider * fix(MPDZBS-877): Refactor model lists to collections * fix(MPDZBS-877): Improve typing for Combinable * fix(MPDZBS-877): Cleanup AltchaCaptcha class * fix(MPDZBS-877): Improve parameters for getAvailableAppointments * fix(MPDZBS-877): Improve typing for AvailableDays and AvailableAppointments * fix(MPDZBS-877): Cleanup schemas * fix(MPDZBS-877): Cleanup schema mismatch * fix(MPDZBS-877): Optimize next loops and schema typing * fix(MPDZBS-877): Improve schema * fix(MPDZBS-877): Improve schema * fix(MPDZBS-877): Improve schema and error catching * fix(MPDZBS-877): Improve api fetching safety * fix(MPDZBS-877): Introduce strict typing for files with logic * fix(MPDZBS-877): Introduce schema validation into the models * fix(MPDZBS-877): Centralize validation, set default language to german, improve exception handling * fix(MPDZBS-877): authKeyMissMatch error exception * fix(MPDZBS-877): cleanup some code * fix(MPDZBS-877): cleanup collection models * Delete zmscitizenapi/templates/.keep * Revert "Delete zmscitizenapi/templates/.keep" This reverts commit 7725d44. * clean(MPDZBS-877): remove comments * fix(MPDZBS-877): errorCode fix * fix(MPDZBS-877): validation input date bug and add unittest plus authKeyMismatch typo and add unittest * clean(MPDZBS-877): remove unused vars * feat(MPDZBS-877): Improve zmsapi exception handling * feat(MPDZBS-877): Improve contact mapping and provider mapping * Improve exception handling * feat(MPDZBS-877): Refactor office model * feat(MPDZBS-877): fix ProcessFreeSlots typing * clean(MPDZBS-877): refactor and improve contoller legibility * fix(MPDZBS-877): improve post request validation dont get request body on null fix * clean(MPDZBS-877): improve OfficesByServiceList controller * clean(MPDZBS-877): correct not yet implemented controllers * clean(MPDZBS-877): Add null checks for requests to zmsapi * clean(MPDZBS-877): Improve and centralize regex patterns for ValidationService * feat(MPDZBS-877 ZMS-2523): Improve controller typing and add caching for fetchSourceData * fix(MPDZBS-877 ZMS-2523): fix php docker version to 8.0 from 8.0.2 * clean(MPDZBS-877 ZMS-2523): Cleanup Application * clean(MPDZBS-877 ZMS-2523): Cleanup Application * clean(MPDZBS-877 ZMS-2523): Improve cache logger and cache permissions * fix(MPDZBS-877 ZMS-2520): Implement preconfirmed appointment working * clean(MPDZBS-877 ZMS-2520): remove errorlogs * feat(MPDZBS-877 ZMS-2519 ZMS-2521): Implement appointment confirm and cancel controllers and improve request method error handling * feat(MPDZBS-877): remove unused import statements * clean(MPDZBS-877): fix typing * clean(MPDZBS-877): remove unused error message * clean(MPDZBS-877): Refactor folder structure and move logic from controllers to services * clean(MPDZBS-877): improve input validation * fix(MPDZBS-877): Time check with timezone * feat(MPDZBS-877): Implement LoggerService for logging requests and when caching is set * clean(MPDZBS-877): Remove logger redundancy * fix(MPDZBS-877): Add logger response max size 1MB * clean(MPDZBS-877): improve exceptions and handling in logger middleware * feat(MPDZBS-877): optimize logger service * feat(MPDZBS-877): optimize logger service * clean(MPDZBS-877): improve error body logging * feat(MPDZBS-877): optimize logger service caching * clean(MPDZBS-877): add unit test and clean up some stuff * clean(MPDZBS-877): add missing import * feat(MPDZBS-877 ZMS-1232): Implement security middleware Cors Csrf Security Headers Rate Limits Request Size Limits and Request Sanitation * feat(MPDZBS-877 ZMS-1232): Refactor contoller tests and fix cors test * feat(MPDZBS-877 ZMS-1232): improve middleware and fix race conditions in rate limiting * clean(MPDZBS-877 ZMS-1232): small improvements to middelware and test assertions * clean(MPDZBS-877 ZMS-1232): reduce excessive logging * clean(MPDZBS-877 ZMS-1232): fix race Condition LoggerService * docs(MPDZBS-877): Add README.md * docs(MPDZBS-877): Add README.md * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * fix(MPDZBS-877): unit test * docs(MPDZBS-877): Update README.md * docs(MPDZBS-877): Update README.md * Update README.md * clean(MPDZBS-877): Centralize environment variables * fix(MPDZBS-877): CORS unit tests * clean(MPDZBS-877): centralize zmsapi exception handling and write more tests * clean(MPDZBS-877): remove error log * feat(MPDZBS-877): add unit test * feat(MPDZBS-877): add MapperServiceTest * feat(MPDZBS-877): add LoggerServiceTest ExceptionServiceTest ValidationServiceTest * feat(MPDZBS-877): add ZmsApiFacadeServiceTest * feat(MPDZBS-877): add ZmsApiClientServiceTest * feat(MPDZBS-877): add AppointmentByIdServiceTest * feat(MPDZBS-877): add AppointmentByIdServiceTest * feat(MPDZBS-877): add AppointmentCancelServiceTest * feat(MPDZBS-877): add AppointmentConfirmServiceTest * feat(MPDZBS-877): add Appointment tests * feat(MPDZBS-877): add AppointmentUpdateServiceTest * feat(MPDZBS-877): add AvailableAppointmentsListServiceTest and AvailableDaysListServiceTest * feat(MPDZBS-877): add Service tests * feat(MPDZBS-877): add captcha service and application tests * feat(MPDZBS-877): remove unneeded test * feat(MPDZBS-877): Add LanguageMiddleware and i18n support * feat(MPDZBS-877): Add LanguageMiddlewareTest * feat(MPDZBS-877): clean up language error messages * feat(MPDZBS-877): disable csrf for now * fix(MPDZBS-877): fix ip client helper * fix(MPDZBS-877): only log error messages in english * feat(MPDZBS-877): disable csrf for now * fix(MPDZBS-877): routing methods post * fix(MPDZBS-877): routing methods get * fix(MPDZBS-877): customTextfield save on appointment update * fix(MPDZBS-877): customTextfield unit test * feat(MPDZBS-877): Add showAlternativeLocations to offices endpoints * Revert "feat(MPDZBS-877): Add showAlternativeLocations to offices endpoints" This reverts commit 63fe1a0. --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: Thomas Fink <thomasfink@Thomass-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Thomas Fink <thomasafink@thomass-air.speedport.ip> * docs(MPDZBS-877): Update README.md * feat(ZMS-3449): adjust schema * feat(ZMS-3449): fix object argument * feat(ZMS-3449): fix typo * Update .env.template * feat(ZMS-3449): fix mapping * feat(ZMS-3449): fix tests * feat(ZMS-3449): fix tests * feat(ZMS-3499) refresh queue even when losing focus * Update .env.template * feat(ZMS-3459): return slotTimeInMinutes * feat(ZMS-3430): add indexes * feat(ZMS-3430): remove indexes * writeCanceledSlots-time shortened to 5 minutes * Temporarily disable cors zmscitizenapi (#795) * disable cors middleware * Update CorsMiddlewareTest.php * Update CorsMiddlewareTest.php * Update bootstrap.php * Update SecurityHeadersMiddlewareTest.php * feat(ZMS-3519) sortierung für queueList * feat(ZMS-3430): fix test * feat(ZMS-3503): added logic to end emergency with checkbox * feat(ZMS-3503): removed console.log and unesscessy function * feat(ZMS-3503): removed console.log and unesscessy function * feat(ZMS-3503): removed console.log and unnecessary functions * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.8 [security] (#794) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency sass to v1.83.4 (#806) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * feat(ZMS-3507): redirect without appointment (#775) * fix(deps): update dependency phpoffice/phpspreadsheet to v1.29.9 [security] (#814) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * feat(ZMS-3503): added explanation to the function * feat(ZMS-3499) Tabelle für die Warteschlange wird aktualisiert auch bei Mouse-Hovering * feat(ZMS-3460): create endpoint for free appointments grouped by office (#797) * feat(ZMS-3460): create endpoint for free appointments grouped by office * feat(ZMS-3460): fix test * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix tests * feat(ZMS-3460): fix route * feat(ZMS-3460): refactoring * feat(ZMS-3460): show provider, not scope id * feat(ZMS-3460): fix provider id --------- Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> * fix(ZMS): show alternative locations for offices (#820) Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> * fix(zms): Update .env.template local env --------- Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: Thomas Fink <thomasfink@Thomass-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: Igor Manjencic <manjak.igor@gmail.com> Co-authored-by: matthias1996 <matthias.lorenz@muenchen.de> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Thomas Fink <thomasafink@thomass-air.speedport.ip> Co-authored-by: MoDaae <90261750+MoDaae@users.noreply.github.com> Co-authored-by: mohamad.daaeboul <mohamad.daaeboul@muenchen.de> Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> Co-authored-by: Fabian Breitling <83815772+msfb3@users.noreply.github.com> * docs(ZMS): Update README.md add buergeransicht screenshot * docs(ZMS): Update README.md add logos * chore(ZMS-3414): reenable php code quality checks github actions (#765) * feat(ZMS-3414) unit-tests.yaml: phpcs und phpmd werden vor den Unit-Tests ausgeführt für alle Module phpmd.rules.xml: regeln für phpmd definieren composer.json: phpmd und phpcs Abhängigkeiten angepasst * feat(ZMS-3414) README/Dokumentation anpassen * feat(ZMS-3414) zmsadmin: phpcs-Fehler beheben * feat(ZMS-3414) phpmd.rules.xml anpassen * feat(ZMS-3414) zmsapi: phpcs-Fehler beheben * feat(ZMS-3414) zmscalldisplay: phpcs-Fehler beheben * feat(ZMS-3414) zmsclient: phpcs-Fehler beheben * feat(ZMS-3414) zmsdb: passende phpcs version * feat(ZMS-3414) zmsdb: passende phpcs version * feat(ZMS-3414) zmsdb: phpcs-Fehler beheben * feat(ZMS-3414) zmsdldb: phpcs-Fehler beheben * feat(ZMS-3414) zmsentities: phpcs-Fehler beheben * feat(ZMS-3414) zmsmessaging: phpcs-Fehler beheben * feat(ZMS-3414) zmsslim: phpcs-Fehler beheben * feat(ZMS-3414) zmsstatistic: phpcs-Fehler beheben * feat(ZMS-3414) zmsticketprinter: phpcs-Fehler beheben * feat(ZMS-3414) unit-tests.yaml: ignore warnings * feat(ZMS-3414) unit-tests.yaml: path zum phpmd.rules.xml angepasst * feat(ZMS-3414) unit-tests.yaml: path zum phpmd.rules.xml angepasst * feat(ZMS-3414) unit-tests.yaml: path zum phpmd.rules.xml angepasst * feat(ZMS-3414) phpmd.rules.xml rules anpassungen * feat(ZMS-3414) code-quality.yaml: seperate Datei für die quality cheks phpmd.rules.xml: rules hinzugefügt README.md: anpassung * feat(ZMS-3414) ignore phpcs warnings * feat(ZMS-3414) ignore PHPCS and PHPMD errors * feat(ZMS-3414) PHPMD Fehler als Warnung interpretieren * feat(ZMS-3414) run unit-tests and build-images even if call-code-quality fails * feat(ZMS-3414) run build-images Only run if unit tests pass * feat(ZMS-3414) run build-images Only run if unit tests pass * feat(ZMS-3414) run build-images Only run if unit tests pass * feat(ZMS-3414) run build-images Only run if unit tests pass * feat(ZMS-3414) run build-images Only run if unit tests pass * feat(ZMS-3414) run build-images Only run if unit tests pass * feat(ZMS-3414) unit test fehlschlagen lassen * feat(ZMS-3414) unit test grün laufen lassen * feat(ZMS-3414) fix /src/Zmsadmin/ScopeAvailabilityDay.php:73 UnusedLocalVariable Avoid unused local variables such as '$value'. * feat(ZMS-3414) fix zmsdb/src/Zmsdb/Helper/AnonymizeStatisticDataByCron.php:22 UnusedLocalVariable Avoid unused local variables such as '$envValue'. * feat(ZMS-3414) fix /Zmsdb/Mail.php:34 UnusedFormalParameter Avoid unused parameters such as '$order'. * feat(ZMS-3414) fix /Zmsdb/Useraccount.php:292 UnusedLocalVariable Avoid unused local variables such as '$collection'. * feat(ZMS-3414) fix Zmsdb/Query/Process.php:10 ExcessiveClassLength The class Process has 1004 lines of code. Current threshold is 1000. Avoid really long classes. * feat(ZMS-3414) fix /Zmsentities/Collection/Base.php:233 UnusedLocalVariable Avoid unused local variables such as '$key' * feat(ZMS-3414) phpmd.rules.xml rules erweitert * feat(ZMS-3414) remove unused private field * feat(ZMS-3414) Index.php:26 ExcessiveMethodLength The method readResponse() * feat(ZMS-3414) UnusedFormalParameter '$process' cleaning code * feat(ZMS-3414) adding code checks for citizenapi * feat(ZMS-3414) adding zmscitizenapi to the workflow * feat(ZMS-3414) fix PHPCS errors * feat(ZMS-3414) phpmd Regeln anpassen * feat(ZMS-3414) phpmd Regeln anpassen * clean(ZMS-3414): zmsdb formtatting * clean(ZMS-3414): zmsentities formtatting * clean(ZMS-3414): zmsmessaging formtatting * clean(ZMS-3414): zmsmessaging zmsentities formtatting * clean(ZMS-3414): zmsmessaging zmsentities formtatting * clean(ZMS-3414): zmsticketprinter readResponse function complexity * clean(ZMS-3414): zmsticketprinter formatting * clean(ZMS-3414): run formatting and tests in parallel * clean(ZMS-3414): add todos for zmscitizenapis and require code formatting complexity passing * clean(ZMS-3414): zmscitizenapi formatting * clean(ZMS-3414): add todos for zmscitizenapi and ddev command for running code formatting for all moduls at once to readme * clean(ZMS-3414): re-add build images * clean(ZMS-3414): re-add build images --------- Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> * chore(ZMS): Cleanup github workflow and deploy test coverage to github pages (#840) * chore(ZMS): add code coverage report job * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): fix running on php 8.0 * chore(ZMS): fix zmsapi zmsdb and zmsclient * chore(ZMS): fix zmsclient * chore(ZMS): move the coverage to the regular unit test workflow * chore(ZMS): fix zmsslim coverage * chore(ZMS): fix zmsslim coverage * chore(ZMS): change workflow logic * chore(ZMS): fix zmsslim coverage * chore(ZMS): change workflow logic * chore(ZMS): change workflow logic and fix zmsdb * chore(ZMS): change workflow logic and fix zmsdb * chore(ZMS): change workflow logic and fix zmsdb * chore(ZMS): change workflow logic and fix zmsdb * clean(ZMS): rename workflow files * clean(ZMS): fix zmsdb * clean(ZMS): upload coverage files * clean(ZMS): fix syntax error * clean(ZMS): fix setup * clean(ZMS): fix zmsmessaging * clean(ZMS): fix zmsmessaging * clean(ZMS): change workflow * clean(ZMS): fix combine coverage * clean(ZMS): fix pending jobs * clean(ZMS): fix combine coverage * clean(ZMS): fix pending jobs * clean(ZMS): fix combine coverage * clean(ZMS): fix combine coverage * clean(ZMS): fix combine coverage * clean(ZMS): deploy combine coverage to pages * clean(ZMS): depreciated workflow * clean(ZMS): improve Github pages * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve github pages index page * clean(ZMS): improve github pages index page * clean(ZMS): fix image build * clean(ZMS): only deploy to github pages on next branch * clean(ZMS): refactor and split up * clean(ZMS): only deploy to github pages on next branch * docs(ZMS): update readme docs --------- Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> * fix(ZMS): add missing test coverage (#841) * chore(ZMS): add code coverage report job * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): code coverage report job to one file * chore(ZMS): fix running on php 8.0 * chore(ZMS): fix zmsapi zmsdb and zmsclient * chore(ZMS): fix zmsclient * chore(ZMS): move the coverage to the regular unit test workflow * chore(ZMS): fix zmsslim coverage * chore(ZMS): fix zmsslim coverage * chore(ZMS): change workflow logic * chore(ZMS): fix zmsslim coverage * chore(ZMS): change workflow logic * chore(ZMS): change workflow logic and fix zmsdb * chore(ZMS): change workflow logic and fix zmsdb * chore(ZMS): change workflow logic and fix zmsdb * chore(ZMS): change workflow logic and fix zmsdb * clean(ZMS): rename workflow files * clean(ZMS): fix zmsdb * clean(ZMS): upload coverage files * clean(ZMS): fix syntax error * clean(ZMS): fix setup * clean(ZMS): fix zmsmessaging * clean(ZMS): fix zmsmessaging * clean(ZMS): change workflow * clean(ZMS): fix combine coverage * clean(ZMS): fix pending jobs * clean(ZMS): fix combine coverage * clean(ZMS): fix pending jobs * clean(ZMS): fix combine coverage * clean(ZMS): fix combine coverage * clean(ZMS): fix combine coverage * clean(ZMS): deploy combine coverage to pages * clean(ZMS): depreciated workflow * clean(ZMS): improve Github pages * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve Github pages seperate it * clean(ZMS): improve github pages index page * clean(ZMS): improve github pages index page * clean(ZMS): fix image build * clean(ZMS): only deploy to github pages on next branch * clean(ZMS): refactor and split up * clean(ZMS): only deploy to github pages on next branch * docs(ZMS): update readme docs * fix(ZMS): add missing test coverage * fix(ZMS): fix zmsdb and zmsclient * fix(ZMS): fix zmsdb --------- Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> * fix(deps): update dependency giggsey/libphonenumber-for-php to v8.13.54 (#838) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency helmich/phpunit-psr7-assert to v4.4.1 (#621) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(ZMS): fix zmsdldb coverage report * fix(ZMS): fix zmsdldb coverage report * fix(ZMS): fix zmsdldb coverage report * chore(deps): update dependency phpspec/prophecy-phpunit to v2.3.0 (#843) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency postcss to v8.5.2 (#844) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update dependency sass to v1.84.0 (#845) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * fix(deps): update dependency firebase/php-jwt to v6.11.0 (#846) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update mariadb docker tag to v10.11 (#847) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * chore(deps): update parcel monorepo to v2.13.3 (#848) Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> * clean(ZMS-3429): merge next into feature branch, fix unit test and format code * clean(ZMS-3429): add todo for complexity * clean(ZMS-3429): add todo for complexity --------- Co-authored-by: Igor Manjencic <manjak.igor@gmail.com> Co-authored-by: mohamad.daaeboul <mohamad.daaeboul@muenchen.de> Co-authored-by: Fabian Breitling <83815772+msfb3@users.noreply.github.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: MoDaae <90261750+MoDaae@users.noreply.github.com> Co-authored-by: Thomas Fink <tom@Thomass-MacBook-Air.local> Co-authored-by: Thomas Fink <thomasafink@Thomass-MacBook-Air.local> Co-authored-by: Tom Fink <thomasafink@Toms-MacBook-Air.local> Co-authored-by: Thomas Fink <thomasfink@Thomass-MacBook-Air.local> Co-authored-by: DDEV User <nobody@example.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> Co-authored-by: matthias1996 <matthias.lorenz@muenchen.de> Co-authored-by: Thomas Fink <thomasafink@thomass-air.speedport.ip>
Pull Request Checklist (Feature Branch to
next
):next
Branch in meinen Feature-Branch gemergt.Summary by CodeRabbit
New Features
Tests
Documentation