4429ba2da1
fix(caldav): make sure the caldav tokens of non-local accounts are properly checked
continuous-integration/drone/push Build is failing
2022-07-04 18:08:46 +02: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
8869adfc27
feat: add setting to change overdue tasks reminder email time
continuous-integration/drone/push Build is passing
2022-06-16 16:20:26 +02:00
2f25b48869
feat: restrict max avatar size
...
continuous-integration/drone/push Build is passing
resolves #1171
2022-06-12 18:29:12 +02:00
grahammiln
acaa85083f
feat: ability to serve static files ( #1174 )
...
continuous-integration/drone/push Build is passing
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
e4b50e84a4
feat: add caldav tokens ( #1065 )
...
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
ac6818a476
fix: checking for error types
continuous-integration/drone/push Build is passing
2022-03-27 17:52:33 +02:00
5cf263a86f
feat: upgrade golangci-lint to 1.45.2
continuous-integration/drone/push Build is failing
2022-03-27 16:55:37 +02:00
1322cb16d7
feat: add long-lived api tokens ( #1085 )
...
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 )
...
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
continuous-integration/drone/push Build is failing
2021-12-12 15:39:47 +01:00
73ee696fc3
feat: add marble avatar ( #1060 )
...
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
093d0c65ca
feat: enable rate limit for unauthenticated routes
continuous-integration/drone/push Build is passing
2021-11-14 20:42:33 +01:00
2683ef23d5
feat: expose if a user is a local user through the /user endpoint
continuous-integration/drone/push Build is passing
2021-10-31 13:57:19 +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
fb9fa27488
healthcheck endpoint ( #998 )
...
continuous-integration/drone/push Build is passing
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
ae8db176db
feat: expose if task comments are enabled or not in /info
continuous-integration/drone/push Build is failing
2021-09-26 13:37:57 +02:00
90146aea5b
User Data Export and import ( #967 )
...
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 )
...
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 )
...
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
e38be9bd18
Update module github.com/labstack/echo/v4 to v4.5.0 ( #929 )
...
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#929
Co-authored-by: renovate <renovatebot@kolaente.de>
Co-committed-by: renovate <renovatebot@kolaente.de>
2021-08-02 18:33:53 +00:00
d746c1bede
Notify the user after three failed login attempts
continuous-integration/drone/push Build is failing
2021-07-30 15:01:04 +02:00
220f43331f
Reset failed totp attempts when logging in successfully
continuous-integration/drone/push Build is failing
2021-07-30 14:46:10 +02:00
5cfc9bf2f9
Disable the user account after 10 failed password attempts
continuous-integration/drone/push Build is passing
2021-07-29 18:45:22 +02:00
3572ac4b82
Send a notification on failed TOTP
continuous-integration/drone/push Build is passing
2021-07-29 18:05:25 +02:00
dac315db59
Fix jwt middleware
continuous-integration/drone/push Build is passing
2021-07-27 15:25:48 +02:00
eae3cbc7bb
Replace jwt-go with github.com/golang-jwt/jwt
continuous-integration/drone/push Build is passing
2021-07-27 10:46:28 +02:00
d5d4d8b6ed
Fix lint
continuous-integration/drone/push Build is passing
2021-07-13 12:16:12 +02:00
9559cbf1ec
Add more logging for test data api endpoint
continuous-integration/drone/push Build is failing
2021-07-13 12:14:59 +02:00
e21a3904ff
Fix mapping task priorities from Vikunja to calDAV
...
continuous-integration/drone/push Build is passing
Resolves #866
2021-07-11 15:03:50 +02:00
d0c77ad1c1
Make sure list / task favorites are set per user, not per entity ( #915 )
...
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#915
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-07-10 10:21:54 +00:00
78a206c818
Add setting for first day of the week
continuous-integration/drone/push Build is passing
2021-06-03 18:11:44 +02:00
fc5703ac8c
Add truncate parameter to test fixtures setup
continuous-integration/drone/push Build is passing
2021-06-03 15:30:31 +02:00
3277f6acf7
Add default list setting ( #875 )
...
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
d07b284ee3
Add reminders for overdue tasks ( #832 )
...
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 )
...
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
continuous-integration/drone/push Build is passing
2021-04-07 18:28:58 +02:00
8ddc00bd29
Fix getting user info from /user endpoint for link shares
continuous-integration/drone/push Build is passing
2021-04-07 15:02:57 +02:00
cb0df3ebbc
Show empty avatar when the user was not found
continuous-integration/drone/push Build is failing
2021-04-07 14:56:44 +02:00
ee436efba3
Add endpoint to remove a list background
continuous-integration/drone/push Build is passing
2021-03-21 17:49:14 +01:00
3999580fe6
Add basic auth for metrics endpoint
continuous-integration/drone/push Build is passing
2021-02-28 11:29:53 +01:00
2178166ece
Add crud endpoints for notifications ( #801 )
...
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
eb3a945678
Fix deleting task relations
...
continuous-integration/drone/push Build encountered an error
While the request body of a DELETE request *can* have data in it, it is not really supported and pretty much undocumented. As such, it doesn't work in all clients and probably broke with recent updates.
This fixes this by moving all parts of the task relation used to identify it in the url.
More Info: https://stackoverflow.com/a/299696/10924593
2021-02-18 23:35:33 +01:00
e7875ecb3b
Subscriptions and notifications for namespaces, tasks and lists ( #786 )
...
continuous-integration/drone/push Build is failing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#786
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-02-14 19:18:14 +00:00
0ab9ce9ec4
Add events ( #777 )
...
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
continuous-integration/drone/push Build is failing
2021-02-02 20:19:13 +01:00
2447f84e2b
Fix /dav/principals/*/ throwing a server error when accessed with GET instead of PROPFIND ( #769 )
...
continuous-integration/drone/push Build is passing
Co-authored-by: kolaente <k@knt.li>
Reviewed-on: vikunja/api#769
Co-authored-by: konrad <konrad@kola-entertainments.de>
Co-committed-by: konrad <konrad@kola-entertainments.de>
2021-01-16 14:37:35 +00:00
456af4d4a9
Fix go header lint
continuous-integration/drone/push Build is passing
2020-12-29 02:04:20 +01:00
9baf6d39bd
Change license to AGPLv3
continuous-integration/drone/push Build is failing
2020-12-23 16:41:52 +01:00