Commit Graph
418 Commits
Author SHA1 Message Date
kate522andClaude Fable 5 089421cd3e fix(payment): unify and harden payment attempts
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 11:29:57 +08:00
kate522andClaude Fable 5 53933988bf fix(payment): resolve provider out_trade_no on Alipay refund query
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 13:29:47 +08:00
kate522andClaude Fable 5 ed55d302e9 fix(payment): re-pay with fresh provider out_trade_no
WeChat/Alipay/Epay reject reusing the same merchant order number when
params change. Allocate attempt-suffixed out_trade_no on resume pay,
map callbacks back to the local order, and best-effort close prior trades.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 13:28:45 +08:00
kate522andClaude Fable 5 723dd180e4 feat(payment): tighten gateways and implement Epay
Keep only balance, Alipay, WeChat, PayPal, Stripe, Epay, and card-pass
channels; remove placeholder aggregators. Add dual-channel Epay gateway
with MD5 notify/return, register cashier methods, and gate card-pass
redeem behind the payment channel switch.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-26 12:59:28 +08:00
kate522 53ff99f343 fix(payment): harden payment and refund chains 2026-07-26 02:29:46 +08:00
kate522 a8d99b200b refactor(payment): migrate SDK to yansongda pay 2026-07-26 00:09:38 +08:00
kate522 06d4844c8e fix(ip-geo): fallback free lookup when Amap key platform mismatches 2026-07-25 15:46:36 +08:00
kate522 62478a02fd fix(ip-geo): real pconline + amap sig/errors; clearer admin test failures 2026-07-25 15:31:38 +08:00
kate522 3bb7fb0ba6 refactor(ip-geo): drop dual-read gates; keep single meta and four surfaces
Canonical keys only (ip_geo_display defaults to all four, aksrt_user_addr /
aksrt_comment_addr only). Self-view still resolves current IP on read.
2026-07-25 15:14:29 +08:00
kate522 6e71008d00 fix(auth): logout without /logout rewrite (avoid Apache 404) 2026-07-25 15:09:58 +08:00
kate522 ac7ff8d4f2 feat(ip-geo): full-chain IP 归属地 on comments, user home, center, post 2026-07-25 14:39:47 +08:00
kate522 9277674da0 fix(orders): restore frontend pay REST and harden order-center client
Add AKSRT\Payment\OrderCenterRest so /shop/frontend/orders/{n}/pay|cancel
always register on rest_api_init; widen order_number route charset; make
order-center.js use credentials, encodeURIComponent, and clearer 404 errors.
2026-07-25 14:12:40 +08:00
kate522 354a1072ef feat(orders): embed My Orders inside user center (zibll-style)
Register UC panel tab=orders with full order list/actions UI; route
aksrt_get_orders_page_url and /orders template to profile?tab=orders;
enqueue order assets when the UC orders tab is active.
2026-07-25 13:54:08 +08:00
kate522 a8760b976a fix(orders): enqueue cart/revenue assets on virtual routes 2026-07-25 13:41:21 +08:00
kate522 59901bdc26 fix(orders): route /orders without WP page (404)
Register commerce rewrite aliases and special-template bootstrap so
/orders loads page-orders even when no page is assigned; flush rules.
2026-07-25 13:40:56 +08:00
kate522 3baa8573c9 feat(orders): full-chain My Orders for all product types
Unify front-end order center across shop, content, VIP, recharge,
points, and plate-follow with type filters, stats, and type-aware
cards; keep shop-only fulfillment actions; ensure 权益与消费 entry URL.
2026-07-25 13:33:43 +08:00
kate522 daba099755 fix(payment): align plate-follow cash preview with wallet balance
Use cash wallet for plate follow cashiers and stop stubbing methods when Gateway is missing.
2026-07-25 13:13:56 +08:00
kate522 6db4da32c6 feat(admin): collapsible gateway credential forms on payment page
Hide channel config cards until enabled; open expanded on enable and allow manual collapse via group header.
2026-07-25 13:08:37 +08:00
kate522 3267bee71e fix(payment): wire balance wallet end-to-end when pay_balance_s is on
Opening 余额功能 alone now enables cash-wallet pay (unless 余额支付 is explicitly off). Drop points-as-balance fallback, stop fake method injection, expose real wallet in cashiers, and honor auto_to_balance on recharge fulfill.
2026-07-25 12:46:38 +08:00
kate522 ab3d361d46 fix(admin): accept multi-value 发布类型 on header-nav save
header_newposts_types is multi-select but PHP schema used type=select,
so validate() rejected arrays with 422. Use checkbox and allow
select+multiple arrays in SchemaProvider.
2026-07-25 11:13:52 +08:00
kate522 a0862248b2 fix(auth): expose aksrtData.apiUrl alias for REST root
Mirror restUrl so legacy modal-auth/follow/report readers get a
plain-permalink-safe endpoint without hardcoding /wp-json.
2026-07-25 11:03:04 +08:00
kate522 a9aba6bdd1 fix(nav): win cascade for CTA and icon baseline
Scope multi-type newadd wrapper rules so they cannot collapse single CTA links; re-enqueue nav.css after header-menu-buttons for final zibll alignment.
2026-07-24 12:44:55 +08:00
kate522 879e48a37a fix(nav): hard-fix top bar icon/text offset vs zibll
Cache-bust core buttons CSS, inline critical alignment into nav.css, and center FA icons in toggle/btn/CTA chips so navbar text and icons stop drifting.
2026-07-24 12:14:53 +08:00
kate522 9aa0bd0755 fix(header): cache-bust frontend CSS modules via filemtime
header-components used fixed AKSRT_VERSION so card-gap fixes never reached browsers; inline gap rules and filemtime enqueue.
2026-07-24 11:48:25 +08:00
kate522 e45bfc6eec fix(header): restore gutters-5 gaps on homepage icon cards
Homepage never loaded zibll-utilities (single-post only), so .gutters-5 padding was missing and cards stuck together while other pages looked correct.
2026-07-24 11:42:13 +08:00
kate522 96bd9d949d fix(header): full zibll 1:1 for top multifunc search/cards/admin
Wire hero search through aksrt_get_search_box, device-gated cards/blur (zib_m_pc_is_show), expanded admin schema, and keyword/type UI styles matching zibll header-slider.
2026-07-24 10:43:29 +08:00
kate522 0d9db942f8 feat(nav): close P0/P1 parity gaps (nav style, history, plate, admin build)
Wire header_nav_style transparent/blur, login history sync, plate publish
type, clean dead search CSS, rebuild admin SPA locally (build gitignored).
2026-07-22 17:38:48 +08:00
kate522 1d1fef50af feat(nav): deep 1:1 zibll search-box + navbar-search + newposts unify
Port aksrt_get_search_box/posts for menu_search and layout 1/3 slide;
unify publish switch; expand user-box admin row; CSS/JS remote-box parity.
2026-07-22 17:06:24 +08:00
kate522 159a12c481 feat(nav): deep-align menu_search panel, pill radius, senior media
- Layout-2 remote-box AJAX panel (history/hot/posts) via aksrt_menu_search
- Live suggestions for post/topic/product; local history for guests
- Publish radius switch (zibll bool pill) mapped to CSS radius class
- Senior menu editor: WP media library image picker
- Active menu underline + panel CSS; acceptance/contract updates
2026-07-22 12:51:56 +08:00
kate522 2a11a889c3 feat(nav): finish remaining parity gaps (image_select, AJAX search, senior UI)
- Layout image_select previews (zibll PNGs under assets/images/header-layout)
- Localize aksrtAdminData.themeUri for admin SPA asset URLs
- Layout-2 inline search AJAX suggestions via aksrt_search_suggestions
- Appearance→Menus visual senior submenu editor (cards/columns)
- Acceptance checklist + automated source contract report
2026-07-22 12:04:44 +08:00
kate522 e3848ddf8c feat(nav): paint header theme colors via InlineStyleBuilder
Apply SPA header_theme_* as --header-bg/--header-color on .header when
header_theme_custom is enabled (zibll header_theme_custom parity).
2026-07-22 11:42:13 +08:00
kate522 fc50e57bc9 feat(nav): complete remaining zibll parity (search, i18n, senior menus, CSS)
- Remove obsolete dual-path nav CSS; add utilities + language dropdown styles
- Wire header/mobile translate switcher from i18n config
- Layout-2 inline search hot keywords panel; nav_folding on resize
- NavMenuOptions JSON editors for graphic_card / multi_column_links
- Section-navs zibll posts-nav-lists; page-navs enqueue; mobile article TOC box
- SPA/PHP user-card publish type; rebuild admin assets
2026-07-22 11:40:17 +08:00
kate522 259dbdbe04 feat(nav): rewrite top header to zibll 1:1 DOM/CSS/JS contract
Replace hybrid site-nav/drawer shell with zibll navbar-top layouts 1/2/3,
body.mobile-navbar-show drawer, wired NavWalker + aksrt_menu_options meta,
nav_folding/chevron, VIP switches, and SPA/PHP schema parity. No dual-class
compat paths.
2026-07-22 11:18:34 +08:00
kate522 b8ee6b6a43 fix(float): repair VIP rail entry front and admin
Always open VIP modal for float pay_vip, drop forced admin link,
normalize gem icon, harden pay-vip click binding and SPA form UX.
2026-07-22 10:32:00 +08:00
kate522 b7ee5987f0 fix(nav): portal publish menu so chip cannot stretch
Move multi-type 发布 menu to document.body with fixed positioning;
chip uses fit-content only and never inherits the 168px menu width.
2026-07-22 10:11:59 +08:00
kate522 fce5ab3088 fix(vip): preserve equity HTML instead of re-splitting into list items 2026-07-21 20:19:11 +08:00
kate522 56434a9255 fix(ui): float VIP duplicates, hover cards, UC menu and light-theme contrast 2026-07-21 18:54:16 +08:00
kate522 f9b495eb14 fix(ui): VIP equity list wrap and theme toggle moon/sun icons 2026-07-21 18:19:42 +08:00
kate522 deff20532f fix(ui): nav CTA icon alignment and always show UC VIP menu 2026-07-21 17:53:34 +08:00
kate522 3e58eecbc5 fix(header): Batch 4-5 theme/publish polish for zibll parity 2026-07-21 17:19:55 +08:00
kate522 1f87ab3b1b feat(vip): Batch 3 dedicated user-center VIP tab
Register 我的会员 panel, zibll-style status/equity cards, sidebar deep-link,
and slim credits-tab entry so VIP is no longer nested only under assets.
2026-07-21 17:09:23 +08:00
kate522 965032f2e9 feat(vip): Batch 2 pay-vip modal REST, JS, and CSS 2026-07-21 16:45:23 +08:00
kate522 a4562627d8 feat(vip): Batch 1 per-level packages and admin schema 2026-07-21 16:32:06 +08:00
kate522 69836154fd fix(vip): Batch 0 wiring for VIP settings, URLs, and order meta
Wire get_vip_settings alias, tab aliases for vip/assets, expired-level meta,
VIP2 order-level fallback, JSON-safe order notes, and header/float pay-vip CTAs.
2026-07-21 16:16:43 +08:00
kate522 6a7ace0f89 fix(widgets): persist tab topics/limit_day/pay_type on save
update() now stores per-tab filter fields added to the form/normalize path.
2026-07-21 14:49:37 +08:00
kate522 8ad0558a36 feat(widgets): product list vs mini DOM + admin empty polish
Differentiate product list/mini row sizes; custom HTML and posts-navs
admin empty states via aksrt_get_widget_null.
2026-07-21 14:36:01 +08:00
kate522 9f485cbe45 feat(widgets): per-tab topics/limit_day/pay_type filters
TabPosts each tab can filter topics taxonomy, date window and pay type;
REST and widget-set.js pass the extra query args.
2026-07-21 14:36:01 +08:00
kate522 0e8c9d12c7 feat(widgets): plate moderator apply modal + JS submit
Replace bare apply link with modal form posting to forum moderator
REST; empty/admin states and modal CSS.
2026-07-21 14:36:00 +08:00
kate522 5dd94bf246 fix(widgets): link card lazy class + product paginate sanitize
Mark bookmark/friend link avatars with aksrt-lazy; clamp product list
paginate enum to none|ajax|number on save.
2026-07-21 13:55:16 +08:00
kate522 93833ad381 feat(widgets): zibll-like in_affix sticky option across side modules
Add sidebar affix (data-affix) to ranking, user/author cards, main/hot/
paid/forum lists, comments, tag cloud, categories and text title with
shared sticky CSS.
2026-07-21 13:55:16 +08:00