Commit Graph
237 Commits
Author SHA1 Message Date
kate522andClaude Fable 5 ceff04ce54 feat(user-center): add dedicated creator workspace
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-06 17:23:31 +08:00
kate522 f2f5dcdb6c fix(user-center): keep posts sidebar label 2026-08-06 16:35:35 +08:00
kate522 2f9384f368 feat(user-center): upgrade posts panel to creator center 2026-08-06 16:24:59 +08:00
kate522andClaude Fable 5 d86125b130 fix(user-center): reuse balance withdrawal modal
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-06 14:33:24 +08:00
kate522andClaude Fable 5 50236b07fa fix(payment): refresh rebate metrics and unify withdrawal statuses
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-06 14:06:28 +08:00
kate522andClaude Fable 5 6897ddca4b fix(user-center): remove rebate detail title setting
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-06 13:00:50 +08:00
kate522andClaude Fable 5 487a63629c fix(user-center): refresh revenue withdrawal state
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-06 12:51:01 +08:00
kate522andClaude Fable 5 02fcde3c84 fix(user-center): load revenue tabs without refresh
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-06 10:42:32 +08:00
kate522 39c92017d9 feat(user-center): merge promotion rewards into revenue 2026-08-05 23:43:16 +08:00
kate522 51274fd00a feat(user-center): promote invite into standalone 推广中心 tab
Register a dedicated `promotion` dashboard panel gated by the existing
invite switches (credits + invite reward + invite registration), and move
the invite card out of the revenue tab so 收益中心 is pure earnings/withdrawal.

- src/User/Center.php: register promotion panel; revenue no longer depends
  on invite being on
- inc/helpers/user-center-renderers/profile-promotion.php: new panel body
  hosting the existing [data-aksrt-invite] card
- profile-revenue.php: drop the invite section; aksrt-user-center.php: drop
  unused show_invite_section context, add promotion to built-in tabs + view map
- repoint invite/promotion deep-link aliases from revenue to promotion across
  tab-url builder, tab resolver, runtime tabAliases, urls.php, and the
  revenue-JS enqueue gate
- sidebar-nav.php: add 推广中心 service entry; shell.css: entry icon color;
  sidebar-creator.php: reword revenue card
- UserRuntime.php: allow promotion in configurable tabs
2026-08-05 16:45:47 +08:00
kate522andClaude Fable 5 aa865e24e1 fix(modal): close rollout and async lifecycle gaps
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 02:31:41 +08:00
kate522andClaude Fable 5 5375ad6429 perf(modal): unify cancellable frontend modal flows
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 02:04:55 +08:00
kate522andClaude Fable 5 25ce1d8f43 refactor(badges): use modal REST routes
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 00:16:39 +08:00
kate522andClaude Fable 5 34150f3358 refactor(modal): remove legacy compatibility paths
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-05 00:06:37 +08:00
kate522andClaude Fable 5 d79b063bf9 feat(modal): add cancellable shared runtime
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-04 23:24:37 +08:00
kate522andClaude Fable 5 1f004aea46 fix(modal): align rollout schema contract
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-04 21:31:55 +08:00
kate522andClaude Fable 5 113a6bcab0 feat(modal): add rollout telemetry foundation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-04 21:23:04 +08:00
kate522 ed19937e99 feat(badges): zibll-style badge modal with category grid, detail view, and wear UX 2026-08-04 12:46:44 +08:00
kate522 e991f1a0c6 fix(badges): complete full-chain badge circuit and preset icons
Close the full circuit break in the badge/medal system and replace
empty default icons with preset SVG assets so badges render out of
the box:

- Add aksrt_get_worn_medal_icon() helper that renders the worn medal
  image inline (with settings fallback when the Badges class is
  unavailable).
- Profile header (UC) now shows the worn medal icon beside the name,
  matching zibll's name row order (display_name → VIP → Medal → Level → Verify).
- Add .medal-icon / .aksrt-identity-medal vertical-align rules in UC shell.css.
- Extract SchemaUsers::default_medal_args() and preset 6 badges (rookie,
  checkin-30, writer, popular, annual-star, vip-member) with real icon
  URLs from assets/img/medal/ (medal-1/2/5/9/12/15.svg).
