From 674e444d671efa035e048616c12d68ba8577c6f8 Mon Sep 17 00:00:00 2001 From: Stefan Melmuk <509385+stefan0xC@users.noreply.github.com> Date: Thu, 1 May 2025 17:28:23 +0200 Subject: [PATCH] respond with cipher json when deleting attachments (#5823) --- src/api/core/ciphers.rs | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/src/api/core/ciphers.rs b/src/api/core/ciphers.rs index 6c75d246..6b883bab 100644 --- a/src/api/core/ciphers.rs +++ b/src/api/core/ciphers.rs @@ -1376,7 +1376,7 @@ async fn delete_attachment_post_admin( headers: Headers, conn: DbConn, nt: Notify<'_>, -) -> EmptyResult { +) -> JsonResult { delete_attachment(cipher_id, attachment_id, headers, conn, nt).await } @@ -1387,7 +1387,7 @@ async fn delete_attachment_post( headers: Headers, conn: DbConn, nt: Notify<'_>, -) -> EmptyResult { +) -> JsonResult { delete_attachment(cipher_id, attachment_id, headers, conn, nt).await } @@ -1398,7 +1398,7 @@ async fn delete_attachment( headers: Headers, mut conn: DbConn, nt: Notify<'_>, -) -> EmptyResult { +) -> JsonResult { _delete_cipher_attachment_by_id(&cipher_id, &attachment_id, &headers, &mut conn, &nt).await } @@ -1409,7 +1409,7 @@ async fn delete_attachment_admin( headers: Headers, mut conn: DbConn, nt: Notify<'_>, -) -> EmptyResult { +) -> JsonResult { _delete_cipher_attachment_by_id(&cipher_id, &attachment_id, &headers, &mut conn, &nt).await } @@ -1818,7 +1818,7 @@ async fn _delete_cipher_attachment_by_id( headers: &Headers, conn: &mut DbConn, nt: &Notify<'_>, -) -> EmptyResult { +) -> JsonResult { let Some(attachment) = Attachment::find_by_id(attachment_id, conn).await else { err!("Attachment doesn't exist") }; @@ -1847,11 +1847,11 @@ async fn _delete_cipher_attachment_by_id( ) .await; - if let Some(org_id) = cipher.organization_uuid { + if let Some(ref org_id) = cipher.organization_uuid { log_event( EventType::CipherAttachmentDeleted as i32, &cipher.uuid, - &org_id, + org_id, &headers.user.uuid, headers.device.atype, &headers.ip.ip, @@ -1859,7 +1859,8 @@ async fn _delete_cipher_attachment_by_id( ) .await; } - Ok(()) + let cipher_json = cipher.to_json(&headers.host, &headers.user.uuid, None, CipherSyncType::User, conn).await; + Ok(Json(json!({"cipher":cipher_json}))) } /// This will hold all the necessary data to improve a full sync of all the ciphers