Commit Graph

88 Commits

Author SHA1 Message Date
kolaente
a81a3ee0e5 feat!: rename right to permission (#1277) 2025-08-13 11:05:05 +02:00
kolaente
07d83e67d7 feat(projects): add support for ParadeDB when searching for project 2025-07-18 23:18:04 +02:00
kolaente
a8025a9e36 fix: guard invalid user lookups (#1034) 2025-06-26 21:58:47 +00:00
Dominik Pschenitschni
296577a875 fix: correct license header references (#882)
See originals:
- https://www.gnu.org/licenses/agpl-3.0.txt
- https://www.gnu.org/licenses/gpl-3.0.txt
2025-06-10 12:18:38 +02:00
kolaente
9f30a099ee fix(projects): (un-)archive child projects when archiving parent (#775) 2025-05-15 14:31:56 +00:00
renovate[bot]
4a75f7d4da chore(deps): update golangci/golangci-lint-action action to v7 (#462)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: kolaente <k@knt.li>
2025-04-02 09:28:56 +02:00
kolaente
75bd569a93 fix(projects): return list of projects when accessing as link share 2025-01-24 11:46:45 +01:00
kolaente
7f6cb1e06e feat: expand buckets 2025-01-24 11:03:40 +01:00
kolaente
f6bfe2f13c fix(quick actions): show saved filters in search results
This fixes a bug where saved filters would not show up in quick actions search results. It was caused by explicitely only searching for projects.
During the debugging of this, I've discovered the search parameter is ignored when searching for filters.

Resolves https://community.vikunja.io/t/virtual-projects-a-k-a-saved-filters-do-not-show-up-in-search-bar-results/3180/4
2025-01-21 11:07:28 +01:00
kolaente
7ac2c42e4d fix(caldav): fetch saved filter
This fixes a bug which caused fetching saved filter and favorite projects to crash, because the respective project ID is not a valid project id without special handling.
2024-12-11 17:05:51 +01:00
graves501
ed5474a28a fix(typo): Simpl -> Simple -> GetProjectsMapSimpleByTaskIDs (#2906)
Fix typo -> GetProjectSimplByTaskID -> GetProjectSimpleByTaskID

Reviewed-on: https://kolaente.dev/vikunja/vikunja/pulls/2906
Co-authored-by: graves501 <graves501@protonmail.com>
Co-committed-by: graves501 <graves501@protonmail.com>
2024-12-09 13:55:16 +00:00
kolaente
624907ad6a fix: make search in saved filter work 2024-11-19 16:27:22 +00:00
kolaente
d081cf80fc chore(caldav): refactor fetching projects 2024-10-30 08:37:27 +01:00
kolaente
412a8ef654 chore(projects): only pass users to checks 2024-10-29 09:11:06 +01:00
kolaente
dace07efda fix(projects): return 0 if no parent project exists 2024-10-29 08:25:20 +01:00
kolaente
e30374a28c fix(projects): only add conditions to query when they are non-empty 2024-10-28 16:09:31 +01:00
kolaente
b013b294e2 fix(projects): remove unnecessary join
The removal of the unnecessary join condition speeds up the query 10x. Before, it would take ~700ms on Vikunja Cloud. With this removal, the otherwise same query now takes ~70ms (which still leaves plenty of room for improvements, but it's already a great step forwards).
2024-10-28 15:58:07 +01:00
kolaente
92b90013ab feat(projects): optionally return max right when querying all projects
This change introduces an expand query parameter which, when provided, allows to return all projects with the max right the current user has on that project. This allows to show and hide appropriate buttons in the frontend.

Resolves https://github.com/go-vikunja/vikunja/issues/334
2024-10-13 19:22:09 +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
68636f27da fix(files): use absolute path everywhere 2024-09-06 12:59:48 +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
2063da9eec chore(web): move web handler package to Vikunja 2024-08-29 16:15:28 +02:00
kolaente
ef0bf3156e fix(project): do not use project id of nil project in error 2024-07-18 16:39:30 +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
d12deee977 feat(views): allow reordering views
Resolves https://community.vikunja.io/t/reordering-views/2394
2024-06-18 16:39:52 +02:00
kolaente
d8ca1a2de1 fix(favorites): make favorites work with configurable views 2024-04-14 17:12:16 +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
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
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
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
d635fd2dd3 fix(projects): remove done bucket id field from projects struct 2024-03-20 09:21:40 +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
9cf84646a1 feat(views)!: move done and default bucket setting to view 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
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
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
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
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
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
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
66b44da85b fix(projects): delete child projects when deleting a project 2023-12-01 17:27:40 +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
61bce2b349 fix(projects): don't return child projects multiple times 2023-11-15 12:56:36 +01:00
kolaente
a1ea77f751 feat: accept hex values which start with a # 2023-10-24 16:12:22 +02:00