chore(branding): remove leftover upstream theme identifiers
The theme was renamed Zibll/子比 → AKSRT → Jio, but upstream branding survived the sweeps in CSS classes, the SVG sprite prefix, a persisted widget field ID, JS events, admin Vue class names, test infrastructure and docblocks. Renames: - zib-widget / zib-widget-wrap / zib-slider → jio-widget-box / jio-widget-box-wrap / jio-slider-box (jio-widget is taken by the modern widget shell, jio-box-* by the card primitives) - zib-partners-scroll + zps-* → jio-partners-scroll + jps-* - zib-combo-info-card + zci-* → jio-combo-info-card + jci-* - zibsvg- → jiosvg-, including the exported picker helpers and the fa-zibsvg- family-prefix guard - zibpay_type → pay_type; the dual-read fallback in PostQuery collapses to a single key - [zibajax="submit"] dropped (no PHP emitter); zib_ajax.success → jio_ajax.success - aks-* admin Vue classes → jio-* - zib_palette() → palette() User-facing vendor traces are gone: the floating "more" button default no longer ships a zibll.com link or 子比主题 marketing copy, the notice widget ships no preset promo entries, and the four 官网教程 links are removed from the post-list admin schema. Test infrastructure renamed to neutral names (docker-compose.reference.yml, Caddyfile, article-baseline.json, modern-widgets-contract.test.cjs) with their DB/volume/env/slug identifiers following. Kept intentionally, documented in tests/fixtures/README.md: the golden fixture reference fingerprint (a SHA-256 record of an external directory, read by validate-widget-golden / generate-widget-golden-fixture / audit-widget-system), the doesNotMatch guards that prove the old tokens are gone, and the reference theme's own meta key in the visual fixtures. No backward-compat or data migration: saved widget configs holding old icon keys or the old field ID silently lose them, per the project's rewrite-over-compatibility rule. Verified: 132/132 node contract tests, php tests/widget-system/run.php (146 assertions), audit-admin-contracts, audit-psr4-paths and validate-widget-golden all green; tracked bundles regenerated and in sync. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
42cc64106d
commit
427968a721
188 files changed
+915
-967
No files matched your search
+17
-18
@@ -64,7 +64,7 @@
|
||||
return "";
|
||||
}
|
||||
|
||||
// 会员图标(Zibll zibpay_get_vip_icon:vip_N.svg 或自定义 img_icon)。
|
||||
// 会员图标:vip_N.svg 或自定义 img_icon。
|
||||
function vipIcon(levelInfo) {
|
||||
if (levelInfo && levelInfo.img_icon) {
|
||||
var img = node("img", "img-icon");
|
||||
@@ -76,7 +76,7 @@
|
||||
return node("i", "fa fas fa-gem");
|
||||
}
|
||||
|
||||
// 价格行(Zibll:mark 小号 px12 前缀 + 数字;原价 original-price.relative)。
|
||||
// 价格行:mark 小号 px12 前缀 + 数字;原价 original-price.relative。
|
||||
function priceRow(mark, priceLabel, showLabel) {
|
||||
var row = node("div", "flex abl gap6");
|
||||
var price = node("div", "product-price c-red");
|
||||
@@ -120,10 +120,10 @@
|
||||
input.checked = index === 0;
|
||||
append(label, input);
|
||||
|
||||
// Zibll 套餐卡:zib-widget vip-product relative text-center product-box
|
||||
// 套餐卡:jio-widget-box vip-product relative text-center product-box
|
||||
// (右上 tag + 价格行 + 时长 badge,无标题行)。
|
||||
var product = node("div", "zib-widget vip-product relative text-center product-box");
|
||||
// 标签颜色取后台「标签颜色」配置,未配置时回退参考主题默认的 jb-yellow。
|
||||
var product = node("div", "jio-widget-box vip-product relative text-center product-box");
|
||||
// 标签颜色取后台「标签颜色」配置,未配置时回退默认的 jb-yellow。
|
||||
if (item.discount_tag) append(product, htmlNode("div", "abs-right vip-tag badg " + (item.tag_class || "jb-yellow"), item.discount_tag));
|
||||
append(product, priceRow(mark, item.price_label || "", item.show_price_label || ""));
|
||||
if (item.days_label) append(product, node("div", "muted-2-color c-blue em09 p2-10 badg radius", item.days_label));
|
||||
@@ -135,11 +135,11 @@
|
||||
|
||||
function renderMethods(parent, methods, cardPass, wallet) {
|
||||
methods = Array.isArray(methods) ? methods : [];
|
||||
if (!methods.length) return; // 无可用支付方式:由按钮区渲染 Zibll 同款 badg 提示。
|
||||
if (!methods.length) return; // 无可用支付方式:由按钮区渲染 badg 提示。
|
||||
wallet = wallet || {};
|
||||
var defaultMethod = text(methods[0].id || "balance");
|
||||
|
||||
// 支付方式选择行(Zibll zibpay_get_initiate_pay_input 同构:
|
||||
// 支付方式选择行(与余额充值/购买积分弹窗同构:
|
||||
// .payment-method-radio.hollow-radio + logo 图 + data-for 选中模型;
|
||||
// 与余额充值/购买积分弹窗完全一致的组件)。
|
||||
if (methods.length > 1) {
|
||||
@@ -163,7 +163,7 @@
|
||||
append(parent, row);
|
||||
}
|
||||
|
||||
// 我的余额盒(Zibll user_balance_box 同构:选中余额渠道时显示)。
|
||||
// 我的余额盒(选中余额渠道时显示)。
|
||||
if (methods.some(function (m) { return text(m.id) === "balance"; })) {
|
||||
var balanceBox = node("div", "mb10 muted-box padding-h10");
|
||||
balanceBox.setAttribute("data-controller", "payment_method");
|
||||
@@ -180,7 +180,7 @@
|
||||
append(parent, balanceBox);
|
||||
}
|
||||
|
||||
// 卡密盒(Zibll password_box 同构:mb10 padding-h10 padding-w6 +
|
||||
// 卡密盒(mb10 padding-h10 padding-w6 +
|
||||
// data-controller="payment_method" 契约 + form-control 输入)。
|
||||
if (cardPass) {
|
||||
var box = node("div", "mb10 padding-h10 padding-w6");
|
||||
@@ -372,7 +372,7 @@
|
||||
modal.setAttribute("data-jio-vip-modal", "");
|
||||
if (view.version && view.version.catalog) modal.setAttribute("data-jio-vip-version", view.version.catalog);
|
||||
|
||||
// 关闭按钮(Zibll 原版内联 SVG close 图标)。
|
||||
// 关闭按钮(内联 SVG close 图标)。
|
||||
var close = document.createElement("button");
|
||||
close.type = "button";
|
||||
close.className = "close";
|
||||
@@ -388,7 +388,7 @@
|
||||
close.appendChild(closeSvg);
|
||||
append(modal, close);
|
||||
|
||||
// 用户信息(Zibll:list-inline user-box)。
|
||||
// 用户信息(list-inline user-box)。
|
||||
var userBox = node("ul", "list-inline user-box");
|
||||
var avatarItem = node("li");
|
||||
var avatarWrap = node("div", "avatar-img");
|
||||
@@ -412,7 +412,7 @@
|
||||
append(userBox, userInfo);
|
||||
append(modal, userBox);
|
||||
|
||||
// 会员缩略卡 tabs(Zibll vip-cardminis:vip-card.vip-cardmini + active-icon 勾)。
|
||||
// 会员缩略卡 tabs(vip-cardminis:vip-card.vip-cardmini + active-icon 勾)。
|
||||
var tabs = node("ul", "flex jsb mt10 mb20 vip-cardminis gutters-5");
|
||||
var content = node("div", "tab-content mt10");
|
||||
var activeIndex = -1;
|
||||
@@ -455,7 +455,7 @@
|
||||
append(tabItem, activeIcon);
|
||||
append(tabs, tabItem);
|
||||
|
||||
// pane(Zibll tab-pane fade active in)。
|
||||
// pane(tab-pane fade active in)。
|
||||
var pane = node("div", "tab-pane fade jio-vip-pane" + (active ? " active in" : ""));
|
||||
pane.id = tabId;
|
||||
pane.hidden = !active;
|
||||
@@ -463,7 +463,7 @@
|
||||
form.setAttribute("onsubmit", "return false;");
|
||||
var row = node("div", "pay-vip-form-row");
|
||||
|
||||
// 左侧会员信息(Zibll zibpay_get_pay_vip_info_box)。
|
||||
// 会员信息卡(v-info 区块)。
|
||||
var info = node("div", "text-center pay-vip-info");
|
||||
var iconbox = node("div", "v-iconbox mb10 flex jc gap10");
|
||||
var vicon = node("div", "v-icon flex jc");
|
||||
@@ -487,7 +487,7 @@
|
||||
renderProducts(products, group.items, wallet.mark);
|
||||
var points = catalog.points_exchange || {};
|
||||
if (allowed.points_exchange !== false && points.enabled && Array.isArray(points.packages) && points.packages.length) {
|
||||
// 参考主题 zibpay_get_pay_uservip_modal 的积分兑换入口:
|
||||
// 积分兑换入口:
|
||||
// btn-block but mb10 padding-lg c-green mini-radius + points-color 图标 +
|
||||
// fa-angle-right;点击开服务端静态兑换弹窗(不再跳转用户中心)。
|
||||
var pointsLink = node("a", "btn-block but mb10 padding-lg c-green mini-radius");
|
||||
@@ -508,9 +508,8 @@
|
||||
var noMethod = methods.length === 0;
|
||||
var reason = actionReason(reasons[actionName]);
|
||||
var canPurchase = actionAllowed && !noMethod;
|
||||
// 按钮字样对齐参考主题:会员弹窗即 zibpay_get_initiate_pay_input(4)
|
||||
// 默认文案「立即支付」(开通/续费场景一致);无可用支付方式时渲染
|
||||
// Zibll 同款 badg 提示,而非禁用按钮。
|
||||
// 按钮字样对齐会员弹窗默认文案「立即支付」(开通/续费场景一致);无可用支付方式时渲染
|
||||
// badg 提示,而非禁用按钮。
|
||||
if (noMethod) {
|
||||
append(products, node("span", "badg px12 c-yellow-2", "暂时无法支付,请与客服联系"));
|
||||
} else {
|
||||
|
||||
Reference in new issue
Block a user