Commit Graph
31 Commits
Author SHA1 Message Date
kate522 5a17b399a0 fix(user-home): add reference tab loading skeletons 2026-10-04 19:40:24 +08:00
kate522 56bbb63afd fix(user-home): align profile comments with reference theme 2026-10-04 19:11:27 +08:00
kate522andClaude Fable 5 45dc909e4c fix(user-home): span the tab pagination skeleton across the post grid
The posts/favorites tabs turn the article list into a 2-column grid at
>=992px. The AJAX pagination skeleton .post_ajax_loader is a direct
child of that grid, so with no grid-column it was laid out as a single
half-width card and the whole placeholder stack collapsed into one
column while paging or switching tabs.

Span the loader across every column and, while loading, give it the
same 2-column template the real cards use so placeholders line up with
them. The skeleton shape now follows the resolved render mode instead
of a hardcoded 'list', so card mode no longer renders list blocks.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-10-04 13:17:02 +08:00
kate522andClaude Fable 5 cf4554e7c8 fix(ajax): show the reference skeleton on every load-more surface
Clicking 加载更多 in the 多栏目文章 widget showed no skeleton at all — the
list simply stayed still until the response arrived, then the new cards
appeared. The homepage stream, archives and comments already had a working
skeleton; the widget's AJAX load goes through a different client and never
found its loader.

Root cause was DOM placement, not visibility: ContentRenderer emitted
.post_ajax_loader as a *sibling* of .widget-ajaxpager, while the widget REST
client resolves it with container.querySelector('.post_ajax_loader'). The
node existed but could never match, so .is-loading was never added and the
skeleton stayed display:none. Inactive tab panes had the same shape, and the
direct-load branch of ajaxpager() emitted no loader at all.

Changes, all following the reference theme's post_ajax() contract in
zibll/js/main.js (beforeSend anchors the loader to the end of the list;
success only hides it, never removes it):

- ContentRenderer: nest the loader inside .widget-ajaxpager for both the
  direct-load and inactive-tab branches, and drop the sibling append.
- widgets/frontend.js: anchorLoader() moves the loader to the end of the
  list before .ajax-pag on every request; appended cards are inserted before
  it; a replace preserves the node instead of wiping it with innerHTML; a
  fallback loader is created when the DOM has none; loadItems() now returns
  its promise; drop the unreachable is-loading auto-load branch.
- Message centre, user-home panels and the search page switch from spinner /
  opacity feedback to the same .posts-item-shaped skeleton, so all AJAX
  surfaces share one loading contract.
- Remove the second, never-wired skeleton system (.aksrt-skeleton-* in
  core-ui.css) and the dead spinner stylesheets/rules (skeleton.css,
  ajax-spinner.css, .load-more__*, --skeleton-base/--skeleton-shine) plus the
  unregistered assets/js/waterfall.js.
- Extend the widget, message-centre, user-home and asset-ledger contract
  tests to pin the loader inside the container, the class-only visibility
  switch, and the absence of the deleted dead code.

Verified: 470 node tests, 136 PHP widget assertions, admin-contract and
widget-system audits all green; rebuilt public assets after the CSS/JS
removals.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-10-03 22:22:15 +08:00
kate522 c315297d7f fix(profile): align user page content width 2026-09-23 12:16:26 +08:00
kate522 5cae5b5c93 积分与余额账务系统硬切重构 2026-08-24 15:59:11 +08:00
kate522 616beb8c03 修复AJAX 引擎 2026-08-23 18:01:56 +08:00
kate522 bb9a410ad6 用户公开主页全局采用DOM无刷新加载 2026-08-23 14:55:24 +08:00
kate522 84321801a6 修复粉丝/关注 TAB 的用户列表渲染 2026-08-23 14:12:42 +08:00
kate522 54ee4b3bdd 收藏 Tab 现在和文章 Tab 走完全相同的渲染链路和样式 2026-08-23 12:38:33 +08:00
kate522 9375b1c30c refactor(assets): vendor 资产迁入标准目录并全仓去除 zibll 标识
- assets/vendor 全量迁移: fontawesome5→assets/fontawesome5, css→assets/css,
  js→assets/js/runtime(避开 14 个同名自有文件), img 合并去重→assets/img,
  fonts→assets/fonts; 删除 assets/vendor
- libs 五个与 widgets/third-party 字节相同的库不重复入库, loader paths 改指向
- 运行时切换: _win.uri=assets 根, loader baseUrl=/js/runtime, enlighter 注入
  路径同步; PHP 7 个引用文件切换并改名 $zibll_*→$runtime_*
