kate522 and Claude Fable 5
3595ccbb44
feat(widgets): phase 3 align post widgets 1:1 with zibll fields
...
Align the 7 post/card widget business fields with the Zibll
CSF widget definitions in widget-posts.php:
- WidgetMainPosts/TabPostsWidget/WidgetOnelinePosts: add Zibll
`order` (asc/desc) to build_query_args, form, update, REST
payload and query strings; fix load_mode reading $instance in
query_payload/widget().
- HotPostsWidget: add `target_blank` (form+update+REST+render
href target), wire into query_payload base_qs.
- WidgetTermCards: expand range caps to match Zibll spinners —
pc_row/m_row 1..12, height_scale 20..300, mask_opacity 0..90
(form+update+render+REST).
- WidgetTermAggregation: add `order` (asc/desc) + `favorite`/
`rand` orderby, expand count 1..20, fix `like` meta key to
`_aksrt_like_count` (form+update+render+REST).
- WidgetAjax: propagate target_blank (hot-posts), order + caps
(term-cards/term-aggregation) through REST instances.
- Fix WidgetMainPosts query_payload/widget() using $new_instance
(undefined) instead of $instance for load_mode.
AKSRT pay_type (reading/download/gallery/video/vip/any) is the
semantic equivalent of Zibll zibpay_type (1/2/5/6).
Acceptance: php -l clean on all 7 files; audit-admin-contracts
exit 0; all files <=487 lines. Phase 3 done-when marked.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-30 21:07:38 +08:00
Claude
d975ff4ce6
feat(phase2): shared common-form layer + CommonWidgetFields trait for all widgets
...
- Extract Zibll CSF_Widget::params() common-field parity into
inc/modules/widget-common.php (required by widgets-register.php to keep
both files <1000 lines): subtitle, title_style(simple/big), title_highlight
+color, title_link x3, title_link_style colors, sidebar_affix, show_type
(all/only_pc/only_sm), show_id_type(show/hide), show_ids, animation_in,
animation_repeat, layout_pin_pc/m, layout_bg(white/dark). Adds
normalize_link/normalize_bg helpers, affix_attrs, common_wrapper_attr,
render_title, animation_class. Back-compat normalizes legacy tokens
(in_affix->sidebar_affix, pc/only_pc, include/exclude->show/hide).
- Add src/AKSRT/Widgets/Traits/CommonWidgetFields.php trait
(render_common_form_section + update_common_fields).
- Wire all 57 widgets to use the trait; migrate the 16 hand-rolled in_affix
implementations to shared sidebar_affix (fixes 6 latent bugs where
in_affix was never persisted). SearchWidget intentionally skips the shared
form section (its business show_type collides) but adopts the affix helper.
- widget_display_callback parity verified via tmp assertion script.
Refs .specs/plans/zibll-widgets-1to1.md Phase 2 (US1/US5)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-30 20:42:46 +08:00
Claude
98aeee3cc1
fix(phase1): backfill pagination, fix card stacking, unify archive render
...
- Backfill aksrt_render_pagination() into inc/helpers/aksrt-template-tags.php
(numbered + load_more/infinite branches, \AKSRT\Settings\Settings facade)
- post-card.css: drop display:block !important from base .posts-item so
.posts-item.card inline-block 3-col grid wins; scope <posts> block forcing
- archive-resources.php: replace hand-written .posts-row.ajaxpager +
get_template_part loop with aksrt_render_post_list() + aksrt_render_pagination()
Refs .specs/plans/zibll-widgets-1to1.md Phase 1 (US2/US3/US5)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-30 19:05:43 +08:00
kate522 and Claude Fable 5
5061977b72
plan: zibll widgets 1:1 replication
...
6-phase vertical-slice plan for full 1:1 replication of the Zibll
widget system into AKSRT. Covers pagination fatal fix, card-stacking
CSS fix, unified renderer, shared common-form layer adoption, and
per-category widget alignment (posts/users/slider/marketing/forum/shop)
plus resource migration and registration/block-editor parity.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-30 18:56:16 +08:00
kate522
59e550fd27
Merge pull request 'fix(ui): render user level icon inline beside the name' ( #328 ) from fix/level-icon-inline into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#328
2026-07-30 18:20:16 +08:00
Claude
4325ce0c1c
fix(ui): render user level icon inline beside the name
...
The level (等级) badge was wrapping to its own line below the username and
rendering at the intrinsic PNG size in most surfaces. Centralize the badge
sizing after zibll's `.img-icon` (height: 1.1em, inline-block) in base.css so
every route gets the same compact inline badge, and keep the name row from
flex-wrapping.
- Add shared `.aksrt-user-level-icon / .aksrt-identity-medal` rule + nowrap name
rows in base.css (loaded on all routes).
- Header dropdown: append the level icon next to the display name (was a
separate badges row); constrain the name to ellipsis so the badge never wraps.
- User center profile header & author hero: render the level icon inside the
<h1> name row; drop the duplicate level chip from the signals row.
- Single article author bar / after-box author card: nowrap the name row and
size the level icon to 1.2em (was unstyled → intrinsic PNG size).
- Comments: inner <name> nowrap with a name clamp; medal sized to 1em.
- Consolidate the per-route `.aksrt-user-level-icon` duplicates in
user-center/level.css and profile/layout.css onto the shared rule.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-30 18:13:41 +08:00
kate522
bdb01fa4a2
Merge pull request 'fix(user): accept core avatar hook payload' ( #327 ) from worktree-fix-avatar-hook-user-type into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#327
2026-07-30 11:06:20 +08:00
kate522
d5be2879d0
fix(user): accept core avatar hook payload
2026-07-30 11:05:25 +08:00
kate522
36ef332253
Merge pull request 'Worktree user level full chain' ( #326 ) from worktree-user-level-full-chain into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#326
2026-07-30 10:34:35 +08:00
kate522
d4946ee554
fix(user): close level parity gaps
2026-07-30 10:21:48 +08:00
kate522
a57b44bd61
fix(user): serialize level experience awards
2026-07-30 09:44:32 +08:00
kate522
20c19dfe31
feat(user): complete growth level chain
2026-07-30 09:38:45 +08:00
kate522
b2e6045117
Merge pull request 'fix(user): move avatar upload to hover overlay' ( #325 ) from worktree-user-avatar-system into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#325
2026-07-29 14:34:47 +08:00
kate522
eed75d9f15
fix(user): move avatar upload to hover overlay
2026-07-29 14:17:52 +08:00
kate522
0463efee8e
Merge pull request 'fix(user): normalize default avatar filename' ( #324 ) from worktree-user-avatar-system into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#324
2026-07-29 13:58:33 +08:00
kate522
224691e709
fix(user): normalize default avatar filename
2026-07-29 13:53:59 +08:00
kate522
cf62eee95d
Merge pull request 'Worktree user avatar system' ( #323 ) from worktree-user-avatar-system into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#323
2026-07-29 13:50:00 +08:00
kate522
eeabe1d384
fix(user): harden native avatar uploads
2026-07-29 13:39:02 +08:00
kate522
e94437ef60
feat(user): add local avatar management flow
2026-07-29 13:35:17 +08:00
kate522
1b4ba8938a
Merge pull request 'fix(identity): show certification in user admin' ( #322 ) from worktree-fix-identity-certification-flow into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#322
2026-07-29 12:47:33 +08:00
kate522
7dbbb2cdda
fix(identity): show certification in user admin
2026-07-29 12:46:44 +08:00
kate522
8bc0f5a06b
Merge pull request 'fix(identity): complete native certification review flow' ( #321 ) from worktree-fix-identity-certification-flow into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#321
2026-07-29 12:30:35 +08:00
kate522
2dfaa10798
fix(identity): complete native certification review flow
2026-07-29 12:25:58 +08:00
kate522
32658be87d
Merge pull request 'fix(user-center): complete certification and order flows' ( #320 ) from worktree-fix-user-center-order-certification-flow into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#320
2026-07-29 10:46:20 +08:00
kate522
815e83bac0
fix(user-center): complete certification and order flows
...
Fix modal scroll ownership and certification modal styling, store evidence as Media Library attachments, reconcile missed provider callbacks, validate currencies, and complete digital fulfillment only after durable entitlement delivery.
2026-07-29 10:29:59 +08:00
kate522
b945c6e835
Merge pull request 'fix(user-center): embed official certification panel' ( #319 ) from worktree-user-center-sidebar-wallet-redesign into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#319
2026-07-28 15:26:04 +08:00
kate522
0a04c3e4cc
fix(user-center): embed official certification panel
2026-07-28 15:22:09 +08:00
kate522
90bf3ee5ed
Merge pull request 'fix(user-center): connect certification workflow' ( #318 ) from worktree-user-center-sidebar-wallet-redesign into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#318
2026-07-28 14:28:17 +08:00
kate522
d3bf75fbea
fix(user-center): connect certification workflow
2026-07-28 14:17:18 +08:00
kate522
d6e5ab067c
Merge pull request 'feat(user-center): redesign sidebar and wallet tips' ( #317 ) from worktree-user-center-sidebar-wallet-redesign into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#317
2026-07-28 13:53:57 +08:00
kate522
a7f3caec59
feat(user-center): redesign sidebar and wallet tips
2026-07-28 13:41:00 +08:00
kate522
82e71d1bf9
Merge pull request 'feat(user-center): deepen zibll parity and profile media' ( #316 ) from worktree-user-center-zibll-complete into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#316
2026-07-28 12:48:21 +08:00
kate522
e47ee1b029
feat(user-center): deepen zibll parity and profile media
2026-07-28 12:22:52 +08:00
kate522
c13f686cdc
Merge pull request 'fix(homepage): unify runtime rendering contract' ( #315 ) from fix/homepage-runtime-contract into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#315
2026-07-28 02:54:48 +08:00
kate522
bcebd37807
fix(homepage): unify runtime rendering contract
2026-07-28 02:54:18 +08:00
kate522
bd6f55c42e
Merge pull request 'feat: deepen single post experience' ( #314 ) from worktree-frontend-single-deep-rebuild into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#314
2026-07-28 02:10:12 +08:00
kate522
2086f938ed
feat: deepen single post experience
2026-07-28 02:07:10 +08:00
kate522
a00db4538f
Merge pull request 'fix(ip-geo): harden full-chain IP geolocation reliability' ( #313 ) from worktree-ip-geo-fix into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#313
2026-07-27 16:10:05 +08:00
kate522
59f5d5d98a
fix(ip-geo): harden full-chain IP geolocation reliability
...
Capture real client IPs behind CDN, improve provider fallbacks and
negative cache, fix admin credential dependsOn for polling mode, and
map country labels to ISO codes for moderation GeoIP blocks.
2026-07-27 15:39:16 +08:00
kate522
c206928746
Merge pull request 'fix(orders): wire detail progress timeline and two-step cancel' ( #312 ) from worktree-order-detail-progress-close into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#312
2026-07-27 15:19:02 +08:00
kate522
ad40d9a7ca
fix(orders): wire detail progress timeline and two-step cancel
...
Order progress was stuck on "订单创建" because timeline only read sparse
timestamp columns and status transitions didn't always stamp them.
Drive timeline from current status + related records, backfill lifecycle
timestamps on update_status, and replace window.confirm cancel with a
关闭订单 → 确认取消 button step in the detail modal.
2026-07-27 15:15:35 +08:00
kate522
64d0dc66da
Merge pull request 'fix(orders): drop secondary "我的余额/会员/积分" link from detail modal' ( #311 ) from worktree-order-center-list into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#311
2026-07-27 14:00:58 +08:00
kate522
eac58f07bf
feat(orders): polish detail modal layout and visuals
...
Restructure the order detail modal into status-tinted hero, product
card, info list with copyable order number, multi-item lines, and a
newest-first timeline. Refresh spacing, dark mode, and footer buttons.
2026-07-27 13:54:34 +08:00
kate522
e6eee91eb3
fix(orders): drop secondary "我的余额/会员/积分" link from detail modal
...
The user center already has a dedicated tab for these; showing the
secondary shortcut inside the order detail modal is redundant noise.
The view-model field is kept for other consumers.
2026-07-27 13:40:23 +08:00
kate522
0c3e33bed4
Merge pull request 'feat(orders): redesign detail modal — hero pill, no duplicate close' ( #310 ) from worktree-order-center-list into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#310
2026-07-27 13:37:15 +08:00
kate522
e47a3958fb
feat(orders): redesign detail modal — hero pill, no duplicate close
...
- Remove bottom "关闭" button so the top-right ✕ is the single dismiss.
- Drop redundant 订单类型 row from modal body (already shown as card chip).
- Add hero strip with status pill + amount; unify dt/dd rows into a
bordered card; tighten items list and add timeline rail.
- Refresh modal styling: rounded dialog, gradient header, hover-lift
buttons, mobile-friendly rows.
2026-07-27 13:34:30 +08:00
kate522
1648df8457
Merge pull request 'feat(orders): order detail modal, list actions, use configured prefix' ( #309 ) from worktree-order-center-list into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#309
2026-07-27 13:13:15 +08:00
kate522
a1e35a4499
feat(orders): order detail modal, list actions, use configured prefix
...
Wire admin payment_order_prefix into order number generation (with 32-char
cap for gateways), make 查看 open a full order-detail modal with
status-aware footer actions, keep type badge top-left only, and right-align
unpaid list actions with countdown on the left.
2026-07-27 12:39:21 +08:00
kate522
5e1e2e2634
Merge pull request 'Worktree tighten payment gateways' ( #308 ) from worktree-tighten-payment-gateways into main
...
Reviewed-on: CYL/wordpress-theme-aksrt#308
2026-07-27 11:44:55 +08:00
kate522 and Claude Fable 5
abc3f1565f
fix(payment): reject duplicate provider transactions
...
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-27 11:31:39 +08:00