This commit is contained in:
Eric85710 2026-06-23 16:55:45 +08:00
parent 6694f83a47
commit 5864b2e5aa

View file

@ -608,17 +608,21 @@ fun MessageRow(
val callLog = message.callLogInfo val callLog = message.callLogInfo
// 🌟 3. 計算媒體 URL (將原本的圖片 URL 邏輯通用化至媒體檔案) // 🌟 3. 計算媒體 URL (將原本的圖片 URL 邏輯通用化至媒體檔案)
val finalMediaUrl = remember(message, isImage, isVideo) { val finalMediaUrl = remember(message, isImage, isVideo, isAudio) {
val rawPath = when { val rawPath = when {
isAttachmentImage && !message.attachment?.filename.isNullOrBlank() -> message.attachment!!.filename isAttachmentImage && !message.attachment?.filename.isNullOrBlank() -> message.attachment!!.filename
isAttachmentVideo && !message.attachment?.filename.isNullOrBlank() -> message.attachment!!.filename isAttachmentVideo && !message.attachment?.filename.isNullOrBlank() -> message.attachment!!.filename
isAttachmentAudio && !message.attachment?.filename.isNullOrBlank() -> message.attachment!!.filename // 2. 🌟 新增音訊附件路徑抓取
else -> message.content ?: "" else -> message.content ?: ""
} }
val baseUrl = "https://tg.technologia-tw.com" val baseUrl = "https://tg.technologia-tw.com"
when { when {
rawPath.isBlank() -> "" rawPath.isBlank() -> ""
rawPath.startsWith("http") -> rawPath rawPath.startsWith("http") -> rawPath
else -> { else -> {
// 移除可能重複的前綴,確保路徑乾淨
val cleanPath = rawPath.removePrefix("/").removePrefix("uploads/") val cleanPath = rawPath.removePrefix("/").removePrefix("uploads/")
if (cleanPath.startsWith("attachment/")) { if (cleanPath.startsWith("attachment/")) {
"$baseUrl/uploads/$cleanPath" "$baseUrl/uploads/$cleanPath"