Commit Graph

310 Commits

Author SHA1 Message Date
0ae1472e79 fix: 修复开启进入文章动画时文章加载不正常的问题
- 在 pjax:beforeReplace 事件中清理文章列表的 PJAX 加载状态
- 移除 post-preview 元素的 loading 动画和 transform 样式
- 清理 post-list-pjax-loading 类,避免影响新页面
- 优化 post-full 动画,添加 transform-origin 确保动画流畅
- 通过 :not(.no-animation) 选择器支持禁用动画的场景
2026-01-22 15:57:22 +08:00
862f3901b1 fix: 修复侧边栏滚动逻辑
- 站点概览标签:移除滚动,高度锁死不滚动
- 文章目录标签:只有这个标签才启用滚动功能
- 移除leftbar_part2_inner的滚动,改为只在文章目录标签上滚动
- TODO栏:简化布局,移除flexbox,直接在card-body上设置max-height和滚动
- TODO栏在任何状态下都限制最大高度为50vh并可滚动
2026-01-22 15:52:23 +08:00
da3a2a0dd8 fix: 修复侧边栏滚动问题的遗留bug
- 修复孤立的width: 6px导致滚动条样式失效
- 移除todo-list-scroll的max-height: none限制
- 将TODO列表的滚动控制权交给card-body
- 确保非停靠状态下TODO栏正确显示滚动条
2026-01-22 15:48:50 +08:00
b39deab007 fix: 修复桌面端非停靠状态时侧边栏滚动问题
- 站点详情(leftbar_part2)在非停靠状态时不再有滚动条
- 站点详情只在停靠(sticky)状态时才启用滚动
- TODO栏(leftbar_part3)在非停靠状态时也有滚动条和高度限制
- TODO栏智能限制最大高度为50vh,内容超出时可滚动
- 添加TODO栏滚动条样式,与站点详情保持一致
- 删除重复的card-body样式定义
2026-01-22 15:45:24 +08:00
cb5c65d611 fix: 修复TODO在非停靠状态时不会折叠的问题
- 在所有关闭侧边栏的操作中添加折叠所有面板的逻辑
- 包括点击遮罩、关闭按钮、链接、搜索和目录跳转等场景
- 确保侧边栏关闭时所有折叠面板(TODO、文章目录等)都会自动收起
2026-01-22 15:40:02 +08:00
72c2e5b6cd docs: 更新设置页重组总结文档
- 添加最新的3个提交记录
- 更新统计数据(文件行数、修复的bug数量)
- 添加修复保存问题的说明
- 更新最后提交哈希为3ce6992
2026-01-22 15:33:35 +08:00
3ce699268b fix: 修复动画效果、CDN和日期格式选项无法保存的问题
- 在外观样式分类中添加动画效果子分类和表单字段
  * 平滑滚动 (argon_enable_smoothscroll_type)
  * 进入文章动画 (argon_enable_into_article_animation)
  * Pjax滚动动画 (argon_disable_pjax_animation)
- 在SEO与性能分类中添加CDN加速子分类和表单字段
  * CDN选择 (argon_assets_path)
  * 自定义CDN路径 (argon_custom_assets_path)
  * WordPress安装目录 (argon_wp_path)
- 在SEO与性能分类中添加日期格式子分类和表单字段
  * 日期格式选择 (argon_dateformat)
