fix(checkin): mirror reference experience displays in details modal
Checkin already grants matching experience via Level::on_checkin; surface it like the reference: purple integral badge in the daily reward card, 经验值+N in the signed-today block and purple mini badges in the 7-day ladder (gated by the level system switch).
This commit is contained in:
+12
-2
@@ -320,13 +320,19 @@ class Signin {
|
||||
$avatar_img = aksrt_get_avatar_box($user_id, 'avatar-img avatar-mini mr6', false, true);
|
||||
$html .= '<div class="mb20"><div class="flex ac jsb"><div class="mb10">' . $avatar_img . esc_html($user->display_name) . '</div>' . $checkin_all_day . '</div><div class="flex ab jsb">' . $user_card . '</div></div>';
|
||||
|
||||
// 每日签到奖励卡片
|
||||
// 每日签到奖励卡片(参考主题:积分徽章 + 经验值徽章,经验值随等级系统展示)
|
||||
$reward_badge = $base ? '<badge class=" p2-10 mr6 c-green" data-toggle="tooltip" title="' . esc_attr(sprintf(__('积分奖励%s', 'aksrt'), $base)) . '">' . $points_svg('icon') . '+' . esc_html((string) $base) . '</badge>' : '';
|
||||
$reward_badge .= ($level_s && $base) ? '<badge class=" p2-10 mr6 c-purple" data-toggle="tooltip" title="' . esc_attr(sprintf(__('经验值奖励%s', 'aksrt'), $base)) . '"><i class="fa fas fa-chart-line" aria-hidden="true"></i>+' . esc_html((string) $base) . '</badge>' : '';
|
||||
|
||||
if ($signed_today) {
|
||||
$theday_reward = sprintf(__('积分', 'aksrt') . '+%d', (int) ($rec['reward'] ?? 0));
|
||||
if ($level_s) {
|
||||
// 签到经验值与积分奖励同额发放(Level::on_checkin)。
|
||||
$theday_reward .= ' ' . sprintf(__('经验值', 'aksrt') . '+%d', (int) ($rec['reward'] ?? 0));
|
||||
}
|
||||
$checkin_btn = '<div class="em09 c-blue">
|
||||
<div class="mb10"><i class="fa fas fa-calendar-check mr6" aria-hidden="true"></i>' . esc_html__('今日已签到', 'aksrt') . '</div>
|
||||
<div class="px12">' . sprintf(__('积分', 'aksrt') . '+%d', (int) ($rec['reward'] ?? 0)) . '</div>
|
||||
<div class="px12">' . esc_html($theday_reward) . '</div>
|
||||
</div>';
|
||||
} else {
|
||||
$checkin_btn = '<button type="button" class="but c-blue ml10 p2-10 radius" data-signin-btn'
|
||||
@@ -358,6 +364,10 @@ class Signin {
|
||||
$_points = $base + $extra;
|
||||
$is_ed = $signed_today && $streak >= $d;
|
||||
$_mini_card = $_points ? '<div class="badg badg-sm ' . ($is_ed ? 'b' : 'c') . '-green" data-toggle="tooltip" title="' . esc_attr(sprintf(__('积分奖励%s', 'aksrt'), $_points)) . '">' . $points_svg('icon') . '<br/>+' . esc_html((string) $_points) . '</div>' : '';
|
||||
if ($level_s && $_points) {
|
||||
// 经验值与积分奖励同额(Level::on_checkin),参考主题为紫色经验值迷你卡。
|
||||
$_mini_card .= '<div class="badg badg-sm ' . ($is_ed ? 'b' : 'c') . '-purple" data-toggle="tooltip" title="' . esc_attr(sprintf(__('经验值奖励%s', 'aksrt'), $_points)) . '"><i class="fa fas fa-chart-line" aria-hidden="true"></i><br/>+' . esc_html((string) $_points) . '</div>';
|
||||
}
|
||||
|
||||
$continuous_lists .= '<div class="flex1 text-center" style="flex: 1;">
|
||||
<div class="mb6 checkin-mini-box">' . $_mini_card . '</div>
|
||||
|
||||
Reference in New Issue
Block a user