评论徽章全展示按优先级排序 + 新增金色头衔徽章
Deploy to Production / pre-check (push) Successful in 1m12s
Deploy to Production / build (push) Successful in 2m52s
Deploy to Production / deploy-edgeone (push) Successful in 3m27s
Deploy to Production / finalize (push) Successful in 30s
Deploy to Production / notify-failure (push) Skipped
Deploy to Production / pre-check (push) Successful in 1m12s
Deploy to Production / build (push) Successful in 2m52s
Deploy to Production / deploy-edgeone (push) Successful in 3m27s
Deploy to Production / finalize (push) Successful in 30s
Deploy to Production / notify-failure (push) Skipped
- 徽章不再互斥:满足条件全部展示,排序 = 系统徽章(博主等) > 头衔(新增)> 友链 > 友圈 > 官职 - 头衔徽章:后端 users 表新增 title_name 字段,管理面板用户编辑 可设置,金色 UI 与官职一致,优先级仅次于系统徽章 - 官方 badge-wrap 挪进昵称元素内,保证与主题徽章的排序正确
This commit is contained in:
1 parent
da1a77a313
commit
79c1e51d5c
1 file changed
+14
-8
@@ -669,17 +669,23 @@ artalk.on('comment-rendered', function(node) {
|
||||
var host = null;
|
||||
try { if (data.link) host = normalizeHost(new URL(data.link).hostname); } catch (e) {}
|
||||
|
||||
// 优先级:友链 > 友圈 > 官职(互斥,只注入一枚主题徽章)
|
||||
var linkMatch = matchBadge(linkMap, host, nickLower);
|
||||
if (linkMatch) {
|
||||
injectBadge(nickEl, 'atk-link-badge', '友链', '友链: ' + linkMatch);
|
||||
return;
|
||||
}
|
||||
var feedMatch = matchBadge(feedMap, host, nickLower);
|
||||
if (feedMatch) {
|
||||
injectBadge(nickEl, 'atk-feed-badge', '友圈', '友圈: ' + feedMatch);
|
||||
return;
|
||||
|
||||
// 官方系统徽章(博主等)由 Artalk 渲染在 .atk-badge-wrap,把它挪进
|
||||
// 昵称元素内,保证视觉顺序:系统徽章 > 头衔 > 友链 > 友圈 > 官职
|
||||
var badgeWrap = el.querySelector('.atk-badge-wrap');
|
||||
if (badgeWrap && badgeWrap.parentNode !== nickEl) nickEl.appendChild(badgeWrap);
|
||||
|
||||
// 1) 头衔徽章(金色,管理员在后台手动设置,仅次于系统徽章)
|
||||
if (data.title_name && !nickEl.querySelector('.atk-title-badge')) {
|
||||
injectBadge(nickEl, 'atk-title-badge', data.title_name, '头衔: ' + data.title_name, '#b8860b', 'rgba(197,136,27,.16)');
|
||||
}
|
||||
// 2) 友链
|
||||
if (linkMatch) injectBadge(nickEl, 'atk-link-badge', '友链', '友链: ' + linkMatch);
|
||||
// 3) 友圈
|
||||
if (feedMatch) injectBadge(nickEl, 'atk-feed-badge', '友圈', '友圈: ' + feedMatch);
|
||||
// 4) 评论官职(按全站评论数)
|
||||
if (data.rank_name && !nickEl.querySelector('.atk-rank-badge')) {
|
||||
var tip = data.rank_title || data.rank_name;
|
||||
if (data.rank_count != null) tip += ' (' + data.rank_count + '条评论)';
|
||||
|
||||
Reference in new issue
Block a user