- 去品牌: Qinver 头注释/品牌 console.log/演示链接清除, 默认文案中性化
- 功能标识符改名: zib__→aksrt__, zib_ajax→aksrt_ajax, window.zib→
  window.aksrtLegacy, zibllblock/*→aksrtblock/*, .zib-widget→.aksrt-panel,
  .zib-slider→.aksrt-slider, zib_menu_options meta 键等
- 自有 CSS 改名: legacy-utilities/compat-vars/footer shell
- admin SPA 重建; 契约测试同步(路径/断言/文件更名)
- 例外保留: tests/visual 对照环境与 fixtures 前缀(外部 Zibll 产品引用)

验证: php -l 133 个改动文件通过; runtime 86 个 JS node --check 通过;
契约测试 68/70(2 个失败经 stash 对照确认为存量问题)
2026-08-22 16:16:30 +08:00
kate522 5f01b3b316 公开用户主页文章双列实现 2026-08-20 14:20:20 +08:00
kate522 a0b84977a2 feat(navigation): hard-switch to Zibll navigation and Font Awesome 5 2026-08-18 20:46:21 +08:00
kate522 0f2ac6c34a feat(frontend): replace article system with Zibll 9.0 2026-08-18 16:06:47 +08:00
kate522 435ee1daa7 feat(frontend): replace lazy loading with zibll lazysizes 2026-08-18 01:33:38 +08:00
kate522 6c6c462df8 refactor: remove forum and topic feature chains 2026-08-17 14:52:19 +08:00
kate522 2bbd7c01a3 feat: remove forum feature (Phase 1) 2026-08-02 20:02:44 +08:00
kate522 aaf458af1c refactor(autoload): migrate theme classes to Composer PSR-4
Move 288 types from global AKSRT_* + inc/classes manual requires into
namespace AKSRT\{Domain} under src/AKSRT/, wire composer.json psr-4,
and slim bootstrap to helpers/modules/hooks only. Split multi-class
widget/gateway files, update admin contract audit paths, and document
the layout in ADR/README.
2026-07-17 13:29:22 +08:00
kate522 50e9e83f68 fix(user-home): 1:1 align public profile with Zibll author page
- Remove 主页概览/快捷入口/交易服务 private-dashboard sidebar from public home
- Full-width layout; counts live in tab bar (粉丝 = followers)
- Hero: 用户中心/消息 for self, 关注/私信 for others; drop body stats row
- Defaults: no sidebar, posts/favorites/comments/follow tabs
2026-07-15 16:18:17 +08:00
kate522andClaude Fable 5 f24f94c662 chore: 删除子目录 README,仅保留根 README.md
user-center / user-home partial 目录说明文档移除,避免与主 README 重复。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 13:56:50 +08:00
kate522andClaude Fable 5 fb68b3f8c6 feat: 收口 1:1 剩余欠账(论坛壳/圈子/501/私信默认/资源死码)
- 论坛 board/topic/plate/tag/plate-cat 接入 content-wrap/content-layout 主站流壳
- 公共主页 plate 圈子 tab 接关注/管理版块真实数据并计数
- forum-topic 渲染封面/付费扩展位 meta(§7.3)
- 后台删除消息/背景图/评论图 REST 从 501 补齐为真实实现
- 私信 private_s 缺省 true(完整 1:1,不再兼容默认关)
- 清理 aksrt_get_resource_meta 不可达旧实现;挂载 AKSRT_AI 配置门控实例
- 登录 modal 启用 colorful-header;订单页粉边 focus 软化;侧栏次级入口视觉弱化

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 13:06:47 +08:00
kate522andClaude Fable 5 28e4e19a3c feat(shop): 商品详情/归档壳层 1:1 同家族卡片与内容流
商品详情接入 content-wrap 主站详情壳;相关推荐与分类/标签/用户主页商品统一 product-card;卖家入口对齐用户主页 product tab。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 11:46:33 +08:00
kate522andClaude Fable 5 a86649946a feat(user-center): 用户中心前台 1:1 列表/URL/关注/身份
补齐 orders/cart/revenue/messages 页面 URL helper,修复私有中心商务与消息死链,公共主页商品/关注接入真实数据,开启身份 chips governance,并注册消息中心页面模板。

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-12 11:03:30 +08:00
kate522 780c8cb4f7 feat(forum): frontend 1:1 list/tabs/urls/enqueue
Wire Zibll-style board sort tabs, shared topic rows, page-template
URLs, forum asset enqueue on home/plate, home synthesis load-more,
and topic last_reply meta for last-reply ordering. No dual-read.
2026-07-12 08:38:31 +08:00
kate522 d9fbacbce6 feat(payment): align VIP/balance/order schema keys with Zibll
Extract payment readers into AKSRT_Settings_Payment_Runtime and store
canonical Zibll option IDs (pay_user_vip_*, pay_balance_*, pay_box_position,
pay_mark, pay_rebate_*, pay_income_*) in aksrt_settings with no legacy
payment_* dual-read. Update PHP/JS payment schemas and VIP sidebar gate.
2026-07-11 17:13:29 +08:00
kate522 3ce5306efd 用户域 CSS 整包重切:lists 持有共享列表,modals 只留弹窗,清掉死样式
把 public/private 扁平列表覆写迁到 profile/lists,删除未使用的 stats/signin/level 与 author-page 归档样式,并补 modal 移动端基础规则。
2026-07-10 22:20:43 +08:00
kate522 f76d4650e5 用户域一次性收口:统一公开主页资源归属并折叠作者页双路径
把 uh-forum 样式收进 user-home 路由、author.php 收成 301 回退、公开主页脚本以 author.js 为唯一实现,并去掉 enqueue/body class 中的 is_author 分叉。
2026-07-10 22:11:44 +08:00
kate522 05ee28ed5b 用户主页再减层:抽出 page context helper 并清理失效 profile CSS
page-user-home 收成薄壳,tab/统计/分页上下文迁入 aksrt_get_user_home_page_context;同步删除 profile-public-contacts 等失效样式,并让 .user-center 宽度规则落到现用 aksrt-profile 壳层。
2026-07-10 22:01:09 +08:00
kate522 9f08c9337a 用户主页减层:拆出 panel/sidebar partial 并清理失效 CSS 选择器
把 page-user-home 的内容面板与侧栏抽到 user-home partial,删除公开主页已不再使用的 uc-header/user-home-stats 等 CSS 残段。
2026-07-10 21:56:33 +08:00
kate522 56c4f83e09 用户域壳层收口:删除 uh/uc/profile 孤儿 partial 并修正侧栏与宽度选择器
清理减层后已无引用的草稿 partial,让公开主页/作者页侧栏接入 content-layout__aside,并修正 content-shell 与 aksrt-profile 同节点时的宽度选择器。
2026-07-10 21:51:15 +08:00
Claude Code 1268a55dd0 导入 AKSRT 主题开发源码 2026-07-03 22:50:34 +08:00