diff options
author | Kjetil Orbekk <kj@orbekk.com> | 2022-11-05 18:06:54 -0400 |
---|---|---|
committer | Kjetil Orbekk <kj@orbekk.com> | 2022-11-05 18:37:09 -0400 |
commit | 50d6ef8ad0f344c9b510c6752119fa5983629d95 (patch) | |
tree | fedf2e0569750353a352500ac0ad85034828930d /server/src/main.rs | |
parent | 2d9d37bd5e4770a05cae780f2113266f3fdd0915 (diff) |
Add table view and go to table automatically
Diffstat (limited to 'server/src/main.rs')
-rw-r--r-- | server/src/main.rs | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/server/src/main.rs b/server/src/main.rs index eaf1379..3f464ac 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -5,7 +5,7 @@ use auth::AuthenticatedSession; use axum::{ extract::{Extension, Query}, response::Redirect, - routing::{get, post}, + routing::{delete, get, post}, Json, Router, }; use protocol::{Table, UserInfo}; @@ -60,6 +60,7 @@ async fn main() { let app = Router::new() .route("/api/user/info", get(user_info)) .route("/api/table", post(create_table)) + .route("/api/table", delete(leave_table)) // .route("/api/user/table", get(user_table)) .route("/api/login", get(login)) .route(auth::LOGIN_CALLBACK, get(login_callback)) @@ -73,6 +74,20 @@ async fn main() { .unwrap(); } +async fn leave_table( + session: AuthenticatedSession, + extension: ContextExtension, +) -> Result<(), BridgeError> { + sqlx::query!( + r#" + delete from table_players where player_id = $1 + "#, session.player_id + ) + .execute(&extension.db) + .await?; + Ok(()) +} + async fn create_table( session: AuthenticatedSession, extension: ContextExtension, |