kolaente
2c9becec10
fix(notifications): only add project subscription as task subscription when the user is not already subscribed to the task
...
Before this fix, a project subscription object was added twice to the list of subscriptions for a task when the user did not subscribe to the task directly. This caused the user to receive a comment notification twice for a given task.
This was probably a regression from efde364224 .
Resolves https://community.vikunja.io/t/e-mail-notification-twice/2740/18
2024-09-02 23:36:58 +02:00
kolaente
74a74b7ec7
fix(labels): test error assertion
2024-08-29 16:16:41 +02:00
kolaente
2063da9eec
chore(web): move web handler package to Vikunja
2024-08-29 16:15:28 +02:00
kolaente
bea131cfd9
fix(labels): trigger task.updated event when removing a label from a task
2024-08-29 15:19:06 +02:00
kolaente
5a0d1f1dc6
feat(event): simplify dispatching task updated event from only a task id
2024-08-29 15:18:03 +02:00
kolaente
efde364224
fix(subscriptions): ignore task subscription when the user is subscribed to the project
...
Resolves https://community.vikunja.io/t/e-mail-notification-twice/2740/12
Resolves https://github.com/go-vikunja/vikunja/issues/316
2024-08-29 10:35:05 +02:00
kolaente
429c7ca2c1
feat(task): always insert new tasks at the top
...
Resolves https://community.vikunja.io/t/kanban-cards-in-wrong-order/2731
2024-08-28 15:30:40 +02:00
kolaente
bf56311faa
fix(task): set done at date when moving a task to the done bucket
...
Resolves https://github.com/go-vikunja/vikunja/issues/320
2024-08-28 14:21:31 +02:00
kolaente
ebfd5f54d2
fix(migration): ensure project background gets exported and imported
2024-08-12 17:18:07 +02:00
kolaente
b83448b7a6
fix(views): do not create task bucket and task position entries when duplicating a project
...
Resolves https://github.com/go-vikunja/vikunja/issues/297
Resolves https://community.vikunja.io/t/duplicating-a-board-puts-the-buckets-in-the-original-board/2579
2024-08-12 15:53:51 +02:00
kolaente
eed783e42f
fix(task): move task into new kanban bucket when moving between projects
...
Resolves https://github.com/go-vikunja/vikunja/issues/290
Resolves https://community.vikunja.io/t/tasks-moved-from-one-project-to-another-do-not-show-up-in-kanban/2689
2024-08-12 15:35:37 +02:00
Dominik Pschenitschni
bc5fd380e5
chore: improve error message
2024-07-21 11:03:20 +00:00
Elscrux
75ce261f74
feat: downscaled image previews for task attachments ( #2541 )
...
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: https://kolaente.dev/vikunja/vikunja/pulls/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
kolaente
ef0bf3156e
fix(project): do not use project id of nil project in error
2024-07-18 16:39:30 +02:00
kolaente
bea81f83f7
fix(filters): only insert task buckets and positions when there are any
2024-07-18 15:38:29 +02:00
kolaente
12474e5be6
fix(kanban): make sure tasks which changed their done status are moved around in buckets
...
This fixes a bug where tasks which had their done status changed were not moved in the correct bucket. This affected both frontend and api. The move of the task between buckets is now correctly done in the api and frontend - with a bit of duplicated logic between the two. This could be optimized further in the future.
Resolves https://kolaente.dev/vikunja/vikunja/issues/2610
2024-07-18 12:39:29 +02:00
kolaente
f8fb9d7407
fix(filters): add tasks to filter buckets when updating the filter
2024-07-17 12:57:52 +02:00
kolaente
5cc420b289
fix(filters): add task to buckets of saved filters when creating the task
2024-07-17 12:57:51 +02:00
kolaente
744b40e7f7
fix: missing error handling
2024-07-17 11:43:38 +02:00
kolaente
1e42e54db1
fix(projects): do not create buckets in the original project when duplicating a project
2024-07-17 10:24:47 +02:00
kolaente
8a6689f4fa
fix(projects): do not create backlog bucket when duplicating views
2024-07-17 10:24:03 +02:00
kolaente
092a65b025
feat(project): add " - duplicate" suffix to duplicated projects title
2024-07-17 10:23:33 +02:00
kolaente
5e04abaa06
chore(project): rename receiver
2024-07-17 10:23:01 +02:00
kolaente
58e492872a
fix(kanban): put task into correct bucket when creating via kanban board
2024-07-17 09:36:33 +02:00
kolaente
bb25a3397b
fix(kanban): use correct assertion in the test
2024-07-12 14:21:46 +02:00
kolaente
918c2224d8
fix(kanban): move task to done bucket in all views when moved to done bucket in one view
2024-07-12 13:59:59 +02:00
kolaente
323ecdaab6
fix(kanban): move repeating task back to old bucket when moved to the done bucket
2024-07-12 13:44:45 +02:00
kolaente
51040cf1af
fix(kanban): dispatch task updated event when task position is updated
...
This fixes a bug where a task would not be indexed in Typesense when its position changed.
2024-07-12 13:31:27 +02:00
kolaente
e5e0db1f6a
fix(kanban): dispatch task updated event when task is moved between buckets
...
This fixes a bug where a task would not be indexed in Typesense when its bucket changed.
2024-07-12 13:29:15 +02:00
kolaente
62412ce29b
fix(kanban): do not move repeating task into a different bucket
2024-07-12 13:19:50 +02:00
kolaente
7c42fb5d75
fix: lint
2024-07-12 11:49:03 +02:00
kolaente
8711f7a935
fix(typesense): do not use modified opts for db fallback search
2024-07-11 12:52:09 +02:00
kolaente
7f27cee6a3
fix(tasks): do not use typesense modified options to search with database
2024-07-11 12:41:40 +02:00
kolaente
5644130f01
fix(filters): do not create a default filter for list view when creating a saved filter
...
Because a default filter in a filter is highly unexpected, it can lead to these filters cancelling each other out, resulting in confusing behaviour. See https://kolaente.dev/vikunja/vikunja/issues/2547#issuecomment-65180
2024-07-11 12:29:09 +02:00
kolaente
38c30d1eee
fix(filters): trim spaces when parsing filter values
...
This fixes a bug where values would not be trimmed before parsing them. That resulted in a value like " 2" being invalid, even though it's a perfectly fine number.
Because the frontend sends the filters for projects and other values with comma-separated spaces like "1, 2, 3", this essentially broke filtering by these values.
Resolves https://kolaente.dev/vikunja/vikunja/issues/2547
2024-07-11 12:20:32 +02:00
kolaente
471d0fcd4a
fix(typesense): reindex tasks when their position changed
2024-07-11 12:07:48 +02:00
kolaente
0b424fe95e
fix(typesense): do not crash after creating a project when tasks are not yet indexed
...
Before this fix, creating a project with Typesense enabled would fail with an error because the tasks it fetches as part of that process do not have the task position property in their index. We now fall back to using the db for searching in that case.
In the long run, we should use typesense joins for the task position to make this more efficient.
2024-07-11 12:07:22 +02:00
kolaente
70615d6843
fix(filter): make sure filter values are properly escaped before executing them
...
Resolves https://community.vikunja.io/t/filtering-unexpected-character-relative-dates/2544
Resolves https://github.com/go-vikunja/vikunja/issues/286
2024-07-11 11:27:19 +02:00
kolaente
2982acc0ec
fix(tasks): limit to max 250 entries when using typesense
...
Resolves https://community.vikunja.io/t/typesense-250-hits-limit/2536/8
2024-07-11 10:06:39 +02:00
kolaente
2c6bc7742f
fix(tasks): explicitly add task position to select statement when looking up tasks with Typesense
...
Resolves https://kolaente.dev/vikunja/vikunja/issues/2546
Resolves https://community.vikunja.io/t/version-0-24-0-internal-server-error-breaking-change/2558/5
2024-07-11 09:28:22 +02:00
kolaente
359b07dabb
fix(views): move bucket update to extra endpoint
...
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
kolaente
e6ce1251f7
fix(filters): allow managing views for saved filters
2024-07-02 12:36:08 +02:00
kolaente
2690c99438
fix(filters): explicitly use `tasks.id` as task id filter column
...
This fixes an error where filtering for labels or other related entities would fail with an error "ambiguous column name id"
2024-06-19 16:58:04 +02:00
kolaente
d12deee977
feat(views): allow reordering views
...
Resolves https://community.vikunja.io/t/reordering-views/2394
2024-06-18 16:39:52 +02:00
kolaente
8b028dbc4b
feat(api): add bulk endpoints to api tokens
...
Previously, the bulk api endpoint were explicitly filtered out. This meant that you couldn't use them with api tokens.
This change adds them to their "parent" token types as another option, allowing users to select and use them when creating api tokens.
Resolves https://community.vikunja.io/t/help-with-bulk-api-complete/2461
2024-06-18 14:33:57 +02:00
kolaente
6626727d92
fix(tasks): tests
2024-06-18 13:48:09 +02:00
kolaente
fa6546b6b2
feat(tasks): add tests for moving a task out of the done bucket
2024-06-18 13:40:41 +02:00
kolaente
d3f397b036
fix(tasks): do not crash when order by id and position
2024-06-13 16:36:02 +02:00
kolaente
acf4e3aa18
fix(tasks): ambiguous column name error when fetching favorite tasks
2024-06-06 21:50:30 +02:00
kolaente
f131289d32
fix(typesense): correctly index assignee changes on tasks
...
This change fixes a bug where adding or removing an assignee to a task would not update the index in Typesense, causing filter queries for that assignee to return incorrect data. This was caused by the events being dispatched by the task update process not containing all the data.
Resolves https://github.com/go-vikunja/vikunja/issues/255
2024-06-05 10:36:25 +02:00
kolaente
e56b2232bb
fix(typesense): do not try to sort by position when searching in a saved filter
...
This change fixes a bug where Typesense would try to sort by the project view of a saved filter. The view position is not indexed in Typesense, hence filtering fails. Because sorting by position is not a feature in saved filters, I've removed the logic for sorting saved filters with Typesense.
2024-06-05 10:24:28 +02:00
kolaente
506ce66434
fix(typesense): correctly join task position table when sorting by it
...
This change fixes a bug where the project view to use for joining was empty, since Typesense only supports 3 sorting parameters. When using more than that, the logic to fetch the view ID parameter would not return the correct parameter, but the logic building the order by statement would. That led to inconsistencies where the task position was included in the order by statement, but the table would not be joined, failing the query.
2024-06-05 09:54:55 +02:00
kolaente
b386dfae87
fix(typesense): only return distinct tasks once
2024-06-04 18:22:05 +02:00
kolaente
5fc4ec48b7
fix(typesense): correctly incorporate existing filter when it is empty
2024-06-04 18:22:05 +02:00
kolaente
1843f1d0d8
fix(docs): correctly document filter query usage
2024-06-04 18:02:31 +02:00
kolaente
48676050d7
feat(tasks): expand subtasks ( #2345 )
...
This change adds a parameter to expand subtasks - if provided, Vikunja will ensure all subtasks are present in the results list.
Resolves https://community.vikunja.io/t/subtasks-show-on-different-pages/2292
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2345
Co-authored-by: kolaente <k@knt.li>
Co-committed-by: kolaente <k@knt.li>
2024-06-04 10:27:23 +00:00
kolaente
99a67e09b1
feat(api): all usable routes behind authentication now have permissions
...
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
kolaente
c47d8c6dbe
fix(task): do not try to set bucket for filtered bucket configuration
2024-06-03 17:02:50 +02:00
kolaente
4ce761eba7
fix(filter): trim search term before searching
2024-06-03 16:28:04 +02:00
kolaente
6c8299772a
fix(task): do not require admin permission to move tasks between buckets
...
Resolves https://community.vikunja.io/t/moving-between-buckets-requires-admin-permissions-now/2390
2024-06-03 16:26:07 +02:00
kolaente
a6fccfb908
fix(webhook): log errors in webhook response
2024-06-03 13:11:44 +02:00
kolaente
7837bcfaae
fix(task): only count unique tasks in a bucket when checking bucket limit
...
This fixes a bug where the current number of tasks in a bucket was computed wrong when moving tasks into a bucket with a limit. Sometimes the bug would prevent adding a task to a bucket which seemed to have space left but ultimately failed when moving the task.
2024-05-06 20:07:06 +02:00
kolaente
1f6a1f8ad4
fix(kanban): fetch project and view when checking permissions
2024-04-21 19:44:47 +02:00
kolaente
ea7527a3cf
fix(test): cast result before comparing
2024-04-21 19:43:57 +02:00
kolaente
574c7f218e
fix(labels): allow link shares to add existing labels to a task
...
Resolves https://github.com/go-vikunja/vikunja/issues/252
2024-04-21 15:12:27 +02:00
kolaente
1074a8d916
fix(views): only allow project admins to manage views
...
Resolves https://community.vikunja.io/t/manage-views-only-for-project-admins/2279
2024-04-21 14:36:09 +02:00
kolaente
ecbefdb921
fix(buckets): return correct task count for tasks in buckets
2024-04-14 17:21:53 +02:00
kolaente
d8ca1a2de1
fix(favorites): make favorites work with configurable views
2024-04-14 17:12:16 +02:00
kolaente
5756da412b
fix(project): return full project after duplicating it
2024-04-13 22:39:40 +02:00
kolaente
4e05b8e97c
fix(project): do not crash when duplicating a project with no tasks
2024-04-13 22:36:41 +02:00
kolaente
e9de7d8a24
fix(project): delete all related entities when deleting a project
2024-04-13 21:43:44 +02:00
kolaente
ce1d7778c7
fix(export): make export work with project views and new task positions
2024-04-13 21:07:06 +02:00
kolaente
77e95642a9
fix(tasks): make fetching tasks in buckets via typesense work
2024-04-13 17:52:47 +02:00
kolaente
a5d02380a3
fix(typesense): make fetching task positions per view more efficient
2024-04-13 17:26:38 +02:00
kolaente
3519b8b2fe
fix(tasks): index and order by task position when using typesense
2024-04-13 17:19:27 +02:00
kolaente
cb648e5ad8
fix(typesense): fix reindexing views and positions in typesense
2024-04-13 16:38:45 +02:00
kolaente
75f830457b
fix(comments): order comments by created timestamp instead of id
...
Partially resolves https://community.vikunja.io/t/trello-import-comments-and-assignments/2174/14
2024-04-13 14:45:12 +02:00
kolaente
6e2b540394
fix(migration): import task comments with original timestamps
...
Partially resolves https://community.vikunja.io/t/trello-import-comments-and-assignments/2174/14
2024-04-13 14:44:55 +02:00
kolaente
500b761fe6
fix(projects): do not return parent project id when authenticating as link share
...
Related to https://community.vikunja.io/t/vikunja-freezes/2246
Related to https://github.com/go-vikunja/vikunja/issues/233
2024-04-12 18:02:39 +02:00
kolaente
191a476823
fix(notifications): only sanitze html content in notifications, do not convert it to markdown
...
Resolves https://community.vikunja.io/t/trello-import-html-mails/2197
2024-04-07 13:34:53 +02:00
kolaente
c1d06c5e5a
fix(projects): do not return parent project id of parents where the user does not have access
...
This caused the frontend to not show such projects, throwing errors in the process and sometimes made it hang.
2024-04-07 12:10:20 +02:00
kolaente
2f6b395334
feat(kanban): set task position to 0 (top) when it is moved into the done bucket automatically after marking it done
2024-04-06 14:35:05 +02:00
kolaente
1cd5dd2b2f
fix: lint
2024-04-06 14:12:08 +02:00
kolaente
521300613f
fix: update task in typesense when adding a label or assignee to them
...
Resolves https://community.vikunja.io/t/typesense-only-works-if-i-re-index/2212
2024-04-06 14:04:04 +02:00
kolaente
20e2314128
fix(filters): enclose values with a slash in them as strings so that date math values work
...
Previously, in a filter like "due_date = now/d", the / was parsed as the beginning of a comment, but as it did not contain the full value, this is an invalid comment, resulting in an error message.
Resolves https://community.vikunja.io/t/filter-setting-s/1791/12
2024-04-06 12:08:57 +02:00
waza-ari
f0d695e789
fix(views): remove default filter from frontend, apply by default to new list views instead ( #2240 )
...
Fixes #2234
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com>
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2240
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-04-02 13:49:38 +00:00
kolaente
8a6e3d5bd7
fix(views): use correct assertion in test
2024-04-02 12:42:07 +02:00
kolaente
81fe8391e4
fix(project): load full project after creating a project
...
When a new project was created, it contained all details already. This led to duplicated views and overridden attributes in the response.
Resolves https://kolaente.dev/vikunja/vikunja/issues/2242
2024-03-29 19:28:17 +01:00
kolaente
89e37b88d9
fix(views): update all fields when updating a view
...
Resolves https://kolaente.dev/vikunja/vikunja/issues/2241
2024-03-29 18:19:16 +01:00
kolaente
97b7592e7c
fix(views): do not map bucket id from xorm
2024-03-20 10:41:58 +01:00
kolaente
d635fd2dd3
fix(projects): remove done bucket id field from projects struct
2024-03-20 09:21:40 +01:00
kolaente
fee75e55a3
fix(views): stable assertion for bucket in tests
2024-03-19 17:27:03 +01:00
kolaente
fa137b1ffc
fix(views): include order by fields in distinct clause when sorting by task position
2024-03-19 17:05:12 +01:00
kolaente
e7d6ee2392
fix(views): update done status of recurring tasks
2024-03-19 17:04:39 +01:00
kolaente
62ff05695f
fix(views): kanban test assertions
2024-03-19 16:59:46 +01:00
kolaente
6f51b56589
fix: lint
2024-03-19 16:49:39 +01:00
kolaente
165d291cd5
fix(views): reset bucket when moving tasks between projects
2024-03-19 14:16:05 +01:00
kolaente
e940db6d32
fix(views): return only tasks when the bucket id was already specified
2024-03-19 13:55:28 +01:00
kolaente
30b41bd143
fix(views): lint
2024-03-19 00:47:51 +01:00
kolaente
f3cdd7d15f
fix(views): import
2024-03-19 00:47:51 +01:00
kolaente
8b90eb4a15
fix(views): integration tests
2024-03-19 00:47:51 +01:00
kolaente
803f58f402
fix(views): return correct error
2024-03-19 00:47:51 +01:00
kolaente
b7b3169169
fix(views): count task buckets
2024-03-19 00:47:51 +01:00
kolaente
409f9a0cc6
fix(views): test assertions
2024-03-19 00:47:51 +01:00
kolaente
9075a45cb8
fix(views): update test fixtures for new structure
2024-03-19 00:47:51 +01:00
kolaente
d4bdd2d4e8
fix(views): duplicate all views and related entities when duplicating a project
2024-03-19 00:47:51 +01:00
kolaente
9cc273d9bd
fix(views): move all tasks to the default bucket when deleting a bucket
2024-03-19 00:47:51 +01:00
kolaente
0f60a92873
fix(views): make kanban tests work again
2024-03-19 00:47:51 +01:00
kolaente
24fa3b206f
fix(views): create view
2024-03-19 00:47:50 +01:00
kolaente
433584813a
fix(views): view deletion
2024-03-19 00:47:50 +01:00
kolaente
3ec3bb76af
fix(views): make parsing work
2024-03-19 00:47:50 +01:00
kolaente
004f1e06bb
fix(views): do not return kanban tasks multiple times
2024-03-19 00:47:50 +01:00
kolaente
27cb6e3372
fix(views): make bucket edit work
2024-03-19 00:47:50 +01:00
kolaente
445f1c06fa
fix(views): make bucket creation work again
2024-03-19 00:47:50 +01:00
kolaente
7368a51f18
fix(views): make setting task position in saved filters work
2024-03-19 00:47:49 +01:00
kolaente
e1774cc49a
feat(views): show tasks on kanban board in saved filter
2024-03-19 00:47:49 +01:00
kolaente
61e27ae3eb
feat(views): create task bucket relation when creating a new bucket
2024-03-19 00:47:49 +01:00
kolaente
7f1788eba9
fix(views): get tasks in saved filter
2024-03-19 00:47:49 +01:00
kolaente
5451ddf58d
fix(views): return tasks directly or in buckets, no matter if accessing via user or link share
2024-03-19 00:47:49 +01:00
kolaente
f364f3bec8
feat(views): return position when retriving tasks
2024-03-19 00:47:48 +01:00
kolaente
786e67f692
feat(views): save task position
2024-03-19 00:47:48 +01:00
kolaente
398c9f1056
fix(views): return tasks in their buckets
2024-03-19 00:47:48 +01:00
kolaente
cb111df2b7
fix(views): make fetching tasks in kanban buckets through view actually work
2024-03-19 00:47:48 +01:00
kolaente
73e5483e87
fix(views): do not break filters when combining them with view filters
2024-03-19 00:47:48 +01:00
kolaente
6913334b17
fix(views): correctly fetch project when fetching tasks
2024-03-19 00:47:48 +01:00
kolaente
ee6ea03506
feat(views): sort by position
2024-03-19 00:47:47 +01:00
kolaente
43f24661d7
feat(views): save view and position in Typesense
2024-03-19 00:47:47 +01:00
kolaente
5641da27f7
feat(views): save position in Typesense
2024-03-19 00:47:47 +01:00
kolaente
14353b24d7
feat(views): set default position
2024-03-19 00:47:47 +01:00
kolaente
ca4e3e01c5
feat(views): recalculate all positions when updating
2024-03-19 00:47:47 +01:00
kolaente
8ce476491e
feat(views): only update the bucket when necessary
2024-03-19 00:47:47 +01:00
kolaente
f2a0d69670
feat(views)!: make updating a bucket work again
2024-03-19 00:47:47 +01:00
kolaente
a13276e28e
feat(views)!: decouple bucket <-> task relationship
2024-03-19 00:47:47 +01:00
kolaente
9cf84646a1
feat(views)!: move done and default bucket setting to view
2024-03-19 00:47:47 +01:00
kolaente
006f932dc4
feat(views)!: decouple bucket CRUD from projects
2024-03-19 00:47:47 +01:00
kolaente
0a3f45ab11
feat(views): decouple buckets from projects
2024-03-19 00:47:47 +01:00
kolaente
d1d07f462c
feat(views): sort tasks by their position relative to the view they're in
2024-03-19 00:47:46 +01:00
kolaente
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
kolaente
238baf86f7
feat(views)!: return tasks in buckets by view
...
BREAKING CHANGE: tasks in their bucket are now only retrievable via their view. The /project/:id/buckets endpoint now only returns the buckets for that project, which is more in line with the other endpoints
2024-03-19 00:47:46 +01:00
kolaente
652bf4b4ed
feat(views): (un)marshal custom project view mode types
2024-03-19 00:47:46 +01:00
kolaente
a9020e976d
feat(views): add bucket configuration mode
2024-03-19 00:47:46 +01:00
kolaente
38457aaca5
feat(views): use project id when fetching views
2024-03-19 00:47:46 +01:00
kolaente
98b7cc9254
feat(views): do not override filters in view
2024-03-19 00:47:46 +01:00
kolaente
4149ebed3a
feat(views): create default views when creating a filter
2024-03-19 00:47:46 +01:00
kolaente
2096fc5274
feat(views): return tasks in a view
2024-03-19 00:47:46 +01:00
kolaente
e4b1a5d2db
feat(views): create default 4 default view for projects
2024-03-19 00:47:46 +01:00
kolaente
2fa3e2c2f5
feat(views): return views with their projects
2024-03-19 00:47:46 +01:00
kolaente
b39c5580c2
feat(views): add crud handlers and routes for views
2024-03-19 00:47:45 +01:00
kolaente
6bdb33fb46
feat(views): add new model and migration
2024-03-19 00:47:45 +01:00
kolaente
8c826c44d2
fix(webhooks): fire webhooks set on parent projects as well
2024-03-13 19:41:34 +01:00
kolaente
5b2b7f7bdc
fix(kanban): reset done and default bucket when the bucket itself is deleted
...
Resolves https://github.com/go-vikunja/vikunja/issues/234
2024-03-12 22:23:35 +01:00
kolaente
a5c51d4b1e
feat: emoji reactions for tasks and comments ( #2196 )
...
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: https://kolaente.dev/vikunja/vikunja/pulls/2196
Co-authored-by: kolaente <k@knt.li>
Co-committed-by: kolaente <k@knt.li>
2024-03-12 19:25:58 +00:00
kolaente
09d5128050
fix(filters): don't escape valid escaped in queries
2024-03-11 17:02:04 +01:00
kolaente
a66e26678e
feat(filters): pass timezone down when filtering with relative date math
...
Resolves https://community.vikunja.io/t/my-vikunja-instance-creates-tasks-with-due-date-time-of-9am-for-tasks-with-the-word-today-word-in-it/2105/8
2024-03-11 16:28:25 +01:00
kolaente
6fc3d1e98f
fix: lint
2024-03-11 15:42:09 +01:00
kolaente
3896c680d3
fix(filters): do not require string for in comparator
2024-03-11 14:36:59 +01:00
waza-ari
6c98052176
fix(teams): fix duplicate teams being shown when new public team visibility feature is enabled ( #2187 )
...
Due to the `INNER JOIN` on the `team_members` table and the new `OR` conditions allowing teams with the `isPublic` flag set to `true`, teams are returned multiple times. As we're only after the teams, a simple distinct query should fix the issue.
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com>
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2187
Co-authored-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de>
Co-committed-by: waza-ari <daniel.herrmann@makerspace-darmstadt.de>
2024-03-10 21:42:34 +00:00
waza-ari
ffa82556e0
feat(teams): add public flags to teams to allow easier sharing with other teams ( #2179 )
...
Resolves #2173
Co-authored-by: Daniel Herrmann <daniel.herrmann1@gmail.com>
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/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
renovate
d7fdefcead
chore(deps): update golangci/golangci-lint docker tag to v1.56.2 ( #2099 )
...
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2099
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2024-03-10 13:47:19 +00:00
kolaente
654e95d99f
fix(filters): test fixture
2024-03-09 20:21:05 +01:00
kolaente
4e6e0608c7
fix(filters): lint
2024-03-09 20:08:17 +01:00
kolaente
05d3bb4fb6
fix(filters): swagger docs for kanban buckets
2024-03-09 19:07:31 +01:00
kolaente
d0b762d761
docs(filter): add filter query explanation
2024-03-09 19:07:31 +01:00
kolaente
28fa2c517a
feat(filters): make new filter syntax work with Typesense
2024-03-09 19:06:48 +01:00
kolaente
bc6d812eb0
fix(filters): lint
2024-03-09 19:06:35 +01:00
kolaente
87c027aafd
chore(filters): cleanup old variables
2024-03-09 19:06:35 +01:00
kolaente
65e1357705
fix(tests): make filter tests work again
2024-03-09 19:06:35 +01:00
kolaente
eebfee73d3
fix(filter): correctly filter for buckets
2024-03-09 19:06:35 +01:00
kolaente
ef1cc9720c
feat(filter): add in keyword
2024-03-09 19:06:35 +01:00
kolaente
c6b682507a
feat(filter): add better error message when passing an invalid filter expression
2024-03-09 19:06:35 +01:00
kolaente
9d3fb6f81d
chore(filter): cleanup
2024-03-09 19:06:35 +01:00
kolaente
76ed2cff5f
feat(filter): nesting
2024-03-09 19:06:35 +01:00
kolaente
e43349618b
feat(filter): more tests
2024-03-09 19:06:35 +01:00
kolaente
9624cc9e97
fix(filter): translate all tests
2024-03-09 19:06:35 +01:00
kolaente
764bc15d49
fix(filter): allow filtering for "project"
2024-03-09 19:06:34 +01:00
kolaente
3fc4aaa2a1
fix(filter): allow filtering on "in" condition
2024-03-09 19:06:34 +01:00
kolaente
9f73e2c5f9
fix(filter): don't crash on empty filter
2024-03-09 19:06:34 +01:00
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
kolaente
61bce2b349
fix(projects): don't return child projects multiple times
2023-11-15 12:56:36 +01:00
Miguel Arroyo
225d65268d
feat(caldav): Add support for subtasks (i.e. `RELATED-TO` property) in CalDAV ( #1634 )
...
As I mentioned [here](https://kolaente.dev/vikunja/api/pulls/1442#issuecomment-55215 ), this is mainly a cleanup of @zewaren 's original [PR](https://kolaente.dev/vikunja/api/pulls/1442 ).
It adds support for the `RELATED-TO` property in CalDAV's `VTODO` and the `RELTYPE=PARENT` and `RELTYPE=CHILD` relationships. In other words, it allows for `ParentTask->SubTask` relations to be handled supported through CalDAV.
In addition to the included tests, this has been tested by both @zewaren & myself with DAVx5 & Tasks (Android) and it's been working great.
Resolves https://kolaente.dev/vikunja/api/issues/1345
Co-authored-by: Miguel A. Arroyo <miguel@codeheads.dev>
Co-authored-by: Erwan Martin <public@fzwte.net>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1634
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Miguel Arroyo <mayanez@noreply.kolaente.de>
Co-committed-by: Miguel Arroyo <mayanez@noreply.kolaente.de>
2023-11-10 22:44:03 +00:00
kolaente
6169c2e12e
fix(typesense): correctly convert date values for typesense
...
Resolves https://kolaente.dev/vikunja/api/issues/1636
2023-11-09 12:29:52 +01:00
kolaente
b2866ca3da
feat(api): enable notifications for api token routes
2023-11-07 14:58:46 +01:00
kolaente
a375223872
fix: properly tag bucket-related operations
2023-10-24 16:13:15 +02:00
kolaente
a1ea77f751
feat: accept hex values which start with a #
2023-10-24 16:12:22 +02:00
kolaente
66cf7ab50a
feat(reminders): include project in reminder notification
2023-10-20 13:56:14 +02:00
kolaente
55d345e236
feat(webhooks): validate events and target url
2023-10-20 12:42:28 +02:00
kolaente
61cd08fa13
fix(webhooks): add created by user object when creating a webhook
2023-10-18 22:18:45 +02:00
kolaente
72366a5b27
feat(webhooks): add created by user object when returning all webhooks
2023-10-18 20:06:07 +02:00
kolaente
b4e3d8ee47
fix(webhooks): lint
2023-10-17 20:40:09 +02:00
kolaente
7a74e491da
fix(webhooks): lint
2023-10-17 20:35:14 +02:00
kolaente
2c84cec044
docs(webhooks): add swagger docs for all webhook endpoints
2023-10-17 20:35:14 +02:00
kolaente
fc0029eed7
fix(webhooks): don't send the proxy auth header to the webhook target
2023-10-17 20:35:14 +02:00
kolaente
1b82f26d3e
chore(webhooks): simplify registering webhook events
2023-10-17 20:35:13 +02:00
kolaente
ec4aa606e2
chore(webhooks): reuse webhook client
2023-10-17 20:35:13 +02:00
kolaente
831aa4a014
feat(webhooks): add support for webhook proxy
2023-10-17 20:35:13 +02:00
kolaente
b38360c9a5
feat(webhooks): add timeout config option
2023-10-17 20:35:13 +02:00
kolaente
34a92b759e
feat(webhooks): add setting to enable webhooks
2023-10-17 20:35:13 +02:00
kolaente
a0d8b28813
feat(webhooks): add hmac signing
2023-10-17 20:35:13 +02:00
kolaente
a3a323cbf1
feat(webhooks): set user agent header to Vikunja
2023-10-17 20:35:13 +02:00
kolaente
4253d14367
chore(webhooks): remove WebhookEvent interface
2023-10-17 20:35:13 +02:00
kolaente
96ccf6b923
feat(webhooks): add route to get all available webhook events
2023-10-17 20:35:13 +02:00
kolaente
eb1b9247ad
feat(webhooks): prevent link shares from managing webhooks
2023-10-17 20:35:13 +02:00
kolaente
57de44694c
feat(webhooks): add index on project id
2023-10-17 20:35:13 +02:00
kolaente
8d7a492936
feat(webhooks): add filter based on project id
2023-10-17 20:35:13 +02:00
kolaente
7d1c5c50c5
feat(webhooks): add basic sending of webhooks
2023-10-17 20:35:12 +02:00
kolaente
c5de41f183
feat(webhooks): add event listener to send webhook payload
2023-10-17 20:35:12 +02:00
kolaente
e5b8d8bd2d
feat(webhooks): register task and project events as webhook
2023-10-17 20:35:12 +02:00
kolaente
ad7d485eb5
feat(webhooks): add basic crud actions for webhooks
2023-10-17 20:35:12 +02:00
kolaente
58497f29e6
fix(kanban): filter for tasks in buckets by assignee should not modify the filter directly
...
Resolves https://github.com/go-vikunja/api/issues/84
2023-10-11 18:43:28 +02:00
kolaente
56625b0b90
fix: lint
2023-10-10 20:35:43 +02:00
kolaente
f5ac3abb2a
chore(test): add task deleted assertion to project deletion test
2023-10-03 15:52:38 +02:00
kolaente
c217233e08
fix(typesense): getting all data from typesense
2023-09-29 21:26:12 +02:00
kolaente
98102e59f2
feat(typesense): add new tasks to typesense directly when they are created
2023-09-29 21:15:28 +02:00
kolaente
8f4ee3a089
fix(typesense): make sure searching works when no task has a comment at index time
2023-09-29 16:35:59 +02:00
Erwan Martin
feacbbff74
fix(caldav): do not update dates of tasks when repositioning them ( #1605 )
...
When a task is updated, the position of the tasks of the whole project/bucket are updated. This leads to column "updated" of model Task to be updated quite often. However, that column is used for the ETag field of CALDAV.
Thus, changing a task marks all the other tasks as updated, which prevents clients from synchronizing their edited tasks.
Co-authored-by: Erwan Martin <erwan@pepper.com>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1605
Co-authored-by: Erwan Martin <public@fzwte.net>
Co-committed-by: Erwan Martin <public@fzwte.net>
2023-09-27 16:17:52 +00:00
kolaente
f065dcf4ad
fix(typesense): add typesense sync to initial structs
2023-09-15 12:53:29 +02:00
kolaente
addcbdd8ca
fix(test): don't check for error
2023-09-13 12:52:42 +02:00
kolaente
054f21821c
fix(typesense): don't try to index tasks if there are none
2023-09-13 12:19:09 +02:00
kolaente
1ee243f2bd
fix(project background): add more checks for whether a background file exists when duplicating or deleting a project
...
Related discussion: https://community.vikunja.io/t/500-internal-server-error-when-selecting-unsplash-background-image/778/18
2023-09-13 11:20:59 +02:00
kolaente
bfcefa0217
fix(caldav): check for related tasks synced back from a caldav client
...
Related discussion https://community.vikunja.io/t/tasks-org-subtask-syncing-issue/737/9
2023-09-07 11:29:44 +02:00
kolaente
68d4dcd7e6
fix(projects): don't limit results to top-level projects when searching
...
Resolves https://github.com/go-vikunja/api/issues/82
2023-09-07 10:56:59 +02:00
kolaente
b8e73f4fa5
fix: lint
2023-09-06 10:52:30 +02:00
kolaente
bfb01898c2
fix(api tokens)!: make sure task create routes are available to use with the api
...
BREAKING CHANGE: The api route to create a new task is now /projects/:project/tasks instead of /projects/:project
2023-09-06 10:33:52 +02:00
kolaente
f38535b2f4
fix(typesense): upsert all documents at once
2023-09-04 11:19:55 +02:00
kolaente
093b5b99a0
fix(typesense): pass the correct user when fetching task comments
2023-09-04 10:42:10 +02:00
kolaente
490d374cfd
fix(typesense): add more error logging
2023-09-04 10:20:51 +02:00
kolaente
21a1f02ea3
fix(typesense): add more error logging
2023-09-03 22:54:50 +02:00
kolaente
1a492722dd
fix(typesense): upsert one document at a time
2023-09-03 22:51:43 +02:00
kolaente
0e32d478d1
fix(projects): save done and default bucket when updating project
2023-09-03 15:50:47 +02:00
kolaente
60bd5c8a79
feat: make default bucket configurable
2023-09-03 15:17:17 +02:00
kolaente
bbbb45d224
feat: move done bucket setting to project
2023-09-03 15:01:35 +02:00
konrad
60cd1250a0
feat: api tokens
...
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1600
2023-09-01 14:34:39 +00:00
kolaente
edbfc06a41
fix(kanban): don't prevent setting a different bucket as done bucket
...
Resolves https://kolaente.dev/vikunja/frontend/issues/3373
2023-09-01 16:18:59 +02:00
kolaente
769b4f8d66
fix(task): remove task relation in the other direction as well
...
Resolves https://community.vikunja.io/t/removing-parent-relationship-doesnt-remove-the-subtask-relationship/1492/3
2023-09-01 16:12:20 +02:00
kolaente
eac4e455fd
fix(api tokens): lint
2023-09-01 15:56:35 +02:00
kolaente
a4d946b4a9
fix(api tokens): test
2023-09-01 15:54:39 +02:00
kolaente
14c5a8ca5b
fix(api tokens): make sure read one routes show up in routes endpoint
2023-09-01 12:58:29 +02:00
kolaente
e3c5a93f4f
chore(api tokens): remove updated date from tokens as it can't be updated anyway
2023-09-01 11:16:36 +02:00
kolaente
d9bfcdab8e
feat(api tokens): add tests
2023-09-01 10:19:31 +02:00
kolaente
e3dac16398
feat(api tokens): check permissions when saving
2023-09-01 08:52:57 +02:00
kolaente
e4c71123ef
fix: lint
2023-09-01 08:39:25 +02:00
kolaente
fb2a1c59db
feat(api tokens): check if a provided token matched a hashed on in the database
2023-09-01 08:36:15 +02:00
kolaente
c88cbaa973
feat(api tokens): properly hash tokens
2023-09-01 08:36:11 +02:00
kolaente
e6b25bd57b
feat(api tokens): add crud routes to manage api tokens
2023-09-01 08:35:54 +02:00
kolaente
3faf48706a
feat(api tokens): add api token struct and migration
2023-09-01 08:35:54 +02:00
kolaente
e518fb1191
chore: remove year from copyright headers
...
Resolves https://kolaente.dev/vikunja/api/pulls/1483
2023-09-01 08:32:28 +02:00
kolaente
5811d2a13b
fix: order by clause in task comments
2023-08-31 15:44:59 +02:00
kolaente
5392ca788c
fix(comments): make sure comment sort order is stable
...
Resolves https://community.vikunja.io/t/comment-order-is-not-by-time/1147/3?u=kolaente
2023-08-29 14:09:53 +02:00
kolaente
02184663e5
fix(filter): assignee search by partial username test
2023-08-29 11:40:53 +02:00
kolaente
29317b980e
fix: lint
2023-08-29 11:32:45 +02:00
kolaente
4f2796ac58
fix(filters): make "in" filter comparator work with Typesense
2023-08-29 11:14:36 +02:00
kolaente
d0e3062bee
feat(tasks): allow filtering for reminders, assignees and labels with Typesense
2023-08-29 10:54:18 +02:00
kolaente
748651447a
feat(tasks): find tasks by their identifier when searching with Typesense
2023-08-29 09:31:36 +02:00
kolaente
2ca193e63b
feat(tasks): make sorting and filtering work with Typesense
2023-08-28 19:10:18 +02:00
kolaente
09cfe41e4f
feat(tasks): remove deleted tasks from Typesense
2023-08-28 13:34:47 +02:00
kolaente
1a82d6da44
feat(tasks): add periodic resync of updated tasks to Typesense
2023-08-28 13:26:40 +02:00
kolaente
010b4ce783
feat(tasks): add searching via typesense
2023-08-28 12:14:50 +02:00
kolaente
dee46d527a
feat(tasks): add typesense indexing
2023-08-28 11:11:30 +02:00
kolaente
693a77ae51
fix(user): don't prevent deleting a user if their default project was shared
...
Resolves https://kolaente.dev/vikunja/api/issues/1595
2023-08-25 15:14:25 +02:00
kolaente
49d8713388
fix: typo
2023-08-24 11:16:07 +02:00
kolaente
1b9c4204a8
fix(reminders): make sure reminders are only sent once per user
...
Previously, when a user was creator and assigned to a task, they would get two reminder notifications for the same task. This was caused by Vikunja first fetching all creators and then all assignees and not removing duplicates from that list.
Related: https://community.vikunja.io/t/duplicate-email-reminders/1505/3
2023-08-24 10:47:17 +02:00
kolaente
5e8084c194
fix(project): duplicating a project should not create two backlog buckets
...
Resolves https://community.vikunja.io/t/when-duplicating-a-project-the-resulting-project-has-an-extra-bucket/1524
2023-08-23 16:19:42 +02:00
kolaente
acb03c430e
fix(user): allow deleting a user if they have a default project
...
Resolves https://github.com/go-vikunja/api/issues/78
2023-08-23 16:10:51 +02:00
kolaente
86f25f253b
fix(project): duplicate project into parent project
2023-07-07 12:56:15 +02:00
kolaente
b5194624e0
fix: don't try to load subscriptions for nonexistent projects
2023-07-03 18:18:13 +02:00
kolaente
117c569721
fix(projects): return subprojects which were shared from another user
2023-07-03 11:45:29 +02:00
kolaente
895263f054
fix(filters): sorting tasks from filters
...
Resolves https://community.vikunja.io/t/filter-table-view-not-sorting/1416
2023-06-21 14:59:40 +02:00
renovate
1dc9c50d64
fix(deps): update module github.com/imdario/mergo to v1 ( #1559 )
...
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1559
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2023-06-20 10:02:21 +00:00
cernst
4a4ba041e0
chore: remove reminderDates after frontend is migrated to reminders ( #1448 )
...
Co-authored-by: ce72 <christoph.ernst72@googlemail.com>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1448
Reviewed-by: konrad <k@knt.li>
Co-authored-by: cernst <ce72@noreply.kolaente.de>
Co-committed-by: cernst <ce72@noreply.kolaente.de>
2023-06-10 17:21:36 +00:00
kolaente
d83e3a0a03
chore: remove cache options
...
Cache was not working correctly, added more complexity and actually made response times slower. Because of this, I'm removing all cache options until we figure out a better solution.
Resolves https://kolaente.dev/vikunja/api/issues/1496
Resolves https://kolaente.dev/vikunja/api/issues/907
2023-06-08 17:05:36 +02:00
kolaente
72e0e22152
feat(kanban): return the total task count per bucket
2023-06-08 16:56:05 +02:00
kolaente
ef94e0cf86
feat(projects): don't allow deleting or archiving the default project
2023-06-07 21:29:46 +02:00
kolaente
ad0690369f
fix: lint
2023-06-07 21:00:12 +02:00
kolaente
ebfb3f9aaa
fix(filter): don't try to get the real subscription for a saved filter project
2023-06-07 20:41:59 +02:00
kolaente
4ed2d305f0
fix(task): don't build partial task identifier
2023-06-07 20:33:18 +02:00
kolaente
7b7a914560
fix(test): use correct filter id
2023-06-07 20:30:28 +02:00
kolaente
43ef5f98d8
fix(projects): don't fail to fetch a task if there's a broken subscription record associated to it
2023-06-07 20:30:14 +02:00
kolaente
e66344c21e
fix(task): don't try to return a project identifier if there is no project
2023-06-07 20:29:35 +02:00
kolaente
7755b9cd49
fix(projects): delete project in the correct order
2023-06-07 20:28:36 +02:00
kolaente
67825425a4
fix(filters): return all filters with all projects, not grouped under a pseudo project
2023-06-07 18:55:36 +02:00
kolaente
69bd023b62
fix(tasks): return a correct task identifier if the list does not have a good one set
2023-06-07 18:17:08 +02:00
kolaente
1a840c8b87
fix(tasks): make sure task deleted notification actually has information about the deleted task
2023-06-07 18:14:20 +02:00
kolaente
e3842b6df7
fix(projects): reset pagination limit when fetching subprojects
2023-06-06 17:24:27 +02:00
renovate
8c3ef34f75
fix(deps): update github.com/vectordotdev/go-datemath digest to 640a500 ( #1532 )
...
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1532
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2023-05-30 18:11:31 +00:00
kolaente
a51bbd1159
fix: don't get favorite task projects filter multiple times
2023-05-24 15:52:33 +02:00
kolaente
db3c7aa8b0
fix: make sure projects are correctly sorted
2023-05-24 15:52:33 +02:00
kolaente
353279cbff
fix: fetch all tasks for all projects
2023-05-24 15:52:33 +02:00
kolaente
3b0935d033
docs: remove all traces of namespaces
2023-05-24 15:52:33 +02:00
kolaente
9011894a29
feat: check for cycles when creating or updating a project's parent
2023-05-24 15:52:33 +02:00
kolaente
edcb806421
feat: remove ChildProjects project property
2023-05-24 15:52:33 +02:00
kolaente
f2d943f5c4
fix: add missing error code
2023-05-24 15:52:33 +02:00
kolaente
35964ce4a6
fix(projects): recalculate project's position after dragging when position would be 0
2023-05-24 15:52:33 +02:00
kolaente
53b2ade5bb
feat(projects): return a favorites pseudo project when the user has favorite tasks
2023-05-24 15:52:32 +02:00
kolaente
b482664d82
fix(projects): don't allow making a project child of itself
2023-05-24 15:52:32 +02:00
kolaente
aafcb0bac4
fix(projects): don't return child projects twice
2023-05-24 15:52:32 +02:00
kolaente
0110f93313
feat: make the new inbox project the default
2023-05-24 15:52:32 +02:00
kolaente
f1cbe50605
fix: rename project receiver variable
2023-05-24 15:52:32 +02:00
kolaente
d7396fac57
fix(test): adjust fixture id
2023-05-24 15:52:32 +02:00
kolaente
a21bff3ffb
fix: compile errors
2023-05-24 15:52:32 +02:00
kolaente
ebc3dd2b3e
fix: lint errors
2023-05-24 15:51:57 +02:00
kolaente
4b55e2ce03
fix(migration): make file migration work with new structure
2023-05-24 15:51:56 +02:00
kolaente
2f81791735
chore(export): remove unused events
2023-05-24 15:51:56 +02:00
kolaente
8235c63f60
fix(tests): task collection fixtures
2023-05-24 15:51:56 +02:00
kolaente
03b7fa6dd3
fix(tests): subscription test fixtures
2023-05-24 15:51:56 +02:00
kolaente
5e6bff20f8
fix(tests): task permissions from parents
2023-05-24 15:51:56 +02:00
kolaente
154ac61d7c
fix(projects): properly check if a user or link share is allowed to create a new project
2023-05-24 15:51:56 +02:00
kolaente
48beb5f382
fix(project): don't allow un-archiving a project when its parent project is archived
2023-05-24 15:51:56 +02:00
kolaente
0cd633981a
fix(project): recursively get all users from all parent projects
2023-05-24 15:51:56 +02:00
kolaente
19f69419f7
fix(tasks): task relation test
2023-05-24 15:51:55 +02:00
kolaente
6bb42ced9d
fix(tasks): read all tests
2023-05-24 15:51:55 +02:00
kolaente
537ba60f2d
fix(tasks): get all tasks from parent projects
2023-05-24 15:51:55 +02:00
kolaente
ceaa9c0e03
feat(subscriptions): make sure all subscriptions are inherited properly
2023-05-24 15:51:55 +02:00
kolaente
afe756e4c1
fix(tests): make the tests compile again
2023-05-24 15:51:55 +02:00
kolaente
f4fc431b6f
fix(projects): permission check now works
2023-05-24 15:51:55 +02:00
kolaente
438f5c8e12
fix(projects): don't check if new projects are archived
2023-05-24 15:51:55 +02:00
kolaente
3e8d1b3667
chore(projects) use a slice again
2023-05-24 15:51:55 +02:00
kolaente
18b9ff8512
feat(projects): check parent project when checking archived status
2023-05-24 15:51:55 +02:00
kolaente
5e2567645a
feat(projects): check all parent projects for permissions
2023-05-24 15:51:55 +02:00
kolaente
d799915e78
feat(projects): get all projects recursively
2023-05-24 15:51:55 +02:00
kolaente
4c698dc7c7
fix: typo
2023-05-24 15:51:55 +02:00
kolaente
d79c393e5b
fix: make it compile again
2023-05-24 15:51:54 +02:00
kolaente
5d02d93d31
fix(tasks): don't check for namespaces in filters
2023-05-24 15:51:54 +02:00
kolaente
7c448c88a8
fix(project): don't check for namespaces in overdue reminders
2023-05-24 15:51:54 +02:00
kolaente
906574adc9
fix(project): remove comments, clarifications, notifications about namespaces
2023-05-24 15:51:54 +02:00
kolaente
d794a2c5ca
fix(project): remove namespaces checks
2023-05-24 15:51:54 +02:00
kolaente
8cff813e9f
fix(project): remove namespaces from creating projects
2023-05-24 15:51:54 +02:00
kolaente
2dcd6451a4
fix(project): remove namespaces from getting projects
2023-05-24 15:51:54 +02:00
kolaente
386e218b95
feat(migration): use new structure for migration
2023-05-24 15:51:54 +02:00
kolaente
fef253312c
feat(projects): cleanup namespace leftovers
2023-05-24 15:51:54 +02:00
kolaente
16de7cd591
feat(projects): remove namespaces
2023-05-24 15:51:54 +02:00
kolaente
0795828a9f
feat(projects): add parent project, migrate namespaces
2023-05-24 15:51:54 +02:00
kolaente
359d0512cc
fix: upgrade jwt v5
2023-05-23 16:37:16 +02:00
kolaente
aa43127e52
fix: provide a proper error message when viewing a link share with an invalid token
2023-04-17 11:08:38 +02:00
kolaente
10f71c29b2
fix(saved filters): don't let query parameters override saved sorting parameters
...
Resolves https://kolaente.dev/vikunja/frontend/issues/3380
2023-04-14 11:01:31 +02:00
Dominik Pschenitschni
cca430810d
fix(image): json type of struct property ( #1469 )
...
Co-authored-by: Dominik Pschenitschni <mail@celement.de>
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1469
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Dominik Pschenitschni <dpschen@noreply.kolaente.de>
Co-committed-by: Dominik Pschenitschni <dpschen@noreply.kolaente.de>
2023-04-06 09:53:09 +00:00
Dominik Pschenitschni
f76bb2b4a9
fix: align task ID param
2023-04-05 12:14:10 +00:00
Dominik Pschenitschni
cd90db3117
chore: fix spelling
2023-04-05 12:14:10 +00:00
Dominik Pschenitschni
b6d5605ef6
fix: align "ID" param for Delete and Update method of Task model
2023-04-05 12:14:10 +00:00
Dominik Pschenitschni
ac377a7a5d
fix: align "otherTaskID" param for Delete method of TaskRelation model
2023-04-05 12:14:10 +00:00
kolaente
a7231e197e
feat: allow to find users with access to a project more freely
...
Related to https://kolaente.dev/vikunja/frontend/issues/2196
2023-04-03 18:49:04 +02:00
WofWca
eb93ccb827
chore(docs): add info about `/buckets` sorting
2023-04-03 05:20:42 +00:00
cernst
3f5252dc24
feat: Add relative Reminders ( #1427 )
...
Partially resolves #1416
Co-authored-by: ce72 <christoph.ernst72@googlemail.com>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1427
Reviewed-by: konrad <k@knt.li>
Co-authored-by: cernst <ce72@noreply.kolaente.de>
Co-committed-by: cernst <ce72@noreply.kolaente.de>
2023-03-27 20:07:06 +00:00
kolaente
4d5ad8f50e
chore(deps): update golangci-lint to 1.52.1
2023-03-24 19:17:45 +01:00
WofWca
6aadaaaffc
chore: rename files (fix typo)
2023-03-21 19:02:05 +00:00
kolaente
7a9611c2da
chore: cleanup
2023-03-13 14:28:36 +01:00
kolaente
77ad90d53e
fix(migration): remove wunderlist leftovers
2023-03-13 14:28:20 +01:00
kolaente
e4f841cf6a
fix(tasks): sql for overdue reminders
2023-03-13 14:28:19 +01:00
kolaente
7e53a21407
fix: rename incorrectly named ProjectUsers method
2023-03-13 14:28:06 +01:00
kolaente
8f4abd2fe8
feat: rename all list files
2023-03-13 14:28:06 +01:00
kolaente
349e6a5905
feat: rename lists to projects
2023-03-13 14:28:06 +01:00
kolaente
077baba2ea
fix: lint
2023-03-05 14:34:34 +01:00
kolaente
066c26f83e
fix(caldav): make sure only labels where the user has permission to use them are used
...
Follow-up for a62b57ac62
2023-03-05 14:03:09 +01:00
cernst
a62b57ac62
feat(caldav): import caldav categories as Labels ( #1413 )
...
Resolves #1274
Co-authored-by: ce72 <christoph.ernst72@googlemail.com>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1413
Reviewed-by: konrad <k@knt.li>
Co-authored-by: cernst <ce72@noreply.kolaente.de>
Co-committed-by: cernst <ce72@noreply.kolaente.de>
2023-03-02 15:25:26 +00:00
kolaente
534d04a1db
fix(task): correctly load tasks by id and uuid in caldav
...
Partially reverts 1afc72e190
2023-03-01 22:18:59 +01:00
cernst
1afc72e190
fix: Make sure labels are always exported as caldav ( #1412 )
...
Authored-by: ce72 <christoph.ernst72@googlemail.com>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1412
Reviewed-by: konrad <k@knt.li>
Co-authored-by: cernst <ce72@noreply.kolaente.de>
Co-committed-by: cernst <ce72@noreply.kolaente.de>
2023-02-28 10:42:57 +00:00
kolaente
ca6d1946da
fix(tasks): make sure tasks are sorted by position before recalculating them
2023-02-23 17:43:23 +01:00
kolaente
1efa1696bf
fix(tasks): recalculate position of all tasks in a list or bucket when it would hit 0
2023-02-23 16:00:41 +01:00
kolaente
20a5994b17
fix: lint
2023-02-14 20:37:16 +01:00
kolaente
fceb5dae0f
fix(task): make sure the task's last updated timestamp is always updated when releated entities changed
2023-02-14 20:09:05 +01:00
clos
afdceb0aff
fix(list): when list background is removed, delete file from file system and DB ( #1372 )
...
Co-authored-by: testinho.testador <testinho.testador@noreply.kolaente.de>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1372
Reviewed-by: konrad <k@knt.li>
Co-authored-by: clos <clos@noreply.kolaente.de>
Co-committed-by: clos <clos@noreply.kolaente.de>
2023-02-01 11:38:23 +00:00
kolaente
491a142378
fix: lint
2023-01-29 22:42:24 +01:00
kolaente
40411e4100
chore(task): add test to check if a task's reminders are duplicated
2023-01-26 16:06:49 +01:00
kolaente
7bf7a13bb9
fix(reminders): prevent duplicate reminders when updating task details
2023-01-23 18:14:15 +01:00
kolaente
82f4a5ad50
fix(export): ignore file size for export files
2023-01-11 18:56:30 +01:00
kolaente
04614614fe
fix(tasks): don't set a repeating task done when moving it do the done bucket
2023-01-11 18:46:24 +01:00
kolaente
194b88e2eb
fix(tasks): don't reset the kanban bucket when updating a task and not providing one
...
Resolves https://github.com/go-vikunja/api/issues/56
2022-12-24 14:30:34 +01:00
kolaente
c5327845ee
feat(caldav): add support for repeating tasks
...
Resolves https://github.com/go-vikunja/api/issues/57#issuecomment-1364373103
2022-12-24 12:19:51 +01:00
kolaente
ea1d06bda6
fix(list): return lists for a namespace id even if that namespace is deleted
...
This fixes a problem where a namespace was deleted and its list were not.
Forum discussion: https://community.vikunja.io/t/list-deleted-but-tasks-showing-up-as-archived-and-overdue/1025
2022-12-23 17:48:21 +01:00
kolaente
1f2eb57602
fix(reminders): make sure an overdue reminder is sent when there is only one overdue task
2022-12-01 18:41:24 +01:00
kolaente
51911a8868
fix(reminders): overdue tasks join condition
2022-12-01 18:30:05 +01:00
kolaente
47aae115df
fix(tasks): don't include undone overdue tasks from archived lists or namespaces in notification mails
...
Resolves https://kolaente.dev/vikunja/api/issues/1324
2022-12-01 18:07:30 +01:00
kolaente
96b5e93379
fix: swagger docs
2022-11-11 15:34:26 +01:00
kolaente
33e27c66a0
fix(filters): try parsing invalid dates like 2022-11-1
2022-11-11 11:05:21 +01:00
kolaente
986129a784
fix(filters): try parsing dates without time
2022-11-11 10:54:50 +01:00
kolaente
3d7605591e
fix(filters): try to parse date filter fields of the provided dates are not valid iso dates
...
Resolves https://community.vikunja.io/t/due-date-saved-filter-doesnt-seem-to-work/966/12
2022-11-10 16:39:44 +01:00
kolaente
a9e6776abf
fix(tasks): allow sorting by task index
2022-11-09 14:43:31 +01:00
kolaente
f9b48ec091
fix(filter): only check for 0 values in filter fields with numeric values
2022-11-08 17:03:07 +01:00
kolaente
3b0b4a8460
fix(task): duplicate reminders when adding different ones between winter / summer time
...
Resolves F-889
2022-11-08 16:50:19 +01:00
kolaente
2ef5e54588
fix(filter): also check for 0 values if the filter should include nulls
...
Resolves https://community.vikunja.io/t/due-date-saved-filter-doesnt-seem-to-work/966
2022-11-08 16:27:16 +01:00
kolaente
622f2f0562
fix: look for the default bucket based on the position instead of the index
2022-11-03 15:10:20 +01:00
kolaente
c495096444
fix: make sure task indexes are calculated correctly when moving tasks between lists
...
Resolves https://github.com/go-vikunja/api/issues/52
2022-11-02 17:40:52 +01:00
kolaente
9fc08a0790
fix(lists): return correct max right for lists where the user has created the namespace
2022-10-25 18:54:11 +02:00
kolaente
b8769c746c
feat: allow a user to remove themselves from a team
2022-10-09 16:39:40 +02:00
kolaente
2fc690a783
fix: make sure list subscriptions are set correctly when their namespace has a subscription already
2022-10-07 14:18:36 +02:00
kolaente
008908eb49
fix: make sure a user can only be assigned once to a task
...
See https://community.vikunja.io/t/task-can-be-assigned-twice-or-more-to-the-same-user/883
2022-10-06 18:22:19 +02:00
kolaente
631a265d2d
feat: add proper checks and errors to see if an attachment belongs to the task it's being used as cover image in
2022-10-05 15:12:29 +02:00
kolaente
0eb47096db
fix: make cover image id actually updatable
2022-10-05 15:12:29 +02:00
kolaente
0e1904d50b
fix: make cover image id actually updatable
2022-10-05 15:12:29 +02:00
kolaente
b4b25499f2
feat(task): add cover image attachment id property
2022-10-05 15:12:29 +02:00
renovate
c5bd09702a
chore(deps): update dependency golang to v1.19 ( #1228 )
...
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1228
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2022-10-01 15:05:12 +00:00
kolaente
878d19beb8
fix: make sure pseudo namespaces and lists always have the current user as owner
2022-10-01 15:19:46 +02:00
kolaente
96ed1e33e3
fix: don't allow setting a list namespace to 0
...
See https://github.com/go-vikunja/app/issues/13
2022-10-01 15:02:17 +02:00
kolaente
45defebcf4
fix: tasks with the same assignee as doer should not appear twice in overdue task mails
2022-09-30 18:35:40 +02:00
Luca Bernstein
3adfeb3b34
fix(namespaces): add list subscriptions ( #1254 )
...
Add list subscriptions to namespaces call to enable frontend to show subscription state correctly.
Resolves https://github.com/go-vikunja/frontend/issues/75
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1254
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Luca Bernstein <luca@lucabernstein.com>
Co-committed-by: Luca Bernstein <luca@lucabernstein.com>
2022-09-29 09:49:24 +00:00
Arie
090c67138a
fix: preserve dates for repeating tasks ( #47 )
...
Reviewed-At: https://github.com/go-vikunja/api/pull/47
2022-09-16 17:20:08 +02:00
kolaente
0c8bed4054
fix: lint
2022-08-16 21:27:32 +00:00
kolaente
9ddd7f4889
fix: only list all users when allowed
2022-08-16 21:27:32 +00:00
kolaente
7f28865903
feat: search by assignee username instead of id
2022-08-16 21:27:32 +00:00
kolaente
3ccc6365a6
fix: prevent moving a list into a pseudo namespace
2022-08-15 23:25:39 +02:00
kolaente
c51ee94ad1
fix: return all users on a list when no search param was provided
2022-08-02 15:02:00 +02:00
kolaente
382a7884be
fix: make sure to use user discoverability settings when searching list users
...
Resolves https://kolaente.dev/vikunja/frontend/issues/2196
2022-08-02 13:26:42 +02:00
kolaente
dd461746a6
fix: add validation for negative repeat after values
...
Partial fix for https://kolaente.dev/vikunja/frontend/issues/2179
2022-07-21 15:00:28 +02:00
kolaente
5743a4afe5
fix: properly set tls config for mailer
2022-07-11 16:10:28 +02:00
kolaente
62325de9cd
feat: use actual uuids for tasks
2022-07-11 14:54:33 +02:00
kolaente
5cc4927b9e
fix: add missing error check
2022-07-07 23:23:15 +02:00
kolaente
f5a4c136fb
fix: cycles in tasks array when memory caching was enabled
...
Resolves #1119
2022-07-07 18:34:49 +02:00
kolaente
01271c4c01
feat: allow only the authors of task comments to edit them
2022-06-16 17:38:27 +02:00
kolaente
8869adfc27
feat: add setting to change overdue tasks reminder email time
2022-06-16 16:20:26 +02:00
kolaente
7eb3b96a44
feat: send overdue tasks email notification at 9:00 in the user's time zone
2022-06-12 21:24:28 +02:00
konrad
e52c45d5aa
fix: sort tasks logically and consistent across dbms ( #1177 )
...
This PR changes the behavoir of sorting tasks. Before, tasks were sorted with null values first. Now, null values are always sorted last which is usually what you want.
Partial fix for https://github.com/go-vikunja/frontend/issues/54
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1177
2022-05-30 20:53:58 +00:00
kolaente
f83b09af59
feat: generate a BlurHash when uploading a new image
2022-03-30 16:36:07 +00:00
kolaente
362706b38d
feat: add migration to create BlurHash strings for all list backgrounds
2022-03-30 16:36:07 +00:00
konrad
0a1d8c9404
feat: add date math for filters ( #1086 )
...
This adds support for relative dates in filters, similar to the ones from [grafana](https://grafana.com/docs/grafana/latest/dashboards/time-range-controls ) or [elasticsearch](https://www.elastic.co/guide/en/elasticsearch/reference/7.3/common-options.html#date-math ).
In short, it allows you to filter for due dates by passing in dates like "now - 7d" to get a date from 7 days ago.
This is a very powerful addition for saved filters as they will allow you to create filters for all kinds of stuff where you previously only could use fixed dates. Now you can for example create a saved filter for "all tasks this week".
Frontend PR: https://kolaente.dev/vikunja/frontend/pulls/1342
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1086
2022-03-27 20:35:04 +00:00
kolaente
5cf263a86f
feat: upgrade golangci-lint to 1.45.2
2022-03-27 16:55:37 +02:00
kolaente
b60c69c5a8
chore: cleanup namespace creation
2022-03-06 17:09:05 +01:00
shilch
f7a06e4644
Enable a list to be moved across namespaces ( #1096 )
...
Co-authored-by: Simon Hilchenbach <simon@hilchenba.ch>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1096
Reviewed-by: konrad <k@knt.li>
Co-authored-by: shilch <simon@hilchenba.ch>
Co-committed-by: shilch <simon@hilchenba.ch>
2022-01-23 12:59:43 +00:00
konrad
61d49c3a56
feat: add time zone setting for reminders ( #1092 )
...
Instead of naeveily checking for all reminders due in the next minute, we now check all reminders in all time zones in the next minutes. This essentially means checking for reminders due in the next 14 or past 12 hours. We then check for each user who would receive a reminder from that result if it is actually due in their time zone.
This should prevent issues where users would get the reminder in the time zone of their server, not in their own.
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/1092
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2022-01-16 11:05:56 +00:00
kolaente
5c88dfe88e
fix: user deletion schedule
2021-12-12 12:29:05 +01:00
kolaente
70e005e7ce
fix: user not actually deleted
2021-12-12 12:28:18 +01:00
kolaente
72d3c54efd
fix: user deletion never happens
...
Resolves #1024
2021-12-12 12:04:17 +01:00
kolaente
f8a0a7e953
fix: deleting users with no namespaces
...
resolves #984
2021-11-22 22:34:20 +01:00
kolaente
57e5d10eee
fix: sorting for saved filters
...
resolves #786
2021-11-14 21:03:55 +01:00
kolaente
cf05de19b3
fix: updating a list might remove its background
...
resolves #1039
2021-11-13 17:52:14 +01:00
kolaente
8f55af07c9
feat: add more debug logging when deleting users
...
related to #1021
2021-10-27 22:08:31 +02:00
kolaente
50b65a517d
fix: correctly load and pass the user when deleting it
...
Fixes #984
2021-10-16 17:00:48 +02:00
kolaente
d7e47a28d4
fix: don't try to load the namespace of a list if it is a shared list
2021-10-16 16:50:16 +02:00
kolaente
c2b6119434
fix: make sure the full task is available in notifications
2021-10-16 16:38:59 +02:00
kolaente
465f6d90ab
Fix tasks not exported
2021-09-08 18:40:54 +02:00
kolaente
03d818fd9f
Fix tmp export file created in the wrong path
2021-09-08 17:44:23 +02:00
kolaente
f019ae42bb
Fix exporting tasks from archived lists
2021-09-08 17:40:33 +02:00
kolaente
9000f2c3cd
Fix lint
2021-09-07 19:09:44 +02:00
kolaente
cc1bb3083f
Don't try to export items which do not have a parent
2021-09-06 22:14:38 +02:00
konrad
90146aea5b
User Data Export and import ( #967 )
...
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/967
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2021-09-04 19:26:31 +00:00
kolaente
483496cc26
Fix saving reminders of repeating tasks
2021-08-13 21:36:16 +02:00
konrad
27119ad6d4
User account deletion ( #937 )
...
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/937
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-08-11 19:08:10 +00:00
renovate
c3da454854
Update module github.com/golang-jwt/jwt to v4 ( #930 )
...
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/930
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-08-03 21:43:18 +00:00
konrad
4c5f457313
Ensure case insensitive search on postgres ( #927 )
...
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/927
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-08-01 21:40:25 +00:00
konrad
1571dfa825
Task mentions ( #926 )
...
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/926
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-29 15:42:49 +00:00
kolaente
e600f61e06
Fix moving the done bucket around
2021-07-29 17:32:33 +02:00
konrad
6ccb85a0dc
Reorder tasks, lists and kanban buckets ( #923 )
...
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/923
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-28 19:06:40 +00:00
kolaente
eae3cbc7bb
Replace jwt-go with github.com/golang-jwt/jwt
2021-07-27 10:46:28 +02:00
kolaente
d9b38b85f6
Fix setting a saved filter as favorite
2021-07-20 21:32:25 +02:00
kolaente
c7f337f303
Fix tests & lint
2021-07-20 11:00:20 +02:00
kolaente
733f26f017
Fix error handling when deleting an attachment file
2021-07-20 10:14:49 +02:00
kolaente
e4a0066e20
Make sure all associated entities of a task are deleted when the task is deleted
2021-07-19 23:52:58 +02:00
kolaente
d28390d792
Fix task relations not getting properly cleaned up when deleting them
2021-07-19 23:40:18 +02:00
kolaente
0b90d826be
Don't notify the user who created the team
2021-07-19 23:29:25 +02:00
konrad
4216ed7277
Refactor user email confirmation + password reset handling ( #919 )
...
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/919
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-13 20:56:02 +00:00
kolaente
7adbd21698
Fix setting task favorite status of related tasks
...
Not really reproducable locally, but a real issue.
2021-07-12 12:19:01 +02:00
kolaente
562ef9af36
Add searching for tasks by index
2021-07-11 14:19:59 +02:00
konrad
d0c77ad1c1
Make sure list / task favorites are set per user, not per entity ( #915 )
...
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/915
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-10 10:21:54 +00:00