Accept form to add player
Dependencies
- [2]
TEB4R7OUAdd form to join game - [3]
AEWYJHUDStart to show player list - [4]
LTQCLSBUSplit database usage in pages - [5]
6BDGQ4VMShow player names for registered players - [6]
DNFB7TNIAdd new pages and links to slow games and reset game password - [7]
EVP2FSBHSplit index page - [8]
OJO4B4QOAdd login form and empty handler - [9]
WW3KRXX6Add page for reset game password - [10]
6NYILMKIAdd page for slow game - [11]
WVHXYKCVAdd postgresql pools - [12]
HZDCKIXQUse constants for templates - [*]
BVCWJKEXGet auth info for slow game page - [*]
4MZ4VIR7Initial commit - [*]
FUCFD4UVAdd log in and log out support
Change contents
- edit in src/pages/slow_game.rs at line 1
use actix_web::http::header; - replacement in src/pages/slow_game.rs at line 16
#[derive(serde_derive::Serialize)]struct JoinData {#[derive(serde_derive::Deserialize, serde_derive::Serialize)]pub struct JoinData { - replacement in src/pages/slow_game.rs at line 155
(gameuid.clone(), user.to_string()),(gameuid.clone(), user.to_lowercase()), - edit in src/pages/slow_game.rs at line 193
}pub async fn post_join_game(request: HttpRequest,form: web::Form<JoinData>,data: web::Data<WebData<'_>>,) -> HttpResponse {let cached_data = {let mut cache = data.cache_join_game.lock().await;cache.remove(&form.csrf)};let cached_data = if let Some(cd) = cached_data {cd} else {log::warn!("Unknown data for CSRF: {}", form.csrf);return HttpResponse::BadRequest().body("Incorrect");};let jar = request_to_jar(request);if jar.private(&data.cookies_key).get("auth").map_or(true, |x| x.value().to_lowercase() != cached_data.1){log::warn!("Incorrect user");return HttpResponse::BadRequest().body("Incorrect");}HttpResponse::Found().append_header((header::LOCATION,format!("slow-game-{}.html", cached_data.0),)).finish() - replacement in src/main.rs at line 22
use pages::slow_game::slow_game;use pages::slow_game::{post_join_game, slow_game}; - edit in src/main.rs at line 267[16.7235][3.2328]
.route("/join-game.do", web::post().to(post_join_game))