diff --git a/crates/api_crud/src/post/create.rs b/crates/api_crud/src/post/create.rs index 0bbbabcb0..1dcc90241 100644 --- a/crates/api_crud/src/post/create.rs +++ b/crates/api_crud/src/post/create.rs @@ -107,18 +107,9 @@ impl PerformCrud for CreatePost { .thumbnail_url(thumbnail_url) .build(); - let inserted_post = match Post::create(context.pool(), &post_form).await { - Ok(post) => post, - Err(e) => { - let err_type = if e.to_string() == "value too long for type character varying(200)" { - "post_title_too_long" - } else { - "couldnt_create_post" - }; - - return Err(LemmyError::from_error_message(e, err_type)); - } - }; + let inserted_post = Post::create(context.pool(), &post_form) + .await + .map_err(|e| LemmyError::from_error_message(e, "couldnt_create_post"))?; let inserted_post_id = inserted_post.id; let protocol_and_hostname = context.settings().get_protocol_and_hostname(); diff --git a/crates/api_crud/src/post/update.rs b/crates/api_crud/src/post/update.rs index 253340834..632bc5ae7 100644 --- a/crates/api_crud/src/post/update.rs +++ b/crates/api_crud/src/post/update.rs @@ -96,16 +96,9 @@ impl PerformCrud for EditPost { .build(); let post_id = data.post_id; - let res = Post::update(context.pool(), post_id, &post_form).await; - if let Err(e) = res { - let err_type = if e.to_string() == "value too long for type character varying(200)" { - "post_title_too_long" - } else { - "couldnt_update_post" - }; - - return Err(LemmyError::from_error_message(e, err_type)); - } + Post::update(context.pool(), post_id, &post_form) + .await + .map_err(|e| LemmyError::from_error_message(e, "couldnt_create_post"))?; build_post_response( context, diff --git a/crates/utils/src/utils/validation.rs b/crates/utils/src/utils/validation.rs index 7e09c5af8..347d791a8 100644 --- a/crates/utils/src/utils/validation.rs +++ b/crates/utils/src/utils/validation.rs @@ -8,7 +8,7 @@ use url::Url; static VALID_ACTOR_NAME_REGEX: Lazy = Lazy::new(|| Regex::new(r"^[a-zA-Z0-9_]{3,}$").expect("compile regex")); static VALID_POST_TITLE_REGEX: Lazy = - Lazy::new(|| Regex::new(r".*\S{3,}.*").expect("compile regex")); + Lazy::new(|| Regex::new(r".*\S{3,200}.*").expect("compile regex")); static VALID_MATRIX_ID_REGEX: Lazy = Lazy::new(|| { Regex::new(r"^@[A-Za-z0-9._=-]+:[A-Za-z0-9.-]+\.[A-Za-z]{2,}$").expect("compile regex") });