- 所有选项在保存函数中已存在,修复完成
2026-01-22 15:32:02 +08:00
be5a6538d0 fix: 修复特殊页面归档和友情链接设置混乱的问题
- 将'在时间轴上显示月份'设置项从友情链接移到归档页面
- 删除特殊页面中空的友情链接子分类标题
- 修正归档页面设置项的归属
2026-01-22 15:24:09 +08:00
a536fc0b37 fix: 修复邮件模板无法保存的问题
- 在保存邮件模板的代码中添加缺失的 spam_notify 类型
- 修复垃圾评论通知邮件模板无法保存的 bug
- 邮件类型数组从 6 个补全为 7 个
2026-01-22 15:20:19 +08:00
e7509e524f fix: 优化设置页结构细节
- 移除 AI 垃圾评论识别中的'检测结果'三级标题
- 移除页脚设置中重复的两个二级标题
- 将页脚设置内容直接放在一级标题下
- 文件从 6480 行减少到 6475 行
2026-01-22 15:16:57 +08:00
43f620dbb8 docs: 添加设置页重组完整总结文档并清理临时脚本
- 添加 settings-reorganize-complete.md 完整总结文档
- 添加 settings-reorganize-plan-v2.md 规划文档
- 删除所有临时 Python 重组脚本
- 添加隐私政策文档
2026-01-22 15:14:18 +08:00
66dd8bfb11 feat: 完成设置页18个分类的完整重组
- 拆分'浮动按钮与页脚'为'8. 浮动按钮'和'9. 页脚设置'
- 将页脚设置从特殊页面移到独立的'9. 页脚设置'分类
- 删除特殊页面中重复的页脚设置(32行)
- 添加'14. 功能增强'分类标题
- 将'15. 高级设置'中的日期格式和杂项删除(已在其他分类中)
- 删除高级设置中重复的动画设置(68行)
- 所有18个分类编号现在完全正确(1-18)
- 文件从6673行减少到6480行
2026-01-22 15:04:38 +08:00
f9dc71d5c6 fix: 修复设置页分类结构问题
- 删除第611-717行重复的顶栏设置(107行)
- 将第1467行的'9. 高级设置'改为'10. SEO与性能'
- 将'10-13'分类编号改为'11-14'
- 将'14. 评论设置'改为'16. 评论设置'
- 将'15. 验证码与安全'改为'17. 验证码设置'
- 添加'18. 反馈与安全'分类标题
- 删除重复的'18. 反馈与安全'标题
- 文件从6673行减少到6566行
2026-01-22 14:59:33 +08:00
e57dcd9c86 fix: 修正分类编号
- 高级设置编号从19改为15
- 验证码设置保持17
- 反馈与安全保持18
- 所有分类编号现在正确(1-18)
2026-01-22 14:47:25 +08:00
b471bbc7b8 feat: 完成设置页完整重组
- 将评论功能、AI垃圾评论识别、评论区外观从验证码与安全移到评论设置
- 将'验证码与安全'拆分为'验证码设置'(第17分类)和'反馈与安全'(第18分类)
- 验证码设置包含:验证码配置、场景验证码
- 反馈与安全包含:反馈设置、速率限制
- 高级设置调整为第19个分类
- 评论设置现在包含:评论分页、发送评论、评论功能、AI垃圾评论识别、评论区外观
2026-01-22 14:45:59 +08:00
0fb1d11cad feat: 拆分浮动按钮与页脚为独立分类
- 将'浮动按钮与页脚'拆分为'浮动按钮'和'页脚设置'两个独立分类
- 浮动按钮成为第8个分类
- 页脚设置成为第9个分类,包含页脚内容设置
- SEO与性能调整为第10个分类
- 更新后续所有分类编号(11-16)
2026-01-22 14:44:26 +08:00
3104cad990 fix: 删除重复的子目录和页脚设置
- 删除第310-324行重复的子目录设置
- 删除特殊页面中错误的页脚设置(第2539-2553行)
- 减少30行重复内容
2026-01-22 14:43:12 +08:00
c68d47b403 fix: 删除SEO与性能分类中重复的CDN和日期格式设置
- 删除第1694-1781行重复的CDN加速子分类
- 删除重复的日期格式子分类
- 减少88行重复内容
- 保留第1606行的正确CDN设置
2026-01-22 14:37:08 +08:00
ff2aaba0de docs: 添加设置页优化规划文档
- settings-page-structure.md: 优化后的完整分类结构
- settings-reorganize-plan.md: 重组实施计划
- 这些文档用于指导优化过程
2026-01-22 14:33:44 +08:00
95da744a9a docs: 更新设置页优化总结文档
- 记录所有6个Git提交的详细信息
- 添加优化后的完整结构(1-16分类)
- 添加统计数据和文件信息
- 标记所有已完成的优化项
2026-01-22 14:33:02 +08:00
ee2976dee0 fix: 修正验证码与安全分类的编号
- 将验证码与安全的编号从15改为16
- 现在所有一级分类编号正确(1-16)
- 完成分类编号的规范化
2026-01-22 14:31:40 +08:00
28640828fd feat: 完成设置页结构重组
- 在基础设置中添加子目录设置
- 将第9个分类从高级设置改为SEO与性能
- 在SEO与性能中添加SEO、CDN加速、日期格式三个子分类
- CDN和日期格式设置已从错误位置移到正确分类
- 完成了设置页的核心结构优化
2026-01-22 14:28:04 +08:00
1c615ddf08 feat: 删除重复的顶栏设置标题及错误放置的设置项
- 删除第685-792行之间错误的顶栏设置标题
- 删除错误放置的CDN、子目录、日期格式设置
- 这些设置将在后续步骤中移到正确的分类
- 减少107行重复内容
2026-01-22 14:25:34 +08:00
c9e2c7dfe2 feat: 将动画效果从功能增强移到外观样式
- 在外观样式中新增动画效果子分类
- 包含平滑滚动、进入文章动画、Pjax动画三个设置项
- 删除杂项中重复的动画效果设置
- 动画效果现在归属于外观样式,更符合逻辑
2026-01-22 14:23:43 +08:00
e667a22b1a feat: 删除高级设置中重复的日期格式设置
- 删除第3018行附近重复的日期格式子分类
- 日期格式设置已在SEO与性能分类中
- 高级设置现在只包含自定义脚本和杂项
2026-01-22 14:21:26 +08:00
a9860af58b feat: 优化设置页子分类命名
- 场景验证码:'各场景验证码'  '场景验证码'
- 顶栏标题:'标题'  '顶栏标题'
- 标题样式:'文章内标题样式'  '标题样式'
- 文章目录:'左侧栏文章目录'  '文章目录'
- 文末内容:'文末附加内容'  '文末内容'
- 文章头图:'文章头图 (特色图片)'  '文章头图'
- 过时提示:'其他'  '过时提示'

