Commit Graph

79 Commits

Author SHA1 Message Date
9ddd7f4889 fix: only list all users when allowed 2022-08-16 21:27:32 +00:00
77fafd5dc3
fix: lint
Some checks failed
continuous-integration/drone/push Build is failing
2022-08-02 15:07:08 +02:00
3688bbde20
fix: don't return email addresses from user search results
Some checks failed
continuous-integration/drone/push Build is failing
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
382a7884be
fix: make sure to use user discoverability settings when searching list users
Some checks failed
continuous-integration/drone/push Build is failing
Resolves vikunja/frontend#2196
2022-08-02 13:26:42 +02:00
79b31673e2
fix: return 9:00 as default time for reminders if none was set
Some checks failed
continuous-integration/drone/push Build is failing
Resolves vikunja/api#1211
2022-07-19 16:38:48 +02:00
4429ba2da1
fix(caldav): make sure the caldav tokens of non-local accounts are properly checked
Some checks failed
continuous-integration/drone/push Build is failing
2022-07-04 18:08:46 +02:00
8869adfc27
feat: add setting to change overdue tasks reminder email time
All checks were successful
continuous-integration/drone/push Build is passing
2022-06-16 16:20:26 +02:00
e4b50e84a4 feat: add caldav tokens (#1065)
All checks were successful
continuous-integration/drone/push Build is passing
# 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
1322cb16d7 feat: add long-lived api tokens (#1085)
Some checks reported errors
continuous-integration/drone/push Build was killed
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
61d49c3a56 feat: add time zone setting for reminders (#1092)
All checks were successful
continuous-integration/drone/push Build is passing
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
a98119f2d6
feat: save user language in the settings
Some checks failed
continuous-integration/drone/push Build is failing
2021-12-12 15:39:47 +01:00
f581885e65
fix: user deletion reminder emails counting up
Some checks failed
continuous-integration/drone/push Build is failing
Resolves #1014
2021-12-12 12:24:42 +01:00
73ee696fc3 feat: add marble avatar (#1060)
All checks were successful
continuous-integration/drone/push Build is passing
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
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
All checks were successful
continuous-integration/drone/push Build is passing
related to #1021
2021-10-27 22:08:31 +02:00
jayden-c
dcb52c00f1 feat: improve account deletion email grammar (#1006)
All checks were successful
continuous-integration/drone/push Build is passing
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
90146aea5b User Data Export and import (#967)
All checks were successful
continuous-integration/drone/push Build is passing
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
27119ad6d4 User account deletion (#937)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#937
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-08-11 19:08:10 +00:00
c3da454854 Update module github.com/golang-jwt/jwt to v4 (#930)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#930
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-08-03 21:43:18 +00:00
9c2a59582a
Fix setting up keyvalue storage in tests
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-30 15:31:51 +02:00
d746c1bede
Notify the user after three failed login attempts
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-30 15:01:04 +02:00
24f7d9b4f7
Only send an email about failed totp after three failed attempts
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-30 14:42:03 +02:00
5cfc9bf2f9
Disable the user account after 10 failed password attempts
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-29 18:45:22 +02:00
3572ac4b82
Send a notification on failed TOTP
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-29 18:05:25 +02:00
1571dfa825 Task mentions (#926)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#926
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-29 15:42:49 +00:00
eae3cbc7bb
Replace jwt-go with github.com/golang-jwt/jwt
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-27 10:46:28 +02:00
2a80e552cc
Save user tokens as varchar(450) and not text to fix mysql indexing issues
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-14 14:48:27 +02:00
7e229a1b83
Save user tokens as text and not varchar
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-14 12:43:28 +02:00
4216ed7277 Refactor user email confirmation + password reset handling (#919)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#919
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-13 20:56:02 +00:00
78a206c818
Add setting for first day of the week
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-03 18:11:44 +02:00
3277f6acf7 Add default list setting (#875)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: Sytone <github@sytone.com>
Reviewed-on: vikunja/api#875
Reviewed-by: konrad <konrad@kola-entertainments.de>
Co-authored-by: sytone <kolaente@sytone.com>
Co-committed-by: sytone <kolaente@sytone.com>
2021-06-02 21:20:22 +00:00
b76ad8efe2
Add more logging and better error messages for openid authentication + clarify docs
All checks were successful
continuous-integration/drone/push Build is passing
2021-05-16 13:23:10 +02:00
d07b284ee3 Add reminders for overdue tasks (#832)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#832
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-04-11 15:08:43 +00:00
b3c604fd2f Add link share password authentication (#831)
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: vikunja/api#831
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-04-11 13:17:50 +00:00
126f3acdc8
Enable searching users by full email or name
All checks were successful
continuous-integration/drone/push Build is passing
2021-04-07 18:28:58 +02:00
7b29ac7128
Fix user uploaded avatars
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-23 22:32:23 +01:00
6de3d8b3a1
Explicitly check if there are Ids before trying to get items by a list of Ids
All checks were successful
continuous-integration/drone/push Build is passing
2021-03-02 18:40:39 +01:00
2178166ece Add crud endpoints for notifications (#801)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#801
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-21 14:50:34 +00:00
c873c1ec32
Send a notification to the user when they are added to the list
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-17 20:48:06 +01:00
911e5b22ee
Fix lint
All checks were successful
continuous-integration/drone/push Build is passing
2021-02-14 23:11:39 +01:00
83f003355d
Fix sending notifications to users if the user object didn't have an email
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-14 22:44:01 +01:00
015ca310e9 Add notifications package for easy sending of notifications (#779)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#779
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-07 21:05:09 +00:00
0ab9ce9ec4 Add events (#777)
All checks were successful
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#777
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-02 22:48:37 +00:00
c4a71016b8
Update copyright year
Some checks failed
continuous-integration/drone/push Build is failing
2021-02-02 20:19:13 +01:00
ac23536c36
Make sure a password reset token can be used only once
All checks were successful
continuous-integration/drone/push Build is passing
2020-12-30 21:51:45 +01:00
787044628f
Fix password reset without a reseet token 2020-12-30 21:43:14 +01:00
456af4d4a9
Fix go header lint
All checks were successful
continuous-integration/drone/push Build is passing
2020-12-29 02:04:20 +01:00
9baf6d39bd
Change license to AGPLv3
Some checks failed
continuous-integration/drone/push Build is failing
2020-12-23 16:41:52 +01:00
8d1a09b5a2 Use db sessions everywere (#750)
Some checks failed
continuous-integration/drone/push Build is failing
Fix lint

Fix lint

Fix loading tasks with search

Fix loading lists

Fix loading task

Fix loading lists and namespaces

Fix tests

Fix user commands

Fix upload

Fix migration handlers

Fix all manual root handlers

Fix session in avatar

Fix session in list duplication & routes

Use sessions in migration code

Make sure the openid stuff uses a session

Add alias for db type in db package

Use sessions for file

Use a session for everything in users

Use a session for everything in users

Make sure to use a session everywhere in models

Create new session from db

Add session handling for user list

Add session handling for unsplash

Add session handling for teams and related

Add session handling for tasks and related entities

Add session handling for task reminders

Add session handling for task relations

Add session handling for task comments

Add session handling for task collections

Add session handling for task attachments

Add session handling for task assignees

Add session handling for saved filters

Add session handling for namespace and related types

Add session handling for namespace and related types

Add session handling for list users

Add session handling for list tests

Add session handling to list teams and related entities

Add session handling for link shares and related entities

Add session handling for labels and related entities

Add session handling for kanban and related entities

Add session handling for bulk task and related entities

Add session handling for lists and related entities

Add session configuration for web handler

Update web handler

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#750
Co-Authored-By: konrad <konrad@kola-entertainments.de>
Co-Committed-By: konrad <konrad@kola-entertainments.de>
2020-12-23 15:32:28 +00:00