kate522
5a17b399a0
fix(user-home): add reference tab loading skeletons
2026-10-04 19:40:24 +08:00
kate522 and Claude Fable 5
7fc1ac98de
fix(user-home): match reference cover metas with 人气值/点赞 pills
...
The public user homepage cover showed a single bottom-right 粉丝 pill,
which the reference theme does not render there — it shows 人气值 and 点赞
as a translucent pill group pinned to the cover's top-right corner.
- Cover metas: replace 粉丝 with 人气值 (zibsvg-hot) + 点赞 (zibsvg-like),
summed over the user's published posts via aksrt_get_user_posts_meta_sum()
and abbreviated with aksrt_cut_count(); each is zero-suppressed
independently, matching zib_get_author_header_metas()
- Titles use the reference strings 人气值 N / 获得N个点赞 via
data-toggle="tooltip"
- CSS: adopt .single-metabox.cover-meta semantics (one rgba(0,0,0,.3) pill
at right:1em/top:1.6em, 14px, 6px item gaps, 3px icon margins) plus the
reference's <=480px override; drop the per-stat bottom-right pills
- Drop the dead __stats / __stat / __contacts CSS blocks and the unused
$tab_counts hero contract arg
Follower counts remain in the content tab bar (tab_counts['follow']).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-10-03 14:32:45 +08:00
kate522
cf6c11852e
feat(share): align social sharing runtime
2026-09-27 13:49:32 +08:00
kate522
264f2c51b2
fix(admin): replicate reference front-submit settings page 1:1
...
- Rewrite post_list/submit schema (PHP + JS) with the reference theme's
field set, order, defaults and dependencies; topics fields excluded
- Map PostDisplay::get_submit_settings() and the FrontSubmit runtime to
the new keys without legacy fallback
- Guest submission follows the capability matrix; category required on
submit; pay limits read from the cash/points fieldset
- Drop dead front_submit_* settings, template branches and JS config
- Add submit settings reference contract test
2026-09-24 12:29:19 +08:00
kate522
d4bb43a275
feat(attachment): 按参考主题重构后台上传配置套件
...
- 新增 AKSRT\Attachment\UploadLimits:按用户类型解析图片/视频/文件
上传上限(取最大值+默认兜底,钳制到 PHP 上限)、允许/禁止格式过滤、
上传自动重命名、非管理员附件页 404;不含论坛角色
- 后台「附件配置」重做:大小限制/格式限制/上传行为三组配置,
PHP Schema 与 SPA Schema 逐字段镜像(v1.2.0)
- 定制页 AttachmentPermissions.vue 改为标准 schemaPage,清理失效的
API 包装、组件加载器与旧配置键(submit_image_max_size 等)
- 投稿/评论上传、批量上传数量全部切换到新链路;AksField 数字组件
支持单位展示
- 更新 captcha harness 与 front-submit 契约测试;421 项测试通过
2026-09-24 11:04:49 +08:00
kate522
a4af024f32
feat(ban): align ban prompts with the reference theme modals and block page
...
对照参考主题(Zibll)修正四项偏差,申诉链路从页面整体迁移至弹窗:
- feat(ban): 新增三个 1:1 复刻弹窗(REST /user-ban/{info,appeal,log}-modal):
查看禁封状态(多彩头 c-gray + 信息行 + 申诉按钮)、禁封申诉(edit-header
gavel/c-blue + 信息框 + 资料项 data[key] 输入 + 审核中态 + 禁止申诉态)、
禁封记录(多彩头 c-yellow + 计数 + 逐条卡片);user-ban.js 增加
data-aksrt-ban-info/appeal/log 委托与 admin-ajax 申诉提交
- feat(ban): 禁封/解封弹窗的「当前用户已有N次禁封记录」静态文案改为可点击
黄链(N>1),打开禁封记录弹窗;解封视图信息行改复用统一数据源
- refactor(ban): 治理展示态收敛至 Restriction::state_badges()(封号=c-red
违规已封号 / 小黑屋=c-yellow 小黑屋禁封中 / 禁言=c-gray 禁言中,颜色与
字段统一管理)+ get_ban_info()(状态/起止时间/原因/说明/申诉权限,
三弹窗与禁封页共用)
- feat(ban): 登录行为对齐参考主题——移除登录期拦截(enforce_login_ban)
与 complete_login 禁封闸门,封号用户可正常登录;新增 template_redirect
前台禁封页(1:1 zib_user_ban_restrict_login/zib_die_page:红盒提示 +
信息行 + 申诉权限 + 退出登录/申诉按钮,模板 templates/parts/user/ban-block.php)
- feat(profile): 公开主页禁封状态从资料卡下方提示框改为占据身份行元信息位
的 badg 徽章(参考主题 author_header_identity 语义);用户中心元信息改为
but 按钮(徽章+箭头)打开查看禁封状态弹窗;评论拒绝态链接同源
- refactor: 移除申诉页面模板(page-ban-appeal.php)及其资产/注册/入队、
get_profile_notice/profile_notice 链、state_labels/state_notices/
login_ban_message、UserRuntime 的 public_notice/ban_notice_text 死配置、
report_settings 死键、无消费方的 aksrt_ban_appeal_status 端点
- feat(ban): BanAppeal::ajax_submit 兼容弹窗 data[key] 表单结构
(逐项清洗入库,申诉说明取 data['申诉说明'],旧平铺字段保持兼容)
- chore: 重新构建 public.css/public.min.css(三个新弹窗几何与头部样式)
- test: 契约测试重写(徽章元信息位、三弹窗与记录链接、禁封页、允许登录 +
前台拦截、死代码移除断言),全量 362 项通过
2026-09-22 19:14:02 +08:00
kate522
7f520803ff
feat(ban): mirror reference theme ban/restriction prompt surface
...
修复公开主页禁封提示框为空的问题,并对齐参考主题(Zibll)全部前台禁封提示入口:
- fix(profile): 资料卡下方治理提示框渲染为空——模板读取的 tone/message 键与
数据层实际输出的 state/label/text 契约不匹配;现按禁封类型展示
「违规已封号/小黑屋禁封中/禁言中」+ 可配置说明文案
- feat(ban): 用户中心页头展示治理状态徽章 + 查看详情入口,直达禁封申诉页
(参考主题 user_page_header_desc / zib_get_user_ban_info_link)
- feat(ban): 评论拒绝态区分禁封/小黑屋/禁言,附状态徽章与申诉链接
(参考主题 zib_get_user_ban_nocan_info,原为笼统的无权限文案)
- feat(ban): 禁封申诉页补全状态信息卡(状态/开始时间/结束时间/原因/说明/
申诉权限),对齐 zib_get_ban_info_modal;此前仅有「禁封原因」一行且无入口
- feat(ban): 昵称旁禁封徽章 + 头像禁封角标(覆盖 VIP 位,参考主题
user_name_badge / user_avatar_badge 钩子语义),main.css 与入队的
main.min.css 同步新增角标样式
- fix(ban): 举报入口对已封禁/小黑屋目标隐藏(评论、文章下拉、封面菜单三处,
对齐 zib_get_report_link 排除语义;禁言为轻量限制不隐藏)
- refactor(ban): 治理展示态收敛为单一数据源 Restriction::get_display_state()
+ state_labels(),资料卡/用户中心/评论拒绝态/昵称徽章共用
- feat(ban): 小黑屋用户开放申诉(对齐参考主题 zib_user_is_ban 双类型语义),
禁封站内信附加申诉页链接
- test: report-ban 契约测试 +3(展示态单一数据源、提示面入口矩阵、举报排除),
45 个测试文件全部通过
2026-09-22 13:28:52 +08:00
kate522
daee4cd67f
feat(submit): make video cover row icon-only with hover titles
...
Replace the video-pic/video/clear button labels with icon-only buttons
carrying title + aria-label (设置视频封面/视频/清除), center the glyphs
via flex to fix the upward icon shift, rename the media picker title to
为视频设置封面, and drop the unused setVideoCover i18n key. Contract
test updated to pin the new markup and string set.
2026-09-06 10:10:12 +08:00
kate522
51a591e2b9
feat(submit): add video cover picker with playable video preview
...
Featured video preview now renders a real DPlayer (video-url/video-pic)
like the reference theme instead of a static image, so the cover video
plays on the submit page. Top-right bar gains the video-cover button
shown only when a video cover is loaded; backend honors pic_id and no
longer deletes the thumbnail before cover validation. Drop dead i18n
keys and data-can-* attributes.
2026-09-05 23:41:22 +08:00
kate522
f3fcfe45da
feat(submit): add user media library
2026-09-04 22:53:33 +08:00
kate522
5fd7c212ed
fix(runtime): 按参考主题硬切换为 loader/main/auto_fun 单一 DOM 生命周期
...
- 删除 AksrtFrontend registry/rehydrate 双路架构及 build/public.js 拼包入口,
前台唯一初始路径为 PHP 本地栈(jQuery 1.9.1 → Bootstrap 3.4.1)
→ loader_js(_win/aksrtData 唯一注入)→ tbquire(['main']) → runtime/main.min.js
- window.auto_fun = debounce(z_auto_fun, 100) 为唯一重扫入口;所有模块改为
执行一次 + off/on('auto_fun.aksrt-*') 命名空间重扫,data/class 标记幂等
- 局部更新协议统一:HTML 注入 → post_ajax.ed → auto_fun();
远程 modal → loaded.bs.modal → auto_fun();JSON 成功 → zib_ajax.success
- 灯箱恢复 Miniimgbox/imgbox 唯一 owner(imgbox-container、a[data-imgbox]、
imgbox_data),删除 AksrtLightbox/data-aksrt-lightbox 第二实现及 CSS/overlay,
_win.imgbox* 重新接上 post-display 设置
- 死代码清理:runtime 下 11 组被自有实现替代的旧模块副本、无消费 vendored 库、
顶层 grade.min.js、revenue.js、无调用方的 aksrt_get_win_runtime_config(),
以及 loader 中 16 条死 mapping
- PHP 入队改为本地栈 + loader_js,routed/widget/submit 依赖统一换绑;
用户卡片发布按钮恢复 nav_user_newposts_btn 设置门控
- 测试对齐:新增 frontend-lifecycle-contract,重写 navigation/lazyload/toast/
auth-source/comment/page-display/post-visual 等断言为目标架构契约
验证:node --test widget-system+navigation 223 通过 0 失败;
构建脚本重建 main/imgbox min 与 CSS bundles;改动 PHP php -l、JS node --check
全部通过;git diff --check 干净;credits 重入 harness 通过。
2026-09-03 12:44:31 +08:00
kate522
1f4a39d8f8
feat(runtime): 全站前端脚本统一接入 AksrtFrontend 全局 DOM 生命周期
...
- rehydrate.js 新增 boot()/aksrt:ready 事件,支持 boot 后晚注册立即以 init 触发
- aksrt-runtime.js 初始加载改走 AksrtFrontend.boot,tooltip/倒计时注册为组件
- 约 30 个前端脚本(首页、评论、支付、路由、页面叶子、widgets)
从直接 DOMContentLoaded 迁移为 AksrtFrontend.register,并加幂等标记
- section-navs 依赖改为 aksrt-runtime,保证注册时序
- 清理死代码:删除孤儿 loader.js/main.js 及 runtime/page-navs 遗留副本
- loader.js 移除已迁移模块的 tbquire 路径映射,main.js 相应瘦身
- build-public-assets.mjs 增加 runtime/main.min.js 自动压缩步骤
- 新增 4 个契约测试(homepage-dom/rehydrate-runtime/global-dom-init/
public-bundle-parity),3 个既有 harness 适配注册表初始化方式
2026-09-02 21:48:56 +08:00
kate522
fff1590a43
进行了一些小修复
2026-08-26 23:18:51 +08:00
kate522
90646134d4
进行了一些小修复
2026-08-26 21:32:31 +08:00
kate522
f143a111cd
进行了一些小修复
2026-08-26 21:23:55 +08:00
kate522
8111b17392
进行了一些小修复
2026-08-26 20:00:31 +08:00
kate522
ee4e599f2d
进行了一些小修复
2026-08-26 18:25:42 +08:00
kate522
fb2bbb64c5
进行了一些小修复
2026-08-26 17:57:29 +08:00
kate522
5121b33ad5
进行了一些小修复
2026-08-26 16:59:42 +08:00
kate522
2cb78edabb
进行了一些小修复
2026-08-26 16:32:18 +08:00
kate522
dc14c29878
进行了一些小修复
2026-08-26 12:10:06 +08:00
kate522
ea83f2211c
修复了一些问题
2026-08-25 19:14:38 +08:00
kate522
c8d199a694
修复了一些问题
2026-08-25 18:22:30 +08:00
kate522
dbb1f776f2
修复了一些问题
2026-08-25 17:57:20 +08:00
kate522
5cae5b5c93
积分与余额账务系统硬切重构
2026-08-24 15:59:11 +08:00
kate522
d7634d1ff6
修复了一些问题
2026-08-23 20:59:34 +08:00
kate522
af52f9e94d
登录注册体系的源码级硬切换
2026-08-23 20:30:01 +08:00
kate522
bb9a410ad6
用户公开主页全局采用DOM无刷新加载
2026-08-23 14:55:24 +08:00
kate522
c6c2c0af6d
删除私信分支链路
2026-08-23 13:42:35 +08:00
kate522
c9c1789aba
在 user-home.css 里给Tab加上指示条居中
2026-08-23 12:32:39 +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
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
2881c69e9c
feat(frontend): integrate toast into post submission
2026-08-18 13:06:51 +08:00
kate522
95553086dd
(fix):update user setting toast
2026-08-18 03:48:50 +08:00
kate522
e429b59077
(fix):update user profile toast
2026-08-18 03:27:42 +08:00
kate522
86614c4905
refactor(frontend): replace toast system with zibll notyf
2026-08-18 02:38:43 +08:00
kate522
435ee1daa7
feat(frontend): replace lazy loading with zibll lazysizes
2026-08-18 01:33:38 +08:00
kate522
d5dfeb7102
feat(widgets): complete phase 3 atomic integration
2026-08-17 18:21:47 +08:00
kate522
6c6c462df8
refactor: remove forum and topic feature chains
2026-08-17 14:52:19 +08:00
kate522
b501cf4611
feat: unify invite flow with referral ref
2026-08-17 13:49:59 +08:00
kate522
8241570ca2
feat(users): govern profiles and access
...
Normalize fixed profile fields, profile actions, and the five-column capability matrix for comments, uploads, and downloads.
2026-08-13 00:24:54 +08:00
kate522
ce2b266890
fix(users): keep management inside center
2026-08-12 20:59:31 +08:00
kate522
c3bfd12c69
fix(users): keep center navigation local and restore public home
2026-08-12 20:02:37 +08:00
kate522
dacd0095bf
feat(users): normalize center routes and withdrawal limits
2026-08-12 19:44:47 +08:00
kate522
39c92017d9
feat(user-center): merge promotion rewards into revenue
2026-08-05 23:43:16 +08:00
kate522
49c12b761f
feat(users): merge promotion into revenue center
2026-08-03 15:38:17 +08:00
kate522
26d307056e
feat(orders): redesign user order center
2026-08-03 12:54:58 +08:00
kate522
1d2505356e
feat: remove shop feature (Phase 2)
...
Delete all shop domain classes, controllers, schema builders, templates,
JS/CSS, admin SPA pages, and shop-only payment classes (Shipping,
AfterSale, Discount). Remove shop-only DB table definitions (product_variant,
after_sale, order_shipping, card_key) from migrator and add their DROP
to uninstall.php. Clean up shared files:
- Remove aksrt_product CPT + taxonomies from Setup.php
- Remove shop rewrite rules/query vars/template redirect from SetupPart2.php
- Remove shop widget areas from SetupPart1.php
- Remove shop enqueues from ScriptsPart1b.php
- Remove sepakerator-aksrt-shop from SetupPart2.php
- Remove get_shop_settings facade (delete ForumShop.php, clean DomainGroups.php)
- Remove ORDER_PRODUCT_SHOP constant from DomainModel.php
- Remove Shop::class fallback branches from UserOrders.php, OrderCenterRest.php
- Remove shipping/after-sale branches from OrderRepositoryAdmin.php, PayMenus.php, PayOrders.php
- Remove shop product widgets from widgets-register.php
- Remove cart page from template-registry.php, routing.php, ScriptsPart2.php
- Remove cart UI from sidebar-nav.php, profile-orders.php, sidebar-orders.php
- Clean up order-center.js (remove rebuy/cartUrl/receipt/after-sale handlers)
- Remove aksrt_get_cart_page_url/product_page/product_edit from transactions.php
- Clean up aksrt_product_cat references in Coupon.php, PayCoupons.php
Shared payment/order/credits/content-pay stack fully retained.
2026-08-02 21:25:52 +08:00
kate522
2bbd7c01a3
feat: remove forum feature (Phase 1)
2026-08-02 20:02:44 +08:00