feat(assets): forum free-task depth, withdraw notices, share poster

Route forum essence/adopt/hot/score rewards through free-points day cap,
notify users on withdraw complete/reject, surface 海报分享 on single
share grid, and extend admin free-task keys for the remaining matrix.
This commit is contained in:
kate522 committed 2026-07-16 17:46:51 +08:00
1 parent c3eee3fa7e
commit b1731f7a8d
11 files changed
+165 -55

No files matched your search

+34
View File
@@ -33,6 +33,10 @@ class AKSRT_Points_Free {
'bbs_posts_new' => [__('论坛发帖', 'aksrt'), __('发布论坛主题', 'aksrt'), 5],
'bbs_reply' => [__('论坛回复', 'aksrt'), __('回复论坛主题', 'aksrt'), 2],
'bbs_essence' => [__('帖子加精', 'aksrt'), __('主题被设为精华', 'aksrt'), 10],
'bbs_adopt' => [__('回复被采纳', 'aksrt'), __('问答帖回复被采纳', 'aksrt'), 20],
'bbs_posts_hot' => [__('热帖奖励', 'aksrt'), __('主题成为热帖', 'aksrt'), 5],
'bbs_comment_hot'=> [__('神评奖励', 'aksrt'), __('回复成为神评', 'aksrt'), 5],
'bbs_score_extra'=> [__('帖子加分', 'aksrt'), __('主题被加分时奖励', 'aksrt'), 3],
];
}
@@ -276,6 +280,36 @@ class AKSRT_Points_Free {
return max(0, (int) ($f['credits']['comment_new'] ?? $default));
}
return $default;
case 'bbs_essence':
if (class_exists('AKSRT_Settings') && method_exists('AKSRT_Settings', 'get_forum_settings')) {
$f = AKSRT_Settings::get_forum_settings();
return max(0, (int) ($f['credits']['essence'] ?? $default));
}
return $default;
case 'bbs_adopt':
if (class_exists('AKSRT_Settings') && method_exists('AKSRT_Settings', 'get_forum_settings')) {
$f = AKSRT_Settings::get_forum_settings();
return max(0, (int) ($f['credits']['adopted'] ?? $default));
}
return $default;
case 'bbs_posts_hot':
if (class_exists('AKSRT_Settings') && method_exists('AKSRT_Settings', 'get_forum_settings')) {
$f = AKSRT_Settings::get_forum_settings();
return max(0, (int) ($f['credits']['posts_hot'] ?? $default));
}
return $default;
case 'bbs_comment_hot':
if (class_exists('AKSRT_Settings') && method_exists('AKSRT_Settings', 'get_forum_settings')) {
$f = AKSRT_Settings::get_forum_settings();
return max(0, (int) ($f['credits']['comment_hot'] ?? $f['credits']['comment_like'] ?? $default));
}
return $default;
case 'bbs_score_extra':
if (class_exists('AKSRT_Settings') && method_exists('AKSRT_Settings', 'get_forum_settings')) {
$f = AKSRT_Settings::get_forum_settings();
return max(0, (int) ($f['credits']['score_extra'] ?? $default));
}
return $default;
default:
return $default;
}