Commit graph

116 commits

Author SHA1 Message Date
kolaente
fa718e2576
Fix token renew for link shares
Signed-off-by: kolaente <k@knt.li>
2020-08-18 16:55:44 +02:00
konrad
16dbcfda7e Manage users via cli (#632)
Add users cli commands to docs

Fix checking for changing username or user email

Add user status change command

Make sure only one user exists with a particular email when updating

Add password reset

Add user id to help

Remove user delete (too many possible side effects, postponed until later)

Make sure to fail on any errors

Fail if changing the username would result in duplicate users

Add user update command

Add user create command

Add command stubs for all commands

Render users in a beautiful table

Started adding user list command

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/632
2020-08-13 15:34:02 +00:00
konrad
bd8c1c3bb7 Return rights when reading a single item (#626)
Fix lint

Update docs

Fix loading all rights (list & namespace)

Add tests

Update web framework

Make tests run again

Update all calls to CanRead methods

Update task attachment & task comment & task rights to return the max right

Update team rights to return the max right

Update namespace rights to return the max right

Update list rights to return the max right

Update link share rights to return the max right

Update label rights to return the max right

Update web dependency

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/626
2020-08-10 12:11:43 +00:00
konrad
dfb7730b63 More avatar providers (#622)
Don't fail if the last avatar file does not exist when deleting it

Fix lint

Remove old global avatar setting and update docs

Generate docs

Invalidate the avatar cache when uploading a new one

Add debug logs

Add caching for upload avatars

Add cache locks

Fix encoding

Resize the uploaded image to a max of 1024 pixels

Remove the old uploaded avatar if one already exists

Add mimetype check for images

Set avatar provider to upload when uploading an avatar

Add upload avatar provider

Make font size smaller to let the initials still look good in smaller sizes

Add debug log

Add cache and resizing of initials avatars

Make font size depend on avatar size

Add drawing initials avatar

Add initials provider

Make the initials avatar provider the default

Add routes

Add user avatar settings handler methods

Add user avatar provider field

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/622
2020-08-02 17:16:58 +00:00
kolaente
41cf73a473
Add option to configure legal urls 2020-07-18 18:53:56 +02:00
kolaente
3b2289c8fa
Fix swagger docs 2020-06-28 16:25:46 +02:00
kolaente
150c3f032c
Prevent crashing when trying to register with an empty payload 2020-06-21 20:54:46 +02:00
konrad
a0ffe89056 List Background upload (#582)
Add filesize check when uploading a new file

Fix error 500 if the uploaded background was not an unsplash one

Add upload background setting to info endpoint

Add config docs

Fix lint

Return list background type if it was uploaded

Add file upload

Add docs

Save uploaded backgrounds as file

Add background upload handler

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/582
2020-06-11 17:31:37 +00:00
kolaente
a525787ab7
Update and fix staticcheck 2020-05-29 22:15:21 +02:00
kolaente
5a04f1ecf4
Add option to disable totp for everyone 2020-05-29 17:15:59 +02:00
konrad
e5e30d0915 List Backgrounds (#568)
Return the updated list when setting a list background

Add swagger docs for unsplash methods

Add unsplash info to search results

Fix misspell

Fix lint

Add rights check for setting and getting backgrounds

Show unsplash information when loading a single list

Make application id for pingbacks configurable

Remove old backgrounds when setting a new one

Return 404 if the list does not have a background

Implement getting list backgrounds

Implement actually setting a photo from unsplash as list background

go mod tidy

Add migration for background file id

Roughly implement setting a list background from unsplash

Implement saving a background

Add migration for unsplash photo table

Add unsplash search

Fix parsing page param

Fix parsing page param

Fix background config

Add unsplash wrapper library

Add enabled background providers to info endpoint

Add config options for backgrounds

Add unsplash background provider

Add routing handler for backgrounds

Add basic background provider interface

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/568
2020-05-26 20:07:55 +00:00
kolaente
e9bc3246ce
Add todoist migrator to available migrators in info endpoint if it is enabled 2020-05-24 12:51:38 +02:00
konrad
fe43173b6c Ensure consistent naming of title fields (#528)
Remove task text and namespace name in migration

Fix lint

Add migration for namespace title

Fix renaming namespace name to title

Rename namespace name field to title

Drop text column at the end of the migration

Add migration for task text to title

Rename task text to title

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/528
2020-05-16 10:17:44 +00:00
kolaente
4137d4aed2
Fix creating new things with a link share auth 2020-05-12 15:51:48 +02:00
kolaente
895d9613b5
Add endpoint to disable totp auth 2020-04-18 01:38:49 +02:00
kolaente
87d0c9088d
Add endpoint to get the current users totp status 2020-04-18 00:22:59 +02:00
konrad
24904585a2 Add 2fa for authentification (#383)
Fix user tests

Add swagger docs

Fix lint

Add totp check when logging in

Make totp enrollment work

Add migration for totp table

go mod vendor

Add routes for totp routes

Add route handler for totp routes

Add basic implementation to enroll a user in totp

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/383
2020-04-17 19:25:35 +00:00
kolaente
1dca8e96a7
Add changing email for users 2020-04-17 16:01:45 +02:00
kolaente
5832991c4d
Fix tests after renaming json fields to snake_case 2020-04-13 23:27:55 +02:00
konrad
cdd068cdb6 Add empty avatar provider (#149)
Fix lint

Add docs for avatar configuration

Add default avatar provider

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/149
2020-03-01 21:10:25 +00:00
konrad
584e3af237 Add proxying gravatar requests for user avatars (#148)
Fix getting avatar based on email

Remove avatarUrl from user struct

Fix staticcheck

Add default avatar size

Add config option for caching avatars

go mod vendor

Add swagger docs

Add proxying gravatar requests for user avatars

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/148
2020-03-01 20:30:37 +00:00
kolaente
1f99238019
Update copyright header 2020-02-07 17:27:45 +01:00
konrad
f603b41d99 Better efficency for loading teams (#128)
Fix staticcheck

Better performance for getting teams on a namespace

Better performance for getting teams on a list

Fix lint

Fix swagger

Signed-off-by: kolaente <k@knt.li>

Make loading a single full team more efficent

Signed-off-by: kolaente <k@knt.li>

Make loading teams more efficent

Signed-off-by: kolaente <k@knt.li>

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/128
2020-01-27 17:28:17 +00:00
konrad
fc65052ba0 Add config options for task attachments (#125)
Add config options for task attachments

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/125
2020-01-26 19:10:31 +00:00
konrad
7e9446ea07 Refactor User and DB handling (#123)
fix copyright date

Add more user tests

More user tests

More user tests

Start refactoring user tests

Docs

Fix lint

Fix db fixtures init in tests

Fix models test

Fix loading fixtures

Fix ineffasign

Fix lint

Fix integration tests

Fix init of test engine creation

Fix user related tests

Better handling of creating test enging

Moved all fixtures to db package

Moved all fixtures to db package

Moved user related stuff to seperate package

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/123
2020-01-26 17:08:06 +00:00
konrad
9e39399689 Migration (#120)
Go mod tidy

[skip ci] Add modules/migration to docs

[skip ci] update date

fmt

Merge branch 'master' into feature/migration

# Conflicts:
#	pkg/routes/api/v1/info.go

Add docs on how to create a migrator

Add available migrators to /info endpoint

Return a message once everything was migrated successfully

Add swagger docs for wunderlist migration

Docs for migration [skip ci]

Fix due date fixture in migration test

Fix staticcheck

Fix lint

Logging and cleanup

Make the migrator work with real data

Add routes for migration

Fix misspell

Add method to store a full vikunja structure into vikunja

Add getting all data from wunderlist

Add attachment migration from wunderlist

Add done and done at to wunderlist migrator

Add todo

Add wunderlist auth url implementation

Fix lint

Finish wunderlist migration

Added all structs for the wunderlist migratior

Fix owner field being null for user shared namespaces (#119)

Update copyright year (#118)

Add option to disable registration (#117)

Added migrator interface

Co-authored-by: kolaente <k@knt.li>
Reviewed-on: https://kolaente.dev/vikunja/api/pulls/120
2020-01-19 16:52:16 +00:00
konrad
a0c5e4e985 Update copyright year (#118) 2020-01-09 17:33:22 +00:00
konrad
402cef3c15 Add option to disable registration (#117) 2019-12-30 23:27:02 +00:00
konrad
62e550bf35 Add user token renew (#113) 2019-12-07 19:52:04 +00:00
shilch
e890001ee1 Consistent copyright text in file headers (#112) 2019-12-04 19:39:56 +00:00
kolaente
b81cd6128a
Fixed error when setting max file size on 32-Bit systems 2019-10-18 17:30:25 +02:00
konrad
2169464983 Task Attachments (#104) 2019-10-16 20:52:29 +00:00
konrad
694fc62495 Refactored getting all lists for a namespace (#100) 2019-09-20 16:16:31 +00:00
konrad
71ef86e0df Added more infos to a link share auth (#98) 2019-09-08 19:22:54 +00:00
konrad
6140920cb8 Fixed rate limit panic when authenticatin with a link share auth token (#97) 2019-09-08 19:11:42 +00:00
konrad
8d57923a7d Sharing of lists via public links (#94) 2019-08-31 20:56:41 +00:00
konrad
be14634e1e GetUser now returns a pointer (#93) 2019-08-14 19:59:31 +00:00
konrad
48826a6ed7 Logger refactoring (#90) 2019-07-20 18:12:10 +00:00
konrad
12eaddc8ee Added http endpoint to list all users on a list (#87) 2019-07-18 16:38:21 +00:00
konrad
e2d9de191d /info endpoint (#85) 2019-07-15 22:54:38 +00:00
konrad
1f1a079fd3 Better config handling with constants (#83) 2019-07-06 20:12:26 +00:00
kolaente
4e8c2a7bf6
Fixed avatar url when logging in 2019-06-06 12:28:08 +02:00
konrad
7107d030fc Better caldav support (#73) 2019-05-22 17:48:48 +00:00
konrad
3d7fd9ca20
Updated libraries 2019-05-07 21:42:24 +02:00
konrad
7e38937efc
Fixed lint 2019-04-23 21:58:42 +02:00
kolaente
6bab8fb769
Updated and re-enabled statickcheck 2019-04-23 10:34:06 +02:00
konrad
3872d1d8a7 Integration tests (#71) 2019-04-21 18:18:17 +00:00
kolaente
2d9d27f63c
Fixed getting lists by namespace 2019-04-02 10:53:16 +02:00
konrad
87873e53c5 Fix rights checks (#70) 2019-04-01 19:48:48 +00:00
konrad
47352d3ed4 Let rights methods return errors (#64) 2019-03-24 12:35:50 +00:00
konrad
607dbd6ae8 API Docs improvements (#46) 2019-01-03 22:22:06 +00:00
konrad
5a93475be9 Get tasks between a date range (#41) 2018-12-22 18:06:14 +00:00
konrad
cbc5995ad3 Various user fixes (#38) 2018-12-19 21:05:25 +00:00
konrad
0c1d786ade Exlicitly get the pseudonamespace with all shared lists (#32) 2018-12-04 10:16:42 +00:00
konrad
cc6b35e314 Priorites for tasks (#31) 2018-12-02 00:49:30 +00:00
konrad
007d8ec375 Fixed generation of swagger docs (#29) 2018-12-01 01:59:17 +00:00
konrad
ce2cae9430 Move the crudhandler to own repo (#27) 2018-11-30 23:26:56 +00:00
konrad
3f44e3b83e Change License to GPLv3 (#26) 2018-11-26 20:17:33 +00:00
konrad
fded3c23d0 Multiple Reminders (#22) 2018-11-21 15:03:47 +00:00
konrad
373bbd2202 Migrate to new swagger docs generation (#18) 2018-11-12 15:46:35 +00:00
konrad
d3de658882 Implemented search for everything (#17) 2018-11-09 17:33:06 +00:00
konrad
d232836423 Added pagination (#16) 2018-11-09 10:30:17 +00:00
konrad
d03fca801b CalDAV support (#15) 2018-11-03 15:05:45 +00:00
konrad
31a4a1dd00 Added a route to get all tasks sorted desc by their due dates (#14) 2018-11-02 16:59:49 +00:00
konrad
4713023a97 Prevent login from inactive (aka non-verified) users (#8) 2018-11-01 22:47:41 +00:00
konrad
301a4eedda New structure (#7) 2018-10-31 12:42:38 +00:00