区分动态发布者和其他用户在动态菜单中的操作权限

This commit is contained in:
2025-08-05 15:12:29 +08:00
parent a80711a475
commit 7ea75a4755

View File

@@ -696,7 +696,9 @@ fun Header(
onReportClick = {
onReportClick()
expanded = false
}
},
userId = userId,
isCurrentUser = AppState.UserId?.toInt() == userId
)
}
}
@@ -1375,25 +1377,26 @@ fun PostBottomBar(
fun PostMenuModal(
onDeleteClick: () -> Unit = {},
onReportClick: () -> Unit = {},
momentEntity: MomentEntity? = null
userId: Int? = null,
isCurrentUser: Boolean = false
) {
val AppColors = LocalAppTheme.current
Column(
modifier = Modifier
.fillMaxWidth()
.height(160.dp)
.background(AppColors.background)
.padding(vertical = 47.dp, horizontal = 20.dp)
) {
Row(
modifier = Modifier
.fillMaxWidth(),
verticalAlignment = Alignment.CenterVertically
verticalAlignment = Alignment.CenterVertically,
horizontalArrangement = Arrangement.Start
) {
momentEntity?.let {
if (isCurrentUser) {
// 显示删除选项给动态发布者
Column(
modifier = Modifier.padding(end = 16.dp),
verticalArrangement = Arrangement.Center,
horizontalAlignment = Alignment.CenterHorizontally
) {
@@ -1422,39 +1425,39 @@ fun PostMenuModal(
color = AppColors.text
)
}
}
}
Column(
modifier = Modifier.padding(end = 16.dp),
verticalArrangement = Arrangement.Center,
horizontalAlignment = Alignment.CenterHorizontally
) {
Box(
modifier = Modifier
.clip(CircleShape)
.noRippleClickable {
onReportClick()
} else {
// 显示举报选项给其他用户
Column(
verticalArrangement = Arrangement.Center,
horizontalAlignment = Alignment.CenterHorizontally
) {
Box(
modifier = Modifier
.clip(CircleShape)
.noRippleClickable {
onReportClick()
}
) {
Image(
painter = painterResource(id = R.drawable.rider_pro_moment_delete),
contentDescription = "",
modifier = Modifier.size(24.dp),
colorFilter = ColorFilter.tint(
AppColors.text
)
)
}
) {
Image(
painter = painterResource(id = R.drawable.rider_pro_moment_delete),
contentDescription = "",
modifier = Modifier.size(24.dp),
colorFilter = ColorFilter.tint(
AppColors.text
Spacer(modifier = Modifier.height(8.dp))
Text(
text = stringResource(R.string.report),
fontSize = 11.sp,
fontWeight = FontWeight.Bold,
color = AppColors.text
)
)
}
}
Spacer(modifier = Modifier.height(8.dp))
Text(
text = stringResource(R.string.report),
fontSize = 11.sp,
fontWeight = FontWeight.Bold,
color = AppColors.text
)
}
}
}