From d92a1cd617a5b9cdac548e4b1d840e5434e6dae7 Mon Sep 17 00:00:00 2001 From: Imbus Date: Thu, 2 Nov 2023 11:29:34 +0100 Subject: [PATCH 1/4] Demo user --- server/src/state.rs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/server/src/state.rs b/server/src/state.rs index 6264987..43b2519 100644 --- a/server/src/state.rs +++ b/server/src/state.rs @@ -2,6 +2,8 @@ use std::collections::BTreeMap; use std::sync::Arc; use std::sync::Mutex; +use log::error; +use log::info; use sqlx::Pool; use sqlx::Sqlite; use sqlx::SqlitePool; @@ -30,6 +32,7 @@ impl ServerState { // This is almost certainly bad practice for more reasons than I can count dotenvy::dotenv().ok(); let db_url = dotenvy::var("DATABASE_URL").unwrap_or(":memory:".to_string()); + info!("Using db_url: {}", &db_url); let pool = sqlite::SqlitePoolOptions::new() .max_connections(5) @@ -39,6 +42,12 @@ impl ServerState { sqlx::migrate!("./migrations").run(&pool).await.unwrap(); + match crate::db::db_new_user("imbus".to_string(), "kartellen1234".to_string(), &pool).await + { + Some(u) => info!("Created default user {}", u.username), + None => error!("Failed to create default user..."), + } + #[cfg(debug_assertions)] debug_setup(&pool).await.unwrap(); From b3124948c4656542dc18509973f740cfed8a0588 Mon Sep 17 00:00:00 2001 From: Imbus Date: Sat, 4 Nov 2023 21:53:55 +0100 Subject: [PATCH 2/4] Create sqlite db if not exist, constrain debug deps to debug builds --- justfile | 2 +- server/src/state.rs | 9 ++++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/justfile b/justfile index bedd409..1ec67a7 100644 --- a/justfile +++ b/justfile @@ -32,7 +32,7 @@ build-container-release: # Builds a release container and runs it start-release: build-container-release remove-podman-containers - {{runtime}} run -d -p 8080:8080 --name frostbyte fb-server + {{runtime}} run -d -e DATABASE_URL=sqlite:release.db -p 8080:8080 --name frostbyte fb-server init-sqlx: echo "DATABASE_URL=sqlite:debug.db" > server/.env diff --git a/server/src/state.rs b/server/src/state.rs index 43b2519..b828927 100644 --- a/server/src/state.rs +++ b/server/src/state.rs @@ -4,9 +4,9 @@ use std::sync::Mutex; use log::error; use log::info; +use sqlx::migrate::MigrateDatabase; use sqlx::Pool; use sqlx::Sqlite; -use sqlx::SqlitePool; use sqlx::{self, sqlite}; #[derive(Clone)] @@ -34,6 +34,10 @@ impl ServerState { let db_url = dotenvy::var("DATABASE_URL").unwrap_or(":memory:".to_string()); info!("Using db_url: {}", &db_url); + if !sqlx::Sqlite::database_exists(&db_url).await.unwrap() { + sqlx::Sqlite::create_database(&db_url).await.unwrap(); + } + let pool = sqlite::SqlitePoolOptions::new() .max_connections(5) .connect(&db_url) @@ -55,6 +59,9 @@ impl ServerState { } } +#[cfg(debug_assertions)] +use sqlx::SqlitePool; + // Inserts a bunch of dummy data into the database // Mostly useful for debugging new posts, as we need to satisfy foreign key constraints. #[cfg(debug_assertions)] From 867eb24d5d7f4e8b5c24fc3af7515a53a780ec83 Mon Sep 17 00:00:00 2001 From: Imbus Date: Sun, 5 Nov 2023 19:16:00 +0100 Subject: [PATCH 3/4] Default handler for root path set to index.html --- server/src/main.rs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/server/src/main.rs b/server/src/main.rs index 6d95008..c7ca643 100755 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -37,7 +37,11 @@ async fn main() -> std::io::Result<()> { .app_data(Data::new(data.clone())) .app_data(Data::new(capt_db.clone())), ) - .service(Files::new("/", "./public").index_file("index.html")) + .service( + Files::new("/", "./public") + .index_file("index.html") + .default_handler(actix_files::NamedFile::open("./public/index.html").unwrap()), + ) }) .bind("0.0.0.0:8080")? .run() From 075a684ee341a39eaa2087cf135637265892d8c9 Mon Sep 17 00:00:00 2001 From: Imbus Date: Sun, 5 Nov 2023 19:31:52 +0100 Subject: [PATCH 4/4] Css related fixes for centering navbar --- client-solid/src/Navbar.tsx | 48 +++++++++++++++++++++---------------- 1 file changed, 28 insertions(+), 20 deletions(-) diff --git a/client-solid/src/Navbar.tsx b/client-solid/src/Navbar.tsx index ca5e4b8..2f68d1f 100644 --- a/client-solid/src/Navbar.tsx +++ b/client-solid/src/Navbar.tsx @@ -31,26 +31,34 @@ export function Navbar() { let login_ctx = useContext(LoginContext); return ( -