kolaente
c1e137d8ee
fix(filter): make sure single filter condition works
2024-03-09 19:06:34 +01:00
kolaente
de320aac72
feat(filters): basic text filter works now
2024-03-09 19:06:34 +01:00
kolaente
307ffe11c4
feat(filters): very basic filter parsing
2024-03-09 19:06:31 +01:00
waza-ari
d69fc28125
fix(openid): OIDC teams should not have admins ( #2161 )
...
This PR fixes an issue discussed in #2152 . Before this PR, the user who triggered team creation automatically got the admin flag set for this group, which makes perfect sense for the normal UI workflow. OIDC managed teams cannot be edited in Vikunja, and they're created automatically by the first user logging in having this team assigned. This PR therefore makes sure that OIDC managed team members do not receive the admin flag.
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com>
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2161
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-05 22:08:39 +00:00
waza-ari
a3154e805c
fix(auth): use (issuer, name) to check for uniqueness of oidc teams ( #2152 )
...
The change introduced in #2150 introduces a bug where a Team would be re-created every time a user logs in, as the check if a team already exists was based on both the unique `oidcID` and the `name`. This PR proposes to only base the check on the ID, as this should be unique.
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com>
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2152
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-04 20:26:45 +00:00
kolaente
ac8751e1be
fix(task): move done tasks to the done bucket when they are moved between projects and the new project has a done bucket
2024-03-03 18:13:47 +01:00
kolaente
fe27dd59ad
feat(subscription): use a recursive cte to fetch subscriptions of parent projects
...
Testing this locally resulted in improved response times from ~50ms to ~20ms when creating a project. It looks like even though the code running these sql queries uses different go routines, they affect each other (caused by IO or context switching?)
2024-03-03 15:34:18 +01:00
kolaente
22933dac4a
fix(project): typo in table name
2024-03-03 12:47:00 +01:00
kolaente
fe02f4da2c
fix(project): check for project nesting cycles with a single recursive cte instead of a loop
2024-03-03 11:40:43 +01:00
kolaente
4f1f96f1e9
chore(auth): refactor openid team creation
2024-03-02 15:22:37 +01:00
kolaente
10ff864e0c
fix(projects): load projects only one when fetching subscriptions for a bunch of projects at once
...
This change ensures already loaded projects are passed down when fetching their subscription instead of re-loading each project with a single sql statement. When loading all projects, this meant all projects were loaded twice, which was highly inefficient. This roughly added 25ms to each request, assuming the per page limit was maxed out at 50 projects.
Empirical testing shows this change reduces load times by ~20ms. Because the request is already pretty fast, this is ~30% of the overall request time, making the loading of projects now even faster
2024-03-02 14:27:11 +01:00
kolaente
a3932a0a19
fix(projects): return correct project pagination count
2024-03-02 13:30:34 +01:00
viehlieb
ed4da96ab1
feat: assign users to teams via OIDC claims ( #1393 )
...
This change adds the ability to sync teams via a custom openid claim. Vikunja will automatically create and delete teams as necessary, it will also add and remove users when they log in. These teams are fully managed by Vikunja and cannot be updated by a user.
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/1393
Resolves https://kolaente.dev/vikunja/vikunja/issues/1279
Resolves https://github.com/go-vikunja/vikunja/issues/42
Resolves https://kolaente.dev/vikunja/vikunja/issues/950
Co-authored-by: viehlieb <pf@pragma-shift.net>
Co-committed-by: viehlieb <pf@pragma-shift.net>
2024-03-02 08:47:10 +00:00
kolaente
5b70609ba7
fix: usage of limit and order by usage in recursive cte
2024-02-28 14:35:09 +01:00
kolaente
6b1e67485b
feat: fetch all projects with a recursive cte instead of recursive query
...
This change modifies the fetching of all projects to use a recursive common table expression instead of recursively calling the method.
2024-02-28 13:42:45 +01:00
kolaente
415c6380a5
feat(api tokens): add task attachment to api scopes
...
This explicitly adds download and upload of task attachments. Because these are not handled with the usual CRUDables, they were not picked up automatically.
Resolves https://github.com/go-vikunja/vikunja/issues/112
2024-02-14 15:00:16 +01:00
kolaente
8752ae2a0b
fix(webhook): fetch all event details before sending the webhook
...
Resolves https://community.vikunja.io/t/webhook-comment-data-issues/1952
2024-02-10 14:15:32 +01:00
kolaente
7edb53ca12
fix(export): don't crash when an exported file does not exist
...
Related to https://github.com/go-vikunja/vikunja/issues/110
2024-02-10 13:45:12 +01:00
kolaente
5ab9fb89bb
fix(tasks): check for cycles during creation of task relations and prevent them
2024-02-10 13:30:41 +01:00
kolaente
119c68be9d
feat: rename frontend url config to public url
2024-02-09 14:41:55 +01:00
kolaente
b95b92a23a
fix(filters): add explicit check for string slice filter
...
Resolves https://github.com/go-vikunja/api/issues/109
2024-02-05 22:08:17 +01:00
kolaente
8efdc96d02
chore(filters): log type if unknown filter type
2024-02-01 16:19:22 +01:00
kolaente
7f46914d5e
fix(project): pass user id to error message
2024-01-31 13:50:21 +01:00
kolaente
96b4f2d1db
fix(projects): don't remove parent project id if the parent project is available in the same run
...
Resolves https://github.com/go-vikunja/frontend/issues/139
2024-01-28 15:28:08 +01:00
kolaente
d9875e476c
fix(assignees): make sure task assignee created event contains the full task
2024-01-28 13:23:27 +01:00
kolaente
e4fec01d52
fix(assignees): subscribe assigned users directly to the task, not async
...
Resolves https://community.vikunja.io/t/richer-email-notifications/1891
2024-01-28 13:15:43 +01:00
kolaente
b2970c6c04
fix(assignees): prevent double notifications for assignees
2024-01-28 13:11:50 +01:00
kolaente
e03920b84a
fix(assignees): improve wording for assignee emails
2024-01-28 13:11:37 +01:00
kolaente
a20f6ac815
fix(task): delete the task after all related attributes to prevent task not found errors
2024-01-28 12:23:25 +01:00
kolaente
1630e4fc08
fix: tests
2024-01-28 11:52:16 +01:00
kolaente
90ad975ca0
fix(typesense): update tasks in Typesense directly when the change happened
...
Resolves https://community.vikunja.io/t/no-filters-working-assignee-date-task-done-etc/1910
2024-01-28 11:47:17 +01:00
kolaente
ae9b382963
fix(webhooks): make sure all events with tasks have the full task
...
Resolves https://kolaente.dev/vikunja/api/issues/1676
2024-01-27 00:16:17 +01:00
kolaente
d38050f2b8
fix(subscriptions): don't crash when a project is already deleted
2024-01-26 23:53:22 +01:00
kolaente
33a47b7f43
fix(relations): don't allow creating relations which already exist
...
Resolves https://github.com/go-vikunja/frontend/issues/144
2024-01-26 23:37:59 +01:00
kolaente
4d48d814c9
fix: update function signatures
2024-01-16 14:06:44 +00:00
kolaente
2c84688a40
fix: lint
2024-01-14 22:23:33 +01:00
kolaente
514ea71d93
fix(api): make sure permission to read all tasks work for reading all tasks per project
...
Resolves https://github.com/go-vikunja/api/issues/105
2024-01-14 22:17:22 +01:00
kolaente
09696aec1b
fix: create webhooks table for fresh installation
...
Resolves https://github.com/go-vikunja/api/issues/104
Resolves https://kolaente.dev/vikunja/api/issues/1655
2023-12-30 11:58:02 +01:00
kolaente
32611dc2d7
feat(reminders): persist reminders in the db
2023-12-23 15:40:03 +01:00
kolaente
c05f51b923
chore(deps): update golangci-lint rules
2023-12-19 13:34:31 +01:00
kolaente
57bd5aca80
fix(webhooks): send application/json header
2023-12-06 14:09:49 +01:00
kolaente
6ef1bc3944
fix: lint
2023-12-06 14:01:09 +01:00
kolaente
cca42b9188
feat(metrics): add total number of attachments metric
2023-12-03 15:30:39 +01:00
kolaente
0ce110fa52
feat(metrics): add active link share logins
2023-12-03 15:12:43 +01:00
kolaente
8a3f16fcfb
fix(labels): make sure labels of shared sub projects are usable
...
Resolves https://community.vikunja.io/t/cannot-filter-on-projets-labels/1736
2023-12-03 14:33:43 +01:00
kolaente
66b44da85b
fix(projects): delete child projects when deleting a project
2023-12-01 17:27:40 +01:00
kolaente
bbc8da1e80
fix(tests): pass the map
2023-11-20 12:22:44 +01:00
kolaente
df1f95871a
fix(projects): correctly set project's archived state if their parent was archived
...
Resolves https://kolaente.dev/vikunja/frontend/issues/3795
2023-11-17 20:00:08 +01:00
kolaente
1ed65d306d
fix(docs): remove duplicate paths (params) in swagger docs
2023-11-16 13:07:01 +01:00
kolaente
b9a54b019d
fix(tests): remove duplicate projects from assertions
2023-11-15 13:17:04 +01:00