- Vue badge.js: add MEDAL_BASE helper + preset icons matching PHP defaults.
2026-08-04 10:36:50 +08:00
kate522 49c12b761f feat(users): merge promotion into revenue center 2026-08-03 15:38:17 +08:00
kate522 d138c05f77 feat(users): add inline promotion center 2026-08-03 13:40:54 +08:00
kate522 26d307056e feat(orders): redesign user order center 2026-08-03 12:54:58 +08:00
kate522 8c5b1555c9 refactor: flatten src/AKSRT → src (drop theme-identifier dir)
Move all domain folders from src/AKSRT/{Domain} to src/{Domain}; remap
Composer PSR-4 "AKSRT\\": "src/"; update audit script + README + ADR
paths; remove dead tools/build-psr4-map.php (scanned deleted inc/classes).
2026-08-02 22:06:06 +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
kate522andClaude Fable 5 b475263e76 feat: 后台身份认证记录支持删除
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:54:48 +08:00
kate522andClaude Fable 5 d8a1c35e9d fix: 识别阿里云 SubCode 通过状态
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:48:16 +08:00
kate522andClaude Fable 5 4332518c22 fix: 优化阿里云失败结果和操作显示
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:44:45 +08:00
kate522andClaude Fable 5 591902f680 fix: 记录阿里云空认证明细响应
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:41:42 +08:00
kate522andClaude Fable 5 c87ef77e8a fix: 解析阿里云查询结果对象
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:38:20 +08:00
kate522andClaude Fable 5 2e9d1d40ca fix: 保留阿里云认证会话 ID
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:35:33 +08:00
kate522andClaude Fable 5 f8985a70e5 fix: 阿里云未提交认证保持等待状态
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:28:03 +08:00
kate522andClaude Fable 5 5ca3638382 fix: 身份认证身份证号码校验
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:18:15 +08:00
kate522andClaude Fable 5 ea5269e0c6 fix: 阿里云 H5 认证提交 MetaInfo
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:13:29 +08:00
kate522andClaude Fable 5 70fc95ebe1 fix: 明确阿里云缺少核身链接错误
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 22:03:04 +08:00
kate522andClaude Fable 5 5731300056 fix: 增强阿里云认证响应调试
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 21:58:25 +08:00
kate522andClaude Fable 5 9bd63edfe6 fix: 移除阿里云无效认证链接类型参数
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 21:53:16 +08:00
kate522andClaude Fable 5 6c5837ea35 fix: 避免认证服务商默认值告警
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 21:47:28 +08:00
kate522andClaude Fable 5 93bf54500f fix: 本地环境跳过阿里云回调地址
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 21:38:36 +08:00
kate522andClaude Fable 5 333a7be64b fix: 认证失败后允许重新提交
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 21:34:02 +08:00
kate522andClaude Fable 5 63705dfde0 fix: 精简身份认证申请表单
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-01 19:15:01 +08:00
kate522 4de67311cc feat: 接入腾讯云与阿里云实人认证 2026-08-01 13:21:21 +08:00
kate522 92e445dbd4 feat: 添加身份认证服务商配置页 2026-08-01 12:06:55 +08:00
kate522 0fd5848884 重新设计用户/作者卡片小工具:消除多层卡片堆叠
- WidgetUserCard/WidgetAuthorCard 内层根节点去掉重复的 zib-widget widget 类
- 用户卡片补 classname=widget_aksrt_user_card 钩子
- widget-batch5.css 新增外层 .zib-widget 包裹层透明化规则(含首页侧栏覆盖)
- 内层 .aksrt-user-card/.aksrt-author-card margin-bottom 归零,间距由外层统一
- 删除 custom-amount.css 重复的 .aksrt-user-card* 段
- 删除 sidebar.css 失效的 .widget-user-card* 死代码
- author-actions.css .user-card.author.zib-widget → .user-card.author
2026-08-01 10:38:54 +08:00
kate522 3004310194 fix: 恢复认证图标悬浮文案 2026-07-31 11:48:57 +08:00
kate522 387b9e1929 fix: 修正后台等级图标与认证提示 2026-07-31 11:36:33 +08:00
kate522 06a03fd9cf fix: 始终展示已认证标识 2026-07-31 11:15:29 +08:00
kate522 ec63b446e8 feat: 固定个人与企业认证流程 2026-07-31 10:56:59 +08:00
kate522andClaude Fable 5 d1b44cbcd5 feat(forum/shop): phase 6 dynamic page sidebars + moderator fix
Phase 6 — forum/shop widget alignment + page-sidebar matrix + block
editor coverage:

