0 ? $user_id : get_current_user_id(); if ($user_id <= 0 || !class_exists('\AKSRT\Credits\Signin')) { return ''; } $cfg = class_exists('\AKSRT\Settings\Settings') ? \AKSRT\Settings\Settings::get_signin_reward_settings() : ['enabled' => false]; if (empty($cfg['enabled'])) { return ''; } $signed = \AKSRT\Credits\Signin::get_instance()->is_signed_today($user_id); $compact_class = $compact ? ' aksrt-header-checkin--compact' : ''; if ($signed) { return ''; } return ''; } endif; if (!function_exists('aksrt_render_signin_captcha')) : /** * Render the single global captcha mount used by every sign-in button. */ function aksrt_render_signin_captcha(): void { if ( !is_user_logged_in() || !class_exists('\AKSRT\Credits\Signin') || !class_exists('\AKSRT\Settings\Settings') || empty(\AKSRT\Settings\Settings::get_signin_reward_settings()['enabled']) || !function_exists('aksrt_is_captcha_enabled_for') || !function_exists('aksrt_render_captcha') || !aksrt_is_captcha_enabled_for('signin') ) { return; } ?>
0 ? $user_id : get_current_user_id(); if ($user_id <= 0) { return ''; } $credits = function_exists('aksrt_user_credits') ? (int) aksrt_user_credits($user_id) : 0; $currency = class_exists('\AKSRT\Settings\Settings') ? \AKSRT\Settings\Settings::get_currency_name() : __('积分', 'aksrt'); $wallet = 0.0; if (class_exists('\AKSRT\Credits\Balance')) { $wallet = (float) \AKSRT\Credits\Balance::balance($user_id); } $center = function_exists('aksrt_get_user_center_url') ? aksrt_get_user_center_url('credits') : '#'; $html = ''; $html .= ' ' . esc_html($currency) . ' ' . esc_html(number_format_i18n($credits)) . ''; $html .= ' ' . esc_html__('余额', 'aksrt') . ' ' . esc_html(number_format_i18n($wallet, 2)) . ''; $html .= ''; return $html; } endif; if (!function_exists('aksrt_header_user_badges_row')) : /** * Identity / medal chips under profile. */ function aksrt_header_user_badges_row(int $user_id = 0): string { $user_id = $user_id > 0 ? $user_id : get_current_user_id(); if ($user_id <= 0 || !function_exists('aksrt_render_user_identity_chips')) { return ''; } // Certification is displayed beside the name and level icon in the profile row. return ''; } endif; if (!function_exists('aksrt_header_payvip_bar')) : /** * VIP status / open CTA bar (legacy parity). */ function aksrt_header_payvip_bar(int $user_id = 0): string { $user_id = $user_id > 0 ? $user_id : get_current_user_id(); if ($user_id <= 0) { return ''; } $vip = class_exists('\AKSRT\Settings\Settings') ? \AKSRT\Settings\Settings::get_payment_vip_settings() : ['enabled' => false, 'levels' => []]; if (empty($vip['enabled'])) { return ''; } $settings = class_exists('\AKSRT\Settings\Settings') ? \AKSRT\Settings\Settings::get_all() : []; $level = function_exists('aksrt_get_user_vip_level') ? (int) aksrt_get_user_vip_level($user_id) : 0; if ($level > 0) { $levels = is_array($vip['levels'] ?? null) ? $vip['levels'] : []; $name = (string) ($levels[$level]['name'] ?? ($level === 2 ? __('二级会员', 'aksrt') : __('一级会员', 'aksrt'))); $exp_label = ''; if (function_exists('aksrt_get_vip_info')) { $info = aksrt_get_vip_info($user_id); $expires = max(0, (int) ($info['expires'] ?? 0)); $exp_label = $expires > 0 ? sprintf(__('到期时间:%s', 'aksrt'), wp_date('Y年m月d日', $expires)) : (string) ($info['expires_label'] ?? ''); } $html = '
'; $html .= ''; $html .= ''; $html .= ''; $html .= '' . esc_html($name) . ''; $html .= ''; if ($exp_label !== '') { $html .= '' . esc_html($exp_label) . ''; } $html .= '
'; return $html; } if (empty($vip['nav_user_pay_vip'])) { return ''; } // Match check-in CTA geometry (full width, 6px radius) — not top-nav navbar-cta chips. return '
' . '' . '' . '' . esc_html__('开通会员 尊享会员权益', 'aksrt') . '' . '
'; } endif; if (!function_exists('aksrt_render_signout_modal')) : /** * Confirm logout modal markup (once per page). */ function aksrt_render_signout_modal(): void { static $done = false; if ($done || !is_user_logged_in()) { return; } $done = true; $logout = wp_logout_url(home_url('/')); ?>