- 注册
- 10 16, 2023
- 消息
- 3,128
- 积分
- 13,163G
- 金币
- $150.00
- 主题 作者
- #1
• 文件链接损坏请在文件下方留言,我们将会及时更新来自备份服务器的新链接。如有其它问题请 提交工单 和我们联系!【Telegram 频道】【QQ群:5977983】
• 我们拥有多账户检测系统,对于重复注册我们将采取严厉措施!快速获得积分
**插件名称**: MJ\Credits (XenForo Credits Plugin)
**版本**: v1.4.9
**修正日期**: 2025年6月1日
**修正目标**: 移除所有硬编码中文字符,实现完全国际化
## 🔍 检查阶段发现的问题
### 初始硬编码检测结果
通过正则表达式 `[\u4e00-\u9fff]` 检测发现以下文件包含中文硬编码:
1. **模板文件** (`templates.xml`) - 发现15+处硬编码
2. **模板修改文件** (`template_modifications.xml`) - 发现8+处硬编码
3. **PHP控制器文件** (`Post.php`) - 发现6+处硬编码
4. **配置文件** (`addon.json`) - 发现标题和描述硬编码
5. **代码事件监听器** (`code_event_listeners.xml`) - 发现描述硬编码
6. **多个PHP文件** - 发现大量中文注释
## 📊 语言键统计
### 新增语言键总数: **24个**
#### 红包相关键值...
删除选项里的用户最大持有积分上限;
在积分中加入了用户最大持有上限,分开控制每种积分的最大上限,超过上限后用户不再触发此积分下的所有增加积分的事件。
核心修复
- 修复交易撤销功能:将交易状态改为"还原"时,现在会同时删除购买权限记录,彻底撤销用户的访问权限
技术改动
- 新增方法:revokePurchasePermission()
- 修改方法:_postSave(), _postDelete()
- 添加操作日志记录功能
解决的问题
- 管理员还原交易后,用户仍可访问已购买内容的问题
- 数据一致性问题(积分已还原,但权限未撤销)
修正功能:
- 资源分类限制支持 - content 事件
- 修复了 content 事件(BB代码 [FEES] 收费)中资源分类限制功能失效的问题
- 在 Event\Content.php 中添加了 validateEvent() 方法,支持 resource_category_ids 参数验证
- 当用户在不允许的资源分类中使用 [FEES] 标签时,会显示错误提示
🔧 核心逻辑修复 (8项)
1. 管理员积分调整错误修复
- 问题: 使用 $visitor 而非 $targetUser 导致调整失败
- 修复: 添加三阶段验证(validate → check → complete)
- 影响文件: User.php
2. 余额检查用户对象错误
- 问题: 检查访客余额而非目标用户余额
- 修复: 所有余额检查改用 $targetUser
- 影响文件: Trigger.php, EventHandler.php
3. 余额检查时机错误
- 问题: 在事件触发后检查余额(已扣款)
- 修复: 移至触发前检查,避免扣款后才发现余额不足
- 影响文件...
- 在 strpos() 和 sprintf() 中使用 $error 前转换为字符串
- triggerEvent 接收实体对象时自动转换为数组
- 问题: 从表单输入(unum 过滤器)、数据库或配置获取的数值是字符串类型
- 影响方法:
- calculateFee(float $amount, ...)
- addTriggerData(..., float $amount)
- queueTransaction(..., float $amount)
- queueAlert(..., float $amount)
- queueUpdateUser(..., float $amount)
- $maxAmount、$event['amount']、余额比较等都转换为 float
- 确保所有数学运算使用正确的数值类型
修复策略
- ✅ 所有从表单输入获取的 amount...
|
|
付费/Paid HuoNiu Credits System - 积分系统
|
|
|
付费/Paid [DBTech] DragonByte Credits
|
|
|
付费/Paid DBTech-DragonByte Credits 简体中文包
|
|
|
付费/Paid [BR]Resource Credits Payment积分 购买/出售资源
|