feat(user): wear badge modal and user-center entry

Expose 我的徽章 modal on profile header with REST wear actions and
update SPA badge help for icon_url + grant/wear flows.
This commit is contained in:
kate522 committed 2026-07-16 23:40:50 +08:00
1 parent 219cd0236e
commit de32c9ad35
5 files changed
+188 -4

No files matched your search

@@ -761,6 +761,17 @@ trait AKSRT_Scripts_Part_1b {
file_exists($credits_js_path) ? (string) filemtime($credits_js_path) : $version,
true
);
$badges_js_path = get_template_directory() . '/assets/js/user-badges.js';
if (file_exists($badges_js_path)) {
wp_enqueue_script(
'aksrt-user-badges',
$base_uri . '/assets/js/user-badges.js',
['aksrt-core'],
(string) filemtime($badges_js_path),
true
);
}
}
}
@@ -61,6 +61,12 @@ extract($context, EXTR_SKIP); // phpcs:ignore WordPress.PHP.DontExtract.extract_
</div>
</div>
<div class="uc-header__actions">
<?php if (class_exists('AKSRT_User_Badges') && AKSRT_User_Badges::enabled()) : ?>
<button type="button" class="btn-ghost btn-sm" data-aksrt-badges-open>
<i class="fas fa-award" aria-hidden="true"></i> <?php esc_html_e('我的徽章', 'aksrt'); ?>
</button>
<?php endif; ?>
<a href="<?php echo esc_url($messages_url); ?>" class="btn-ghost btn-sm">
<i class="fas fa-bell" aria-hidden="true"></i> <?php esc_html_e('消息通知', 'aksrt'); ?>
<?php if ($notification_unread_count > 0) : ?>
@@ -78,3 +84,16 @@ extract($context, EXTR_SKIP); // phpcs:ignore WordPress.PHP.DontExtract.extract_
</div>
</div>
</div>
<?php if (class_exists('AKSRT_User_Badges') && AKSRT_User_Badges::enabled()) : ?>
<div class="uc-modal" id="aksrt-badges-modal" hidden data-aksrt-badges-modal data-user-id="<?php echo (int) $user_id; ?>" data-can-wear="1">
<div class="uc-modal__overlay" data-aksrt-badges-close></div>
<div class="uc-modal__dialog" role="dialog" aria-modal="true" aria-label="<?php esc_attr_e('我的徽章', 'aksrt'); ?>">
<button type="button" class="uc-modal__close" data-aksrt-badges-close aria-label="<?php esc_attr_e('关闭', 'aksrt'); ?>"><i class="fas fa-times" aria-hidden="true"></i></button>
<h3 class="uc-modal__title"><i class="fas fa-award mr6" aria-hidden="true"></i><?php esc_html_e('我的徽章', 'aksrt'); ?></h3>
<div class="uc-badges-list" data-aksrt-badges-body>
<div class="muted-2-color em09"><?php esc_html_e('加载中…', 'aksrt'); ?></div>
</div>
</div>
</div>
<?php endif; ?>