Commit Graph

575 Commits

Author SHA1 Message Date
Valentin Tolmer
7aab9e8cf5 app: Add a way to manage a user's group memberships 2021-09-20 11:23:57 +02:00
Valentin Tolmer
480f48f820 graphql: Add a method to list groups 2021-09-20 11:23:57 +02:00
Valentin Tolmer
e4d6b122c5 graphql: Add methods to add/remove group memberships 2021-09-20 11:23:57 +02:00
Valentin Tolmer
a54e73bded app: Add the group memberships 2021-09-20 11:23:57 +02:00
Valentin Tolmer
718da71d0d app: Allow admins to change passwords 2021-09-20 11:23:57 +02:00
Valentin Tolmer
005e18472e app: reorganize and add a page to change the password 2021-09-13 10:35:39 +02:00
Valentin Tolmer
a184cce38f docker: fix command 2021-09-12 12:06:11 +02:00
Valentin Tolmer
035eb6cc3c cargo: update dependencies and add a patch to a library 2021-09-03 14:32:33 +02:00
Valentin Tolmer
d647be793a app: Add a way for users to edit their info 2021-09-03 14:32:33 +02:00
Valentin Tolmer
6ef06163db schema: add a script to re-export the schema 2021-09-03 14:32:33 +02:00
Valentin Tolmer
2954109d96 graphql: Add a method to update a user 2021-09-03 14:32:33 +02:00
Valentin Tolmer
0ac9e134de schema: make user fields non-nullable
They can always be empty. This simplifies mutation, since graphql_client
doesn't have an easy way to conditionally leave out fields (we could do
that with `@include`, but that's one bool per field in addition to the
field, a bit ugly).
2021-09-03 14:32:33 +02:00
Valentin Tolmer
564c09d6ab app: Fix the user detail view 2021-09-03 14:32:33 +02:00
Valentin Tolmer
092cdb860c workflow: Fix typo 2021-08-31 20:32:55 +02:00
Valentin Tolmer
d8df47b35d Move backend source to server/ subpackage
To clarify the organization.
2021-08-31 20:32:55 +02:00
Valentin Tolmer
3eb53ba5bf model: rename to auth
Since the "model" doesn't contain any message from the API anymore, and
instead contains only the structures needed for authentication, it was
renamed as such.
2021-08-31 20:32:55 +02:00
Valentin Tolmer
9dd579e32e model: move User and Group definition to backend 2021-08-31 20:32:55 +02:00
Valentin Tolmer
641018ff56 model: remove AddUserToGroupRequest 2021-08-31 20:32:55 +02:00
Valentin Tolmer
54f973e349 model: remove CreateGroupRequest 2021-08-31 20:32:55 +02:00
Valentin Tolmer
4af60e5668 model: remove DeleteUserRequest 2021-08-31 20:32:55 +02:00
Valentin Tolmer
0bcabc7d0c model: remove CreateUserRequest 2021-08-31 20:32:55 +02:00
Valentin Tolmer
0dd05e5771 model: inline the UserDetailsRequest 2021-08-31 20:32:55 +02:00
Valentin Tolmer
6efafa99c8 user_table: refactor to clarify view() 2021-08-31 20:32:55 +02:00
Valentin Tolmer
9c4f8931a0 app: Fix local timezone not taken into account 2021-08-31 20:32:55 +02:00
Valentin Tolmer
cd91b4d3ac api: inline the ListUsersRequest 2021-08-31 20:32:55 +02:00
Valentin Tolmer
08a3845cbe infra: Remove the TCP API
Deprecated in favor of GraphQL
2021-08-31 20:32:55 +02:00
Valentin Tolmer
651adbe3c8 model: Inline the BindRequest in the backend 2021-08-31 20:32:55 +02:00
Valentin Tolmer
2aca9dbe62 app: migrate user creation to GraphQL 2021-08-31 20:32:55 +02:00
Valentin Tolmer
37f61ce212 app: fix registration URLs 2021-08-31 20:32:55 +02:00
Valentin Tolmer
40ba65dca7 app: make a graphql argument required 2021-08-31 20:32:55 +02:00
Valentin Tolmer
459f1eba19 graphql: add an endpoint to create a user 2021-08-31 20:32:55 +02:00
Valentin Tolmer
dd7e9c9283 app: migrate user_details to graphql endpoint 2021-08-31 20:32:55 +02:00
Valentin Tolmer
267ce51973 jwt: Harden check by hardcoding accepted algorithms 2021-08-30 09:27:00 +02:00
Valentin Tolmer
0ecd9ed263 Migrate datetimes to UTC 2021-08-30 09:27:00 +02:00
Valentin Tolmer
848cc86d73 api: add the rest of the fields to User 2021-08-30 09:27:00 +02:00
Valentin Tolmer
a1f40a32a5 app: refactor API methods with empty responses 2021-08-30 09:27:00 +02:00
Valentin Tolmer
f860b8fe43 app: Migrate list_users to use the graphql client 2021-08-30 09:27:00 +02:00
Valentin Tolmer
83ed58bff2 errors: use anyhow::Context everywhere 2021-08-30 09:27:00 +02:00
Valentin Tolmer
a08b9a556d cli: introduce the export_graphql_schema command
Split the command line into subcommands `run` and
`export_graphql_schema`.
2021-08-30 09:27:00 +02:00
Valentin Tolmer
d2617e08a7 Simplify get_user_groups to take a &str 2021-08-30 09:27:00 +02:00
Valentin Tolmer
a51965a61a Implement basic GraphQL endpoint with auth 2021-08-30 09:27:00 +02:00
Valentin Tolmer
be3e50d31a Update actix libraries 2021-08-30 09:27:00 +02:00
Valentin Tolmer
87516eb218 Update actix libraries 2021-08-22 16:58:33 +02:00
Valentin Tolmer
860ca8d41c Add the twitter handle to the README 2021-07-05 14:11:19 +02:00
Valentin Tolmer
04b9e97527 Implement client view for the user details 2021-07-05 13:41:36 +02:00
Valentin Tolmer
5e0b41998f Propagate the admin status to the top component 2021-07-05 13:41:36 +02:00
Valentin Tolmer
6744a89922 Implement per-user guards for the user details endpoint 2021-07-05 13:41:36 +02:00
Valentin Tolmer
c7fb8baadb Remove useless clones 2021-07-05 13:41:36 +02:00
Valentin Tolmer
5a3332430f Add a route to server user details 2021-07-05 13:41:36 +02:00
Valentin Tolmer
b0c721bb28 Add a method to get a single user's details 2021-07-05 13:41:36 +02:00