306 Commits

Author SHA1 Message Date
8732837596
chore: simplify sentry code
All checks were successful
continuous-integration/drone/push Build is passing
2024-11-22 12:05:02 +01:00
4556cfb057
fix(attachments): return error message when attachment upload is not multipart form request
Some checks failed
continuous-integration/drone/push Build is failing
Resolves https://vikunja.sentry.io/issues/6041469388/
2024-11-04 12:26:53 +01:00
d081cf80fc
chore(caldav): refactor fetching projects
Some checks failed
continuous-integration/drone/push Build is failing
2024-10-30 08:37:27 +01:00
7055d7341c
feat(sharing): add config so that users only find members of their teams
All checks were successful
continuous-integration/drone/push Build is passing
This adds a feature where you can enable users to only find members of teams they're part of. This makes the user search when sharing projects less confusing, because users only see other users they already know.
It is still possible to add users to teams with their email address, if they have that enabled in the user settings.
2024-10-28 11:08:06 +01:00
jd
84dbc5fd84 fix: partial fix to allow list tasks in ios reminders app (#2717)
All checks were successful
continuous-integration/drone/push Build is passing
This PR introduces a partial fix for the CalDAV task listing bug (#753) when handling PROPFIND requests with `Depth: 1`, improving task visibility in the iOS Reminders app.

Notes:
* This might make Thunderbird somewhat usable when interacting with tasks using the `/dav/projects/{id} url`.
* This does not fully resolve the issue where the Reminders app will only display the last project after some time when adding the URL.

This is my first time working with Golang and CalDAV, so I’d really appreciate any feedback or suggestions on the code structure, style, or any improvements I could make.

Co-authored-by: JD <43763092+jdw1023@users.noreply.github.com>
Reviewed-on: #2717
Reviewed-by: konrad <k@knt.li>
Co-authored-by: jd <jd@noreply.kolaente.dev>
Co-committed-by: jd <jd@noreply.kolaente.dev>
2024-09-28 09:06:32 +00:00
1085a6583b
fix(caldav): reject invalid project id with error 400
Some checks failed
continuous-integration/drone/push Build is failing
Resolves https://vikunja.sentry.io/share/issue/6fc18edefa0e4db3b2e10efe36deeaa4/
2024-09-10 17:32:35 +02:00
5c1b2846a1
docs(api): use correct return type for the /user endpoint
All checks were successful
continuous-integration/drone/push Build is passing
2024-09-07 13:27:06 +02:00
68636f27da
fix(files): use absolute path everywhere
All checks were successful
continuous-integration/drone/push Build is passing
2024-09-06 12:59:48 +02:00
02c1de55c4
chore(attachments): refactor building image preview
Some checks failed
continuous-integration/drone/push Build is failing
2024-09-06 09:43:59 +02:00
c2b116de70
chore(files): use absolute file path to retrieve and save files 2024-09-05 15:03:32 +02:00
6fb314b326
chore(web): use logger directly 2024-09-01 19:37:27 +02:00
9b01666ec6
chore(web): use web auth factory directly 2024-09-01 19:37:27 +02:00
bcfd72c645
chore(web): use config directly
All checks were successful
continuous-integration/drone/push Build is passing
2024-08-29 18:41:20 +02:00
499f66b7ae
chore(web): directly use new db session 2024-08-29 16:31:46 +02:00
57ba073874
chore(web): use errors.As instead of type assertion 2024-08-29 16:28:16 +02:00
329de3aab3
chore(web): remove unused echo context 2024-08-29 16:20:39 +02:00
2063da9eec
chore(web): move web handler package to Vikunja 2024-08-29 16:15:28 +02:00
7a7e97770c
chore(errors): always add internal error to echo error
Some checks failed
continuous-integration/drone/push Build is failing
2024-08-29 15:39:34 +02:00
fde1763eef
fix(api): return 404 response when using a token and the route does not exist
All checks were successful
continuous-integration/drone/push Build is passing
2024-08-29 10:12:20 +02:00
75ce261f74 feat: downscaled image previews for task attachments (#2541)
Some checks failed
continuous-integration/drone/push Build is failing
As discussed in [https://community.vikunja.io/t/add-scaled-down-images-for-image-previews](https://community.vikunja.io/t/add-scaled-down-images-for-image-previews) this adds a query parameter in the task attachment request which returns a scaled down image for preview purposes to reduce network load and improve responsiveness.

Co-authored-by: Elscrux <nickposer2102@gmail.com>
Reviewed-on: #2541
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Elscrux <elscrux@gmail.com>
Co-committed-by: Elscrux <elscrux@gmail.com>
2024-07-19 09:30:06 +00:00
359b07dabb
fix(views): move bucket update to extra endpoint
All checks were successful
continuous-integration/drone/push Build is passing
BREAKING CHANGE: The bucket id of the task model is now only used internally and will not trigger a change in buckets when updating the task.

This resolves a problem where the task update routine needs to know the view context it is in. Because that's not really what it should be used for, the extra endpoint takes all required parameters and handles the complexity of actually updating the bucket.
This fixes a bug where it was impossible to move a task around between buckets of a saved filter view. In that case, the view of the bucket and the project the task was in would be different, hence the update failed.
2024-07-02 16:34:53 +02:00
e7041f02d0
fix(caldav): do not crash for wrong parameters
All checks were successful
continuous-integration/drone/push Build is passing
2024-06-06 11:05:32 +02:00
99a67e09b1
feat(api): all usable routes behind authentication now have permissions
All checks were successful
continuous-integration/drone/push Build is passing
Previously, only routes which were coming from crudable entities could be used with an api token because there was no way to assign permissions to them. This change implements a more flexible structure for api permissions under the hood, allowing to add permissions for these routes and making them usable with an api token.

Resolves https://github.com/go-vikunja/vikunja/issues/266
2024-06-03 21:35:09 +02:00
741370b613
fix(caldav): return more than 1000 tasks
Some checks failed
continuous-integration/drone/push Build is failing
Resolves #2302
2024-04-25 13:37:04 +02:00
574c7f218e
fix(labels): allow link shares to add existing labels to a task
Some checks failed
continuous-integration/drone/push Build is failing
Resolves https://github.com/go-vikunja/vikunja/issues/252
2024-04-21 15:12:27 +02:00
1460d212ee
fix: do not push nil errors to sentry
Some checks failed
continuous-integration/drone/push Build is failing
2024-04-13 21:46:07 +02:00
006f932dc4
feat(views)!: decouple bucket CRUD from projects 2024-03-19 00:47:47 +01:00
2502776460
feat(views)!: move task position handling to its own crud entity
BREAKING CHANGE: the position of tasks now can't be updated anymore via the task update endpoint. Instead, there is a new endpoint which takes the project view into account as well.
2024-03-19 00:47:46 +01:00
2096fc5274
feat(views): return tasks in a view 2024-03-19 00:47:46 +01:00
b39c5580c2
feat(views): add crud handlers and routes for views 2024-03-19 00:47:45 +01:00
a5c51d4b1e feat: emoji reactions for tasks and comments (#2196)
All checks were successful
continuous-integration/drone/push Build is passing
This PR adds reactions for tasks and comments, similar to what you can do on Gitea, GitHub, Slack and plenty of other tools.

Reviewed-on: #2196
Co-authored-by: kolaente <k@knt.li>
Co-committed-by: kolaente <k@knt.li>
2024-03-12 19:25:58 +00:00
ffa82556e0 feat(teams): add public flags to teams to allow easier sharing with other teams (#2179)
Some checks failed
continuous-integration/drone/push Build is failing
Resolves #2173
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com>
Reviewed-on: #2179
Reviewed-by: konrad <k@knt.li>
Co-authored-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de>
Co-committed-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de>
2024-03-10 14:04:32 +00:00
d7fdefcead chore(deps): update golangci/golangci-lint docker tag to v1.56.2 (#2099)
Some checks failed
continuous-integration/drone/push Build is failing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: #2099
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-03-10 13:47:19 +00:00
f5b90517c4
fix(sentry): send unwrapped error to sentry instead of http error
All checks were successful
continuous-integration/drone/push Build is passing
2024-03-03 17:36:57 +01:00
a12c169ce8
fix: do not send etag when serving the frontend index file
Some checks failed
continuous-integration/drone/push Build is failing
Without this change, the browser may serve an outdated index.html file which usually does not work, showing the user only a blank page.
2024-02-13 21:32:41 +01:00
641fec1215
fix: never return frontend on routes starting with /api
All checks were successful
continuous-integration/drone/push Build is passing
This fixes a problem where Vikunja would sometimes return the html for the frontend when accessing an api route for a nonexistent ressource, because the static handler was the next best.

Resolves #2110
2024-02-13 10:05:15 +01:00
d4a389279c
chore: don't send http errors with a status < 500 to sentry
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-11 15:29:27 +01:00
d36b1608cf
fix: lint
All checks were successful
continuous-integration/drone/pr Build is passing
2024-02-09 15:32:12 +01:00
ca68b52991
feat: replace api url with public url 2024-02-09 14:44:41 +01:00
2d32d900c8
feat: replace api url with public url 2024-02-09 14:42:07 +01:00
119c68be9d
feat: rename frontend url config to public url 2024-02-09 14:41:55 +01:00
78df83ee69
feat: replace api url 2024-02-09 14:38:54 +01:00
db2ec45378
feat: move custom logo setting to api 2024-02-09 14:33:21 +01:00
d7dc209f15
feat: move allow icon changes setting to api 2024-02-09 14:30:21 +01:00
a0e770438d
feat: move sentry configuration from frontend to api 2024-02-09 14:24:29 +01:00
b3228794c7
feat: add caching rules for more files 2024-02-09 13:42:05 +01:00
9c45d9ca15
feat: cache header and etag generation 2024-02-09 13:41:51 +01:00
81455242ae
chore: copy static file handler 2024-02-09 13:41:50 +01:00
6c5194b892
feat: bundle frontend files with api in one static bundle 2024-02-09 13:41:50 +01:00
fceb638e75
docs: remove mention of vikunja/api and vikunja/frontend repos 2024-02-08 14:31:02 +01:00