diff --git a/src/routes.rs b/src/routes.rs index 1f1bb14..650476d 100644 --- a/src/routes.rs +++ b/src/routes.rs @@ -127,10 +127,12 @@ pub struct ViewQuery { async fn view_request( Extension(data): Extension, - Path(slug): Path, + Path(mut slug): Path, Query(props): Query, ) -> impl IntoResponse { let (ref data, ref tera, ref build_code) = *data.read().await; + slug = slug.to_lowercase(); + let entry = match data .query(&SimplifiedQuery { query: AppDataSelectQuery::KeyIs(format!("entries('{}')", slug.to_lowercase())), @@ -226,10 +228,12 @@ async fn view_request( async fn editor_request( Extension(data): Extension, - Path(slug): Path, + Path(mut slug): Path, Query(props): Query, ) -> impl IntoResponse { let (ref data, ref tera, ref build_code) = *data.read().await; + slug = slug.to_lowercase(); + let entry = match data .query(&SimplifiedQuery { query: AppDataSelectQuery::KeyIs(format!("entries('{}')", slug.to_lowercase())), @@ -305,16 +309,17 @@ async fn render_request(Json(req): Json) -> impl IntoResponse { async fn exists_request( Extension(data): Extension, - Path(slug): Path, + Path(mut slug): Path, ) -> impl IntoResponse { let (ref data, _, _) = *data.read().await; + slug = slug.to_lowercase(); Json(ApiReturn { ok: true, message: "Success".to_string(), payload: data .query(&SimplifiedQuery { - query: AppDataSelectQuery::KeyIs(format!("entries('{}')", slug.to_lowercase())), + query: AppDataSelectQuery::KeyIs(format!("entries('{}')", slug)), mode: AppDataSelectMode::One(0), }) .await @@ -376,7 +381,7 @@ fn hash_passwords(metadata: &mut EntryMetadata) -> (bool, String) { } /// The time that must be waited between each entry creation. -const CREATE_WAIT_TIME: usize = 5000; +const CREATE_WAIT_TIME: usize = 15000; async fn create_request( jar: CookieJar, @@ -544,10 +549,11 @@ struct EditEntry { async fn edit_request( headers: HeaderMap, Extension(data): Extension, - Path(slug): Path, + Path(mut slug): Path, Json(mut req): Json, ) -> impl IntoResponse { let (ref data, _, _) = *data.read().await; + slug = slug.to_lowercase(); // get real ip let real_ip = headers