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.
This commit is contained in:
1 parent
b7ee5987f0
commit
b8ee6b6a43
6 files changed
+132
-23
No files matched your search
@@ -241,6 +241,20 @@ trait GlobalControllerPart1 {
|
||||
$icon_dark = '';
|
||||
$icon_light = '';
|
||||
}
|
||||
// VIP float always uses modal path; drop stale link/hover and normalize icons.
|
||||
$link = esc_url_raw($item['link'] ?? '');
|
||||
$hover = wp_kses_post($item['hover'] ?? '');
|
||||
if ($type === 'pay_vip') {
|
||||
$link = '';
|
||||
$hover = '';
|
||||
if ($icon === '' || str_contains($icon, 'fa-diamond') || $icon === 'fa fa-diamond') {
|
||||
$icon = 'fas fa-gem';
|
||||
}
|
||||
// Ensure FA5 prefix when bare fa-* is stored.
|
||||
if ($icon !== '' && !preg_match('/\b(fas|far|fab|fal|fad)\b/', $icon)) {
|
||||
$icon = 'fas ' . ltrim(preg_replace('/^fa\s+/', '', $icon) ?? $icon);
|
||||
}
|
||||
}
|
||||
|
||||
return [
|
||||
'id' => sanitize_text_field($item['id'] ?? uniqid('float_')),
|
||||
@@ -254,9 +268,9 @@ trait GlobalControllerPart1 {
|
||||
'qq' => $qq,
|
||||
'qrcode_img' => esc_url_raw($item['qrcode_img'] ?? ''),
|
||||
'wechat_img' => esc_url_raw($item['wechat_img'] ?? ''),
|
||||
'link' => esc_url_raw($item['link'] ?? ''),
|
||||
'link' => $link,
|
||||
'add_items' => $add_items,
|
||||
'hover' => wp_kses_post($item['hover'] ?? ''),
|
||||
'hover' => $hover,
|
||||
'qr_size' => $qr_size,
|
||||
'hover_width' => $hover_width,
|
||||
'pc_s' => !empty($item['pc_s']),
|
||||
|
||||
Reference in new issue
Block a user