chore(admin-ui): dedupe platform order show back links into page header actions
This commit is contained in:
@@ -27,6 +27,23 @@
|
||||
'refund_inconsistent' => 1,
|
||||
]), $orderShowSelf);
|
||||
@endphp
|
||||
@php
|
||||
$incomingBack = (string) request()->query('back', '');
|
||||
// back 安全护栏:
|
||||
// - 仅允许站内相对路径(/ 开头)
|
||||
// - 拒绝引号/尖括号
|
||||
// - 拒绝 nested back=(避免 URL 膨胀/绕过)
|
||||
// 说明:下方 href 采用原样输出以避免 & 影响断言。
|
||||
$safeBackForLinks = \App\Support\BackUrl::sanitizeForLinks($incomingBack);
|
||||
|
||||
// 若 back 指向的平台订单列表带 lead_id,则在详情页也提示当前来源线索(更不迷路)。
|
||||
$leadIdFromBack = 0;
|
||||
if ($safeBackForLinks !== '') {
|
||||
$parts = parse_url($safeBackForLinks);
|
||||
parse_str((string) ($parts['query'] ?? ''), $q);
|
||||
$leadIdFromBack = (int) ($q['lead_id'] ?? 0);
|
||||
}
|
||||
@endphp
|
||||
<div class="page-header mb-20" data-page="admin.platform_orders.show">
|
||||
<div class="page-header-main">
|
||||
<div>
|
||||
@@ -35,6 +52,10 @@
|
||||
</div>
|
||||
|
||||
<div class="page-header-actions">
|
||||
@if($safeBackForLinks !== '')
|
||||
<a href="{!! $safeBackForLinks !!}" class="btn btn-secondary btn-sm">← 返回上一页(保留上下文)</a>
|
||||
@endif
|
||||
|
||||
@php
|
||||
$platformLeadId = (int) (data_get($order->meta, 'platform_lead_id') ?? 0);
|
||||
$leadIndexUrl = '';
|
||||
@@ -47,7 +68,11 @@
|
||||
@if($platformLeadId > 0)
|
||||
<span class="badge">来源线索:#{{ $platformLeadId }}</span>
|
||||
<a class="btn btn-secondary btn-sm" href="{!! $leadIndexUrl !!}">查看线索</a>
|
||||
@elseif($leadIdFromBack > 0)
|
||||
<span class="badge">来源线索:#{{ $leadIdFromBack }}</span>
|
||||
@endif
|
||||
|
||||
<a href="{!! $makePlatformOrderIndexUrl([]) !!}" class="btn btn-secondary btn-sm">返回平台订单列表(保留上下文)</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -877,34 +902,5 @@
|
||||
<pre class="pre-wrap">{{ json_encode($order->meta, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE) }}</pre>
|
||||
</div>
|
||||
|
||||
<div class="mb-20 mt-16">
|
||||
@php
|
||||
$incomingBack = (string) request()->query('back', '');
|
||||
// back 安全护栏:
|
||||
// - 仅允许站内相对路径(/ 开头)
|
||||
// - 拒绝引号/尖括号
|
||||
// - 拒绝 nested back=(避免 URL 膨胀/绕过)
|
||||
// 说明:下方 href 采用原样输出以避免 & 影响断言。
|
||||
$safeBackForLinks = \App\Support\BackUrl::sanitizeForLinks($incomingBack);
|
||||
|
||||
// 若 back 指向的平台订单列表带 lead_id,则在详情页也提示当前来源线索(更不迷路)。
|
||||
$leadIdFromBack = 0;
|
||||
if ($safeBackForLinks !== '') {
|
||||
$parts = parse_url($safeBackForLinks);
|
||||
parse_str((string) ($parts['query'] ?? ''), $q);
|
||||
$leadIdFromBack = (int) ($q['lead_id'] ?? 0);
|
||||
}
|
||||
@endphp
|
||||
|
||||
@if($safeBackForLinks !== '')
|
||||
<a href="{!! $safeBackForLinks !!}" class="muted">← 返回上一页(保留上下文)</a>
|
||||
@if($leadIdFromBack > 0)
|
||||
<span class="muted">|</span>
|
||||
<span class="badge">来源线索:#{{ $leadIdFromBack }}</span>
|
||||
@endif
|
||||
<span class="muted">|</span>
|
||||
@endif
|
||||
|
||||
<a href="{!! $makePlatformOrderIndexUrl([]) !!}">← 返回平台订单列表(保留上下文)</a>
|
||||
</div>
|
||||
{{-- 返回入口已收敛到 PageHeader actions(避免页面底部重复出现“返回上一页/返回列表”链接) --}}
|
||||
@endsection
|
||||
|
||||
Reference in New Issue
Block a user