feat(dnfs): 卡片移动按钮一并纳入 can_operate 权限显隐
编辑/移动/删除三个按钮合并为单次权限判断(移动本质也是 update_note), 未登录或无权时不渲染整个按钮组。
This commit is contained in:
1 parent
b4e1cf462a
commit
1388fcb72b
1 file changed
+12
-13
+12
-13
@@ -561,11 +561,17 @@ function load_notes(main_node) {
|
|||||||
sts_div.appendChild(makeStatItem(ICON_HEART, item.like_count));
|
sts_div.appendChild(makeStatItem(ICON_HEART, item.like_count));
|
||||||
sts_div.appendChild(makeStatItem(ICON_SHARE, item.share_count));
|
sts_div.appendChild(makeStatItem(ICON_SHARE, item.share_count));
|
||||||
// 卡片操作按钮:编辑 / 移动 / 删除(stopPropagation 防止触发卡片自身的点入跳转)
|
// 卡片操作按钮:编辑 / 移动 / 删除(stopPropagation 防止触发卡片自身的点入跳转)
|
||||||
// 编辑与删除按 can_operate 显隐:操作权由后端 get_notes 按 owner / is_admin 判定,
|
// 按钮组整体按 can_operate 显隐:操作权由后端 get_notes 按 owner / is_admin 判定,
|
||||||
// 与 delete_note / update_note 鉴权口径一致;未登录或无权时隐藏
|
// 与 delete_note / update_note 鉴权口径一致(移动本质也是 update_note);
|
||||||
|
// 未登录或无权时不渲染整个按钮组
|
||||||
|
ttl.appendChild(wrt_div);
|
||||||
|
ttl.appendChild(sts_div);
|
||||||
|
let ctt = document.createElement('p');
|
||||||
|
renderMarkdown(ctt, item.content);
|
||||||
|
card.appendChild(ctt)
|
||||||
|
if (item.can_operate === true) {
|
||||||
let act_div = document.createElement('div');
|
let act_div = document.createElement('div');
|
||||||
act_div.className = "card-actions";
|
act_div.className = "card-actions";
|
||||||
if (item.can_operate === true) {
|
|
||||||
let edit_btn = document.createElement('button');
|
let edit_btn = document.createElement('button');
|
||||||
edit_btn.className = "act-btn act-edit";
|
edit_btn.className = "act-btn act-edit";
|
||||||
edit_btn.innerHTML = ICON_EDIT + "编辑";
|
edit_btn.innerHTML = ICON_EDIT + "编辑";
|
||||||
@@ -573,8 +579,6 @@ function load_notes(main_node) {
|
|||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
startEdit(item);
|
startEdit(item);
|
||||||
});
|
});
|
||||||
act_div.appendChild(edit_btn);
|
|
||||||
}
|
|
||||||
let move_btn = document.createElement('button');
|
let move_btn = document.createElement('button');
|
||||||
move_btn.className = "act-btn act-move";
|
move_btn.className = "act-btn act-move";
|
||||||
move_btn.innerHTML = ICON_MOVE + "移动";
|
move_btn.innerHTML = ICON_MOVE + "移动";
|
||||||
@@ -582,8 +586,6 @@ function load_notes(main_node) {
|
|||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
startMove(item);
|
startMove(item);
|
||||||
});
|
});
|
||||||
act_div.appendChild(move_btn);
|
|
||||||
if (item.can_operate === true) {
|
|
||||||
let del_btn = document.createElement('button');
|
let del_btn = document.createElement('button');
|
||||||
del_btn.className = "act-btn act-del";
|
del_btn.className = "act-btn act-del";
|
||||||
del_btn.innerHTML = ICON_TRASH + "删除";
|
del_btn.innerHTML = ICON_TRASH + "删除";
|
||||||
@@ -591,14 +593,11 @@ function load_notes(main_node) {
|
|||||||
event.stopPropagation();
|
event.stopPropagation();
|
||||||
deleteChild(item.id);
|
deleteChild(item.id);
|
||||||
});
|
});
|
||||||
|
act_div.appendChild(edit_btn);
|
||||||
|
act_div.appendChild(move_btn);
|
||||||
act_div.appendChild(del_btn);
|
act_div.appendChild(del_btn);
|
||||||
}
|
|
||||||
ttl.appendChild(wrt_div);
|
|
||||||
ttl.appendChild(sts_div);
|
|
||||||
let ctt = document.createElement('p');
|
|
||||||
renderMarkdown(ctt, item.content);
|
|
||||||
card.appendChild(ctt)
|
|
||||||
card.appendChild(act_div);
|
card.appendChild(act_div);
|
||||||
|
}
|
||||||
recommend_list.appendChild(card)
|
recommend_list.appendChild(card)
|
||||||
recommend_list.appendChild(document.createElement('br'))
|
recommend_list.appendChild(document.createElement('br'))
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user