1
0
Commit Graph

184 Commits

Author SHA1 Message Date
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
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
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
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
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
e9de7d8a24 fix(project): delete all related entities when deleting a project 2024-04-13 21:43:44 +02:00
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
97b7592e7c fix(views): do not map bucket id from xorm 2024-03-20 10:41:58 +01:00
e7d6ee2392 fix(views): update done status of recurring tasks 2024-03-19 17:04:39 +01:00
165d291cd5 fix(views): reset bucket when moving tasks between projects 2024-03-19 14:16:05 +01:00
30b41bd143 fix(views): lint 2024-03-19 00:47:51 +01:00
803f58f402 fix(views): return correct error 2024-03-19 00:47:51 +01:00
b7b3169169 fix(views): count task buckets 2024-03-19 00:47:51 +01:00
d4bdd2d4e8 fix(views): duplicate all views and related entities when duplicating a project 2024-03-19 00:47:51 +01:00
004f1e06bb fix(views): do not return kanban tasks multiple times 2024-03-19 00:47:50 +01:00
f364f3bec8 feat(views): return position when retriving tasks 2024-03-19 00:47:48 +01:00
398c9f1056 fix(views): return tasks in their buckets 2024-03-19 00:47:48 +01:00
43f24661d7 feat(views): save view and position in Typesense 2024-03-19 00:47:47 +01:00
14353b24d7 feat(views): set default position 2024-03-19 00:47:47 +01:00
ca4e3e01c5 feat(views): recalculate all positions when updating 2024-03-19 00:47:47 +01:00
8ce476491e feat(views): only update the bucket when necessary 2024-03-19 00:47:47 +01:00
f2a0d69670 feat(views)!: make updating a bucket work again 2024-03-19 00:47:47 +01:00
a13276e28e feat(views)!: decouple bucket <-> task relationship 2024-03-19 00:47:47 +01:00
9cf84646a1 feat(views)!: move done and default bucket setting to view 2024-03-19 00:47:47 +01:00
2502776460 feat(views)!: move task position handling to its own crud entity
BREAKING CHANGE: the position of tasks now can't be updated anymore via the task update endpoint. Instead, there is a new endpoint which takes the project view into account as well.
2024-03-19 00:47:46 +01:00
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
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
87c027aafd chore(filters): cleanup old variables 2024-03-09 19:06:35 +01:00
de320aac72 feat(filters): basic text filter works now 2024-03-09 19:06:34 +01:00
307ffe11c4 feat(filters): very basic filter parsing 2024-03-09 19:06:31 +01:00
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
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
119c68be9d feat: rename frontend url config to public url 2024-02-09 14:41:55 +01:00
a20f6ac815 fix(task): delete the task after all related attributes to prevent task not found errors 2024-01-28 12:23:25 +01:00
1ed65d306d fix(docs): remove duplicate paths (params) in swagger docs 2023-11-16 13:07:01 +01:00
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
a1ea77f751 feat: accept hex values which start with a # 2023-10-24 16:12:22 +02:00
56625b0b90 fix: lint 2023-10-10 20:35:43 +02:00
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
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
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
60bd5c8a79 feat: make default bucket configurable 2023-09-03 15:17:17 +02:00
bbbb45d224 feat: move done bucket setting to project 2023-09-03 15:01:35 +02:00
e518fb1191 chore: remove year from copyright headers
Resolves https://kolaente.dev/vikunja/api/pulls/1483
2023-09-01 08:32:28 +02:00
2ca193e63b feat(tasks): make sorting and filtering work with Typesense 2023-08-28 19:10:18 +02:00
010b4ce783 feat(tasks): add searching via typesense 2023-08-28 12:14:50 +02:00
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
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