feat: merge promotion and earnings center
This commit is contained in:
@@ -135,6 +135,8 @@ if (!function_exists('aksrt_get_user_center_tab_url')) {
|
||||
$tab = sanitize_key($tab);
|
||||
if ('invite' === $tab) {
|
||||
$tab = 'promotion';
|
||||
} elseif ('revenue' === $tab) {
|
||||
$tab = 'promotion';
|
||||
}
|
||||
return aksrt_get_user_center_url($tab);
|
||||
}
|
||||
@@ -181,7 +183,6 @@ if (!function_exists('aksrt_capture_user_center_view')) {
|
||||
'orders' => 'orders',
|
||||
'auth' => 'auth',
|
||||
'promotion' => 'promotion',
|
||||
'revenue' => 'revenue',
|
||||
'settings' => 'settings',
|
||||
'header' => 'header',
|
||||
'sidebar' => 'sidebar',
|
||||
@@ -206,7 +207,7 @@ if (!function_exists('aksrt_capture_user_center_panel')) {
|
||||
* Capture a built-in or registered user-center panel body.
|
||||
*/
|
||||
function aksrt_capture_user_center_panel(string $tab_key, array $tab, array $context): string {
|
||||
$built_in_tabs = ['profile', 'level', 'creator', 'posts', 'follow', 'comments', 'favorites', 'credits', 'vip', 'orders', 'auth', 'promotion', 'revenue', 'settings'];
|
||||
$built_in_tabs = ['profile', 'level', 'creator', 'posts', 'follow', 'comments', 'favorites', 'credits', 'vip', 'orders', 'auth', 'promotion', 'settings'];
|
||||
if (in_array($tab_key, $built_in_tabs, true)) {
|
||||
return aksrt_capture_user_center_view($tab_key, $context);
|
||||
}
|
||||
@@ -317,6 +318,8 @@ if (!function_exists('aksrt_user_center_resolve_tabs')) {
|
||||
$active = 'credits';
|
||||
} elseif ('invite' === $active) {
|
||||
$active = 'promotion';
|
||||
} elseif ('revenue' === $active) {
|
||||
$active = 'promotion';
|
||||
} elseif ('vip' === $active) {
|
||||
// Prefer dedicated vip tab when registered; else credits (VIP shop).
|
||||
$active = in_array('vip', $keys, true) ? 'vip' : 'credits';
|
||||
@@ -356,6 +359,7 @@ if (!function_exists('aksrt_user_center_runtime_config')) {
|
||||
'tabAliases' => [
|
||||
'signin' => 'credits',
|
||||
'invite' => 'promotion',
|
||||
'revenue' => 'promotion',
|
||||
'assets' => 'credits',
|
||||
// vip → vip when panel exists; SPA may still map missing keys via server resolve.
|
||||
'vip' => 'vip',
|
||||
@@ -507,11 +511,7 @@ if (!function_exists('aksrt_get_user_center_render_context')) {
|
||||
$wallet_balance = (float) ($dashboard['wallet_balance'] ?? 0.0);
|
||||
$runtime_config = aksrt_user_center_runtime_config($user_id, $tabs['default'], $active_tab, $tabs['urls']);
|
||||
$runtime_config['avatarUpload'] = aksrt_user_center_avatar_upload_config($allow_avatar_upload);
|
||||
$revenue_settings = class_exists('\AKSRT\Settings\Settings') ? \AKSRT\Settings\Settings::get_payment_revenue_settings() : [];
|
||||
$show_revenue_section = !empty($revenue_settings['enabled']) || !empty($affiliate_settings['enabled']);
|
||||
$revenue_url = isset($tabs['tabs']['revenue'])
|
||||
? aksrt_get_user_center_tab_url('revenue')
|
||||
: '';
|
||||
|
||||
|
||||
$render_context = [
|
||||
'user_center_settings' => $user_center_settings,
|
||||
@@ -535,7 +535,6 @@ if (!function_exists('aksrt_get_user_center_render_context')) {
|
||||
'show_avatar_edit' => $allow_avatar_upload,
|
||||
'notification_unread_count' => function_exists('aksrt_get_user_unread_notification_count') ? aksrt_get_user_unread_notification_count($user_id) : 0,
|
||||
'messages_url' => $messages_enabled && function_exists('aksrt_get_messages_page_url') ? aksrt_get_messages_page_url() : '',
|
||||
'revenue_url' => $revenue_url,
|
||||
'per_page' => 10,
|
||||
'posts_page' => max(1, isset($_GET['posts_page']) ? (int) $_GET['posts_page'] : 1),
|
||||
'post_status_filter' => $post_status_filter,
|
||||
@@ -550,7 +549,6 @@ if (!function_exists('aksrt_get_user_center_render_context')) {
|
||||
'show_vip' => !empty($vip_settings['enabled']),
|
||||
'show_credit_tabs' => $show_credit_tabs,
|
||||
'affiliate_enabled' => $show_credit_tabs && !empty($affiliate_settings['enabled']),
|
||||
'show_revenue_section' => $show_revenue_section,
|
||||
'currency_name' => $currency_name,
|
||||
'credit_balance' => (float) ($dashboard['credit_balance'] ?? 0.0),
|
||||
'credits_enabled' => $show_credit_tabs,
|
||||
|
||||
Reference in New Issue
Block a user