Commit Graph

189 Commits

Author SHA1 Message Date
349e6a5905
feat: rename lists to projects 2023-03-13 14:28:06 +01:00
c0c523f0a8
fix: don't send bad request errors to sentry
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-13 10:52:52 +01:00
077baba2ea
fix: lint
All checks were successful
continuous-integration/drone/push Build is passing
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
Some checks failed
continuous-integration/drone/push Build is failing
Follow-up for a62b57ac62
2023-03-05 14:03:09 +01:00
cernst
a62b57ac62 feat(caldav): import caldav categories as Labels (#1413)
All checks were successful
continuous-integration/drone/push Build is passing
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
All checks were successful
continuous-integration/drone/push Build is passing
Partially reverts 1afc72e190
2023-03-01 22:18:59 +01:00
cernst
1afc72e190 fix: Make sure labels are always exported as caldav (#1412)
All checks were successful
continuous-integration/drone/push Build is passing
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
530bb0a63c
fix(user): make reset the user's name to empty actually work
Some checks failed
continuous-integration/drone/push Build is failing
2023-01-23 18:30:01 +01:00
ef1d1e2b20 feat(migrators): remove wunderlist (#1346)
Some checks failed
continuous-integration/drone/push Build is failing
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)
Some checks failed
continuous-integration/drone/push Build is failing
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
f5a33478f2
fix(migration): make sure importing works when the csv file has errors and don't try to parse empty values as dates
All checks were successful
continuous-integration/drone/pr Build is passing
2022-10-09 22:58:08 +02:00
0d044997df
fix(migration): expose ticktick migrator to /info 2022-10-09 22:45:01 +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
c5bd09702a chore(deps): update dependency golang to v1.19 (#1228)
Some checks failed
continuous-integration/drone/push Build is failing
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
54b7f7127c fix(caldav): no failed login emails for tokens (#1252)
All checks were successful
continuous-integration/drone/push Build is passing
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
8f27e7e619
fix: properly decode params in url
Some checks failed
continuous-integration/drone/push Build is failing
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
Some checks failed
continuous-integration/drone/push Build is failing
Resolves vikunja/frontend#2196
2022-08-02 13:26:42 +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
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
All checks were successful
continuous-integration/drone/push Build is passing
2022-06-16 16:20:26 +02:00
2f25b48869
feat: restrict max avatar size
All checks were successful
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)
All checks were successful
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)
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
ac6818a476
fix: checking for error types
All checks were successful
continuous-integration/drone/push Build is passing
2022-03-27 17:52:33 +02:00
5cf263a86f
feat: upgrade golangci-lint to 1.45.2
Some checks failed
continuous-integration/drone/push Build is failing
2022-03-27 16:55:37 +02: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
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
093d0c65ca
feat: enable rate limit for unauthenticated routes
All checks were successful
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
All checks were successful
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)
All checks were successful
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
Some checks failed
continuous-integration/drone/push Build is failing
2021-09-26 13:37:57 +02: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
e38be9bd18 Update module github.com/labstack/echo/v4 to v4.5.0 (#929)
All checks were successful
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
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-30 15:01:04 +02:00
220f43331f
Reset failed totp attempts when logging in successfully
Some checks failed
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
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
dac315db59
Fix jwt middleware
All checks were successful
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
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-27 10:46:28 +02:00
d5d4d8b6ed
Fix lint
All checks were successful
continuous-integration/drone/push Build is passing
2021-07-13 12:16:12 +02:00
9559cbf1ec
Add more logging for test data api endpoint
Some checks failed
continuous-integration/drone/push Build is failing
2021-07-13 12:14:59 +02:00
e21a3904ff
Fix mapping task priorities from Vikunja to calDAV
All checks were successful
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)
All checks were successful
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