Gregor Vostrak
b8b0c615de
fix scramble diagnostics in goal resource and requests
2026-10-08 18:11:30 +02:00
Gregor Vostrak
de05e9da46
remove PaginatedResourceCollection from goal collection after scramble 0.13 update
2026-10-08 18:02:26 +02:00
Gregor Vostrak
4b04a3b8de
move goal progress calculation out of the resources
2026-10-08 17:58:49 +02:00
Gregor Vostrak
38e33b318e
Add goals feature for personal goals with filters
2026-10-08 17:58:48 +02:00
Constantin Graf
f01a4111b6
Fix Scramble API docs warnings
...
Remove redundant @var annotations from API resources and defer the user
access in the email unique rule of UserUpdateRequest, so rules() can be
evaluated by Scramble without route model binding. Add a test that fails
on any Scramble diagnostic and tests for the email unique rule.
2026-10-08 16:39:46 +02:00
Constantin Graf
ed2f19f58b
Fix API docs generation with Scramble 0.13
...
Scramble 0.13 moved the collected resource type of resource collections
to a different template slot, which broke the custom paginated resource
collection extension and the API docs export. Scramble now infers
paginated responses natively, so the extension, the marker interface and
the @return annotations that overrode the inference are removed.
Scramble 0.13 also documents closure routes, so the API fallback routes
are moved to a controller that is excluded from the docs.
Add a test that exports the API docs.
2026-10-08 12:38:03 +02:00
Gregor Vostrak
bb5a7fb9f9
improve API docs
2026-10-05 17:27:04 +02:00
Constantin Graf
2dadf1ef02
Updated Laravel to v13
2026-09-24 10:45:18 +02:00
Constantin Graf
37579b1e5c
Updated compose dependencies
2026-09-24 10:45:18 +02:00
Constantin Graf
70646a0dd4
Add additional validation for import, Enhanced ZIP extraction in importer
2026-09-16 15:02:54 +02:00
Constantin Graf
637475e669
Add invite-only registration mode
2026-08-31 13:36:25 +02:00
Constantin Graf
593372bae5
Add still-running email preference
2026-08-31 12:26:02 +02:00
Andrew Herron
453d5ed066
Set content-disposition 'attachment' for both local and S3 downloads. Added a bunch of tests. Fixes #1148 .
2026-08-28 17:30:27 +02:00
Andrew Herron
97fd882878
Format date group labels in all aggregate exports
2026-08-20 17:11:35 +02:00
Constantin Graf
de13c07855
Fixed return type in TrustHosts
2026-08-06 17:49:52 +02:00
Constantin Graf
29a2e994cd
Fixed phpstan error in TrustHosts middleware
2026-08-06 17:06:34 +02:00
Constantin Graf
f6d886b218
Refactored TrustHostsTest; Added return types to TrustHosts
2026-08-06 17:01:46 +02:00
Gregor Vostrak
80d98b30a1
add custom error handling for host mismatch; ensure TrustHosts runs
...
before TrustProxies
2026-08-06 17:01:46 +02:00
Gregor Vostrak
32f2f1431b
add TrustHosts middleware with exemption for healthchecks
2026-08-06 17:01:46 +02:00
Gregor Vostrak
cbcd1e51f6
add break time entries and simplified time tracker ui
2026-07-28 16:52:36 +02:00
Constantin Graf
114a32536d
Fixed update of member_id in time_entries.update and time_entries.updateMultiple
...
Removed usage of legacy user_id in TimeEntryController
2026-07-23 12:02:46 +02:00
Constantin Graf
024283273a
Updated email validation to stricter config
2026-07-11 16:00:34 +02:00
Gregor Vostrak
a97c02542b
add unique id tiebreaker to paginated index endpoints to make pagination
...
stable (#1138 )
2026-07-09 13:01:23 +02:00
Gregor Vostrak
23ea1500b0
Use an enum for tag match type
2026-06-26 14:53:37 +02:00
Gregor Vostrak
4bbde04e28
Rename tag_filter parameter to tag_match_type
2026-06-26 14:53:37 +02:00
Beda Schmid
58d7b33366
Add filter to include/exclude tags
...
[Added]
- Introduced a tag filter feature allowing users to specify whether tags should be included or excluded in time entry filters. This supports 'contains' and 'not_contains' modes.
2026-06-26 14:53:37 +02:00
Constantin Graf
6a197f7f34
Add password check to users.destroy and organizations.destroy
2026-06-18 13:27:43 +02:00
Constantin Graf
24c94af952
Add option to enable email verification locally for testing
2026-06-18 13:27:43 +02:00
Constantin Graf
111ce94150
Add comments to events about legacy events
2026-06-18 13:27:43 +02:00
Gregor Vostrak
6b01034bdd
add back destroy other browser sessions endpoint (jetstream migration)
2026-06-18 13:27:43 +02:00
Gregor Vostrak
24875f9424
add currency to organization update endpoint
2026-06-18 13:27:43 +02:00
Gregor Vostrak
4975cf1dab
replace hardcoded inertia props with organization delete/update perms
2026-06-18 13:27:43 +02:00
Gregor Vostrak
b3fb04c4be
remove unused inertia organization page props
2026-06-18 13:27:43 +02:00
Gregor Vostrak
c5c129b239
add switch current organization endpoint
2026-06-18 13:27:43 +02:00
Constantin Graf
89a9341d91
Removed Laravel Jetstream
2026-06-18 13:27:43 +02:00
Gregor Vostrak
bffd0773be
remove jetstream inertia properties; remove unused ApiTokenManager;
2026-06-18 13:27:43 +02:00
Constantin Graf
734aab6353
Replaces all Jetstream model trait functions and relations
2026-06-18 13:27:43 +02:00
Constantin Graf
5eb1a6a006
Add reset pending email endpoint to user controller
2026-06-18 13:27:43 +02:00
Gregor Vostrak
8f02f98afc
add pending email to UserResource and update openapi client
2026-06-18 13:27:43 +02:00
Gregor Vostrak
372c7b02a0
update email address change info to use session based banners
2026-06-18 13:27:43 +02:00
Gregor Vostrak
e29be581fa
add photo delete logic to user update endpoint
2026-06-18 13:27:43 +02:00
Constantin Graf
02da133fb3
Updated composer dependencies
2026-06-18 13:27:43 +02:00
Constantin Graf
5d744d70c4
Migrate permission away from Jetstream; Moved update user to REST API
2026-06-18 13:27:43 +02:00
Gregor Vostrak
12d58ee42c
rephrase logged out user invite accept message to clarify that the
...
invite was accepted
2026-06-18 13:27:43 +02:00
Gregor Vostrak
f9be92894e
add banners for invitation accept
2026-06-18 13:27:43 +02:00
Constantin Graf
a30d192ea2
Updated invitation flow, Moved jetstream function to REST endpoints; Lower case email
2026-06-18 13:27:43 +02:00
Gregor Vostrak
b73aa543fd
Merge commit from fork
2026-04-21 21:12:30 +02:00
Gregor Vostrak
c07ac4b0e4
add random identifier to exports to avoid path conflicts, fixes #1035
2026-03-23 17:43:46 +01:00
Gregor Vostrak
192c8c3b88
fix IDOR private projects
2026-03-19 13:52:28 +01:00
Gregor Vostrak
556bbedeca
add dynamic loading of paginated endpoints above page_limit
...
add request classes and fix collection typing for clients, tasks and tags
2026-02-18 22:32:56 +01:00