201 lines
6.6 KiB
PHP
201 lines
6.6 KiB
PHP
<?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_basic_settings['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_Home_Cms::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_Home_Cms::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_Home_Cms::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_Home_Cms::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_Home_Cms::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_Home_Cms::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_Home_Cms::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_Home_Cms::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_Home_Cms::get_withdrawal_settings();
|
|
}
|
|
}
|