refactor: rename the theme brand and every identifier from AKSRT to Jio
Full-project rename. `git grep -i aksrt` is now empty apart from the
DBMigrator 3.3.0 changelog note that documents the rename itself.
Code identifiers
- PHP namespace AKSRT\ -> Jio\ (composer PSR-4 + 378 declarations)
- global constants AKSRT_* -> JIO_* (VERSION/DIR/URI, PAY_TYPE_*, CAPTCHA_*)
- procedural functions, hooks, options, meta keys, table names,
cookies, query vars, ajax actions and nonces: aksrt_ -> jio_
- text domain aksrt -> jio; Theme Name -> Jio
- JS globals: aksrtData/aksrtAdminData/... -> jioData/jioAdminData/...,
window.AKSRTCaptcha & friends -> window.JioCaptcha, Aksrt* -> Jio*
- Vue components Aks*.vue -> Jio*.vue (15 files renamed + imports)
- CSS classes/data-attrs/custom properties: aksrt- -> jio-
- REST namespace aksrt/v1 -> jio/v1 (incl. payment gateway callbacks)
Storage layer
- DB tables {prefix}aksrt_* -> {prefix}jio_*; SCHEMA_VERSION 3.2.0 -> 3.3.0
so dbDelta creates the new names on install
- widget id_base aksrt_widget_* -> jio_widget_*
- uninstall.php drop list rebuilt from the actual migrator tables
(dropped 3 stale entries, added the 17 missing ones)
Removed
- hardcoded https://api.aksrt.com/version.json default update endpoint;
get_endpoint() now reads the 「更新端点」 setting and do_check() no-ops
when it is empty
Files renamed: inc/helpers/aksrt-*.php -> jio-*.php (54),
assets/admin/src/components/form/Aks*.vue -> Jio*.vue (15).
Build artifacts regenerated: assets/css/build, assets/js/runtime,
assets/admin/build.
Verified: audit-psr4-paths errors=0, audit-admin-contracts errors=0
(warnings=56, unchanged baseline), 813/813 widget-system tests,
44/44 phpunit, php -l clean across all PHP.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
5b16bc6e15
commit
35bb96e82f
997 files changed
+28216
-28188
No files matched your search
@@ -1,6 +1,6 @@
|
||||
<?php
|
||||
/**
|
||||
* @package AKSRT
|
||||
* @package Jio
|
||||
*
|
||||
* PayChargeCards 的「添加卡密 / 导出卡密」表单渲染与依赖显隐求值。
|
||||
* 表单结构、字段依赖(field_row / submessage_row / deps_visible)、按钮组与数字输入
|
||||
@@ -9,7 +9,7 @@
|
||||
* 作为 flat sibling trait 被 PayChargeCards 使用(PSR-4:trait 必须与宿主类同目录)。
|
||||
*/
|
||||
|
||||
namespace AKSRT\Admin\Native;
|
||||
namespace Jio\Admin\Native;
|
||||
|
||||
defined('ABSPATH') || exit;
|
||||
|
||||
@@ -18,55 +18,55 @@ trait PayChargeCardsForms {
|
||||
private function render_add_form(): void {
|
||||
$type_labels = $this->type_labels();
|
||||
?>
|
||||
<p><b><?php esc_html_e('在此添加卡密', 'aksrt'); ?></b></p>
|
||||
<p><b><?php esc_html_e('在此添加卡密', 'jio'); ?></b></p>
|
||||
<ul style="list-style:disc;margin:0 0 12px 18px;line-height:1.9">
|
||||
<li><?php esc_html_e('如果您已经准备好了卡密资料,请选择导入的方式添加', 'aksrt'); ?></li>
|
||||
<li><?php esc_html_e('您也可以采用系统生成的方式,自动批量添加卡密', 'aksrt'); ?></li>
|
||||
<li><?php esc_html_e('如果您已经准备好了卡密资料,请选择导入的方式添加', 'jio'); ?></li>
|
||||
<li><?php esc_html_e('您也可以采用系统生成的方式,自动批量添加卡密', 'jio'); ?></li>
|
||||
</ul>
|
||||
<form class="aksrt-cardpass-form" method="post">
|
||||
<form class="jio-cardpass-form" method="post">
|
||||
<?php wp_nonce_field(self::NONCE); ?>
|
||||
<input type="hidden" name="action" value="add" />
|
||||
<table class="form-table" role="presentation">
|
||||
<?php
|
||||
$this->field_row(
|
||||
__('卡密类型', 'aksrt'),
|
||||
__('卡密类型', 'jio'),
|
||||
$this->button_set('type', $type_labels, 'balance'),
|
||||
[]
|
||||
);
|
||||
$this->field_row(
|
||||
__('添加方式', 'aksrt'),
|
||||
__('添加方式', 'jio'),
|
||||
$this->button_set('add_type', [
|
||||
'auto' => __('系统自动生成', 'aksrt'),
|
||||
'import' => __('导入卡密', 'aksrt'),
|
||||
'auto' => __('系统自动生成', 'jio'),
|
||||
'import' => __('导入卡密', 'jio'),
|
||||
], 'auto'),
|
||||
[]
|
||||
);
|
||||
|
||||
// 自动生成
|
||||
$this->field_row(
|
||||
__('生成数量', 'aksrt'),
|
||||
$this->spinner('auto_num', 20, __('张', 'aksrt')),
|
||||
__('生成数量', 'jio'),
|
||||
$this->spinner('auto_num', 20, __('张', 'jio')),
|
||||
[['key' => 'add_type', 'op' => '==', 'val' => 'auto']],
|
||||
__('需要生成多少张卡密(1 - 1000 的整数,单次生成数量太多可能会对服务器性能造成影响)', 'aksrt')
|
||||
__('需要生成多少张卡密(1 - 1000 的整数,单次生成数量太多可能会对服务器性能造成影响)', 'jio')
|
||||
);
|
||||
$this->field_row(
|
||||
__('标识', 'aksrt'),
|
||||
__('标识', 'jio'),
|
||||
'<input type="text" class="regular-text" name="auto_remarks" value="' . esc_attr('cardpass_' . current_time('YmdHis')) . '" />',
|
||||
[['key' => 'add_type', 'op' => '==', 'val' => 'auto']],
|
||||
__('对生成的卡密做标记标识,方便后期查找管理', 'aksrt') . '<br>' . sprintf(esc_html__('注意:标识中不能有%1$s字符,系统已占用', 'aksrt'), '<code>shipped</code>')
|
||||
__('对生成的卡密做标记标识,方便后期查找管理', 'jio') . '<br>' . sprintf(esc_html__('注意:标识中不能有%1$s字符,系统已占用', 'jio'), '<code>shipped</code>')
|
||||
);
|
||||
$this->field_row(
|
||||
__('面额', 'aksrt'),
|
||||
__('面额', 'jio'),
|
||||
'<input type="number" step="any" name="auto_price" value="0" />',
|
||||
[
|
||||
['key' => 'add_type', 'op' => '==', 'val' => 'auto'],
|
||||
['key' => 'type', 'op' => 'any', 'val' => 'balance,credits'],
|
||||
],
|
||||
__('单张卡密的面额', 'aksrt')
|
||||
__('单张卡密的面额', 'jio')
|
||||
);
|
||||
$this->field_row(
|
||||
__('兑换会员', 'aksrt'),
|
||||
__('会员等级', 'aksrt') . ' ' . $this->button_set('vip_exchange[level]', [
|
||||
__('兑换会员', 'jio'),
|
||||
__('会员等级', 'jio') . ' ' . $this->button_set('vip_exchange[level]', [
|
||||
'1' => $this->vip_level_name(1),
|
||||
'2' => $this->vip_level_name(2),
|
||||
], '1'),
|
||||
@@ -77,18 +77,18 @@ trait PayChargeCardsForms {
|
||||
);
|
||||
$this->field_row(
|
||||
' ',
|
||||
__('兑换会员时长', 'aksrt') . '<br><input type="text" name="vip_exchange[time]" value="" />',
|
||||
__('兑换会员时长', 'jio') . '<br><input type="text" name="vip_exchange[time]" value="" />',
|
||||
[
|
||||
['key' => 'add_type', 'op' => '==', 'val' => 'auto'],
|
||||
['key' => 'type', 'op' => '==', 'val' => 'vip'],
|
||||
],
|
||||
__('填', 'aksrt') . '<code>Permanent</code>' . __('为永久', 'aksrt')
|
||||
__('填', 'jio') . '<code>Permanent</code>' . __('为永久', 'jio')
|
||||
);
|
||||
$this->field_row(
|
||||
' ',
|
||||
__('时长单位', 'aksrt') . ' ' . $this->button_set('vip_exchange[unit]', [
|
||||
'day' => __('天', 'aksrt'),
|
||||
'month' => __('个月', 'aksrt'),
|
||||
__('时长单位', 'jio') . ' ' . $this->button_set('vip_exchange[unit]', [
|
||||
'day' => __('天', 'jio'),
|
||||
'month' => __('个月', 'jio'),
|
||||
], 'month'),
|
||||
[
|
||||
['key' => 'add_type', 'op' => '==', 'val' => 'auto'],
|
||||
@@ -97,41 +97,41 @@ trait PayChargeCardsForms {
|
||||
]
|
||||
);
|
||||
$this->field_row(
|
||||
__('自定义显示名称', 'aksrt'),
|
||||
__('卡号显示名称', 'aksrt') . '<br><input type="text" class="regular-text" name="custom_name[card_name]" value="" /><br>' .
|
||||
__('卡密显示名称', 'aksrt') . '<br><input type="text" class="regular-text" name="custom_name[password_name]" value="" />',
|
||||
__('自定义显示名称', 'jio'),
|
||||
__('卡号显示名称', 'jio') . '<br><input type="text" class="regular-text" name="custom_name[card_name]" value="" /><br>' .
|
||||
__('卡密显示名称', 'jio') . '<br><input type="text" class="regular-text" name="custom_name[password_name]" value="" />',
|
||||
[
|
||||
['key' => 'add_type', 'op' => '==', 'val' => 'auto'],
|
||||
['key' => 'type', 'op' => '==', 'val' => 'custom'],
|
||||
]
|
||||
);
|
||||
$this->field_row(
|
||||
__('高级选项', 'aksrt'),
|
||||
__('高级选项', 'jio'),
|
||||
'<input type="checkbox" name="auto_top_s" value="1" />',
|
||||
[['key' => 'add_type', 'op' => '==', 'val' => 'auto']]
|
||||
);
|
||||
$this->field_row(
|
||||
__('自定义卡号位数', 'aksrt'),
|
||||
$this->spinner('auto_rand_number_limit', 20, __('位数', 'aksrt')),
|
||||
__('自定义卡号位数', 'jio'),
|
||||
$this->spinner('auto_rand_number_limit', 20, __('位数', 'jio')),
|
||||
[
|
||||
['key' => 'add_type', 'op' => '==', 'val' => 'auto'],
|
||||
['key' => 'auto_top_s', 'op' => 'checked'],
|
||||
]
|
||||
);
|
||||
$this->field_row(
|
||||
__('自定义密码位数', 'aksrt'),
|
||||
$this->spinner('auto_rand_password_limit', 35, __('位数', 'aksrt')),
|
||||
__('自定义密码位数', 'jio'),
|
||||
$this->spinner('auto_rand_password_limit', 35, __('位数', 'jio')),
|
||||
[
|
||||
['key' => 'add_type', 'op' => '==', 'val' => 'auto'],
|
||||
['key' => 'auto_top_s', 'op' => 'checked'],
|
||||
],
|
||||
__('自定义自动生成的长度(不能太短,太短可能会出现重复)如果启用了单密码模式,可以将卡号位数设置为0', 'aksrt')
|
||||
__('自定义自动生成的长度(不能太短,太短可能会出现重复)如果启用了单密码模式,可以将卡号位数设置为0', 'jio')
|
||||
);
|
||||
|
||||
// 导入提示统一放在「卡密数据」正上方:切换卡密类型/添加方式时,
|
||||
// 命中的那一条紧邻示例数据与输入框,便于对照填写。
|
||||
$this->field_row(
|
||||
__('单密码模式', 'aksrt'),
|
||||
__('单密码模式', 'jio'),
|
||||
'<input type="checkbox" name="only_pass_s" value="1" />',
|
||||
[
|
||||
['key' => 'add_type', 'op' => '==', 'val' => 'import'],
|
||||
@@ -143,32 +143,32 @@ trait PayChargeCardsForms {
|
||||
['key' => 'add_type', 'op' => '!=', 'val' => 'auto'],
|
||||
['key' => 'type', 'op' => 'any', 'val' => 'balance,credits'],
|
||||
],
|
||||
'<p><b>' . esc_html__('导入卡密', 'aksrt') . '</b></p>
|
||||
<ul class="aksrt-submsg-list">
|
||||
<li>' . esc_html__('一行一个卡密,单行格式为:', 'aksrt') . '<code>' . esc_html__('卡号 密码 面额 标识', 'aksrt') . '</code></li>
|
||||
<li>' . esc_html__('卡号、密码、面额、标识默认使用空格分割,您可以在下方自定义分割符号,与您的数据对应即可', 'aksrt') . '</li>
|
||||
<li>' . esc_html__('单次导入数量太多可能会对服务器性能造成影响', 'aksrt') . '</li><li>' . esc_html__('如果使用的是单密码模式,卡号部分随便填什么都行,但不能留空', 'aksrt') . '</li>
|
||||
'<p><b>' . esc_html__('导入卡密', 'jio') . '</b></p>
|
||||
<ul class="jio-submsg-list">
|
||||
<li>' . esc_html__('一行一个卡密,单行格式为:', 'jio') . '<code>' . esc_html__('卡号 密码 面额 标识', 'jio') . '</code></li>
|
||||
<li>' . esc_html__('卡号、密码、面额、标识默认使用空格分割,您可以在下方自定义分割符号,与您的数据对应即可', 'jio') . '</li>
|
||||
<li>' . esc_html__('单次导入数量太多可能会对服务器性能造成影响', 'jio') . '</li><li>' . esc_html__('如果使用的是单密码模式,卡号部分随便填什么都行,但不能留空', 'jio') . '</li>
|
||||
</ul>
|
||||
<p><b>' . esc_html__('数据示例', 'aksrt') . '</b></p>
|
||||
<div>4849977843617 3w20V4Qe7dRhAIoPYum6KSA 50 ' . sprintf(esc_html__('%1$s余额', 'aksrt'), esc_html('50' . $this->currency_unit())) . '</div>
|
||||
<div>6484027668705 SkdJZ5vWcpqPxrbs3pqPcpq 100 ' . sprintf(esc_html__('%1$s余额', 'aksrt'), esc_html('100' . $this->currency_unit())) . '</div>'
|
||||
<p><b>' . esc_html__('数据示例', 'jio') . '</b></p>
|
||||
<div>4849977843617 3w20V4Qe7dRhAIoPYum6KSA 50 ' . sprintf(esc_html__('%1$s余额', 'jio'), esc_html('50' . $this->currency_unit())) . '</div>
|
||||
<div>6484027668705 SkdJZ5vWcpqPxrbs3pqPcpq 100 ' . sprintf(esc_html__('%1$s余额', 'jio'), esc_html('100' . $this->currency_unit())) . '</div>'
|
||||
);
|
||||
$this->submessage_row(
|
||||
[
|
||||
['key' => 'add_type', 'op' => '!=', 'val' => 'auto'],
|
||||
['key' => 'type', 'op' => '==', 'val' => 'vip'],
|
||||
],
|
||||
'<p><b>' . esc_html__('导入会员兑换卡密', 'aksrt') . '</b></p>
|
||||
<ul class="aksrt-submsg-list">
|
||||
<li>' . esc_html__('一行一个卡密,单行格式为:', 'aksrt') . '<code>' . esc_html__('卡号 密码 会员参数 标识', 'aksrt') . '</code></li>
|
||||
<li>' . esc_html__('卡号、密码、面额、标识默认使用空格分割,您可以在下方自定义分割符号,与您的数据对应即可', 'aksrt') . '</li>
|
||||
<li>' . esc_html__('会员参数格式为:', 'aksrt') . '<code>level=1&time=5&unit=day</code></li>
|
||||
<li>' . esc_html__('参数说明:level为等级,只能为1或2。time为时长,填Permanent或数字。unit为时长单位,只能填day(天)或者month(月)', 'aksrt') . '</li>
|
||||
<li>' . esc_html__('单次导入数量太多可能会对服务器性能造成影响', 'aksrt') . '</li><li>' . esc_html__('如果使用的是单密码模式,卡号部分随便填什么都行,但不能留空', 'aksrt') . '</li>
|
||||
'<p><b>' . esc_html__('导入会员兑换卡密', 'jio') . '</b></p>
|
||||
<ul class="jio-submsg-list">
|
||||
<li>' . esc_html__('一行一个卡密,单行格式为:', 'jio') . '<code>' . esc_html__('卡号 密码 会员参数 标识', 'jio') . '</code></li>
|
||||
<li>' . esc_html__('卡号、密码、面额、标识默认使用空格分割,您可以在下方自定义分割符号,与您的数据对应即可', 'jio') . '</li>
|
||||
<li>' . esc_html__('会员参数格式为:', 'jio') . '<code>level=1&time=5&unit=day</code></li>
|
||||
<li>' . esc_html__('参数说明:level为等级,只能为1或2。time为时长,填Permanent或数字。unit为时长单位,只能填day(天)或者month(月)', 'jio') . '</li>
|
||||
<li>' . esc_html__('单次导入数量太多可能会对服务器性能造成影响', 'jio') . '</li><li>' . esc_html__('如果使用的是单密码模式,卡号部分随便填什么都行,但不能留空', 'jio') . '</li>
|
||||
</ul>
|
||||
<p><b>' . esc_html__('数据示例', 'aksrt') . '</b></p>
|
||||
<div>4849977843617 3w20V4Qe7dRhAIoPYum6KSA level=1&time=5&unit=day ' . esc_html__('5天一级会员', 'aksrt') . '</div>
|
||||
<div>6484027668705 SkdJZ5vWcpqPxrbs3pqPcpq level=2&time=Permanent ' . esc_html__('永久2级会员', 'aksrt') . '</div>
|
||||
<p><b>' . esc_html__('数据示例', 'jio') . '</b></p>
|
||||
<div>4849977843617 3w20V4Qe7dRhAIoPYum6KSA level=1&time=5&unit=day ' . esc_html__('5天一级会员', 'jio') . '</div>
|
||||
<div>6484027668705 SkdJZ5vWcpqPxrbs3pqPcpq level=2&time=Permanent ' . esc_html__('永久2级会员', 'jio') . '</div>
|
||||
'
|
||||
);
|
||||
$this->submessage_row(
|
||||
@@ -177,17 +177,17 @@ trait PayChargeCardsForms {
|
||||
['key' => 'type', 'op' => '==', 'val' => 'custom'],
|
||||
['key' => 'only_pass_s', 'op' => 'unchecked'],
|
||||
],
|
||||
'<p><b>' . esc_html__('自定义卡密导入', 'aksrt') . '</b></p>
|
||||
<ul class="aksrt-submsg-list">
|
||||
<li>' . esc_html__('一行一个卡密,单行格式为:', 'aksrt') . '<code>' . esc_html__('卡号 密码 标识 自定义参数', 'aksrt') . '</code></li>
|
||||
<li>' . esc_html__('默认使用空格分割,您可以在下方自定义分割符号,与您的数据对应即可', 'aksrt') . '</li>
|
||||
<li>' . esc_html__('自定义参数格式为:', 'aksrt') . '<code>card_name=授权号&password_name=授权密码</code>,' . esc_html__('card_name为卡号的显示名称,password_name为卡密的显示名称,可以留空', 'aksrt') . '</li>
|
||||
<li>' . esc_html__('单次导入数量太多可能会对服务器性能造成影响', 'aksrt') . '</li>
|
||||
'<p><b>' . esc_html__('自定义卡密导入', 'jio') . '</b></p>
|
||||
<ul class="jio-submsg-list">
|
||||
<li>' . esc_html__('一行一个卡密,单行格式为:', 'jio') . '<code>' . esc_html__('卡号 密码 标识 自定义参数', 'jio') . '</code></li>
|
||||
<li>' . esc_html__('默认使用空格分割,您可以在下方自定义分割符号,与您的数据对应即可', 'jio') . '</li>
|
||||
<li>' . esc_html__('自定义参数格式为:', 'jio') . '<code>card_name=授权号&password_name=授权密码</code>,' . esc_html__('card_name为卡号的显示名称,password_name为卡密的显示名称,可以留空', 'jio') . '</li>
|
||||
<li>' . esc_html__('单次导入数量太多可能会对服务器性能造成影响', 'jio') . '</li>
|
||||
</ul>
|
||||
<p><b>' . esc_html__('数据示例', 'aksrt') . '</b></p>
|
||||
<div>4849977843617 3w20V4Qe7dRhAIoPYum6KSA ' . esc_html__('平台卡密01', 'aksrt') . ' card_name=' . esc_html__('授权号', 'aksrt') . '&password_name=' . esc_html__('授权码', 'aksrt') . '</div>
|
||||
<div>6484027668705 SkdJZ5vWcpqPxrbs3pqPcpq ' . esc_html__('平台卡密01', 'aksrt') . ' card_name=' . esc_html__('授权号', 'aksrt') . '&password_name=' . esc_html__('授权码', 'aksrt') . '</div>
|
||||
<div>111111@qq.com 11assssddsds ' . esc_html__('某某账号', 'aksrt') . ' card_name=' . esc_html__('账号', 'aksrt') . '&password_name=' . esc_html__('密码', 'aksrt') . '</div>'
|
||||
<p><b>' . esc_html__('数据示例', 'jio') . '</b></p>
|
||||
<div>4849977843617 3w20V4Qe7dRhAIoPYum6KSA ' . esc_html__('平台卡密01', 'jio') . ' card_name=' . esc_html__('授权号', 'jio') . '&password_name=' . esc_html__('授权码', 'jio') . '</div>
|
||||
<div>6484027668705 SkdJZ5vWcpqPxrbs3pqPcpq ' . esc_html__('平台卡密01', 'jio') . ' card_name=' . esc_html__('授权号', 'jio') . '&password_name=' . esc_html__('授权码', 'jio') . '</div>
|
||||
<div>111111@qq.com 11assssddsds ' . esc_html__('某某账号', 'jio') . ' card_name=' . esc_html__('账号', 'jio') . '&password_name=' . esc_html__('密码', 'jio') . '</div>'
|
||||
);
|
||||
$this->submessage_row(
|
||||
[
|
||||
@@ -195,72 +195,72 @@ trait PayChargeCardsForms {
|
||||
['key' => 'type', 'op' => '==', 'val' => 'custom'],
|
||||
['key' => 'only_pass_s', 'op' => 'checked'],
|
||||
],
|
||||
'<p><b>' . esc_html__('自定义卡密导入(单密码模式)', 'aksrt') . '</b></p>
|
||||
<ul class="aksrt-submsg-list">
|
||||
<li>' . esc_html__('一行一个卡密,单行格式为:', 'aksrt') . '<code>' . esc_html__('密码 标识 自定义参数', 'aksrt') . '</code></li>
|
||||
<li>' . esc_html__('默认使用空格分割,您可以在下方自定义分割符号,与您的数据对应即可', 'aksrt') . '</li>
|
||||
<li>' . esc_html__('单次导入数量太多可能会对服务器性能造成影响', 'aksrt') . '</li>
|
||||
<li>' . esc_html__('自定义参数格式为:', 'aksrt') . '<code>password_name=授权密码</code>,' . esc_html__('password_name为卡密的显示名称,可以留空', 'aksrt') . '</li>
|
||||
'<p><b>' . esc_html__('自定义卡密导入(单密码模式)', 'jio') . '</b></p>
|
||||
<ul class="jio-submsg-list">
|
||||
<li>' . esc_html__('一行一个卡密,单行格式为:', 'jio') . '<code>' . esc_html__('密码 标识 自定义参数', 'jio') . '</code></li>
|
||||
<li>' . esc_html__('默认使用空格分割,您可以在下方自定义分割符号,与您的数据对应即可', 'jio') . '</li>
|
||||
<li>' . esc_html__('单次导入数量太多可能会对服务器性能造成影响', 'jio') . '</li>
|
||||
<li>' . esc_html__('自定义参数格式为:', 'jio') . '<code>password_name=授权密码</code>,' . esc_html__('password_name为卡密的显示名称,可以留空', 'jio') . '</li>
|
||||
</ul>
|
||||
<p><b>' . esc_html__('数据示例', 'aksrt') . '</b></p>
|
||||
<div>3w20V4Qe7dRhAIoPYum6KSA ' . esc_html__('平台卡密01', 'aksrt') . ' password_name=' . esc_html__('授权码', 'aksrt') . '</div>
|
||||
<div>SkdJZ5vWcpqPxrbs3pqPcpq ' . esc_html__('平台卡密01', 'aksrt') . ' password_name=' . esc_html__('授权码', 'aksrt') . '</div>'
|
||||
<p><b>' . esc_html__('数据示例', 'jio') . '</b></p>
|
||||
<div>3w20V4Qe7dRhAIoPYum6KSA ' . esc_html__('平台卡密01', 'jio') . ' password_name=' . esc_html__('授权码', 'jio') . '</div>
|
||||
<div>SkdJZ5vWcpqPxrbs3pqPcpq ' . esc_html__('平台卡密01', 'jio') . ' password_name=' . esc_html__('授权码', 'jio') . '</div>'
|
||||
);
|
||||
$this->field_row(
|
||||
__('卡密数据', 'aksrt'),
|
||||
__('卡密数据', 'jio'),
|
||||
'<textarea name="import_data" rows="10" class="large-text code" style="resize: both;max-width: none;"></textarea>',
|
||||
[['key' => 'add_type', 'op' => '==', 'val' => 'import']]
|
||||
);
|
||||
$this->field_row(
|
||||
__('自定义分隔符号', 'aksrt'),
|
||||
__('自定义分隔符号', 'jio'),
|
||||
'<input type="text" class="mini-input" style="width:80px;" name="import_division" value=" " />',
|
||||
[['key' => 'add_type', 'op' => '==', 'val' => 'import']],
|
||||
__('卡号和密码之间分割符号(默认为空格分割)', 'aksrt')
|
||||
__('卡号和密码之间分割符号(默认为空格分割)', 'jio')
|
||||
);
|
||||
?>
|
||||
</table>
|
||||
<?php submit_button(__('确认提交', 'aksrt'), 'primary', 'submit', true); ?>
|
||||
<?php submit_button(__('确认提交', 'jio'), 'primary', 'submit', true); ?>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
|
||||
private function render_export_form(): void {
|
||||
?>
|
||||
<form class="aksrt-cardpass-form" method="post" action="<?php echo esc_url(admin_url('admin-ajax.php')); ?>">
|
||||
<form class="jio-cardpass-form" method="post" action="<?php echo esc_url(admin_url('admin-ajax.php')); ?>">
|
||||
<input type="hidden" name="action" value="<?php echo esc_attr(self::EXPORT_AJAX_ACTION); ?>" />
|
||||
<table class="form-table" role="presentation">
|
||||
<?php
|
||||
$this->field_row(
|
||||
__('卡密类型', 'aksrt'),
|
||||
__('卡密类型', 'jio'),
|
||||
$this->button_set('type', $this->type_labels(), 'balance'),
|
||||
[]
|
||||
);
|
||||
$this->field_row(
|
||||
__('选择状态', 'aksrt'),
|
||||
__('选择状态', 'jio'),
|
||||
$this->button_set('status', [
|
||||
'all' => __('全部', 'aksrt'),
|
||||
'0' => __('未使用', 'aksrt'),
|
||||
'used' => __('已使用', 'aksrt'),
|
||||
'all' => __('全部', 'jio'),
|
||||
'0' => __('未使用', 'jio'),
|
||||
'used' => __('已使用', 'jio'),
|
||||
], 'all'),
|
||||
[['key' => 'type', 'op' => '!=', 'val' => 'custom']]
|
||||
);
|
||||
$this->field_row(
|
||||
__('导出格式', 'aksrt'),
|
||||
__('导出格式', 'jio'),
|
||||
$this->button_set('export_format', [
|
||||
'text' => __('文本文档', 'aksrt'),
|
||||
'xls' => __('Excel表格', 'aksrt'),
|
||||
'text' => __('文本文档', 'jio'),
|
||||
'xls' => __('Excel表格', 'jio'),
|
||||
], 'xls'),
|
||||
[]
|
||||
);
|
||||
$this->field_row(
|
||||
' ',
|
||||
__('分隔符号', 'aksrt') . '<br><input type="text" class="mini-input" style="width:80px;" name="text_division" value=" " />',
|
||||
__('分隔符号', 'jio') . '<br><input type="text" class="mini-input" style="width:80px;" name="text_division" value=" " />',
|
||||
[['key' => 'export_format', 'op' => '==', 'val' => 'text']],
|
||||
__('卡号和密码之间分割符号(默认为空格分割)', 'aksrt')
|
||||
__('卡号和密码之间分割符号(默认为空格分割)', 'jio')
|
||||
);
|
||||
?>
|
||||
</table>
|
||||
<?php submit_button(__('确认提交', 'aksrt'), 'primary', 'submit', true); ?>
|
||||
<?php submit_button(__('确认提交', 'jio'), 'primary', 'submit', true); ?>
|
||||
</form>
|
||||
<?php
|
||||
}
|
||||
@@ -294,9 +294,9 @@ trait PayChargeCardsForms {
|
||||
// 把页面上所有「非 inline」的 notice 整块搬到 .wp-header-end(不存在时取 .wrap 内首个
|
||||
// h1/h2)之后。提示块一旦带上 notice,就会被搬到页面顶部、脱离「添加方式—卡密数据」
|
||||
// 之间的字段区,而且搬迁发生在求值之后,行内的显隐逻辑无从纠正。
|
||||
// 外观改由 .aksrt-submsg 自带(见 print_assets),与参考主题 CSF content 字段一致。
|
||||
// 外观改由 .jio-submsg 自带(见 print_assets),与参考主题 CSF content 字段一致。
|
||||
// data-dep 与初始隐藏状态同时挂在 <tr> 和内层提示块上:提示块若脱离所在行,仍能自行显隐。
|
||||
echo '<tr' . $dep_attr . $hidden . '><td colspan="2"><div' . $dep_attr . ' class="aksrt-submsg"' . $hidden . '>' . $content . '</div></td></tr>'; // phpcs:ignore WordPress.Security.EscapeOutput -- 文案已转义。
|
||||
echo '<tr' . $dep_attr . $hidden . '><td colspan="2"><div' . $dep_attr . ' class="jio-submsg"' . $hidden . '>' . $content . '</div></td></tr>'; // phpcs:ignore WordPress.Security.EscapeOutput -- 文案已转义。
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -398,9 +398,9 @@ trait PayChargeCardsForms {
|
||||
* @param array<string,string> $options
|
||||
*/
|
||||
private function button_set(string $name, array $options, string $current): string {
|
||||
$html = '<div class="aksrt-btnset">';
|
||||
$html = '<div class="jio-btnset">';
|
||||
foreach ($options as $value => $label) {
|
||||
$html .= '<label class="aksrt-btnset-item"><input type="radio" name="' . esc_attr($name) . '" value="' . esc_attr((string) $value) . '"' . checked((string) $current, (string) $value, false) . '><span>' . esc_html((string) $label) . '</span></label>';
|
||||
$html .= '<label class="jio-btnset-item"><input type="radio" name="' . esc_attr($name) . '" value="' . esc_attr((string) $value) . '"' . checked((string) $current, (string) $value, false) . '><span>' . esc_html((string) $label) . '</span></label>';
|
||||
}
|
||||
return $html . '</div>';
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user