Remove level-specific gradients from the top membership summary while preserving icon accents and purchase cards.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Tone down the top membership summary to the existing VIP card language without changing purchase-card styles or behavior.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Restore the existing membership purchase cards and keep the UX refresh limited to the top membership summary.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Remove the shared dashboard card around the VIP panel and render membership details as title, level, intro, and expiry rows.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Remove profile identity chrome from the VIP header, keep the crown watermark, and flatten the summary into one thin card while preserving membership purchase cards.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Remove the shared outline that wrapped worn medal image icons across author and comment identity surfaces.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
profile-header.php was rendering two badge buttons ("我的徽章"
opening the local modal and "徽章弹层" opening a remote modal).
Drop the remote one and gate the local one behind the new
aksrt_user_has_visible_badges() helper, which only returns true
when the user actually has at least one badge entry that exists
in the active catalog dictionary — preventing a useless empty
modal when nothing can be shown.
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.
Add explicit grid-template-columns: 1fr and width: 100% to .aksrt-orders-page__list so order cards span the full width of the user center content panel.
Order items without a product thumbnail render the title and price into the
3-column grid with the image slot missing, so the title gets crushed into the
64px image column and the price floats far right. Tag such items with a
--no-image modifier that drops the image column (desktop: title fills the row
with price right-aligned; mobile: title full-width, price wraps below).
Per feedback the 待支付/售后 shortcut row is not wanted. Remove the nested
quick grid, delete the now-orphaned sidebar-orders renderer, and strip its
uc-order-grid CSS. 我的订单 remains a single tile in the 我的服务 grid.
The standalone order card is folded into the 我的服务 (My Services) sidebar
section: 我的订单 becomes a service-grid tile (all orders), with the
待支付/售后 quick shortcuts rendered beneath it as a compact row. Gated on
the orders dashboard tab being registered so no dead tile appears when the
payment stack is absent.
Phase 2 of the shop removal (1d250535) deleted inc/helpers/aksrt-commerce.php
but left the require_once in bootstrap.php, fatally breaking every page load.
The only surviving caller (page-revenue.php) already falls back gracefully.