- SetupPart1: add register_page_sidebars() replicating Zibll
  zib_page_register_sidebar() — registers page_{sidebar,top_fluid,
  top_content,bottom_content,bottom_fluid}_{ID} for pages opted in
  via the `widgets_register_container` postmeta (serialized area-key
  list), cached via wp_cache. page.php already consumes these via
  dynamic_sidebar. Assertion script
  $CLAUDE_JOB_DIR/tmp/assert-page-sidebars.php passes (opt-in
  mapping + page.php consumption + 63 registered widgets).
- WidgetForumPlateModerator: fix two fatal `obs_start()` typos
  (lines 75, 153) → ob_start() (was "call to undefined function"
  on the apply-modal and main payload paths).

Forum 9 + shop 3 widget business fields already align with Zibll
bbs/shop widget definitions (count/showposts/number, orderby
dims, style, plate filter, paginate, current_plate, tabs group);
REST routes forum-topics/forum-terms/forum-boards (WidgetAjax),
forum/frontend/widgets/topics (Forum.php),
shop/frontend/widgets/products (ShopController.php) all carry
permission_callback. WidgetProductOneline registered (line 127).
Block editor covers all 63 widgets via core/legacy-widget (WP 5.8+).
CLAUDE.md is gitignored (no in-repo inc/classes/widgets residue).

Acceptance: php -l clean; audit exit 0; SetupPart1=502 lines,
WidgetForumPlateModerator=248 lines. Phase 6 done-when marked.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-30 21:38:36 +08:00
kate522andClaude Fable 5 cecc1a7b5e feat(widgets): phase 5 align marketing/decoration widgets with zibll
Align the 20 marketing/decoration widgets with Zibll field defs in
widget-produck.php / widget-more.php, focusing on the field-level
drift surfaced by the 1:1 audit:

- TagCloudWidget (widget_ui_tag_cloud): orderby → name/count/term_id
  (was count default), add order ASC/DESC, expand color palette to
  all 13 Zibll c-* keys (rand/c-hui/c-blue/-2/cyan/yellow/-2/green/
  -2/purple/-2/red/-2), number cap 100, default 20.
- WidgetBookmarkLinks (widget_ui_links_lists_2): add alignment
  (''/center/right) to form+update+render wrapper.
- FriendLinksWidget: expose orderby/order selects in form (already
  whitelisted) for bookmarks mode.
- ButtonsWidget (zib_widget_ui_buttons): whitelist pc_padding/
  m_padding/pc_width/m_width (were render-only), widen pc_gap/
  m_gap cap to 60 to match Zibll.
- RecentCommentsWidget (widget_ui_new_comment): count cap 50
  (was 20), whitelist outer_keywords.
- WidgetVideoPlayer (zib_widget_ui_dplayer): scale_height cap 200
  (was 100), whitelist muted + aspect_ratio.

Remaining 14 widgets (PricingPlans/Reviews/Faq/Stats/Highlights/
FeatureIntro/TiltCases/IconCards/IconCoverCards/CoverCards/
ComboInfo/PartnersScroll/TextTitle/Iframe) already match Zibll
field semantics (JSON/native group + obs_animation/palette/
pc_row·m_row/go_link); no drift to fix.

Acceptance: php -l clean on all changed files; audit exit 0;
all 21 widget files <=360 lines. Phase 5 done-when marked.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-30 21:27:58 +08:00