mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-03 08:57:54 +00:00
Category assignment flag check
This commit is contained in:
1 parent
db7f5d20fe
commit
9f508aedbe
1 file changed
+7
@@ -54,6 +54,7 @@ pub struct AssignTtsCategoryResponse {
|
||||
#[derive(Debug, Serialize)]
|
||||
pub enum AssignTtsCategoryError {
|
||||
CategoryNotFound,
|
||||
CategoryNotApplicable,
|
||||
ModelNotFound,
|
||||
NotAuthorized,
|
||||
ServerError,
|
||||
@@ -63,6 +64,7 @@ impl ResponseError for AssignTtsCategoryError {
|
||||
fn status_code(&self) -> StatusCode {
|
||||
match *self {
|
||||
AssignTtsCategoryError::CategoryNotFound => StatusCode::NOT_FOUND,
|
||||
AssignTtsCategoryError::CategoryNotApplicable => StatusCode::BAD_REQUEST,
|
||||
AssignTtsCategoryError::ModelNotFound => StatusCode::NOT_FOUND,
|
||||
AssignTtsCategoryError::NotAuthorized => StatusCode::UNAUTHORIZED,
|
||||
AssignTtsCategoryError::ServerError => StatusCode::INTERNAL_SERVER_ERROR,
|
||||
@@ -140,6 +142,11 @@ pub async fn assign_tts_category_handler(
|
||||
}
|
||||
}
|
||||
|
||||
if !category.can_directly_have_models {
|
||||
warn!("category cannot have models: {}", category.category_token);
|
||||
return Err(AssignTtsCategoryError::CategoryNotApplicable);
|
||||
}
|
||||
|
||||
// NB: Second set of permission checks.
|
||||
// Only mods should see deleted models (both user_* and mod_* deleted).
|
||||
let is_mod_that_can_see_deleted = user_session.can_delete_other_users_tts_models;
|
||||
|
||||
Reference in new issue
Block a user