Commit Graph

1003 Commits

Author SHA1 Message Date
ebc3dd2b3e
fix: lint errors 2023-05-24 15:51:57 +02:00
017f771783
chore(test): show table content when db assertion failed 2023-05-24 15:51:56 +02:00
abe5f72493
fix(migration): enable insert from structure work recursively 2023-05-24 15:51:56 +02:00
4b55e2ce03
fix(migration): make file migration work with new structure 2023-05-24 15:51:56 +02:00
2f81791735
chore(export): remove unused events 2023-05-24 15:51:56 +02:00
8235c63f60
fix(tests): task collection fixtures 2023-05-24 15:51:56 +02:00
03b7fa6dd3
fix(tests): subscription test fixtures 2023-05-24 15:51:56 +02:00
5e6bff20f8
fix(tests): task permissions from parents 2023-05-24 15:51:56 +02:00
8e56fe558a
fix(tests): adjust parent projects 2023-05-24 15:51:56 +02:00
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
03eb4ecd07
fix(tests): permission tests for parent projects 2023-05-24 15:51:56 +02:00
d4e644e91e
chore(project): fmt 2023-05-24 15:51:56 +02:00
48beb5f382
fix(project): don't allow un-archiving a project when its parent project is archived 2023-05-24 15:51:56 +02:00
0cd633981a
fix(project): recursively get all users from all parent projects 2023-05-24 15:51:56 +02:00
19f69419f7
fix(tasks): task relation test 2023-05-24 15:51:55 +02:00
6bb42ced9d
fix(tasks): read all tests 2023-05-24 15:51:55 +02:00
3b837a472b
fix(migration): remove wunderlist leftovers 2023-05-24 15:51:55 +02:00
537ba60f2d
fix(tasks): get all tasks from parent projects 2023-05-24 15:51:55 +02:00
ceaa9c0e03
feat(subscriptions): make sure all subscriptions are inherited properly 2023-05-24 15:51:55 +02:00
afe756e4c1
fix(tests): make the tests compile again 2023-05-24 15:51:55 +02:00
f4fc431b6f
fix(projects): permission check now works 2023-05-24 15:51:55 +02:00
438f5c8e12
fix(projects): don't check if new projects are archived 2023-05-24 15:51:55 +02:00
3e8d1b3667
chore(projects) use a slice again 2023-05-24 15:51:55 +02:00
18b9ff8512
feat(projects): check parent project when checking archived status 2023-05-24 15:51:55 +02:00
5e2567645a
feat(projects): check all parent projects for permissions 2023-05-24 15:51:55 +02:00
d799915e78
feat(projects): get all projects recursively 2023-05-24 15:51:55 +02:00
4c698dc7c7
fix: typo 2023-05-24 15:51:55 +02:00
e93a5ff11f
fix: rename after rebase 2023-05-24 15:51:54 +02:00
d79c393e5b
fix: make it compile again 2023-05-24 15:51:54 +02:00
5d02d93d31
fix(tasks): don't check for namespaces in filters 2023-05-24 15:51:54 +02:00
7c448c88a8
fix(project): don't check for namespaces in overdue reminders 2023-05-24 15:51:54 +02:00
906574adc9
fix(project): remove comments, clarifications, notifications about namespaces 2023-05-24 15:51:54 +02:00
d794a2c5ca
fix(project): remove namespaces checks 2023-05-24 15:51:54 +02:00
8cff813e9f
fix(project): remove namespaces from creating projects 2023-05-24 15:51:54 +02:00
2dcd6451a4
fix(project): remove namespaces from getting projects 2023-05-24 15:51:54 +02:00
ac0d84a7d8
feat(migration): ignore namespace changes 2023-05-24 15:51:54 +02:00
386e218b95
feat(migration): use new structure for migration 2023-05-24 15:51:54 +02:00
fef253312c
feat(projects): cleanup namespace leftovers 2023-05-24 15:51:54 +02:00
16de7cd591
feat(projects): remove namespaces 2023-05-24 15:51:54 +02:00
0795828a9f
feat(projects): add parent project, migrate namespaces 2023-05-24 15:51:54 +02:00
47c2da7f18
feat: rename lists to projects 2023-05-24 15:51:53 +02:00
fc73c84bf2
feat: rename lists to projects 2023-05-24 15:51:53 +02:00
87ed68e4c8
fix(migration): remove wunderlist leftovers 2023-05-24 15:51:53 +02:00
50c922b7d1
fix: lint 2023-05-24 15:51:53 +02:00
96a0f5e169
feat: rename lists to projects 2023-05-24 15:51:53 +02:00
359d0512cc
fix: upgrade jwt v5 2023-05-23 16:37:16 +02:00
7d9e8bd150
fix(cli): rename user project command 2023-05-10 22:37:37 +02:00
7d8c42ab98
fix(migration): remove unused is_deleted flag from Todoist api response
Related discussion: https://community.vikunja.io/t/importing-tasks-from-todoist/322
2023-05-08 15:32:27 +02:00
7ad256f6cd
fix: correctly pass unix socket to xorm 2023-04-17 19:39:38 +02:00
0a6bbc2efd fix: using mysql via a socket 2023-04-17 10:48:59 +00:00
aa43127e52
fix: provide a proper error message when viewing a link share with an invalid token 2023-04-17 11:08:38 +02:00
10f71c29b2
fix(saved filters): don't let query parameters override saved sorting parameters
Resolves vikunja/frontend#3380
2023-04-14 11:01:31 +02:00
2dad404217
fix: typo in email template 2023-04-14 10:29:54 +02:00
eb3b4e9ed9 fix(CalDAV): naming 2023-04-11 11:21:40 +00:00
5856f21f31
chore: fix comment url 2023-04-11 11:40:06 +02:00
9bf535d06f
fix: remove old saved openid provider settings from cache when starting Vikunja
Resolves vikunja/api#1487
2023-04-10 13:32:20 +02:00
47e42238ef
fix: make sure Vikunja is buildable without swagger docs present 2023-04-06 12:11: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: vikunja/api#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
f76bb2b4a9 fix: align task ID param 2023-04-05 12:14:10 +00:00
7ada82ea92 fix: align namespaceID param 2023-04-05 12:14:10 +00:00
cd90db3117 chore: fix spelling 2023-04-05 12:14:10 +00:00
b6d5605ef6 fix: align "ID" param for Delete and Update method of Task model 2023-04-05 12:14:10 +00:00
ac377a7a5d fix: align "otherTaskID" param for Delete method of TaskRelation model 2023-04-05 12:14:10 +00:00
c45ad112a2
fix(migration): don't try to fetch task details of tasks whose projects are deleted 2023-04-04 11:24:59 +02:00
84933c08cc
feat(users): don't hide user email if it was the search request 2023-04-03 19:41:20 +02:00
dff4e01327
fix: ILIKE helper 2023-04-03 19:19:51 +02:00
a7231e197e
feat: allow to find users with access to a project more freely
Related to vikunja/frontend#2196
2023-04-03 18:49:04 +02:00
eb93ccb827 chore(docs): add info about /buckets sorting 2023-04-03 05:20:42 +00:00
8edbca39cf fix: accept for migrations 2023-04-03 05:20:18 +00:00
441722372a feat: add token example 2023-04-03 05:20:01 +00:00
4f7d69a108 fix: docs auth openID method 2023-04-03 05:19:32 +00:00
fc2cc4a155 fix: spelling 2023-04-03 05:19:08 +00:00
Dominik Pschenitschni
cf7423fc1a fix(api): license (#1457)
Reviewed-on: vikunja/api#1457
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-02 19:34:06 +00:00
efa24cec44
feat: generate swagger docs at build time 2023-04-02 16:52:54 +02:00
cernst
1cffef6908 fix(caldav): Incoming tasks do not get correct time zone (#1455)
Dates from tasks.org may be formatted like DUE;TZID=Europe/Berlin:20230402T150000
After this fix the parameter TZID is no longer ignored and the Vikunja task gets a DueDate of 13:00 UTC, which corresponds to 15:00 in Europe/Berlin. Before this fix, the time was parsed to 15:00 UTC.

Resolves vikunja/api#1453

Co-authored-by: ce72 <christoph.ernst72@googlemail.com>
Reviewed-on: vikunja/api#1455
Reviewed-by: konrad <k@knt.li>
Co-authored-by: cernst <ce72@noreply.kolaente.de>
Co-committed-by: cernst <ce72@noreply.kolaente.de>
2023-04-02 12:31:31 +00:00
cernst
f45648a6f7 feat(caldav): Sync Reminders / VALARM (#1415)
Co-authored-by: ce72 <christoph.ernst72@googlemail.com>
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1415
Reviewed-by: konrad <k@knt.li>
Co-authored-by: cernst <ce72@noreply.kolaente.de>
Co-committed-by: cernst <ce72@noreply.kolaente.de>
2023-04-01 11:09:11 +00:00
cernst
3f5252dc24 feat: Add relative Reminders (#1427)
Partially resolves #1416

Co-authored-by: ce72 <christoph.ernst72@googlemail.com>
Reviewed-on: vikunja/api#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
823c817b1f
fix(import): don't try to load a nonexistant attachment file 2023-03-26 15:42:25 +02:00
f4e12dab27 fix: add missing license header 2023-03-25 12:28:56 +00:00
f0dcce702f fix: lint 2023-03-25 12:28:56 +00:00
9590b82c11 feat: add logging options to mailer settings 2023-03-25 12:28:56 +00:00
cernst
5961e56d16 fix(caldav): Do not create label if it exists by title (#1444)
Resolves vikunja/api#1435

Co-authored-by: ce72 <christoph.ernst72@googlemail.com>
Reviewed-on: vikunja/api#1444
Co-authored-by: cernst <ce72@noreply.kolaente.de>
Co-committed-by: cernst <ce72@noreply.kolaente.de>
2023-03-24 18:34:48 +00:00
4d5ad8f50e
chore(deps): update golangci-lint to 1.52.1 2023-03-24 19:17:45 +01:00
6aadaaaffc chore: rename files (fix typo) 2023-03-21 19:02:05 +00:00
8916de0366
fix: update redoc 2023-03-16 19:08:18 +01:00
7a9611c2da
chore: cleanup 2023-03-13 14:28:36 +01:00
7cab3a77a9
fix(migration): rename TickTick migration 2023-03-13 14:28:25 +01:00
77ad90d53e
fix(migration): remove wunderlist leftovers 2023-03-13 14:28:20 +01:00
55410ea73d
chore: generate swagger docs 2023-03-13 14:28:19 +01:00
e4f841cf6a
fix(tasks): sql for overdue reminders 2023-03-13 14:28:19 +01:00
2940eae1aa
fix(migration): use correct struct 2023-03-13 14:28:19 +01:00
0a3fdc0344
fix: users_lists name in migration 2023-03-13 14:28:19 +01:00
06f1d2e912
fix: test fixtures 2023-03-13 14:28:07 +01:00
61a3380a94
fix: trello import tests 2023-03-13 14:28:07 +01:00
fb818ea186
fix: test import 2023-03-13 14:28:06 +01:00
7e53a21407
fix: rename incorrectly named ProjectUsers method 2023-03-13 14:28:06 +01:00
8f4abd2fe8
feat: rename all list files 2023-03-13 14:28:06 +01:00
2fba7bdf02
feat: migrate lists to projects in db identifiers 2023-03-13 14:28:06 +01:00
349e6a5905
feat: rename lists to projects 2023-03-13 14:28:06 +01:00
c0c523f0a8
fix: don't send bad request errors to sentry 2023-03-13 10:52:52 +01:00
672fb35bcb
fix: check if usernames contain spaces when creating a new user 2023-03-12 15:02:34 +01:00
9f14466dfa
fix: lint 2023-03-05 22:24:29 +01:00
077baba2ea
fix: lint 2023-03-05 14:34:34 +01:00
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: vikunja/api#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
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: vikunja/api#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
cernst
53197b85e3 feat(caldav): Export Labels to Caldav (#1409)
Partially resolves vikunja/api#1274

Co-authored-by: ce72 <christoph.ernst72@googlemail.com>
Reviewed-on: vikunja/api#1409
Reviewed-by: konrad <k@knt.li>
Co-authored-by: cernst <ce72@noreply.kolaente.de>
Co-committed-by: cernst <ce72@noreply.kolaente.de>
2023-02-27 11:22:42 +00:00
168287923f
fix(migration): make sure trello checklists are properly imported 2023-02-24 12:13:18 +01:00
ca6d1946da
fix(tasks): make sure tasks are sorted by position before recalculating them 2023-02-23 17:43:23 +01:00
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
da9d25cf72
feat: disable events log by default
BREAKING CHANGE: events log level is now off unless explicitly enabled
2023-02-15 10:44:02 +01:00
20a5994b17
fix: lint 2023-02-14 20:37:16 +01:00
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
58da38adb6
fix(migration): don't try to add nonexistent tasks as related
Discussion: https://community.vikunja.io/t/todoist-migration-fails-after-51-iterations-19-minutes/1137
2023-02-07 17:06:04 +01:00
fdbe110945
chore(deps): upgrade golangci-lint to 1.51.0 2023-02-02 11:16:07 +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: vikunja/api#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
ef8e97f95e fix(deps): update module github.com/go-redis/redis/v8 to v9 (#1377)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1377
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2023-01-31 16:45:58 +00:00
clos
f660badc3d feat(background): add Last-Modified header (#1376)
Reviewed-on: vikunja/api#1376
Co-authored-by: clos <clos@noreply.kolaente.de>
Co-committed-by: clos <clos@noreply.kolaente.de>
2023-01-29 22:07:46 +00:00
491a142378
fix: lint 2023-01-29 22:42:24 +01:00
40411e4100
chore(task): add test to check if a task's reminders are duplicated 2023-01-26 16:06:49 +01:00
682123a9c9
fix(migration): todoist pagination now avoids too many loops 2023-01-24 22:27:57 +01:00
c59e006453
fix(migration): remove unused todoist parameters 2023-01-24 18:44:33 +01:00
1971df7b84
fix(migration): use the proper authorization method for Todoist's api, fix issues with importing deleted items 2023-01-24 15:45:56 +01:00
31a1452839 fix(migration): import TickTick data by column name instead of index (#1356)
Resolves: https://github.com/go-vikunja/api/issues/61
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1356
Co-authored-by: kooshi <kolaente.dev@pat.de.com>
Co-committed-by: kooshi <kolaente.dev@pat.de.com>
2023-01-24 13:58:18 +00:00
530bb0a63c
fix(user): make reset the user's name to empty actually work 2023-01-23 18:30:01 +01:00
7bf7a13bb9
fix(reminders): prevent duplicate reminders when updating task details 2023-01-23 18:14:15 +01:00
82f4a5ad50
fix(export): ignore file size for export files 2023-01-11 18:56:30 +01:00
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
Rein
4b5e65d4c2
fix(mailer): forcessl config (#60)
Co-authored-by: Rein-R3 <rein@reinsan.top>
Reviewed-At: https://github.com/go-vikunja/api/pull/60
2023-01-09 12:39:43 +01:00
ef1d1e2b20 feat(migrators): remove wunderlist (#1346)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1346
2022-12-29 17:12:39 +00:00
c6429c8b13 fix(deps): update module github.com/labstack/echo/v4 to v4.10.0 (#1343)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1343
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2022-12-28 10:32:12 +00:00
897a6e5d5c
fix(caldav): use const for repeat modes 2022-12-24 14:34:59 +01:00
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
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
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
6a97a214a3
fix(migration): use Todoist v9 api to migrate tasks from them
Discussion: https://community.vikunja.io/t/importing-tasks-from-todoist/322/7
2022-12-18 20:38:58 +01:00
a79b1de2d0 feat: provide logout url for openid providers (#1340)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1340
Co-authored-by: viehlieb <pf@pragma-shift.net>
Co-committed-by: viehlieb <pf@pragma-shift.net>
2022-12-18 18:26:28 +00:00
e9ce930230 fix(deps): update module github.com/swaggo/swag to v1.8.9 (#1327)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1327
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2022-12-18 16:43:30 +00:00
f93317bf5d
fix(caldav): add Z suffix to dates make it clear dates are in UTC 2022-12-04 21:01:04 +01:00
b8c3b570a4
fix(restore): check if we're really dealing with a string 2022-12-02 14:49:32 +01:00
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
51911a8868
fix(reminders): overdue tasks join condition 2022-12-01 18:30:05 +01:00
47aae115df
fix(tasks): don't include undone overdue tasks from archived lists or namespaces in notification mails
Resolves vikunja/api#1324
2022-12-01 18:07:30 +01:00
fbc4b91e0f
fix(dump): make sure null dates are properly set when restoring from a dump 2022-12-01 17:53:02 +01:00
8c67be558f
fix: restore notifications table from dump when it already had the correct format 2022-12-01 17:33:00 +01:00
f47faf577a fix(deps): update module github.com/wneessen/go-mail to v0.3.5 (#1325)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1325
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2022-11-21 11:56:19 +00:00
96b5e93379
fix: swagger docs 2022-11-11 15:34:26 +01:00
33e27c66a0
fix(filters): try parsing invalid dates like 2022-11-1 2022-11-11 11:05:21 +01:00
986129a784
fix(filters): try parsing dates without time 2022-11-11 10:54:50 +01:00
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
811514855b
fix(metrics): make currently active users actually work 2022-11-09 21:12:17 +01:00
a9e6776abf
fix(tasks): allow sorting by task index 2022-11-09 14:43:31 +01:00
f9b48ec091
fix(filter): only check for 0 values in filter fields with numeric values 2022-11-08 17:03:07 +01:00
3b0b4a8460
fix(task): duplicate reminders when adding different ones between winter / summer time
Resolves F-889
2022-11-08 16:50:19 +01:00
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
641a9da93d fix: usage with postgres over unix socket (#1308)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1308
2022-11-04 12:25:06 +00:00
622f2f0562
fix: look for the default bucket based on the position instead of the index 2022-11-03 15:10:20 +01:00
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
9fc08a0790
fix(lists): return correct max right for lists where the user has created the namespace 2022-10-25 18:54:11 +02:00
f5a33478f2
fix(migration): make sure importing works when the csv file has errors and don't try to parse empty values as dates 2022-10-09 22:58:08 +02:00
0d044997df
fix(migration): expose ticktick migrator to /info 2022-10-09 22:45:01 +02:00
5e40f4ec89
fix(migration): properly parse duration 2022-10-09 22:44:57 +02:00
5871d32c2d
feat(migration): generate swagger docs 2022-10-09 22:44:54 +02:00
3af9855148
feat(migration): add routes for TickTick migrator 2022-10-09 22:44:49 +02:00
e5394d6d4b
feat(migration): add TickTick migrator 2022-10-09 22:44:32 +02:00
b8769c746c
feat: allow a user to remove themselves from a team 2022-10-09 16:39:40 +02:00
2fc690a783
fix: make sure list subscriptions are set correctly when their namespace has a subscription already 2022-10-07 14:18:36 +02:00
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
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
e113fe34d0
chore: generate swagger docs 2022-10-05 15:12:29 +02:00
0eb47096db
fix: make cover image id actually updatable 2022-10-05 15:12:29 +02:00
0e1904d50b
fix: make cover image id actually updatable 2022-10-05 15:12:29 +02:00
b4b25499f2
feat(task): add cover image attachment id property 2022-10-05 15:12:29 +02:00
5a40100ac5
feat: provide default user settings for new users via config 2022-10-02 11:00:58 +02:00
aed560339b
fix(todoist): properly import all done tasks 2022-10-01 19:29:05 +02:00
c076f73a87
fix: make sure user searches are always case-insensitive
See vikunja/frontend#2196 (comment)
Resolves https://github.com/go-vikunja/frontend/issues/29
2022-10-01 17:39:08 +02:00
53419180be feat: upgrade xorm (#1197)
Reviewed-on: vikunja/api#1197
2022-10-01 15:10:00 +00:00
c5bd09702a chore(deps): update dependency golang to v1.19 (#1228)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1228
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2022-10-01 15:05:12 +00:00
fcb205a842
fix: use connection string for postgres 2022-10-01 16:57:06 +02:00
b1fd13bbcb
feat: upgrade xorm 2022-10-01 16:25:29 +02:00
878d19beb8
fix: make sure pseudo namespaces and lists always have the current user as owner 2022-10-01 15:19:46 +02:00
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
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
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: vikunja/api#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
54b7f7127c fix(caldav): no failed login emails for tokens (#1252)
Prevent Vikunja from sending mail notifications for failed login attempts if CalDav token is used.

Before, as the provided password value was tested against the user password regardless of whether it was a CalDav token, it triggered a failed login attempt email every three times.

Reviewed-on: vikunja/api#1252
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Luca Bernstein <luca@lucabernstein.com>
Co-committed-by: Luca Bernstein <luca@lucabernstein.com>
2022-09-27 15:12:37 +00:00
25609db567 fix(mail): pass mail server timeout (#1253)
Fix error log for mailserver closing logic, as default timeout of 15 seconds of mail client package used triggers before our logic leading to error on close.

Resolves https://github.com/go-vikunja/api/issues/48

Reviewed-on: vikunja/api#1253
Reviewed-by: konrad <k@knt.li>
Co-authored-by: Luca Bernstein <luca@lucabernstein.com>
Co-committed-by: Luca Bernstein <luca@lucabernstein.com>
2022-09-26 16:09:39 +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
aaeffe925e
fix(caldav): make sure duration and due date follow rfc5545
Related discussion: https://community.vikunja.io/t/error-with-davx-synchronization/810
2022-09-07 15:39:40 +02:00
c19479757a
fix: properly log extra message 2022-09-01 14:19:00 +02:00
beb4d07cf9
fix: don't override saved filters 2022-08-17 17:03:01 +02:00
10ded56f66
fix: don't fail a migration if there is no filter saved 2022-08-17 12:27:03 +02:00
0c8bed4054 fix: lint 2022-08-16 21:27:32 +00:00
9ddd7f4889 fix: only list all users when allowed 2022-08-16 21:27:32 +00:00
3047ccfd4a feat: add migration to change user ids to usernames in saved filters 2022-08-16 21:27:32 +00:00
7f28865903 feat: search by assignee username instead of id 2022-08-16 21:27:32 +00:00
8bf0f8bb57
fix: make sure generating blur hashes for bmp, tiff and webp images works 2022-08-15 23:37:05 +02:00
3ccc6365a6
fix: prevent moving a list into a pseudo namespace 2022-08-15 23:25:39 +02:00
d47edac376
feat(mail): don't try to authenticate when no username and password was provided 2022-08-03 13:41:42 +02:00
77fafd5dc3
fix: lint 2022-08-02 15:07:08 +02:00
3688bbde20
fix: don't return email addresses from user search results 2022-08-02 15:02:15 +02:00
c51ee94ad1
fix: return all users on a list when no search param was provided 2022-08-02 15:02:00 +02:00
8f27e7e619
fix: properly decode params in url
Resolves vikunja/api#1224
2022-08-02 14:50:03 +02:00
382a7884be
fix: make sure to use user discoverability settings when searching list users
Resolves vikunja/frontend#2196
2022-08-02 13:26:42 +02:00
1feb62cc45
fix: lint 2022-07-31 15:50:38 +02:00
dd461746a6
fix: add validation for negative repeat after values
Partial fix for vikunja/frontend#2179
2022-07-21 15:00:28 +02:00
0f555b7ec7
fix: reset id sequence when importing a dump from postgres 2022-07-21 14:54:52 +02:00
79b31673e2
fix: return 9:00 as default time for reminders if none was set
Resolves vikunja/api#1211
2022-07-19 16:38:48 +02:00
6e15d46a93
fix(restore): use the correct initial migration
Related to vikunja/api#1199
2022-07-13 23:44:21 +02:00
54348c5891
fix(restore): make sure to reset sequences after importing a dump when using postgres
Related to vikunja/api#1199
2022-07-13 23:43:53 +02:00
596d2bf676
fix(restore): properly decode notifications json data
Related to vikunja/api#1199
2022-07-13 23:43:20 +02:00
ac92499b7d
fix(caldav): make sure description is parsed correctly when multiline
Resolves https://github.com/go-vikunja/api/issues/35
2022-07-13 22:47:25 +02:00
b1892eaf63
fix(mail): set server name in tls config so that sending mail works with skipTlsVerify set to false 2022-07-13 19:57:44 +02:00
c906fc2b07
fix(mail): don't try to authenticate against the mail server when no credentials are provided
Related to https://github.com/go-vikunja/api/issues/34
2022-07-12 15:46:28 +02:00
4bb77b5539
fix(mail): don't set a username by default 2022-07-12 11:49:23 +02:00
5743a4afe5
fix: properly set tls config for mailer 2022-07-11 16:10:28 +02:00
62325de9cd
feat: use actual uuids for tasks 2022-07-11 14:54:33 +02:00
5cc4927b9e
fix: add missing error check 2022-07-07 23:23:15 +02:00
2b074c60a7
fix(caldav): properly parse durations when returning VTODOs
Resolves https://github.com/go-vikunja/frontend/issues/55
2022-07-07 23:20:37 +02:00
f5a4c136fb
fix: cycles in tasks array when memory caching was enabled
Resolves #1119
2022-07-07 18:34:49 +02:00
230478aae9
fix: remove credential escaping for postgres connections to allow for passwords with special characters
Resolves https://github.com/go-vikunja/api/issues/22
2022-07-07 18:04:16 +02:00
73c4c399e5
feat: use embed fs directly to embed the logo in mails 2022-07-07 15:54:38 +02:00
25ffa1bc2e
fix: prevent logging openid provider errors twice 2022-07-07 15:47:37 +02:00
4429ba2da1
fix(caldav): make sure the caldav tokens of non-local accounts are properly checked 2022-07-04 18:08:46 +02:00
d0e09d69d0 fix: tests 2022-06-30 14:21:17 +00:00
f30a9d1038 chore(docs): add new mailer option to docs 2022-06-30 14:21:17 +00:00
c62e26b6fe fix: revert renaming Attachments to Embeds everywhere 2022-06-30 14:21:17 +00:00
f4f8450d16 feat: embed the vikunja logo as inline attachment 2022-06-30 14:21:17 +00:00
30e0e98f77 feat: migrate away from gomail 2022-06-30 14:21:17 +00:00
01271c4c01
feat: allow only the authors of task comments to edit them 2022-06-16 17:38:27 +02:00
d837f8a624
fix: add missing migration 2022-06-16 16:56:35 +02:00
8869adfc27
feat: add setting to change overdue tasks reminder email time 2022-06-16 16:20:26 +02:00
7eb3b96a44
feat: send overdue tasks email notification at 9:00 in the user's time zone 2022-06-12 21:24:28 +02:00
2f25b48869
feat: restrict max avatar size
resolves #1171
2022-06-12 18:29:12 +02:00
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: vikunja/api#1177
2022-05-30 20:53:58 +00:00
grahammiln
acaa85083f feat: ability to serve static files (#1174)
Added the configuration key, `service.staticpath`, to serve files from the configuration path on root (/).

Serving static files allows the api service to also serve the frontend content. This is a simple option for deploying Vikunja without needing any other servers or proxies.

Running a complete instance becomes:

    VIKUNJA_SERVICE_STATICPATH=/path/to/frontend ./vikunja

Where `/path/to/frontend` is a copy of Vikunja's frontend static files.

## Implementation

Providing a path, via the configuration or environment, adds a static file middleware to serve the path's contents from root (/).

By default, the configuration path is empty and Vikunja's existing behaviour is unchanged.

Co-authored-by: Graham Miln <graham.miln@dssw.co.uk>
Reviewed-on: vikunja/api#1174
Reviewed-by: konrad <k@knt.li>
Co-authored-by: grahammiln <grahammiln@noreply.kolaente.de>
Co-committed-by: grahammiln <grahammiln@noreply.kolaente.de>
2022-05-23 20:49:28 +00:00
f5ebada913
fix: set derived default values only after reading config from file or env 2022-05-23 22:12:15 +02:00
3ab0ac9f27 fix(deps): update module github.com/swaggo/swag to v1.8.2 (#1167)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1167
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2022-05-15 19:57:00 +00:00
9845fcc170
fix: add more methods to figure out the current binary location 2022-05-08 21:54:26 +02:00
tuxthepenguin
4960a498ff Add client-cert parameters of the Go pq driver to the Vikunja config (#1161)
Co-authored-by: tuxthepenguin <tux@saturnv.uphus-internal.de>
Reviewed-on: vikunja/api#1161
Reviewed-by: konrad <k@knt.li>
Co-authored-by: tuxthepenguin <tuxthepenguin@noreply.kolaente.de>
Co-committed-by: tuxthepenguin <tuxthepenguin@noreply.kolaente.de>
2022-04-23 15:46:00 +00:00
e4b50e84a4 feat: add caldav tokens (#1065)
# Description

This PR adds API routes to create and manage caldav tokens. These tokens can be used instead of a user password - required for users who are using external auth providers and don't have a password.

Fixes #842

Frontend: vikunja/frontend#1186

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1065
2022-03-30 18:25:56 +00:00
de97fcbd12 fix: lint 2022-03-30 16:36:07 +00:00
d3bdafb717 fix: decoding images for blurHash generation 2022-03-30 16:36:07 +00:00
6b51fae093 fix: return BlurHash in unsplash search results 2022-03-30 16:36:07 +00:00
ba2bdff391 chore: generate swagger docs 2022-03-30 16:36:07 +00:00
7fa0865188 fix: lint 2022-03-30 16:36:07 +00:00
6df865876d feat: return BlurHash for unsplash search results 2022-03-30 16:36:07 +00:00
2ec7d7a8a8 feat: save BlurHash from unsplash when selecting a photo from unsplash 2022-03-30 16:36:07 +00:00
f83b09af59 feat: generate a BlurHash when uploading a new image 2022-03-30 16:36:07 +00:00
362706b38d feat: add migration to create BlurHash strings for all list backgrounds 2022-03-30 16:36:07 +00:00
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: vikunja/frontend#1342

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1086
2022-03-27 20:35:04 +00:00
ac6818a476
fix: checking for error types 2022-03-27 17:52:33 +02:00
5cf263a86f
feat: upgrade golangci-lint to 1.45.2 2022-03-27 16:55:37 +02:00
b60c69c5a8
chore: cleanup namespace creation 2022-03-06 17:09:05 +01:00
75f74b429e
fix: validate email address when creating a user via cli 2022-03-04 19:58:40 +01:00
8bf2254f4b
fix: restoring dumps with no config file saved in them 2022-02-19 17:46:10 +01:00
22e3f242a3
fix: disabling logging completely now works 2022-02-19 17:42:32 +01:00
8cb92b3924
fix(dump): don't try to save a config file if none was provided and dump vikunja env variables 2022-02-19 11:32:30 +01:00
44aaf0a4ec
fix: clarify which config file is used on startup 2022-02-19 11:32:30 +01:00
43f1daf40c
fix: microsoft todo migration not importing all tasks
Previously, we did not check if a list has more tasks than the ones returned. By default, the Microsoft Graph API only returns 10 tasks. If the user had more they would not get imported.
Now we check if there are more pages with tasks and pull them all in until we have everything.
2022-02-18 20:00:42 +01:00
1322cb16d7 feat: add long-lived api tokens (#1085)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1085
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2022-02-06 13:18:08 +00:00
f7a06e4644 Enable a list to be moved across namespaces (#1096)
Co-authored-by: Simon Hilchenbach <simon@hilchenba.ch>
Reviewed-on: vikunja/api#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
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: vikunja/api#1092
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2022-01-16 11:05:56 +00:00
a31086a7a9
fix: lint 2021-12-12 16:03:58 +01:00
a98119f2d6
feat: save user language in the settings 2021-12-12 15:39:47 +01:00
8bb3f8d37c
fix: importing archived lists or namespaces 2021-12-12 13:18:01 +01:00
190a9f2a4c
fix: friendly name not getting synced on first login from openid
Resolves #874
2021-12-12 12:35:13 +01:00
5c88dfe88e
fix: user deletion schedule 2021-12-12 12:29:05 +01:00
70e005e7ce
fix: user not actually deleted 2021-12-12 12:28:18 +01:00
f581885e65
fix: user deletion reminder emails counting up
Resolves #1014
2021-12-12 12:24:42 +01:00
72d3c54efd
fix: user deletion never happens
Resolves #1024
2021-12-12 12:04:17 +01:00
73ee696fc3 feat: add marble avatar (#1060)
This adds the marble avatar from [boring avatars](https://github.com/boringdesigners/boring-avatars) as an option for user avatars. Each user gets a different one (based on their id).

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#1060
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2021-12-07 21:11:23 +00:00
fd0d462bf4
fix: importing tasks from todoist without a due time set
Resolves #897
2021-11-23 22:29:57 +01:00
f8a0a7e953
fix: deleting users with no namespaces
resolves #984
2021-11-22 22:34:20 +01:00
Joseph Kavanagh
36bf3d216a
feat: gravatar - Lowercase emails before MD5 hash (#10) 2021-11-16 22:10:22 +01:00
0b7762590f
fix: lint 2021-11-16 20:37:37 +01:00
c3e0e6405a
fix: importing trello attachments
Since jan 2021, trello requires authentication to access attachments. This commit passes the required auth headers to make downloading card attachments work.

resolves https://github.com/go-vikunja/api/issues/6
2021-11-14 21:47:51 +01:00
57e5d10eee
fix: sorting for saved filters
resolves #786
2021-11-14 21:03:55 +01:00
88a2cede19
feat: use wallpaper topic for default unsplash background list 2021-11-14 20:47:15 +01:00
093d0c65ca
feat: enable rate limit for unauthenticated routes 2021-11-14 20:42:33 +01:00
cf05de19b3
fix: updating a list might remove its background
resolves #1039
2021-11-13 17:52:14 +01:00
2683ef23d5
feat: expose if a user is a local user through the /user endpoint 2021-10-31 13:57:19 +01:00
516c812043
feat: expose if a user is a local user through its jwt token 2021-10-31 12:37:31 +01:00
9eca971c93
feat: don't require a password for data export from users authenticated with third-party auth 2021-10-31 12:37:08 +01:00
8f55af07c9
feat: add more debug logging when deleting users
related to #1021
2021-10-27 22:08:31 +02:00
jayden-c
dcb52c00f1 feat: improve account deletion email grammar (#1006)
Co-authored-by: Jayden Chan <jaydencn7@gmail.com>
Reviewed-on: vikunja/api#1006
Reviewed-by: konrad <k@knt.li>
Co-authored-by: jayden-c <jaydencn7@gmail.com>
Co-committed-by: jayden-c <jaydencn7@gmail.com>
2021-10-16 21:53:33 +00:00
50b65a517d
fix: correctly load and pass the user when deleting it
Fixes #984
2021-10-16 17:00:48 +02:00
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
c2b6119434
fix: make sure the full task is available in notifications 2021-10-16 16:38:59 +02:00
82a3330412 Added the ability to configure the JWT expiry date using a new server.jwtttl config parameter. (#999)
Co-authored-by: Stephen Hill <stephen@gatekiller.co.uk>
Reviewed-on: vikunja/api#999
Co-authored-by: stephen-hill <stephen@gatekiller.co.uk>
Co-committed-by: stephen-hill <stephen@gatekiller.co.uk>
2021-10-09 11:02:28 +00:00
fb9fa27488 healthcheck endpoint (#998)
Co-authored-by: Igor Rzegocki <igor@rzegocki.pl>
Reviewed-on: vikunja/api#998
Reviewed-by: konrad <k@knt.li>
Co-authored-by: ajgon <vikunja-gitea@ajgon.ovh>
Co-committed-by: ajgon <vikunja-gitea@ajgon.ovh>
2021-10-03 18:37:02 +00:00
0ca1560bf1 fix(deps): update module github.com/swaggo/swag to v1.7.3 (#990)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#990
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-09-26 12:44:37 +00:00
4de8ec56a6
fix: generate swagger docs 2021-09-26 14:18:44 +02:00
ae8db176db
feat: expose if task comments are enabled or not in /info 2021-09-26 13:37:57 +02:00
465f6d90ab
Fix tasks not exported 2021-09-08 18:40:54 +02:00
03d818fd9f
Fix tmp export file created in the wrong path 2021-09-08 17:44:23 +02:00
f019ae42bb
Fix exporting tasks from archived lists 2021-09-08 17:40:33 +02:00
9000f2c3cd
Fix lint 2021-09-07 19:09:44 +02:00
cc1bb3083f
Don't try to export items which do not have a parent 2021-09-06 22:14:38 +02:00
90146aea5b User Data Export and import (#967)
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#967
Co-authored-by: konrad <k@knt.li>
Co-committed-by: konrad <k@knt.li>
2021-09-04 19:26:31 +00:00