Forced lower case tags
authorGreg Burri <greg.burri@gmail.com>
Wed, 15 Jan 2025 09:49:46 +0000 (10:49 +0100)
committerGreg Burri <greg.burri@gmail.com>
Wed, 15 Jan 2025 09:49:46 +0000 (10:49 +0100)
backend/src/services/ron.rs
frontend/src/recipe_edit.rs

index 28e9a9b..71e0635 100644 (file)
@@ -253,7 +253,15 @@ pub async fn add_tags(
     ExtractRon(ron): ExtractRon<common::ron_api::Tags>,
 ) -> Result<impl IntoResponse> {
     check_user_rights_recipe(&connection, &user, ron.recipe_id).await?;
-    connection.add_recipe_tags(ron.recipe_id, &ron.tags).await?;
+    connection
+        .add_recipe_tags(
+            ron.recipe_id,
+            &ron.tags
+                .into_iter()
+                .map(|tag| tag.to_lowercase())
+                .collect::<Vec<_>>(),
+        )
+        .await?;
     Ok(StatusCode::OK)
 }
 
index 9f5f721..5b8535c 100644 (file)
@@ -184,7 +184,8 @@ pub fn setup_page(recipe_id: i64) -> Result<(), JsValue> {
 
         fn add_tags(recipe_id: i64, tags: String) {
             spawn_local(async move {
-                let tag_list: Vec<String> = tags.split_whitespace().map(String::from).collect();
+                let tag_list: Vec<String> =
+                    tags.split_whitespace().map(str::to_lowercase).collect();
                 if !tag_list.is_empty() {
                     let body = ron_api::Tags {
                         recipe_id,