Commit Graph

772 Commits

Author SHA1 Message Date
kolaente bc52da4029
fix(filter): make sure tasks are in a correct bucket and position when they are part of a date filter
Whenever a task is part of a date filter, it might fall in or out of a filter bucket without anything changing, other than the current time. For example, a filter condition like due_date > now may include different tasks depending on the current time.
For these kinds of tasks to properly show up in the kanban view of a filter, there has to be an entry in the task_buckets table. These entries only got updated when either a task was updated or the filter itself was updated. To account for th changing of time, we also need to check periodically if tasks are now part or not anymore part of that filter.
This change adds a cron task to do precisely that.
We'll have to see if this works resource-wise, but the cron is not the only one doing a bunch of sql queries so it might be fine after all.

Resolves https://community.vikunja.io/t/tasks-in-saved-filter-appear-in-list-view-but-are-not-visible-in-kanban-view/2800
2024-09-19 11:19:48 +02:00
kolaente 2123da49a3
fix(task): cleanup old task positions and task buckets when adding an updated or created task to filter 2024-09-19 09:30:21 +02:00
kolaente c53a761396
fix(task): add task to filter view after it was updated
Maybe resolves https://community.vikunja.io/t/tasks-in-saved-filter-appear-in-list-view-but-are-not-visible-in-kanban-view/2800
2024-09-19 09:30:20 +02:00
kolaente c84b50b3ee
fix(labels): trigger task updated for bulk label task update 2024-09-19 08:59:34 +02:00
kolaente c252c8f0cd
fix: reset id before creating 2024-09-17 10:46:14 +02:00
kolaente 1451f6e46f
fix(kanban): correctly paginate filtered kanban buckets
Resolves https://github.com/go-vikunja/vikunja/issues/314
2024-09-14 09:37:21 +02:00
kolaente 45ff5907e6
fix(view): correctly resolve bucket filter when paginating 2024-09-13 19:45:48 +02:00
kolaente 1a8f12ac13
fix(kanban): do not mark first bucked as done bucket in filter bucket mode
Resolves https://github.com/go-vikunja/vikunja/issues/313
2024-09-13 11:52:44 +02:00
kolaente 20724f6fb5
fix(task): cyclomatic complexity 2024-09-12 10:24:16 +02:00
kolaente 8d730543c3
fix(project): reset id before creating
Resolves https://vikunja.sentry.io/share/issue/6f1e37d4b8b248188e20650234a45cde/
2024-09-11 23:46:13 +02:00
kolaente 55dd7d2981
fix(task): specify task index when creating multiple tasks at once
This change allows to specify the task index when creating a task, which will then be checked to avoid duplicates and used. This allows us to calculate the indexes for all tasks beforehand when creating them at once using quick add magic.
The method is not bulletproof, but already fixes a problem where multiple tasks would have the same index when created that way.

Resolves https://community.vikunja.io/t/add-multiple-tasks-at-once/333/16
2024-09-11 17:58:42 +02:00
kolaente e698ac5a34
fix(label): ignore existing ID during creation 2024-09-10 16:45:40 +02:00
kolaente 68636f27da
fix(files): use absolute path everywhere 2024-09-06 12:59:48 +02:00
kolaente cf94cc8cab
chore(docs): clarify usage of related model creation
Resolves https://github.com/go-vikunja/vikunja/issues/323
2024-09-06 12:06:12 +02:00
kolaente 02c1de55c4
chore(attachments): refactor building image preview 2024-09-06 09:43:59 +02:00
kolaente b60efbd259
chore(subscription): return subscription entity type using json Marshaler 2024-09-04 22:25:03 +02:00
kolaente 34ac29fcce
fix(reminders): notify subscribed users as well
Resolves https://community.vikunja.io/t/no-reminder-notification-by-e-mail-from-my-colleague/2779
2024-09-04 22:11:07 +02:00
kolaente 75f3e930cd
fix(subscriptions): do not panic when a task does not have a subscription 2024-09-04 21:55:14 +02:00
kolaente 4ff8815fe1
fix(subscriptions): cleanup and simplify fetching subscribers for tasks and projects logic
Vikunja now uses one recursive CTE and a few optimizations to fetch all subscribers for a task or project. This makes the relevant code easier to maintain and more performant.
2024-09-04 19:55:17 +02:00
kolaente 115d1c3618
fix(subscription): always return task subscription when subscribed to task and project 2024-09-03 22:37:53 +02:00
kolaente 06305eb6b3
fix(subscriptions): correctly inherit subscriptions
Resolves https://community.vikunja.io/t/e-mail-notification-twice/2740/20
2024-09-03 22:04:11 +02:00
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