优化后的命名更加简洁明确,提升用户体验
2026-01-22 14:12:42 +08:00
3a35408e7c fix: 强制显示设置页所有子目录
- 添加 CSS 规则 display: block !important
- 覆盖 headindex.css 的默认隐藏样式
2026-01-22 14:01:09 +08:00
a7b4fbc381 fix: 设置页目录默认全部展开
- 为 headindex.js 添加 defaultExpanded 配置项
- 设置页启用 defaultExpanded 模式
- 初始化时展开所有子目录
- 切换当前项时不自动折叠其他项
2026-01-22 13:57:38 +08:00
dc7a9dbdf5 fix: 确保设置页目录框默认展开
- 在页面加载时移除 folded 类
- 防止目录框自动折叠
2026-01-22 13:55:33 +08:00
0a01351db2 fix: 恢复设置页目录框收起/展开按钮
- 保留目录框折叠功能
- 默认状态为展开(不添加 folded 类)
- 用户可手动收起或展开
2026-01-22 13:53:14 +08:00
27bc4e4398 fix: 设置页目录框始终展开
- 移除目录框折叠按钮
- 删除 folded 类相关样式
- 调整内边距适配新布局
2026-01-22 13:51:36 +08:00
e01490a0f8 feat: 邮件社交链接支持 Bilibili 和自动补全
- 在邮件设置中添加 Bilibili 社交链接输入框
- 实现社交链接自动补全功能(支持只填写用户名/UID)
- 添加 argon_normalize_social_url() 函数处理链接标准化
- 更新邮件模板基础文件支持 Bilibili 显示
- 支持的平台:Twitter、GitHub、微博、Bilibili、Facebook、Instagram
2026-01-22 13:41:28 +08:00
4543ceb045 feat: 邮件系统优化和垃圾评论通知
- 移除所有邮件模板中的 emoji,表述正式化
- 为所有用户邮件添加退订功能支持
- 新增垃圾评论通知邮件模板(spam_notify)
- 检测到垃圾评论时自动发送邮件给评论者
- 邮件包含识别理由、AI 模型、服务提供商、识别码等信息
- 提供查询识别详情和退订链接
2026-01-22 13:35:23 +08:00
03ce925ec4 feat: AI 垃圾评论检测支持识别码查询
- 为每个检测过的评论生成唯一的 8 位识别码
- 识别码由数字和大写字母组成(排除 I、O)
- 扩展 ai-summary-query.php 支持查询垃圾评论检测记录
- 显示评论信息、检测结果、AI 模型等详细信息
- 批量检测时也为所有评论生成识别码
- 所有 AI 相关内容均可通过识别码在 /ai-query 页面查询
2026-01-22 13:25:05 +08:00
703b2d4e15 fix: 避免重复检测已检测过的评论
- 实时检测前检查评论是否已有检测记录
- 异步检测开始时再次检查,避免并发重复检测
- 检测完成后立即记录检测时间(无论成功失败)
- 全站扫描自动过滤已检测过的评论
- 批量检测后为所有评论(包括正常评论)记录检测时间和结果
- 对 AI 未返回结果的评论也标记为已检测
2026-01-22 13:21:58 +08:00
f603edde0b refactor: 移除邮件模板向后兼容代码
- 移除旧版 {{#if variable}}...{{/if}} 条件语法支持
- 仅保留 Mustache 标准语法({{#variable}} 和 {{^variable}})
2026-01-22 13:16:22 +08:00
c0fa3d2352 fix: 优化评论发送速度和邮件通知系统
- AI 垃圾评论检测改为异步执行(延迟 2 秒),避免阻塞评论发送
- 站长评论通知改用邮件模板系统发送
- 站长评论通知邮件包含 AI 审核信息(识别结果、理由、识别码)
- 禁用 WordPress 默认的评论通知邮件
- 邮件模板系统支持 Mustache 条件语法({{#variable}}...{{/variable}})
- 评论发送、AI 审核、邮件通知全部异步并行处理
2026-01-22 13:14:23 +08:00
5150b67339 feat: 完善 AI 垃圾评论识别设置项
- 抽查基础概率可配置(默认 20%,可调整 1-100%)
- 新增自动处理方式选项(移入回收站/标记待审核/仅标记)
- 新增白名单功能(支持邮箱和 IP 地址)
- 新增提示词预设模板选择(默认/严格/宽松/极简)
- 实现白名单检查逻辑,白名单中的评论不会被检测
- 根据自动处理方式设置处理垃圾评论(trash/hold/mark)
- 保存所有新增设置项到数据库
2026-01-22 13:01:18 +08:00
2f7040ef0f feat: 实现智能动态抽查机制
- 新增基于用户历史通过率的动态抽查概率调整
- 通过率高的用户降低抽查概率(最低 5%)
- 通过率低的用户提高抽查概率(最高 80%)
- 用户统计数据保存 30 天,自动过期
- 支持三种检测模式:手动、智能抽查、全量实时
- 优化设置页面说明,详细展示抽查概率调整规则
2026-01-22 12:53:18 +08:00
2b1bcbf8f9 refactor: 优化 AI 垃圾评论识别为批量检测模式
- 改为一次性将所有评论打包发送给 AI 检测
- 大幅降低 API 调用次数和成本
- 移除逐条检测和进度轮询机制
- 优化前端交互,直接等待批量检测结果
- 增加超时时间以适应批量处理
- 优化结果展示界面,增加视觉反馈
2026-01-22 12:49:24 +08:00
55d10e8c20 feat: 添加 AI 垃圾评论识别功能
- 在评论设置中新增 AI 垃圾评论识别配置项
- 支持三种检测模式:仅手动、抽查(20%)、全量检测
- 实现全站评论扫描和待审核评论扫描功能
- 自动识别广告、反动、违法等垃圾评论并移入回收站
- 复用现有 AI 摘要的服务商配置和 API 密钥
- 提供可视化扫描进度和结果展示
- 支持跳过已登录用户评论的选项
- 优化提示词以降低 token 消耗
2026-01-22 12:42:26 +08:00
dd8d2d246e chore: 删除 style.css 备份文件 2026-01-22 10:44:32 +08:00
4515831d7f chore: 清理临时文件和测试文件
- 删除临时测试文件 (test-*.html, test-*.js)
- 删除临时文档文件 (GPU_ACCELERATION_USAGE.md, RENDER_OPTIMIZER_USAGE.md)
- 删除测试 HTML 文件 (argon-memory-manager.test.html, argon-performance.test.html)
- 整理文档到 specs 目录下
2026-01-22 10:42:19 +08:00
9feba74cfe fix: 修复 argontheme.js 文件编码问题
- 修复所有 UTF-8 编码错误字符( 替换为正确的中文字符)
- 涉及注释、字符串等 100+ 处编码问题
- 确保文件以正确的 UTF-8 编码保存
2026-01-22 10:39:43 +08:00
75bc8ab147 feat: 集成性能优化模块到管理员调试控制台
- 修改 ArgonDebug 输出方法,支持模块标识前缀
- 为不同模块添加标识:DOM缓存、事件管理、渲染优化、性能监控
- 在管理员控制台的缓存清理功能中添加性能优化模块清理
- 清理 DOM 缓存、事件监听器、内存管理器、渲染优化器
- 优化日志输出,所有日志现在会显示来源模块
2026-01-22 09:56:32 +08:00
4dafdc62f6 fix: 替换所有 console 调用为 ArgonDebug
- 在 argontheme.js 中引入 ArgonDebug 调试控制台
- 替换所有 console.warn 为 ArgonDebug.warn
- 替换所有 console.error 为 ArgonDebug.error
- 替换所有 console.info 为 ArgonDebug.info
- 删除移动端侧边栏的调试日志(console.log)
- 简化不必要的日志输出,只保留关键信息
- 所有日志现在只在调试模式下输出,避免生产环境污染控制台
2026-01-22 09:46:44 +08:00
d33f343475 feat: 实现 ArgonMemoryManager 内存管理类
- 实现构造函数和 ID 跟踪集合(timers, intervals, frames)
- 实现 setTimeout()、setInterval()、requestAnimationFrame() 包装方法
- 实现对应的清理方法(clearTimeout, clearInterval, cancelAnimationFrame)
- 实现 clearAll() 统一清理接口
- 实现 getStats() 获取统计信息
- 创建完整的 HTML 测试文件验证功能
- 支持参数传递给回调函数
- 自动跟踪和清理,避免内存泄漏

验证需求:
- 需求 12.5: 闭包引用大型对象时仅保存必要属性
- 需求 13.4: 组件销毁或页面切换时取消所有定时器和动画帧
2026-01-21 23:29:55 +08:00
f165fac420 feat: 实现 GPU 加速管理功能
- 实现 enableGPU() 方法设置 will-change 属性
- 实现 disableGPU() 方法移除 will-change 属性
- 实现动画数量限制逻辑(最多 3 个同时运行)
- 实现动画队列自动管理
- 添加 startAnimation() 和 endAnimation() 方法
- 添加 getActiveAnimationCount() 和 getQueuedAnimationCount() 查询方法
- 添加 clearAllAnimations() 清理方法
- 添加错误处理机制
- 创建交互式测试页面和自动化测试
- 创建详细的使用文档

验证需求:
- 需求 5.2: 动画时使用 will-change 提示浏览器创建合成层
- 需求 5.3: 动画完成时移除 will-change 属性释放资源
- 需求 5.5: 限制同时运行的动画数量不超过 3 个
2026-01-21 23:20:06 +08:00
9fca9481ae feat: 实现 ArgonRenderOptimizer 类
- 实现构造函数,初始化读写队列和调度状态
- 实现 read() 方法:将 DOM 读取操作加入队列
- 实现 write() 方法:将 DOM 写入操作加入队列
- 实现 _schedule() 私有方法:使用 requestAnimationFrame 调度执行
- 实现 _flush() 私有方法:批量执行队列操作(先读后写)
- 实现 enableGPU() 方法:设置 will-change 属性启用 GPU 加速
- 实现 disableGPU() 方法:移除 will-change 属性释放资源
- 添加错误处理机制,确保单个操作失败不影响其他操作
- 在测试文件中添加完整的渲染优化模块测试
- 创建使用指南文档 RENDER_OPTIMIZER_USAGE.md
- 导出 ArgonRenderOptimizer 类供其他模块使用

验证需求:2.3, 2.4, 17.1, 17.2
2026-01-21 14:52:50 +08:00
e548d20012 feat: 实现 ArgonEventManager 类基础结构
- 实现构造函数和 Map 存储的监听器注册表
- 实现 on() 方法:添加事件监听器并自动跟踪
- 实现 off() 方法:移除指定元素和事件的所有监听器
- 实现 clear() 方法:清除所有已注册的事件监听器
- 实现 _getKey() 私有方法:为元素和事件生成唯一标识
- 支持 passive 等事件选项配置
- 在 clear() 中添加错误处理,避免元素已移除时报错
- 导出 ArgonEventManager 类供其他模块使用

验证需求:2.5, 11.2, 11.4
2026-01-21 14:36:49 +08:00