- 注册
- 10 16, 2023
- 消息
- 3,146
- 积分
- 13,250G
- 金币
- $150.00
- 澳大利亚
- 主题 作者
- #61
oksgo 更新了HuoNiu Credits System - 积分系统,并添加了新的更新条目:
2.3.7.2
阅读此更新条目的其余部分...
2.3.7.2
后台用户界面 历史记录统计更新
安全更新
其它字段修复
阅读此更新条目的其余部分...
• 文件链接损坏请在文件下方留言,我们将会及时更新来自备份服务器的新链接。如有其它问题请 提交工单 和我们联系!【Telegram 频道】【QQ群:5977983】
• 我们拥有多账户检测系统,对于重复注册我们将采取严厉措施!快速获得积分
后台用户界面 历史记录统计更新
安全更新
其它字段修复
修复了 3 个文件
🎯 核心问题
- phrases.xml - 清理重复语言键
- templates.xml - 修复提现模板错误
- Thread.php - 解决插件兼容性
🔧 技术细节
- 清理重复语言键导致显示异常
- 提现模板 XML 结构错误无法安装
- 与 SearchImprovements 插件冲突报错
- 语义区分:"支付方式"(买积分)vs "收款方式"(提现)
- 注册 getter 确保类扩展继承正确
- options.xml - 新增防洪选项
- phrases.xml - 中文短语
- Pub/Controller/Credit.php - 防洪逻辑
- Service/Transfer/Handler.php - 触发用户
- Setup.php - 迁移修复
一、代码规范修复(15项)
实体类修复(9项)
安装/升级修复(3项)
- ResourceMoneyPurchase.php - 修复汇率默认值、PHPDoc、缩进
- Charge.php - 添加缺失的 $refundOnDelete 属性和setter方法
- EventDefinition.php - 移除未定义属性的默认值设置
- Withdrawal.php - 金额字段类型从FLOAT改为STR(精度问题)
- Bonus.php - 修复主键定义(array→string)
- Reward.php - 修复主键定义(array→string)
7. Setup.php - 修复卸载步骤命名冲突(6A→6, 6→7)
8. Setup.php - 补全卸载步骤中遗漏的表/列删除
9. Setup.php - 移除所有调试echo语句
控制器修复(1项)
10. Pub/Controller/Withdrawal.php -...
🔧 修复问题
- 提现管理界面优化
- 金额显示格式化为2位小数(修复显示8位小数问题)
- 完整显示收款信息(账户姓名、收款账号),不再仅显示支付方式
- 路由配置修复
- 删除重复的管理后台提现路由定义
- 修复安装时路由冲突错误(Error 1062: Duplicate entry)
- 货币删除功能修复
- 修复删除货币时查询不存在数据表的错误
- 修复删除过程中未定义变量 $column 的错误
- 正确从 xf_user 表检查用户余额
- 界面组件标准化
- 事件管理页面金币货币提示使用 XenForo 标准 blockMessage 组件
- 改善视觉一致性和用户体验
🔒 安全特性
- 金币货币系统保护机制完整(6层防护)...
1-3:基础功能修复
- 提现拒绝功能缺失 — 管理员拒绝提现时无法输入原因,无法发送PM通知用户
- 信用兑换/分红/红包页面洪水检查误触 — GET请求(首次访问)就触发洪水检查
- 每日签到小工具不工作 — 模板名称错误、变量不匹配、缺少货币数据、缺少后端方法
4:事件系统
- 资源购买/出售事件 definition_id 不匹配 — Handler 使用 'buy_resource'/'sell_resource',数据库存储 'hn_buy_resource'/'hn_sell_resource'
- 最佳答案悬赏事件 definition_id 不匹配 — Handler 使用 'best_answer'/'create_reward',实际为 'reward'/'offerReward'
- 资源购买/出售事件无异常保护 — XFRM...
1. 核心Bug修复(3项)
- ModeratorLog错误 → 移除logModeratorAction()调用
- MySQL "Commands out of sync" → 改用Finder API查询
- json_decode TypeError → 添加is_array()检查
2. 重复防护机制
- 事件重复触发防护 → 按currency_id去重
- 签到重复防护 → SELECT FOR UPDATE原子锁
3. 事件系统精简(删除28个事件)
- ...
1. Setup.php XenForo 标准合规性修复(9批次)
- 移除所有冗余的 information_schema 查询
- 移除所有 SHOW COLUMNS 检查
- 移除所有 tableExists() 预检查
- 移除所有 getColumnDefinition() 检查
- 移除 deleteDirectory() 辅助方法
- 保留对第三方插件(MJ)的合法性检查
- 涉及方法:installStep1、installStep9、uninstallStep1-3、uninstallStep6-7、upgrade2000000Step2-4、upgrade2030500Step1、upgrade2030600Step1、upgrade2030700Step1、upgrade2030702Step1、upgrade2030705Step1、migrateResourcePricing()
2. 新装与升级架构一致性修复
- ...
兼容性更新
适配 XenForo Resource Manager 2.3.8 最新版
新增功能
- ✨ 侧边栏显示限时折扣信息(折扣百分比 + 截止日期)
- ✨ 折扣系统支持叠加计算(折上折):分类折扣 → 限时折扣 → 续订折扣
折扣系统优化
- 🔄 限时折扣对所有登录用户可见(无需用户组限制)
- 🔄 分类折扣仅对指定用户组可见
- 🔄 三层折扣可累积叠加,最大化优惠力度
Bug 修复
- 修复 discount 权限缺失导致折扣功能不可用
- 修复 getUserGroupDiscountPercent() 返回值错误(100-折扣 → 折扣值)
- 修复 canDiscount() 冗余权限检查
- 修复 bypassPurchase...
修复错误
- 将 \XF::app()->schemaManager() 改为 $db->getSchemaManager()
- 修复模板 link 函数参数类型错误 - 真实货币交易列表搜索菜单
- 优化事件错误检测逻辑 - 使用语言短语键替代硬编码字符串
- 扩展错误白名单 - 将正常的频率限制错误加入白名单,避免误记录
新增功能
- 资源拒绝与反馈 — 管理员在审批队列中可选择"拒绝并反馈",向资源作者发送私信说明拒绝原因和修改建议
- 资源版本拒绝与反馈 — 同上,支持对资源新版本的拒绝操作
- 拒绝时可选删除资源 — 拒绝时可勾选是否软删除资源,不勾选则保留资源供作者修改后重新提交
- 拒绝时可选发送私信 — 拒绝时可勾选是否发送包含拒绝原因和修改建议的私信通知
- 独立拒绝页面 — 在资源详情页提供单独的拒绝表单入口(非审批队列场景)
- 购买列表权限控制 — 新增 canViewPurchaseList() 权限判断,仅资源作者、管理员、版主可查看购买记录
- 审批队列拒绝字段动态显示 — 选中"拒绝"单选按钮时自动展开原因和建议输入框,选其他操作时自动隐藏
修复
- 已过期购买记录不可见 — 移除了 isActive()...
多货币定价功能(新功能)
- 资源支持同时设置多种货币价格,用户访问时自动展示对应货币
- 新增货币优先级规则:用户手动选择 > 管理员语言包映射 > 默认货币
- 新增管理后台选项:语言包 → 货币映射配置表
- 支付方式将根据货币自动选择付款网关,缺失网关将会自动增加退回机制
- 用户也可手动选择相关支付方式
此更新将支持文件销售支持多种货币同时销售,货币单位将跟随系统语言自动显示转换。具体测试可变更底部语言显示,价格及单位将同步变更。
P1 WARNING 修复(13项)
- SQL注入修复 + 游标分页
- 管理员提现控制器添加权限验证
- 数据迁移控制器添加权限验证
- 诊断控制器添加权限验证
- 全额退款方法修复错误列名
- 退款逻辑覆盖 pending+approved 两种状态
- 反应内容实体添加空值安全链 ?->
- 资源付费记录实体添加默认 return false...
- 增加积分购买升级用户组
- 多货币设置升级用户组
- 支付网关货币由固定列表升级为动态下拉,自动按系统可用货币与已启用支付方式联动展示。
- 优化支付货币选择逻辑,支持保留历史已保存值,避免升级后配置项丢失或不可选。
- 修复支付方式勾选变更时的校验时机问题,解决“首次保存报不支持、再次保存又通过”的不一致现象。
- 增强货币兼容校验:仅变更支付方式时也会立即执行货币支持检查,结果更稳定一致。
- 增强循环订阅兼容校验:仅变更支付方式时也会同步检查是否支持 recurring 与周期长度。
- 后台保存校验行为统一,减少因配置顺序不同导致的误判与绕过。
- 兼容现有支付流程与购买逻辑,不改变实际扣费/结算路径,仅强化配置阶段校验与可用性。
- 修复真实货币购买按钮不显示的问题 — 登录用户现在能正常看到付费资源的购买按钮
- 精简后台侧边栏 — ACP 侧边栏从三个入口合并为一个"HuoNiu积分系统"
- 修复编辑器工具栏付费内容按钮失效的问题 — 解决因加载不存在的 JS 文件导致编辑器按钮无法显示的问题
- 修复积分交易列表 $conditions 为 null 导致的 TypeError
- 修复真实货币导出 $this->response() 未定义错误,改为标准 XF View 模式
- 修复模板中使用不存在的 | merge 过滤器
- 新增缺失短语 hn_title
- 修复 seller/buyer 短语未定义,改用 hn_user/hn_trigger_user
- 导出按钮改为标准 <xf😛ageaction> + <xf:button>
- 提现管理列表/详情页按钮改为标准 <xf:button>
- 迁移选项模板按钮改为标准 <xf:button>
修复 — 系统性修复所有使用 金额 8 位小数显示
- 购买记录价格列显示 65.00000000 → 正确格式化(如 65)
- 批量操作预览页积分价格未格式化 → 使用货币格式化
- 批量操作预览页真实货币价格未格式化 → 保留 2 位小数
- 奖池领取成功消息中金额未格式化 → 使用货币格式化
- 红包领取成功消息中金额未格式化 → 使用货币格式化
- 资源销售佣金交易记录中金额未格式化 → 保留 2 位小数
- 转账 JSON 响应中金额和余额未格式化 → 使用标准格式化
修复:货币编辑页“最大持有量”标签显示异常
货币编辑页面中“最大持有量”标签显示为原始 phrase 键名。原因是模板错误引用了通用键 max_amount,与 XenForo 核心 phrase 冲突。现已改为使用插件专属 phrase:hn_currency_max_amount 与 hn_currency_max_amount_explain。
优化:转账手续费显示格式
转账记录中的手续费数值此前直接使用 bcmath 原始字符串显示,例如 0.06000000。现已改为通过 Money::format() 方法进行格式化处理,自动去除尾部多余的零,显示为 0.06。
修复:撤销授权后购买记录仍显示为有效
撤销授权时仅写入 expire_date,未同步更新 purchase_status,导致数据库记录仍保持 purchased 状态。同时购买记录列表查询仅过滤 purchased 状态,导致已撤销记录无法显示。现已修复:撤销授权时同步写入 revoked 状态,并更新查询逻辑,使列表同时显示 purchased 与...
- 撤销许可时 BIGINT 溢出报错修复
- 资源到期后购买记录状态自动更新为 expired
- 已过期记录在购买列表中正确显示
- 永久购买(无到期时间)可被管理员正常撤销
- 撤销后彻底禁止下载,不再走过期策略分支(积分 & 真实货币两种购买类型)
- 自然过期后后台配置的下载策略正常生效
- 多条购买记录时始终返回最新一条
|
|
付费/Paid [BR] Credits 积分系统-Multilingual support
|
|
|
付费/Paid HuoNiu Reply to Download -IPS 回复/评价后下载
|
|
|
付费/Paid [DBTech] DragonByte Credits
|
|
|
付费/Paid DBTech-DragonByte Credits 简体中文包
|
|
|
付费/Paid [BR]Resource Credits Payment积分 购买/出售资源
|