Files
wordpress-theme-aksrt/inc/classes/settings/class-aksrt-settings-credits-payment-groups.php
T
kate522 d9fbacbce6 feat(payment): align VIP/balance/order schema keys with Zibll
Extract payment readers into AKSRT_Settings_Payment_Runtime and store
canonical Zibll option IDs (pay_user_vip_*, pay_balance_*, pay_box_position,
pay_mark, pay_rebate_*, pay_income_*) in aksrt_settings with no legacy
payment_* dual-read. Update PHP/JS payment schemas and VIP sidebar gate.
2026-07-11 17:13:29 +08:00

201 lines
6.6 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
/**
* AKSRT settings credits and payment facade groups.
*
* @package AKSRT
*/
defined('ABSPATH') || exit;
trait AKSRT_Settings_Credits_Payment_Groups {
/**
* 积分配置(合并默认值)。
* @return array
*/
public static function get_credit_settings(): array {
return AKSRT_Settings_Credits_Runtime::get_credit_settings();
}
/**
* Normalized runtime settings for daily sign-in rewards.
*
* @return array{enabled:bool,base:int,streak:array<int,int>,currency_name:string}
*/
public static function get_signin_reward_settings(): array {
return AKSRT_Settings_Credits_Runtime::get_signin_reward_settings();
}
/**
* Normalized runtime settings for invite rewards and registration gating.
*
* @return array{
* enabled:bool,
* inviter_amount:int,
* invitee_amount:int,
* require_verify:bool,
* ip_daily_cap:int,
* register_field:string,
* reject_invalid:bool,
* registration_enabled:bool
* }
*/
public static function get_invite_reward_settings(): array {
return AKSRT_Settings_Credits_Runtime::get_invite_reward_settings();
}
/**
* Canonical invite registration config derived from users.invite fields.
*
* @return array{
* enabled:bool,
* mode:string,
* register_field:string,
* reject_invalid:bool,
* code_length:int,
* open_desc:string,
* must_desc:string
* }
*/
public static function get_invite_registration_config(): array {
return AKSRT_Settings_Credits_Runtime::get_invite_registration_config();
}
/**
* 积分功能是否启用(开关 + cms_features.download_credit 联合判定)。
*/
public static function credits_enabled(): bool {
return AKSRT_Settings_Credits_Runtime::credits_enabled();
}
/**
* 自定义货币名称,为空时回退"积分"。
*/
public static function get_currency_name(): string {
return AKSRT_Settings_Credits_Runtime::get_currency_name();
}
/**
* 邀请系统是否启用(=积分系统启用 && invite_reward.enabled)。
* 用于 UI 入口(个人中心邀请 Tab)的展示门禁。
*/
public static function invite_enabled(): bool {
return AKSRT_Settings_Credits_Runtime::invite_enabled();
}
/**
* 邀请注册功能总开关(独立于积分系统)。
* 控制邀请链接、注册页邀请码字段、用户中心邀请卡片的显示。
* 存储在 aksrt_settings(invit_code_s / invite_registration_enabled)。
*/
public static function invite_registration_enabled(): bool {
return AKSRT_Settings_Credits_Runtime::invite_registration_enabled();
}
/**
* 注册页邀请码字段模式:'hidden' | 'optional' | 'required'
*/
public static function invite_register_field_mode(): string {
return AKSRT_Settings_Credits_Runtime::invite_register_field_mode();
}
/**
* 必填模式下邀请码无效是否拒绝注册。
*/
public static function invite_reject_invalid(): bool {
return AKSRT_Settings_Credits_Runtime::invite_reject_invalid();
}
public static function invite_code_length(): int {
return AKSRT_Settings_Credits_Runtime::invite_code_length();
}
/**
* 资源下载默认积分价(当资源未单独设价时回退使用)。
*/
public static function download_default_cost(): int {
return AKSRT_Settings_Credits_Runtime::download_default_cost();
}
/**
* Unified paid-content and download policy settings.
*
* @return array{
* download_login:bool,
* download_credit:bool,
* download_captcha:bool,
* default_cost:int,
* paid_post_types:string[],
* vip_free_download:bool,
* vip_exempt_roles:string[],
* catalog_note:string,
* manual_delivery_note:string
* }
*/
public static function get_paid_content_settings(): array {
return AKSRT_Settings_Payment_Runtime::get_paid_content_settings();
}
/**
* @return array{enabled:bool,mode:string,packages_raw:string,package_count:int,help_text:string}
*/
public static function get_payment_recharge_settings(): array {
return AKSRT_Settings_Payment_Runtime::get_payment_recharge_settings();
}
/**
* @return array{enabled:bool,name:string,badge_text:string,packages_raw:string,package_count:int,help_text:string}
*/
public static function get_payment_vip_settings(): array {
return AKSRT_Settings_Payment_Runtime::get_payment_vip_settings();
}
/**
* @return array{enabled:bool,share_ratio:int,settlement_threshold:int,cycle_days:int,note:string}
*/
public static function get_payment_revenue_settings(): array {
return AKSRT_Settings_Payment_Runtime::get_payment_revenue_settings();
}
/**
* @return array{enabled:bool,ratio:int,window_days:int,require_paid_order:bool,note:string}
*/
public static function get_payment_affiliate_settings(): array {
return AKSRT_Settings_Payment_Runtime::get_payment_affiliate_settings();
}
/**
* @return array{mode:string,test_enabled:bool,manual_review:bool,callback_secret:string,help_text:string}
*/
public static function get_payment_gateway_settings(): array {
return AKSRT_Settings_Payment_Runtime::get_payment_gateway_settings();
}
/**
* 获取订单设置
*
* @return array{prefix:string,expiry:int,show_user:bool,show_paycount:bool,no_logged_in:bool,cookie_day:int,no_logged_remind:bool,wait_float:bool,order_max_minutes:int,mark:string,box_position:string,free_logged_show:bool,show_ip:bool,show_device:bool,show_order_no:bool,show_create_time:bool,show_pay_time:bool,status_texts:array,service:array}
*/
public static function get_order_settings(): array {
return AKSRT_Settings_Payment_Runtime::get_order_settings();
}
/**
* 获取充值卡设置
*
* @return array{enabled:bool,desc:string,type:string,prefix:string,length:int,batch_size:int,max_redeem:int,expiry_days:int,amount:int,vip_days:int,credits:int,redeem_page:string,success_msg:string,fail_msg:string}
*/
public static function get_card_pass_settings(): array {
return AKSRT_Settings_Payment_Runtime::get_card_pass_settings();
}
/**
* 获取提现管理设置
*
* @return array{min_amount:int,service_charge_rate:int,text:string}
*/
public static function get_withdrawal_settings(): array {
return AKSRT_Settings_Payment_Runtime::get_withdrawal_settings();
}
}