1
0
Commit Graph

737 Commits

Author SHA1 Message Date
bea81f83f7 fix(filters): only insert task buckets and positions when there are any 2024-07-18 15:38:29 +02:00
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
f8fb9d7407 fix(filters): add tasks to filter buckets when updating the filter 2024-07-17 12:57:52 +02:00
5cc420b289 fix(filters): add task to buckets of saved filters when creating the task 2024-07-17 12:57:51 +02:00
744b40e7f7 fix: missing error handling 2024-07-17 11:43:38 +02:00
1e42e54db1 fix(projects): do not create buckets in the original project when duplicating a project 2024-07-17 10:24:47 +02:00
8a6689f4fa fix(projects): do not create backlog bucket when duplicating views 2024-07-17 10:24:03 +02:00
092a65b025 feat(project): add " - duplicate" suffix to duplicated projects title 2024-07-17 10:23:33 +02:00
5e04abaa06 chore(project): rename receiver 2024-07-17 10:23:01 +02:00
58e492872a fix(kanban): put task into correct bucket when creating via kanban board 2024-07-17 09:36:33 +02:00
bb25a3397b fix(kanban): use correct assertion in the test 2024-07-12 14:21:46 +02:00
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
323ecdaab6 fix(kanban): move repeating task back to old bucket when moved to the done bucket 2024-07-12 13:44:45 +02:00
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
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
62412ce29b fix(kanban): do not move repeating task into a different bucket 2024-07-12 13:19:50 +02:00
7c42fb5d75 fix: lint 2024-07-12 11:49:03 +02:00
8711f7a935 fix(typesense): do not use modified opts for db fallback search 2024-07-11 12:52:09 +02:00
7f27cee6a3 fix(tasks): do not use typesense modified options to search with database 2024-07-11 12:41:40 +02:00
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
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
471d0fcd4a fix(typesense): reindex tasks when their position changed 2024-07-11 12:07:48 +02:00
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
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
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
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
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
e6ce1251f7 fix(filters): allow managing views for saved filters 2024-07-02 12:36:08 +02:00
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
d12deee977 feat(views): allow reordering views
Resolves https://community.vikunja.io/t/reordering-views/2394
2024-06-18 16:39:52 +02:00
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
6626727d92 fix(tasks): tests 2024-06-18 13:48:09 +02:00
fa6546b6b2 feat(tasks): add tests for moving a task out of the done bucket 2024-06-18 13:40:41 +02:00
d3f397b036 fix(tasks): do not crash when order by id and position 2024-06-13 16:36:02 +02:00
acf4e3aa18 fix(tasks): ambiguous column name error when fetching favorite tasks 2024-06-06 21:50:30 +02:00
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
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
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
b386dfae87 fix(typesense): only return distinct tasks once 2024-06-04 18:22:05 +02:00
5fc4ec48b7 fix(typesense): correctly incorporate existing filter when it is empty 2024-06-04 18:22:05 +02:00
1843f1d0d8 fix(docs): correctly document filter query usage 2024-06-04 18:02:31 +02:00
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
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
c47d8c6dbe fix(task): do not try to set bucket for filtered bucket configuration 2024-06-03 17:02:50 +02:00
4ce761eba7 fix(filter): trim search term before searching 2024-06-03 16:28:04 +02:00
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
a6fccfb908 fix(webhook): log errors in webhook response 2024-06-03 13:11:44 +02:00
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
1f6a1f8ad4 fix(kanban): fetch project and view when checking permissions 2024-04-21 19:44:47 +02:00
ea7527a3cf fix(test): cast result before comparing 2024-04-21 19:43:57 +02:00