summaryrefslogtreecommitdiff
path: root/src/invite
diff options
context:
space:
mode:
authorOwen Jacobson <owen@grimoire.ca>2024-10-22 23:25:24 -0400
committerOwen Jacobson <owen@grimoire.ca>2024-10-22 23:25:24 -0400
commit01f9f3549c76702fd56e58d44c5180fecddb4bfa (patch)
treee7a64e70975a8b50bc442d28c17161b82c42c63a /src/invite
parent214a9e6c1fd729fc2c49eb2a5d41b5651ff5bc61 (diff)
Sort out the naming of the various parts of an identity.
* A `cookie::Identity` (`IdentityCookie`) is a specialized CookieJar for working with identities. * An `Identity` is a token/login pair. I hope for this to be a bit more legible. In service of this, `Login` is no longer extractable. You have to get an identity.
Diffstat (limited to 'src/invite')
-rw-r--r--src/invite/routes/invite/post.rs6
-rw-r--r--src/invite/routes/post.rs10
2 files changed, 9 insertions, 7 deletions
diff --git a/src/invite/routes/invite/post.rs b/src/invite/routes/invite/post.rs
index a41207a..3ca4e6b 100644
--- a/src/invite/routes/invite/post.rs
+++ b/src/invite/routes/invite/post.rs
@@ -11,16 +11,16 @@ use crate::{
invite::app,
login::{Login, Password},
name::Name,
- token::extract::IdentityToken,
+ token::extract::IdentityCookie,
};
pub async fn handler(
State(app): State<App>,
RequestedAt(accepted_at): RequestedAt,
- identity: IdentityToken,
+ identity: IdentityCookie,
Path(invite): Path<super::PathInfo>,
Json(request): Json<Request>,
-) -> Result<(IdentityToken, Json<Login>), Error> {
+) -> Result<(IdentityCookie, Json<Login>), Error> {
let (login, secret) = app
.invites()
.accept(&invite, &request.name, &request.password, &accepted_at)
diff --git a/src/invite/routes/post.rs b/src/invite/routes/post.rs
index 80b1c27..eb7d706 100644
--- a/src/invite/routes/post.rs
+++ b/src/invite/routes/post.rs
@@ -1,17 +1,19 @@
use axum::extract::{Json, State};
-use crate::{app::App, clock::RequestedAt, error::Internal, invite::Invite, login::Login};
+use crate::{
+ app::App, clock::RequestedAt, error::Internal, invite::Invite, token::extract::Identity,
+};
pub async fn handler(
State(app): State<App>,
RequestedAt(issued_at): RequestedAt,
- login: Login,
- // Require `{}` as the only valid request for this endpoint.
+ identity: Identity,
_: Json<Request>,
) -> Result<Json<Invite>, Internal> {
- let invite = app.invites().create(&login, &issued_at).await?;
+ let invite = app.invites().create(&identity.login, &issued_at).await?;
Ok(Json(invite))
}
+// Require `{}` as the only valid request for this endpoint.
#[derive(Default, serde::Deserialize)]
pub struct Request {}