mirror of
https://github.com/storytold/artcraft.git
synced 2026-11-06 18:21:12 +00:00
get rid of untyped field
This commit is contained in:
1 parent
578bdf498a
commit
df955d5aca
83 files changed
+180
-182
No files matched your search
+3
-5
@@ -15,8 +15,7 @@ use crate::helpers::boolean_converters::{i8_to_bool, nullable_i8_to_bool_default
|
||||
|
||||
#[derive(Clone, Serialize, Deserialize)]
|
||||
pub struct SessionUserRecord {
|
||||
pub user_token: String, // TODO(bt, 2022-12-20): Convert to strongly-typed `UserToken`
|
||||
pub user_token_typed: UserToken,
|
||||
pub user_token: UserToken,
|
||||
pub username: String,
|
||||
pub display_name: String,
|
||||
|
||||
@@ -80,7 +79,7 @@ pub struct SessionUserRecord {
|
||||
impl SessionUserRecord {
|
||||
// TODO(bt, 2022-12-20): Convert all users of the bare record to using `UserToken`, then get rid of this method.
|
||||
pub fn get_strongly_typed_user_token(&self) -> UserToken {
|
||||
self.user_token_typed.clone()
|
||||
self.user_token.clone()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -166,8 +165,7 @@ WHERE user_sessions.token = ?
|
||||
match maybe_user_record {
|
||||
Ok(raw_user_record) => {
|
||||
let result_user_record = SessionUserRecord {
|
||||
user_token: raw_user_record.user_token.to_string(),
|
||||
user_token_typed: UserToken::new(raw_user_record.user_token),
|
||||
user_token: UserToken::new(raw_user_record.user_token),
|
||||
username: raw_user_record.username,
|
||||
display_name: raw_user_record.display_name,
|
||||
email_address: raw_user_record.email_address,
|
||||
|
||||
@@ -166,12 +166,12 @@ pub async fn session_info_handler(
|
||||
logged_in = true;
|
||||
user_info = Some(SessionUserInfo {
|
||||
core_info: UserDetailsLight::from_db_fields(
|
||||
&session_data.user_token_typed,
|
||||
&session_data.user_token,
|
||||
&session_data.username,
|
||||
&session_data.display_name,
|
||||
&session_data.email_gravatar_hash,
|
||||
),
|
||||
user_token: session_data.user_token_typed,
|
||||
user_token: session_data.user_token,
|
||||
username: session_data.username.to_string(),
|
||||
display_name: session_data.display_name.to_string(),
|
||||
email_gravatar_hash: session_data.email_gravatar_hash.to_string(),
|
||||
|
||||
@@ -209,12 +209,12 @@ impl SessionChecker {
|
||||
let subscriptions =
|
||||
list_active_user_subscriptions(
|
||||
mysql_connection,
|
||||
user_session.user_token_typed.as_str()
|
||||
user_session.user_token.as_str()
|
||||
).await?;
|
||||
|
||||
Ok(Some(UserSessionExtended {
|
||||
user_token: user_session.user_token_typed.as_str().to_string(),
|
||||
user_token_typed: user_session.user_token_typed,
|
||||
user_token: user_session.user_token.as_str().to_string(),
|
||||
user_token_typed: user_session.user_token,
|
||||
user: UserSessionUserDetails {
|
||||
username: user_session.username,
|
||||
display_name: user_session.display_name,
|
||||
|
||||
+1
-1
@@ -89,7 +89,7 @@ pub async fn create_api_token_handler(
|
||||
let creator_ip_address = get_request_ip(&http_request);
|
||||
|
||||
let api_token = create_api_token_for_user(
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&request.idempotency_token,
|
||||
&creator_ip_address,
|
||||
&server_state.mysql_pool)
|
||||
|
||||
+2
-2
@@ -92,7 +92,7 @@ pub async fn delete_api_token_handler(
|
||||
}
|
||||
|
||||
let tokens = list_available_api_tokens_for_user(
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
@@ -112,7 +112,7 @@ pub async fn delete_api_token_handler(
|
||||
let creator_ip_address = get_request_ip(&http_request);
|
||||
|
||||
let _r = delete_api_token(
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&path.api_token,
|
||||
&creator_ip_address,
|
||||
&server_state.mysql_pool)
|
||||
|
||||
+2
-2
@@ -93,7 +93,7 @@ pub async fn edit_api_token_handler(
|
||||
}
|
||||
|
||||
let tokens = list_available_api_tokens_for_user(
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
@@ -113,7 +113,7 @@ pub async fn edit_api_token_handler(
|
||||
let creator_ip_address = get_request_ip(&http_request);
|
||||
|
||||
let _r = edit_api_token(
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&request.api_token,
|
||||
request.maybe_short_description.as_deref(),
|
||||
&creator_ip_address,
|
||||
|
||||
+1
-1
@@ -86,7 +86,7 @@ pub async fn list_api_tokens_handler(
|
||||
}
|
||||
|
||||
let api_tokens = list_available_api_tokens_for_user(
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
|
||||
+2
-2
@@ -136,7 +136,7 @@ pub async fn create_category_handler(
|
||||
if is_mod {
|
||||
// Moderator fields and adjustments
|
||||
is_mod_approved = true;
|
||||
maybe_mod_user_token = Some(user_session.user_token_typed.as_str().to_string());
|
||||
maybe_mod_user_token = Some(user_session.user_token.as_str().to_string());
|
||||
can_directly_have_models = request.can_directly_have_models
|
||||
.unwrap_or(DEFAULT_CAN_DIRECTLY_HAVE_MODELS);
|
||||
can_have_subcategories = request.can_have_subcategories
|
||||
@@ -150,7 +150,7 @@ pub async fn create_category_handler(
|
||||
idempotency_token: &idempotency_token,
|
||||
model_type,
|
||||
name: &name,
|
||||
creator_user_token: user_session.user_token_typed.as_str(),
|
||||
creator_user_token: user_session.user_token.as_str(),
|
||||
creator_ip_address: &creator_ip_address,
|
||||
is_mod_approved,
|
||||
maybe_mod_user_token: maybe_mod_user_token.as_deref(),
|
||||
|
||||
+5
-5
@@ -114,13 +114,13 @@ pub async fn assign_tts_category_handler(
|
||||
// If category is exclusively for mods
|
||||
if !is_category_mod {
|
||||
if category.can_only_mods_apply {
|
||||
warn!("user is not allowed to assign this category: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to assign this category: {:?}", user_session.user_token);
|
||||
return Err(AssignTtsCategoryError::NotAuthorized);
|
||||
}
|
||||
|
||||
if category.deleted_at.is_some() ||
|
||||
!category.is_mod_approved.unwrap_or(false) {
|
||||
warn!("user is not allowed to see this category: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to see this category: {:?}", user_session.user_token);
|
||||
return Err(AssignTtsCategoryError::ModelNotFound);
|
||||
}
|
||||
}
|
||||
@@ -154,11 +154,11 @@ pub async fn assign_tts_category_handler(
|
||||
};
|
||||
|
||||
// NB: Third set of permission checks
|
||||
let is_author = &model_record.creator_user_token == user_session.user_token_typed.as_str();
|
||||
let is_author = &model_record.creator_user_token == user_session.user_token.as_str();
|
||||
let is_mod = user_session.can_edit_other_users_tts_models ;
|
||||
|
||||
if !is_author && !is_mod {
|
||||
warn!("user is not allowed to add categories to model: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to add categories to model: {:?}", user_session.user_token);
|
||||
return Err(AssignTtsCategoryError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -173,7 +173,7 @@ pub async fn assign_tts_category_handler(
|
||||
assign_tts_category(AssignTtsCategoryArgs {
|
||||
tts_model_token: &request.tts_model_token,
|
||||
tts_category_token: &request.category_token,
|
||||
editor_user_token: user_session.user_token_typed.as_str(),
|
||||
editor_user_token: user_session.user_token.as_str(),
|
||||
editor_ip_address: &ip_address,
|
||||
action: if request.assign { AssignOrDeleteAction::CreateAssignment } else { AssignOrDeleteAction::DeleteAssignment },
|
||||
mysql_pool: &server_state.mysql_pool,
|
||||
|
||||
+2
-2
@@ -143,7 +143,7 @@ pub async fn create_comment_handler(
|
||||
let query_result = insert_comment(InsertCommentArgs {
|
||||
entity_token: &entity_token,
|
||||
uuid_idempotency_token: &request.uuid_idempotency_token,
|
||||
user_token: &user_session.user_token_typed,
|
||||
user_token: &user_session.user_token,
|
||||
comment_markdown: &markdown,
|
||||
comment_rendered_html: &html,
|
||||
creator_ip_address: &ip_address,
|
||||
@@ -160,7 +160,7 @@ pub async fn create_comment_handler(
|
||||
};
|
||||
|
||||
server_state.firehose_publisher.publish_comment_created(
|
||||
&user_session.user_token_typed, &comment_token)
|
||||
&user_session.user_token, &comment_token)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
warn!("error publishing event: {:?}", e);
|
||||
|
||||
+1
-1
@@ -114,7 +114,7 @@ pub async fn delete_comment_handler(
|
||||
.ok_or(DeleteCommentError::NotFound)?;
|
||||
|
||||
// 2) Delete as author
|
||||
if comment.user_token == user_session.user_token_typed {
|
||||
if comment.user_token == user_session.user_token {
|
||||
maybe_delete_as = Some(DeleteCommentAs::Author);
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -125,7 +125,7 @@ pub async fn enqueue_generic_download_handler(
|
||||
download_type: request.generic_download_type,
|
||||
download_url: &download_url,
|
||||
title: &title,
|
||||
creator_user_token: user_session.user_token_typed.as_str(),
|
||||
creator_user_token: user_session.user_token.as_str(),
|
||||
creator_ip_address: &ip_address,
|
||||
creator_set_visibility,
|
||||
mysql_pool: &server_state.mysql_pool,
|
||||
@@ -138,7 +138,7 @@ pub async fn enqueue_generic_download_handler(
|
||||
|
||||
info!("new generic download job id: {}, token: {}", record_id, job_token);
|
||||
|
||||
server_state.firehose_publisher.enqueue_generic_download(user_session.user_token_typed.as_str(), job_token.as_str())
|
||||
server_state.firehose_publisher.enqueue_generic_download(user_session.user_token.as_str(), job_token.as_str())
|
||||
.await
|
||||
.map_err(|e| {
|
||||
warn!("error publishing event: {:?}", e);
|
||||
|
||||
+1
-1
@@ -109,7 +109,7 @@ pub async fn terminate_inference_job_handler(
|
||||
|
||||
let maybe_user_tokens = maybe_user_session
|
||||
.as_ref()
|
||||
.and_then(|session| Some(session.user_token_typed.clone()))
|
||||
.and_then(|session| Some(session.user_token.clone()))
|
||||
.zip(job_status.user_details.maybe_creator_user_token.clone());
|
||||
|
||||
if let Some((session_user_token, job_user_token)) = maybe_user_tokens {
|
||||
|
||||
+6
-6
@@ -123,10 +123,10 @@ pub async fn delete_media_file_handler(
|
||||
};
|
||||
|
||||
let is_creator = media_file.maybe_creator_user_token
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token_typed.as_str());
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token.as_str());
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to delete this media_file: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete this media_file: {:?}", user_session.user_token);
|
||||
return Err(DeleteMediaFileError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -135,7 +135,7 @@ pub async fn delete_media_file_handler(
|
||||
let query_result = if request.set_delete {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete media_files: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete media_files: {:?}", user_session.user_token);
|
||||
return Err(DeleteMediaFileError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -147,7 +147,7 @@ pub async fn delete_media_file_handler(
|
||||
DeleteRole::AsMod => {
|
||||
delete_media_file_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
@@ -155,7 +155,7 @@ pub async fn delete_media_file_handler(
|
||||
} else {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to undelete voices: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to undelete voices: {:?}", user_session.user_token);
|
||||
return Err(DeleteMediaFileError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -168,7 +168,7 @@ pub async fn delete_media_file_handler(
|
||||
DeleteRole::AsMod => {
|
||||
undelete_media_file_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
|
||||
+3
-3
@@ -123,10 +123,10 @@ pub async fn change_media_file_visibility_handler(
|
||||
};
|
||||
|
||||
let is_creator = media_file.maybe_creator_user_token
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token_typed.as_str());
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token.as_str());
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to edit this media_file: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit this media_file: {:?}", user_session.user_token);
|
||||
return Err(ChangeMediaFileVisibilityError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -142,7 +142,7 @@ pub async fn change_media_file_visibility_handler(
|
||||
let mut maybe_mod_user_token = None;
|
||||
|
||||
if is_mod {
|
||||
maybe_mod_user_token = Some(user_session.user_token_typed.as_str().to_string());
|
||||
maybe_mod_user_token = Some(user_session.user_token.as_str().to_string());
|
||||
}
|
||||
let query_result = update_media_file(
|
||||
UpdateMediaFileArgs {
|
||||
|
||||
+2
-2
@@ -124,10 +124,10 @@ pub async fn rename_media_file_handler(
|
||||
};
|
||||
|
||||
let is_creator = media_file.maybe_creator_user_token
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token_typed.as_str());
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token.as_str());
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to delete this media_file: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete this media_file: {:?}", user_session.user_token);
|
||||
return Err(RenameMediaFileError::NotAuthorized);
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -127,10 +127,10 @@ pub async fn set_media_file_cover_image_handler(
|
||||
};
|
||||
|
||||
let is_creator = media_file.maybe_creator_user_token
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token_typed.as_str());
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token.as_str());
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to delete this media_file: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete this media_file: {:?}", user_session.user_token);
|
||||
return Err(SetMediaFileCoverImageError::NotAuthorized);
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -112,10 +112,10 @@ pub async fn update_media_file_handler(
|
||||
};
|
||||
|
||||
let is_creator = media_file.maybe_creator_user_token
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token_typed.as_str());
|
||||
.is_some_and(|t| t.as_str() == user_session.user_token.as_str());
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to edit this media_file: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit this media_file: {:?}", user_session.user_token);
|
||||
return Err(UpdateMediaFileError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -131,7 +131,7 @@ pub async fn update_media_file_handler(
|
||||
let mut maybe_mod_user_token = None;
|
||||
|
||||
if is_mod {
|
||||
maybe_mod_user_token = Some(user_session.user_token_typed.as_str().to_string());
|
||||
maybe_mod_user_token = Some(user_session.user_token.as_str().to_string());
|
||||
}
|
||||
let query_result = update_media_file(
|
||||
UpdateMediaFileArgs {
|
||||
|
||||
+1
-1
@@ -82,7 +82,7 @@ pub async fn get_pending_w2l_templates_handler(
|
||||
};
|
||||
|
||||
if !user_session.can_approve_w2l_templates {
|
||||
warn!("user is not allowed to approve w2l templates: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to approve w2l templates: {:?}", user_session.user_token);
|
||||
return Err(GetPendingW2lTemplatesError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -145,7 +145,7 @@ pub async fn edit_category_handler(
|
||||
can_only_mods_apply: request.can_only_mods_apply,
|
||||
maybe_super_category_token: request.maybe_super_category_token.as_deref(),
|
||||
is_mod_approved: request.is_mod_approved,
|
||||
mod_user_token: user_session.user_token_typed.as_str(),
|
||||
mod_user_token: user_session.user_token.as_str(),
|
||||
maybe_mod_comments: request.maybe_mod_comments.as_deref(),
|
||||
model_category_token: &path.token,
|
||||
mysql_pool: &server_state.mysql_pool,
|
||||
|
||||
+1
-1
@@ -105,7 +105,7 @@ pub async fn moderator_get_token_info_handler(
|
||||
|
||||
// TODO: Not a good fit for this permission.
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to view bans: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to view bans: {:?}", user_session.user_token);
|
||||
return Err(ModeratorTokenInfoError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -78,7 +78,7 @@ pub async fn add_ip_ban_handler(
|
||||
};
|
||||
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token);
|
||||
return Err(AddIpBanError::Unauthorized);
|
||||
}
|
||||
|
||||
@@ -94,7 +94,7 @@ pub async fn add_ip_ban_handler(
|
||||
upsert_ip_ban(UpsertIpBanArgs {
|
||||
ip_address,
|
||||
maybe_target_user_token: request.maybe_target_user_token.as_deref(),
|
||||
mod_user_token: user_session.user_token_typed.as_str(),
|
||||
mod_user_token: user_session.user_token.as_str(),
|
||||
mod_notes: &request.mod_notes,
|
||||
mysql_pool: &server_state.mysql_pool,
|
||||
}).await
|
||||
|
||||
+2
-2
@@ -76,7 +76,7 @@ pub async fn delete_ip_ban_handler(
|
||||
};
|
||||
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to delete bans: {:?}", user_session.user_token_typed.as_str());
|
||||
warn!("user is not allowed to delete bans: {:?}", user_session.user_token.as_str());
|
||||
return Err(DeleteIpBanError::Unauthorized);
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@ pub async fn delete_ip_ban_handler(
|
||||
|
||||
let query_result = toggle_ip_ban(
|
||||
&path.ip_address,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
toggle_action,
|
||||
&server_state.mysql_pool
|
||||
).await;
|
||||
|
||||
+1
-1
@@ -92,7 +92,7 @@ pub async fn get_ip_ban_handler(
|
||||
};
|
||||
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to view bans: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to view bans: {:?}", user_session.user_token);
|
||||
return Err(GetIpBanError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -87,7 +87,7 @@ pub async fn list_ip_bans_handler(
|
||||
};
|
||||
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to see bans: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to see bans: {:?}", user_session.user_token);
|
||||
return Err(ListIpBansError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -80,7 +80,7 @@ pub async fn get_tts_inference_queue_count_handler(
|
||||
|
||||
// TODO: Not a good fit for this permission.
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to view bans: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to view bans: {:?}", user_session.user_token);
|
||||
return Err(GetTtsInferenceQueueCountError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -68,7 +68,7 @@ pub async fn get_w2l_inference_queue_count_handler(
|
||||
|
||||
// TODO: Not a good fit for this permission.
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to view bans: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to view bans: {:?}", user_session.user_token);
|
||||
return Err(GetW2lInferenceQueueCountError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -84,7 +84,7 @@ pub async fn get_on_prem_worker_stats_handler(
|
||||
|
||||
// TODO: Not a good fit for this permission.
|
||||
if !user_session.can_edit_other_users_tts_models {
|
||||
warn!("user is not allowed to edit user tts: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit user tts: {:?}", user_session.user_token);
|
||||
return Err(GetOnPremWorkerStatsError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -67,7 +67,7 @@ pub async fn get_voice_count_stats_handler(
|
||||
|
||||
// TODO: Not a good fit for this permission.
|
||||
if !user_session.can_edit_other_users_tts_models {
|
||||
warn!("user is not allowed to edit user tts: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit user tts: {:?}", user_session.user_token);
|
||||
return Err(GetVoiceCountStatsError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -108,7 +108,7 @@ pub async fn ban_user_handler(
|
||||
};
|
||||
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token);
|
||||
return Err(BanUserErrorResponse::unauthorized());
|
||||
}
|
||||
|
||||
@@ -129,7 +129,7 @@ pub async fn ban_user_handler(
|
||||
set_user_ban_status(SetUserBanStatsArgs {
|
||||
subject_user_token: &user_profile.user_token,
|
||||
is_banned: request.is_banned,
|
||||
mod_user_token: &user_session.user_token_typed,
|
||||
mod_user_token: &user_session.user_token,
|
||||
maybe_mod_comments: Some(&request.mod_notes),
|
||||
mysql_pool: &server_state.mysql_pool,
|
||||
}).await
|
||||
|
||||
+1
-1
@@ -102,7 +102,7 @@ pub async fn list_banned_users_handler(
|
||||
};
|
||||
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token_typed.as_str());
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token.as_str());
|
||||
return Err(ListBannedUsersErrorResponse::unauthorized());
|
||||
}
|
||||
|
||||
|
||||
+3
-3
@@ -133,7 +133,7 @@ pub async fn edit_user_feature_flags_handler(
|
||||
};
|
||||
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token_typed.as_str());
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token.as_str());
|
||||
return Err(EditUserFeatureFlagsError::Unauthorized);
|
||||
}
|
||||
|
||||
@@ -193,7 +193,7 @@ pub async fn edit_user_feature_flags_handler(
|
||||
set_user_feature_flags(SetUserFeatureFlagArgs {
|
||||
subject_user_token: &user_profile.user_token,
|
||||
maybe_feature_flags: user_feature_flags.maybe_serialize_string().as_deref(),
|
||||
mod_user_token: &user_session.user_token_typed,
|
||||
mod_user_token: &user_session.user_token,
|
||||
mysql_pool: &server_state.mysql_pool,
|
||||
}).await
|
||||
.map_err(|e| {
|
||||
@@ -205,7 +205,7 @@ pub async fn edit_user_feature_flags_handler(
|
||||
let _r = insert_audit_log(InsertAuditLogArgs {
|
||||
entity: &AuditLogEntity::User(user_profile.user_token),
|
||||
entity_action: AuditLogEntityAction::EditFeatures,
|
||||
maybe_actor_user_token: Some(&user_session.user_token_typed),
|
||||
maybe_actor_user_token: Some(&user_session.user_token),
|
||||
maybe_actor_anonymous_visitor_token: None,
|
||||
actor_ip_address: &ip_address,
|
||||
is_actor_moderator: true,
|
||||
|
||||
+1
-1
@@ -75,7 +75,7 @@ pub async fn list_user_roles_handler(
|
||||
|
||||
// TODO: Add new permission for this.
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to view user roles: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to view user roles: {:?}", user_session.user_token);
|
||||
return Err(ListUserRolesError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -77,7 +77,7 @@ pub async fn list_staff_handler(
|
||||
|
||||
// TODO: This is not the correct permission.
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to delete bans: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete bans: {:?}", user_session.user_token);
|
||||
return Err(ListStaffError::Unauthorized);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -88,7 +88,7 @@ pub async fn set_user_role_handler(
|
||||
|
||||
// TODO: This is not the correct permission
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to change user roles: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to change user roles: {:?}", user_session.user_token);
|
||||
return Err(SetUserRoleError::NotAuthorized);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -107,7 +107,7 @@ pub async fn list_users_handler(
|
||||
|
||||
// TODO: Not the correct permission
|
||||
if !user_session.can_ban_users {
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to add bans: {:?}", user_session.user_token);
|
||||
return Err(ListUsersErrorResponse::unauthorized());
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -86,7 +86,7 @@ pub async fn set_unsubscribe_reason_handler(
|
||||
let ip_address = get_request_ip(&http_request);
|
||||
|
||||
UnsubscribeReasonInsertBuilder::new()
|
||||
.set_user_token(user_session.user_token_typed.as_str())
|
||||
.set_user_token(user_session.user_token.as_str())
|
||||
.set_ip_address(&ip_address)
|
||||
.set_unsubscribe_reason(&request.reason)
|
||||
.insert(&mut mysql_connection)
|
||||
|
||||
+7
-7
@@ -119,16 +119,16 @@ pub async fn delete_tts_model_handler(
|
||||
};
|
||||
|
||||
// NB: Second set of permission checks
|
||||
let is_author = &tts_model.creator_user_token == user_session.user_token_typed.as_str();
|
||||
let is_author = &tts_model.creator_user_token == user_session.user_token.as_str();
|
||||
|
||||
if !is_author && !is_mod {
|
||||
warn!("user is not allowed to delete models: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete models: {:?}", user_session.user_token);
|
||||
return Err(DeleteTtsModelError::NotAuthorized);
|
||||
}
|
||||
|
||||
if !is_mod {
|
||||
if tts_model.is_locked_from_user_modification || tts_model.is_locked_from_use {
|
||||
warn!("user is not allowed to delete models (locked): {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete models (locked): {:?}", user_session.user_token);
|
||||
return Err(DeleteTtsModelError::NotAuthorized);
|
||||
}
|
||||
}
|
||||
@@ -140,7 +140,7 @@ pub async fn delete_tts_model_handler(
|
||||
let query_result = if request.set_delete {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete model: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete model: {:?}", user_session.user_token);
|
||||
return Err(DeleteTtsModelError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -153,7 +153,7 @@ pub async fn delete_tts_model_handler(
|
||||
DeleteRole::AsMod => {
|
||||
delete_tts_model_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
@@ -161,7 +161,7 @@ pub async fn delete_tts_model_handler(
|
||||
} else {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to undelete model: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to undelete model: {:?}", user_session.user_token);
|
||||
return Err(DeleteTtsModelError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -175,7 +175,7 @@ pub async fn delete_tts_model_handler(
|
||||
DeleteRole::AsMod => {
|
||||
undelete_tts_model_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
|
||||
+6
-6
@@ -114,13 +114,13 @@ pub async fn delete_tts_inference_result_handler(
|
||||
// NB: Second set of permission checks
|
||||
let is_author = tts_inference_result.maybe_creator_user_token
|
||||
.as_ref()
|
||||
.map(|creator_token| creator_token == &user_session.user_token_typed)
|
||||
.map(|creator_token| creator_token == &user_session.user_token)
|
||||
.unwrap_or(false);
|
||||
|
||||
let is_mod = user_session.can_delete_other_users_tts_results;
|
||||
|
||||
if !is_author && !is_mod {
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token);
|
||||
return Err(DeleteTtsInferenceResultError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -129,7 +129,7 @@ pub async fn delete_tts_inference_result_handler(
|
||||
let query_result = if request.set_delete {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token);
|
||||
return Err(DeleteTtsInferenceResultError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -141,7 +141,7 @@ pub async fn delete_tts_inference_result_handler(
|
||||
DeleteRole::AsMod => {
|
||||
delete_tts_inference_result_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
@@ -149,7 +149,7 @@ pub async fn delete_tts_inference_result_handler(
|
||||
} else {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to undelete inference results: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to undelete inference results: {:?}", user_session.user_token);
|
||||
return Err(DeleteTtsInferenceResultError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -162,7 +162,7 @@ pub async fn delete_tts_inference_result_handler(
|
||||
DeleteRole::AsMod => {
|
||||
undelete_tts_inference_result_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
|
||||
@@ -183,11 +183,11 @@ pub async fn edit_tts_model_handler(
|
||||
};
|
||||
|
||||
// NB: Second set of permission checks
|
||||
let is_author = &model_record.creator_user_token == user_session.user_token_typed.as_str();
|
||||
let is_author = &model_record.creator_user_token == user_session.user_token.as_str();
|
||||
let is_mod = user_session.can_edit_other_users_tts_models ;
|
||||
|
||||
if !is_author && !is_mod {
|
||||
warn!("user is not allowed to edit model: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit model: {:?}", user_session.user_token);
|
||||
return Err(EditTtsModelError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -306,7 +306,7 @@ pub async fn edit_tts_model_handler(
|
||||
maybe_default_pretrained_vocoder,
|
||||
request.maybe_custom_vocoder_token.as_deref(),
|
||||
text_pipeline_type,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
).await
|
||||
};
|
||||
|
||||
@@ -321,7 +321,7 @@ pub async fn edit_tts_model_handler(
|
||||
if is_mod {
|
||||
update_mod_details(
|
||||
&request,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&model_record.model_token,
|
||||
&server_state.mysql_pool
|
||||
).await?;
|
||||
|
||||
@@ -119,11 +119,11 @@ pub async fn edit_tts_inference_result_handler(
|
||||
// NB: Second set of permission checks
|
||||
let mut is_author = false;
|
||||
if let Some(creator_user_token) = inference_result.maybe_creator_user_token.as_ref() {
|
||||
is_author = creator_user_token == &user_session.user_token_typed;
|
||||
is_author = creator_user_token == &user_session.user_token;
|
||||
}
|
||||
|
||||
if !is_author && !is_moderator {
|
||||
warn!("user is not allowed to edit result: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit result: {:?}", user_session.user_token);
|
||||
return Err(EditTtsResultError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -147,7 +147,7 @@ pub async fn edit_tts_inference_result_handler(
|
||||
}
|
||||
} else {
|
||||
CreatorOrModFields::ModFields {
|
||||
mod_user_token: user_session.user_token_typed.as_str(),
|
||||
mod_user_token: user_session.user_token.as_str(),
|
||||
}
|
||||
},
|
||||
mysql_pool: &server_state.mysql_pool,
|
||||
|
||||
+3
-3
@@ -172,7 +172,7 @@ pub async fn upload_tts_model_handler(
|
||||
// This token is returned to the client.
|
||||
let maybe_new_job_token = insert_tts_model_upload_job(InsertTtsModelUploadJobArgs {
|
||||
uuid: &uuid,
|
||||
creator_user_token: user_session.user_token_typed.as_str(),
|
||||
creator_user_token: user_session.user_token.as_str(),
|
||||
creator_ip_address: &ip_address,
|
||||
creator_set_visibility: "public", // TODO: Creator set preference.
|
||||
title: &title,
|
||||
@@ -199,7 +199,7 @@ pub async fn upload_tts_model_handler(
|
||||
download_type: GenericDownloadType::Vits,
|
||||
download_url: &download_url,
|
||||
title: &title,
|
||||
creator_user_token: user_session.user_token_typed.as_str(),
|
||||
creator_user_token: user_session.user_token.as_str(),
|
||||
creator_ip_address: &ip_address,
|
||||
creator_set_visibility: Visibility::Public, // TODO: Creator set preference
|
||||
mysql_pool: &server_state.mysql_pool,
|
||||
@@ -215,7 +215,7 @@ pub async fn upload_tts_model_handler(
|
||||
}
|
||||
}
|
||||
|
||||
server_state.firehose_publisher.enqueue_tts_model_upload(user_session.user_token_typed.as_str(), &job_token)
|
||||
server_state.firehose_publisher.enqueue_tts_model_upload(user_session.user_token.as_str(), &job_token)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
warn!("error publishing event: {:?}", e);
|
||||
|
||||
@@ -241,7 +241,7 @@ pub async fn get_tts_model_handler(
|
||||
};
|
||||
|
||||
if let Some(user_session) = &maybe_user_session {
|
||||
is_original_author = user_session.user_token_typed.as_str().to_string() == model.creator_user_token();
|
||||
is_original_author = user_session.user_token.as_str().to_string() == model.creator_user_token();
|
||||
}
|
||||
|
||||
// NB(bt, 2024-01-20): Removing to make porting easier.
|
||||
|
||||
@@ -171,7 +171,7 @@ pub async fn list_tts_models_handler(
|
||||
|
||||
let maybe_session_user_token = maybe_user_session
|
||||
.as_ref()
|
||||
.map(|s| s.user_token_typed.as_str());
|
||||
.map(|s| s.user_token.as_str());
|
||||
|
||||
let models = models.into_iter()
|
||||
.filter(|model| {
|
||||
|
||||
+1
-1
@@ -118,7 +118,7 @@ pub async fn create_twitch_event_rule_handler(
|
||||
|
||||
let insert_builder = InsertTwitchEventRuleBuilder {
|
||||
uuid_idempotency_token: request.idempotency_token.clone(),
|
||||
user_token: user_session.user_token_typed.as_str().to_string(),
|
||||
user_token: user_session.user_token.as_str().to_string(),
|
||||
event_category: request.event_category,
|
||||
event_match_predicate,
|
||||
event_response,
|
||||
|
||||
+1
-1
@@ -90,7 +90,7 @@ pub async fn delete_twitch_event_rule_handler(
|
||||
}
|
||||
|
||||
let twitch_event_rule = get_twitch_event_rule_for_user(
|
||||
&path.token, user_session.user_token_typed.as_str(), &server_state.mysql_pool)
|
||||
&path.token, user_session.user_token.as_str(), &server_state.mysql_pool)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
error!("Error with query: {:?}", e);
|
||||
|
||||
+1
-1
@@ -103,7 +103,7 @@ pub async fn edit_twitch_event_rule_handler(
|
||||
}
|
||||
|
||||
let twitch_event_rule = get_twitch_event_rule_for_user(
|
||||
&path.token, user_session.user_token_typed.as_str(), &server_state.mysql_pool)
|
||||
&path.token, user_session.user_token.as_str(), &server_state.mysql_pool)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
error!("Error with query: {:?}", e);
|
||||
|
||||
+1
-1
@@ -104,7 +104,7 @@ pub async fn get_twitch_event_rule_for_user_handler(
|
||||
}
|
||||
|
||||
let maybe_twitch_event_rule = get_twitch_event_rule_for_user(
|
||||
&path.token, user_session.user_token_typed.as_str(), &server_state.mysql_pool)
|
||||
&path.token, user_session.user_token.as_str(), &server_state.mysql_pool)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
warn!("query error: {:?}", e);
|
||||
|
||||
+1
-1
@@ -93,7 +93,7 @@ pub async fn list_twitch_event_rules_for_user_handler(
|
||||
}
|
||||
|
||||
let twitch_event_rules = list_twitch_event_rules_for_user(
|
||||
user_session.user_token_typed.as_str(), &server_state.mysql_pool)
|
||||
user_session.user_token.as_str(), &server_state.mysql_pool)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
warn!("query error: {:?}", e);
|
||||
|
||||
+2
-2
@@ -96,7 +96,7 @@ pub async fn reorder_twitch_event_rules_handler(
|
||||
}
|
||||
|
||||
let rules = list_twitch_event_rules_for_user(
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
@@ -131,7 +131,7 @@ pub async fn reorder_twitch_event_rules_handler(
|
||||
|
||||
reorder_twitch_event_rules(
|
||||
rule_token_to_order_map,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&ip_address,
|
||||
&server_state.mysql_pool)
|
||||
.await
|
||||
|
||||
+1
-1
@@ -74,7 +74,7 @@ pub async fn check_oauth_status_handler(
|
||||
Some(session) => {
|
||||
let finder = TwitchOauthTokenFinder::new()
|
||||
.allow_expired_tokens(true)
|
||||
.scope_user_token(Some(session.user_token_typed.as_str()));
|
||||
.scope_user_token(Some(session.user_token.as_str()));
|
||||
|
||||
let maybe_record = finder.perform_query(&server_state.mysql_pool)
|
||||
.await
|
||||
|
||||
+1
-1
@@ -167,7 +167,7 @@ pub async fn oauth_end_enroll_from_redirect(
|
||||
.has_chat_read(true);
|
||||
|
||||
if let Some(user_session) = maybe_user_session {
|
||||
insert_builder = insert_builder.set_user_token(Some(user_session.user_token_typed.as_str()));
|
||||
insert_builder = insert_builder.set_user_token(Some(user_session.user_token.as_str()));
|
||||
}
|
||||
|
||||
let _result = insert_builder.insert(&server_state.mysql_pool)
|
||||
|
||||
+1
-1
@@ -150,7 +150,7 @@ pub async fn batch_get_user_bookmarks_handler(
|
||||
};
|
||||
|
||||
batch_get_user_bookmarks(
|
||||
&user_session.user_token_typed,
|
||||
&user_session.user_token,
|
||||
&tokens,
|
||||
&mut mysql_connection
|
||||
).await
|
||||
|
||||
+1
-1
@@ -166,7 +166,7 @@ pub async fn create_user_bookmark_handler(
|
||||
|
||||
let upsert_result = upsert_user_bookmark(CreateUserBookmarkArgs {
|
||||
entity_token: &entity_token,
|
||||
user_token: &user_session.user_token_typed,
|
||||
user_token: &user_session.user_token,
|
||||
mysql_executor: &mut *transaction,
|
||||
phantom: Default::default(),
|
||||
}).await;
|
||||
|
||||
+1
-1
@@ -139,7 +139,7 @@ pub async fn delete_user_bookmark_handler(
|
||||
|
||||
let delete_result = delete_user_bookmark(
|
||||
&path.user_bookmark_token,
|
||||
&user_session.user_token_typed,
|
||||
&user_session.user_token,
|
||||
&mut *transaction,
|
||||
).await;
|
||||
|
||||
|
||||
+1
-1
@@ -145,7 +145,7 @@ pub async fn batch_get_user_rating_handler(
|
||||
};
|
||||
|
||||
batch_get_user_ratings(
|
||||
&user_session.user_token_typed,
|
||||
&user_session.user_token,
|
||||
&tokens,
|
||||
&mut mysql_connection
|
||||
).await
|
||||
|
||||
+1
-1
@@ -133,7 +133,7 @@ pub async fn get_user_rating_handler(
|
||||
};
|
||||
|
||||
let maybe_rating = get_user_rating(Args {
|
||||
user_token: &user_session.user_token_typed,
|
||||
user_token: &user_session.user_token,
|
||||
user_rating_entity: &entity,
|
||||
mysql_connection: &mut mysql_connection
|
||||
})
|
||||
|
||||
+2
-2
@@ -168,7 +168,7 @@ pub async fn set_user_rating_handler(
|
||||
})?;
|
||||
|
||||
let maybe_existing_user_rating = get_user_rating_transactional_locking(
|
||||
&user_session.user_token_typed,
|
||||
&user_session.user_token,
|
||||
&entity,
|
||||
&mut *transaction,
|
||||
).await
|
||||
@@ -178,7 +178,7 @@ pub async fn set_user_rating_handler(
|
||||
})?;
|
||||
|
||||
let _r = upsert_user_rating(Args {
|
||||
user_token: &user_session.user_token_typed,
|
||||
user_token: &user_session.user_token,
|
||||
user_rating_entity: &entity,
|
||||
user_rating_value: request.rating_value,
|
||||
ip_address: &ip_address,
|
||||
|
||||
+1
-1
@@ -93,7 +93,7 @@ pub async fn check_if_voice_clone_request_submitted_handler(
|
||||
// Logged in users
|
||||
if let Some(user) = maybe_user_session.as_ref() {
|
||||
let request = get_voice_clone_request_by_user_token(
|
||||
user.user_token_typed.as_str(), &server_state.mysql_pool)
|
||||
user.user_token.as_str(), &server_state.mysql_pool)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
warn!("Database error: {:?}", e);
|
||||
|
||||
+1
-1
@@ -107,7 +107,7 @@ pub async fn create_voice_clone_request_handler(
|
||||
|
||||
let builder = InsertVoiceCloneRequestBuilder {
|
||||
uuid_idempotency_token: request.idempotency_token.clone(),
|
||||
maybe_user_token: maybe_user_session.map(|user| user.user_token_typed.as_str().to_string()),
|
||||
maybe_user_token: maybe_user_session.map(|user| user.user_token.as_str().to_string()),
|
||||
email_address: request.email_address.clone(),
|
||||
discord_username: request.discord_username.clone(),
|
||||
is_for_private_use: request.is_for_private_use,
|
||||
|
||||
+1
-1
@@ -171,7 +171,7 @@ pub async fn list_voice_conversion_models_handler(
|
||||
|
||||
let maybe_session_user_token = maybe_user_session
|
||||
.as_ref()
|
||||
.map(|s| s.user_token_typed.as_str());
|
||||
.map(|s| s.user_token.as_str());
|
||||
|
||||
let models = models.into_iter()
|
||||
.filter(|model| {
|
||||
|
||||
+4
-4
@@ -111,13 +111,13 @@ pub async fn delete_sample_handler(
|
||||
// NB: Second set of permission checks
|
||||
let is_author = dataset_sample.maybe_creator_user_token
|
||||
.as_ref()
|
||||
.map(|creator_token| creator_token == &user_session.user_token_typed)
|
||||
.map(|creator_token| creator_token == &user_session.user_token)
|
||||
.unwrap_or(false);
|
||||
|
||||
let is_mod = user_session.can_delete_other_users_tts_results;
|
||||
|
||||
if !is_author && !is_mod {
|
||||
warn!("user is not allowed to delete samples: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete samples: {:?}", user_session.user_token);
|
||||
return Err(DeleteSampleError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -132,7 +132,7 @@ pub async fn delete_sample_handler(
|
||||
delete_sample_as_user(&path.sample_token, &server_state.mysql_pool).await
|
||||
}
|
||||
DeleteRole::AsMod => {
|
||||
delete_sample_as_mod(&path.sample_token, &user_session.user_token_typed, &server_state.mysql_pool).await
|
||||
delete_sample_as_mod(&path.sample_token, &user_session.user_token, &server_state.mysql_pool).await
|
||||
}
|
||||
}
|
||||
} else {
|
||||
@@ -144,7 +144,7 @@ pub async fn delete_sample_handler(
|
||||
undelete_sample_as_user(&path.sample_token, &server_state.mysql_pool).await
|
||||
}
|
||||
DeleteRole::AsMod => {
|
||||
undelete_sample_as_mod(&path.sample_token, &user_session.user_token_typed, &server_state.mysql_pool).await
|
||||
undelete_sample_as_mod(&path.sample_token, &user_session.user_token, &server_state.mysql_pool).await
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
+1
-1
@@ -86,7 +86,7 @@ pub async fn create_dataset_handler(http_request: HttpRequest, request: web::Jso
|
||||
|
||||
let query_result = create_dataset(CreateDatasetArgs {
|
||||
dataset_title: &title,
|
||||
maybe_creator_user_token: Some(user_session.user_token_typed.as_str()),
|
||||
maybe_creator_user_token: Some(user_session.user_token.as_str()),
|
||||
creator_ip_address: &creator_ip_address,
|
||||
creator_set_visibility,
|
||||
mysql_pool: &server_state.mysql_pool
|
||||
|
||||
+6
-6
@@ -111,11 +111,11 @@ pub async fn delete_dataset_handler(
|
||||
};
|
||||
|
||||
let is_creator = dataset.maybe_creator_user_token.as_deref()
|
||||
.map(|creator_user_token| creator_user_token == user_session.user_token_typed.as_str())
|
||||
.map(|creator_user_token| creator_user_token == user_session.user_token.as_str())
|
||||
.unwrap_or(false);
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to delete this dataset: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete this dataset: {:?}", user_session.user_token);
|
||||
return Err(DeleteDatasetError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -124,7 +124,7 @@ pub async fn delete_dataset_handler(
|
||||
let query_result = if request.set_delete {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete datasets: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete datasets: {:?}", user_session.user_token);
|
||||
return Err(DeleteDatasetError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -136,7 +136,7 @@ pub async fn delete_dataset_handler(
|
||||
DeleteRole::AsMod => {
|
||||
delete_dataset_as_mod(
|
||||
&path.dataset_token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
@@ -144,7 +144,7 @@ pub async fn delete_dataset_handler(
|
||||
} else {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to undelete voices: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to undelete voices: {:?}", user_session.user_token);
|
||||
return Err(DeleteDatasetError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -157,7 +157,7 @@ pub async fn delete_dataset_handler(
|
||||
DeleteRole::AsMod => {
|
||||
undelete_dataset_as_mod(
|
||||
&path.dataset_token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
|
||||
+4
-4
@@ -87,7 +87,7 @@ pub async fn get_dataset_handler(
|
||||
};
|
||||
|
||||
let dataset_token = path.dataset_token.clone();
|
||||
let creator_user_token = user_session.user_token_typed.as_str().to_string();
|
||||
let creator_user_token = user_session.user_token.as_str().to_string();
|
||||
let is_mod = user_session.can_ban_users;
|
||||
|
||||
let dataset_lookup_result = get_dataset_by_token(
|
||||
@@ -109,11 +109,11 @@ pub async fn get_dataset_handler(
|
||||
};
|
||||
|
||||
let is_creator = dataset.maybe_creator_user_token.as_deref()
|
||||
.map(|creator_user_token| creator_user_token == user_session.user_token_typed.as_str())
|
||||
.map(|creator_user_token| creator_user_token == user_session.user_token.as_str())
|
||||
.unwrap_or(false);
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to view this dataset: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to view this dataset: {:?}", user_session.user_token);
|
||||
return Err(GetDatasetError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -124,7 +124,7 @@ pub async fn get_dataset_handler(
|
||||
ietf_language_tag: dataset.ietf_language_tag,
|
||||
ietf_primary_language_subtag: dataset.ietf_primary_language_subtag,
|
||||
creator: UserDetailsLight::from_db_fields(
|
||||
&user_session.user_token_typed,
|
||||
&user_session.user_token,
|
||||
user_session.username.as_ref(),
|
||||
user_session.display_name.as_ref(),
|
||||
user_session.email_gravatar_hash.as_ref(),
|
||||
|
||||
+1
-1
@@ -102,7 +102,7 @@ pub async fn list_datasets_by_user_handler(
|
||||
};
|
||||
|
||||
let username = path.username.as_ref();
|
||||
let creator_user_token = user_session.user_token_typed.as_str().to_string();
|
||||
let creator_user_token = user_session.user_token.as_str().to_string();
|
||||
let _is_mod = user_session.can_ban_users;
|
||||
|
||||
// NB(bt,2024-01-18): Showing mods deleted files is actually kind of annoying!
|
||||
|
||||
+4
-4
@@ -120,11 +120,11 @@ pub async fn update_dataset_handler(
|
||||
|
||||
// let is_creator = dataset.maybe_creator_user_token == Some(user_session.user_token);
|
||||
let is_creator = dataset.maybe_creator_user_token.as_deref()
|
||||
.map(|creator_user_token| creator_user_token == user_session.user_token_typed.as_str())
|
||||
.map(|creator_user_token| creator_user_token == user_session.user_token.as_str())
|
||||
.unwrap_or(false);
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to edit this dataset: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit this dataset: {:?}", user_session.user_token);
|
||||
return Err(UpdateDatasetError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -174,13 +174,13 @@ pub async fn update_dataset_handler(
|
||||
let mut maybe_mod_user_token = None;
|
||||
|
||||
if is_mod {
|
||||
maybe_mod_user_token = Some(user_session.user_token_typed.as_str().to_string());
|
||||
maybe_mod_user_token = Some(user_session.user_token.as_str().to_string());
|
||||
}
|
||||
let query_result = update_dataset(
|
||||
UpdateDatasetArgs {
|
||||
dataset_token: &ZsVoiceDatasetToken::new(dataset_token.clone()),
|
||||
dataset_title: title.as_deref(),
|
||||
maybe_creator_user_token: Some(user_session.user_token_typed.as_str()),
|
||||
maybe_creator_user_token: Some(user_session.user_token.as_str()),
|
||||
creator_ip_address: ip_address.as_ref(),
|
||||
creator_set_visibility: &creator_set_visibility,
|
||||
maybe_mod_user_token: maybe_mod_user_token.as_deref(),
|
||||
|
||||
+6
-6
@@ -111,11 +111,11 @@ pub async fn delete_voice_handler(
|
||||
};
|
||||
|
||||
let is_creator = voice.maybe_creator_user_token.as_ref()
|
||||
.map(|creator_user_token| creator_user_token == &user_session.user_token_typed)
|
||||
.map(|creator_user_token| creator_user_token == &user_session.user_token)
|
||||
.unwrap_or(false);
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to delete this voice: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete this voice: {:?}", user_session.user_token);
|
||||
return Err(DeleteVoiceError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -124,7 +124,7 @@ pub async fn delete_voice_handler(
|
||||
let query_result = if request.set_delete {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete voices: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete voices: {:?}", user_session.user_token);
|
||||
return Err(DeleteVoiceError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -136,7 +136,7 @@ pub async fn delete_voice_handler(
|
||||
DeleteRole::AsMod => {
|
||||
delete_voice_as_mod(
|
||||
&path.voice_token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
@@ -144,7 +144,7 @@ pub async fn delete_voice_handler(
|
||||
} else {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to undelete voices: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to undelete voices: {:?}", user_session.user_token);
|
||||
return Err(DeleteVoiceError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -156,7 +156,7 @@ pub async fn delete_voice_handler(
|
||||
DeleteRole::AsMod => {
|
||||
undelete_voice_as_mod(
|
||||
&path.voice_token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
|
||||
+4
-4
@@ -86,7 +86,7 @@ pub async fn get_voice_handler(
|
||||
};
|
||||
|
||||
let voice_token = path.voice_token.clone();
|
||||
let creator_user_token = user_session.user_token_typed.as_str().to_string();
|
||||
let creator_user_token = user_session.user_token.as_str().to_string();
|
||||
let is_mod = user_session.can_ban_users;
|
||||
|
||||
let voice_lookup_result = get_voice_by_token(
|
||||
@@ -108,11 +108,11 @@ pub async fn get_voice_handler(
|
||||
};
|
||||
|
||||
let is_creator = voice.maybe_creator_user_token
|
||||
.map(|creator_user_token| creator_user_token.as_str() == user_session.user_token_typed.as_str())
|
||||
.map(|creator_user_token| creator_user_token.as_str() == user_session.user_token.as_str())
|
||||
.unwrap_or(false);
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to view this voice: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to view this voice: {:?}", user_session.user_token);
|
||||
return Err(GetVoiceError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -123,7 +123,7 @@ pub async fn get_voice_handler(
|
||||
ietf_language_tag: voice.ietf_language_tag,
|
||||
ietf_primary_language_subtag: voice.ietf_primary_language_subtag,
|
||||
creator: UserDetailsLight::from_db_fields(
|
||||
&user_session.user_token_typed,
|
||||
&user_session.user_token,
|
||||
user_session.username.as_ref(),
|
||||
user_session.display_name.as_ref(),
|
||||
user_session.email_gravatar_hash.as_ref(),
|
||||
|
||||
+1
-1
@@ -75,7 +75,7 @@ pub async fn list_voices_by_session_handler(
|
||||
ListVoicesByUserError::NotAuthorized
|
||||
})?;
|
||||
|
||||
let creator_user_token = user_session.user_token_typed.as_str().to_string();
|
||||
let creator_user_token = user_session.user_token.as_str().to_string();
|
||||
let _is_mod = user_session.can_ban_users;
|
||||
|
||||
// NB(bt,2024-01-18): Showing mods deleted files is actually kind of annoying!
|
||||
|
||||
+1
-1
@@ -88,7 +88,7 @@ pub async fn list_voices_by_user_handler(
|
||||
};
|
||||
|
||||
let username = path.username.as_ref();
|
||||
let creator_user_token = user_session.user_token_typed.as_str().to_string();
|
||||
let creator_user_token = user_session.user_token.as_str().to_string();
|
||||
let _is_mod = user_session.can_ban_users;
|
||||
|
||||
// NB(bt,2024-01-18): Showing mods deleted files is actually kind of annoying!
|
||||
|
||||
+3
-3
@@ -118,11 +118,11 @@ pub async fn update_voice_handler(
|
||||
|
||||
// let is_creator = voice.maybe_creator_user_token == Some(user_session.user_token);
|
||||
let is_creator = voice.maybe_creator_user_token.as_ref()
|
||||
.map(|creator_user_token| creator_user_token == &user_session.user_token_typed)
|
||||
.map(|creator_user_token| creator_user_token == &user_session.user_token)
|
||||
.unwrap_or(false);
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to edit this voice: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit this voice: {:?}", user_session.user_token);
|
||||
return Err(UpdateVoiceError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -171,7 +171,7 @@ pub async fn update_voice_handler(
|
||||
let mut maybe_mod_user_token = None;
|
||||
|
||||
if is_mod {
|
||||
maybe_mod_user_token = Some(user_session.user_token_typed.as_str().to_string());
|
||||
maybe_mod_user_token = Some(user_session.user_token.as_str().to_string());
|
||||
}
|
||||
|
||||
let query_result = update_voice(
|
||||
|
||||
+6
-6
@@ -114,13 +114,13 @@ pub async fn delete_w2l_inference_result_handler(
|
||||
// NB: Second set of permission checks
|
||||
let is_author = w2l_inference_result.maybe_creator_user_token
|
||||
.as_deref()
|
||||
.map(|creator_token| creator_token == user_session.user_token_typed.as_str())
|
||||
.map(|creator_token| creator_token == user_session.user_token.as_str())
|
||||
.unwrap_or(false);
|
||||
|
||||
let is_mod = user_session.can_delete_other_users_w2l_results;
|
||||
|
||||
if !is_author && !is_mod {
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token);
|
||||
return Err(DeleteW2lInferenceResultError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -129,7 +129,7 @@ pub async fn delete_w2l_inference_result_handler(
|
||||
let query_result = if request.set_delete {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token);
|
||||
return Err(DeleteW2lInferenceResultError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -141,7 +141,7 @@ pub async fn delete_w2l_inference_result_handler(
|
||||
DeleteRole::AsMod => {
|
||||
delete_w2l_inference_result_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
@@ -149,7 +149,7 @@ pub async fn delete_w2l_inference_result_handler(
|
||||
} else {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete inference results: {:?}", user_session.user_token);
|
||||
return Err(DeleteW2lInferenceResultError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -162,7 +162,7 @@ pub async fn delete_w2l_inference_result_handler(
|
||||
DeleteRole::AsMod => {
|
||||
undelete_w2l_inference_result_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
|
||||
+7
-7
@@ -113,17 +113,17 @@ pub async fn delete_w2l_template_handler(
|
||||
};
|
||||
|
||||
// NB: Second set of permission checks
|
||||
let is_author = w2l_template.creator_user_token == user_session.user_token_typed.as_str();
|
||||
let is_author = w2l_template.creator_user_token == user_session.user_token.as_str();
|
||||
let is_mod = user_session.can_delete_other_users_w2l_templates;
|
||||
|
||||
if !is_author && !is_mod {
|
||||
warn!("user is not allowed to delete templates: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete templates: {:?}", user_session.user_token);
|
||||
return Err(DeleteW2lTemplateError::NotAuthorized);
|
||||
}
|
||||
|
||||
if !is_mod {
|
||||
if w2l_template.is_locked_from_user_modification || w2l_template.is_locked_from_use {
|
||||
warn!("user is not allowed to delete templates (locked): {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete templates (locked): {:?}", user_session.user_token);
|
||||
return Err(DeleteW2lTemplateError::NotAuthorized);
|
||||
}
|
||||
}
|
||||
@@ -135,7 +135,7 @@ pub async fn delete_w2l_template_handler(
|
||||
let query_result = if request.set_delete {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete template: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete template: {:?}", user_session.user_token);
|
||||
return Err(DeleteW2lTemplateError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -148,7 +148,7 @@ pub async fn delete_w2l_template_handler(
|
||||
DeleteRole::AsMod => {
|
||||
delete_w2l_template_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
@@ -156,7 +156,7 @@ pub async fn delete_w2l_template_handler(
|
||||
} else {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete template: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete template: {:?}", user_session.user_token);
|
||||
return Err(DeleteW2lTemplateError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -170,7 +170,7 @@ pub async fn delete_w2l_template_handler(
|
||||
DeleteRole::AsMod => {
|
||||
undelete_w2l_template_as_mod(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
&server_state.mysql_pool
|
||||
).await
|
||||
}
|
||||
|
||||
@@ -119,11 +119,11 @@ pub async fn edit_w2l_inference_result_handler(
|
||||
// NB: Second set of permission checks
|
||||
let mut is_author = false;
|
||||
if let Some(creator_user_token) = inference_result.maybe_creator_user_token.as_deref() {
|
||||
is_author = creator_user_token == user_session.user_token_typed.as_str();
|
||||
is_author = creator_user_token == user_session.user_token.as_str();
|
||||
}
|
||||
|
||||
if !is_author && !is_moderator {
|
||||
warn!("user is not allowed to edit result: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit result: {:?}", user_session.user_token);
|
||||
return Err(EditW2lResultError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -147,7 +147,7 @@ pub async fn edit_w2l_inference_result_handler(
|
||||
}
|
||||
} else {
|
||||
CreatorOrModFields::ModFields {
|
||||
mod_user_token: user_session.user_token_typed.as_str(),
|
||||
mod_user_token: user_session.user_token.as_str(),
|
||||
}
|
||||
},
|
||||
mysql_pool: &server_state.mysql_pool,
|
||||
|
||||
+2
-2
@@ -130,7 +130,7 @@ pub async fn edit_w2l_template_handler(
|
||||
};
|
||||
|
||||
// NB: Second set of permission checks
|
||||
let is_author = template_record.creator_user_token == user_session.user_token_typed.as_str();
|
||||
let is_author = template_record.creator_user_token == user_session.user_token.as_str();
|
||||
let is_mod = user_session.can_edit_other_users_w2l_templates ;
|
||||
|
||||
if !is_author && !is_mod {
|
||||
@@ -189,7 +189,7 @@ pub async fn edit_w2l_template_handler(
|
||||
}
|
||||
} else {
|
||||
CreatorOrModFields::ModFields(ModFields {
|
||||
mod_user_token: user_session.user_token_typed.as_str(),
|
||||
mod_user_token: user_session.user_token.as_str(),
|
||||
is_public_listing_approved: request.is_public_listing_approved.unwrap_or(false),
|
||||
is_locked_from_user_modification: request.is_locked_from_user_modification.unwrap_or(false),
|
||||
is_locked_from_use: request.is_locked_from_use.unwrap_or(false),
|
||||
|
||||
+1
-1
@@ -124,7 +124,7 @@ pub async fn enqueue_infer_w2l_with_uploads(
|
||||
|
||||
let maybe_user_token : Option<String> = maybe_session
|
||||
.as_ref()
|
||||
.map(|user_session| user_session.user_token_typed.as_str().to_string());
|
||||
.map(|user_session| user_session.user_token.as_str().to_string());
|
||||
|
||||
let maybe_user_preferred_visibility : Option<Visibility> = maybe_session
|
||||
.as_ref()
|
||||
|
||||
+2
-2
@@ -137,7 +137,7 @@ pub async fn upload_w2l_template_handler(
|
||||
|
||||
let job_token = insert_w2l_template_upload_job(InsertW2lTemplateUploadJobArgs {
|
||||
uuid: &uuid,
|
||||
creator_user_token: user_session.user_token_typed.as_str(),
|
||||
creator_user_token: user_session.user_token.as_str(),
|
||||
creator_ip_address: &ip_address,
|
||||
creator_set_visibility: &creator_set_visibility,
|
||||
title: &title,
|
||||
@@ -150,7 +150,7 @@ pub async fn upload_w2l_template_handler(
|
||||
UploadW2lTemplateError::ServerError
|
||||
})?;
|
||||
|
||||
server_state.firehose_publisher.enqueue_w2l_template_upload(user_session.user_token_typed.as_str(), &job_token)
|
||||
server_state.firehose_publisher.enqueue_w2l_template_upload(user_session.user_token.as_str(), &job_token)
|
||||
.await
|
||||
.map_err(|e| {
|
||||
warn!("error publishing event: {:?}", e);
|
||||
|
||||
+2
-2
@@ -91,7 +91,7 @@ pub async fn set_w2l_template_mod_approval_handler(
|
||||
};
|
||||
|
||||
if !user_session.can_approve_w2l_templates {
|
||||
warn!("user is not allowed to approve templates: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to approve templates: {:?}", user_session.user_token);
|
||||
return Err(SetW2lTemplateModApprovalError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -114,7 +114,7 @@ pub async fn set_w2l_template_mod_approval_handler(
|
||||
|
||||
let query_result = set_w2l_template_mod_approval(
|
||||
&path.token,
|
||||
user_session.user_token_typed.as_str(),
|
||||
user_session.user_token.as_str(),
|
||||
request.is_approved,
|
||||
&server_state.mysql_pool,
|
||||
).await;
|
||||
|
||||
+4
-4
@@ -127,10 +127,10 @@ pub async fn delete_weight_handler(
|
||||
|
||||
let is_creator =
|
||||
weight.creator_user_token.to_string() ==
|
||||
user_session.user_token_typed.as_str().to_string();
|
||||
user_session.user_token.as_str().to_string();
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to delete this weight: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete this weight: {:?}", user_session.user_token);
|
||||
return Err(DeleteWeightError::NotAuthorized);
|
||||
}
|
||||
|
||||
@@ -139,7 +139,7 @@ pub async fn delete_weight_handler(
|
||||
let query_result = if request.set_delete {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to delete weights: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to delete weights: {:?}", user_session.user_token);
|
||||
return Err(DeleteWeightError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
@@ -158,7 +158,7 @@ pub async fn delete_weight_handler(
|
||||
} else {
|
||||
match delete_role {
|
||||
DeleteRole::ErrorDoNotDelete => {
|
||||
warn!("user is not allowed to undelete weights: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to undelete weights: {:?}", user_session.user_token);
|
||||
return Err(DeleteWeightError::NotAuthorized);
|
||||
}
|
||||
DeleteRole::AsUser => {
|
||||
|
||||
+3
-3
@@ -147,10 +147,10 @@ pub async fn get_weight_handler(
|
||||
}
|
||||
};
|
||||
|
||||
let session_user_token = user_session.user_token_typed.as_str().to_string();
|
||||
let session_user_token = user_session.user_token.as_str().to_string();
|
||||
|
||||
if !is_mod && session_user_token.as_str() != user_session.user_token_typed.as_str() {
|
||||
warn!("user is not allowed to view this weight: {:?}", user_session.user_token_typed.as_str());
|
||||
if !is_mod && session_user_token.as_str() != user_session.user_token.as_str() {
|
||||
warn!("user is not allowed to view this weight: {:?}", user_session.user_token.as_str());
|
||||
return Err(GetWeightError::NotAuthorized);
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -131,10 +131,10 @@ pub async fn set_model_weight_cover_image_handler(
|
||||
}
|
||||
};
|
||||
|
||||
let is_creator = model_weight.creator_user_token.as_str() == user_session.user_token_typed.as_str();
|
||||
let is_creator = model_weight.creator_user_token.as_str() == user_session.user_token.as_str();
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to edit this media_file: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit this media_file: {:?}", user_session.user_token);
|
||||
return Err(SetModelWeightCoverImageError::NotAuthorized);
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -143,10 +143,10 @@ pub async fn update_weight_handler(
|
||||
|
||||
let is_creator =
|
||||
weight.creator_user_token.to_string() ==
|
||||
user_session.user_token_typed.as_str().to_string();
|
||||
user_session.user_token.as_str().to_string();
|
||||
|
||||
if !is_creator && !is_mod {
|
||||
warn!("user is not allowed to edit this weight: {:?}", user_session.user_token_typed);
|
||||
warn!("user is not allowed to edit this weight: {:?}", user_session.user_token);
|
||||
return Err(UpdateWeightError::NotAuthorized);
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user