126 lines
5.8 KiB
PHP
126 lines
5.8 KiB
PHP
<!doctype html>
|
||
<html lang="zh-CN">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||
<title>@yield('title', 'SaaSShop 总台管理')</title>
|
||
<link rel="stylesheet" href="/css/admin-theme.css">
|
||
<link rel="stylesheet" href="/css/admin-base.css">
|
||
<link rel="stylesheet" href="/css/admin-components.css">
|
||
</head>
|
||
<body>
|
||
<div class="layout layout-topnav">
|
||
<aside class="sidebar topnav">
|
||
<div class="topnav-row">
|
||
<a class="topnav-brand" href="/admin">SaaSShop</a>
|
||
|
||
<nav class="topnav-menu" aria-label="总台主导航" data-role="topnav-groups-root">
|
||
<a class="topnav-link" href="/admin">总览</a>
|
||
|
||
<details class="topnav-item nav-group" data-role="topnav-group">
|
||
<summary class="topnav-summary nav-group-title">收费中心</summary>
|
||
<div class="topnav-dropdown">
|
||
<a href="/admin/platform-orders" class="topnav-sub nav-item nav-item--sub">平台订单</a>
|
||
<a href="/admin/site-subscriptions" class="topnav-sub nav-item nav-item--sub">订阅管理</a>
|
||
<a href="/admin/plans" class="topnav-sub nav-item nav-item--sub">套餐管理</a>
|
||
</div>
|
||
</details>
|
||
|
||
<details class="topnav-item nav-group" data-role="topnav-group">
|
||
<summary class="topnav-summary nav-group-title">站点治理</summary>
|
||
<div class="topnav-dropdown">
|
||
<a href="/admin/merchants" class="topnav-sub nav-item nav-item--sub">站点管理</a>
|
||
<a href="/admin/orders" class="topnav-sub nav-item nav-item--sub">订单监控</a>
|
||
<a href="/admin/products" class="topnav-sub nav-item nav-item--sub">商品巡检</a>
|
||
<a href="/admin/product-categories" class="topnav-sub nav-item nav-item--sub">商品分类</a>
|
||
</div>
|
||
</details>
|
||
|
||
<details class="topnav-item nav-group" data-role="topnav-group">
|
||
<summary class="topnav-summary nav-group-title">增长转化</summary>
|
||
<div class="topnav-dropdown">
|
||
<a href="/admin/platform-leads" class="topnav-sub nav-item nav-item--sub">开通线索</a>
|
||
</div>
|
||
</details>
|
||
|
||
<details class="topnav-item nav-group" data-role="topnav-group">
|
||
<summary class="topnav-summary nav-group-title">客服中心</summary>
|
||
<div class="topnav-dropdown">
|
||
<a href="/admin/support-tickets" class="topnav-sub nav-item nav-item--sub">工单</a>
|
||
</div>
|
||
</details>
|
||
|
||
<details class="topnav-item nav-group" data-role="topnav-group">
|
||
<summary class="topnav-summary nav-group-title">系统</summary>
|
||
<div class="topnav-dropdown">
|
||
<a href="/admin/settings/system" class="topnav-sub nav-item nav-item--sub">系统配置</a>
|
||
</div>
|
||
</details>
|
||
</nav>
|
||
|
||
<div class="topnav-actions">
|
||
<a class="topnav-link" href="/">返回前台</a>
|
||
<form method="post" action="/admin/logout" class="logout-form topnav-logout">@csrf <button type="submit" class="btn btn-secondary btn-sm">退出登录</button></form>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="topnav-meta">
|
||
<div class="muted">总台管理 / Platform Ops</div>
|
||
</div>
|
||
</aside>
|
||
<main class="content">
|
||
<div class="toast-container" data-role="toast-container" aria-live="polite" aria-relevant="additions" aria-atomic="true"></div>
|
||
|
||
<div class="top">
|
||
<div>
|
||
<h1 class="page-title">@yield('page_title', '总台管理')</h1>
|
||
<div class="muted">当前登录:{{ session('admin_name') }}({{ session('admin_email') }}) / 角色:{{ session('admin_role', 'unknown') }}</div>
|
||
<div class="badge">登录范围:{{ session('admin_scope', 'platform') === 'platform' ? '总台管理员' : '商家管理员' }}</div>
|
||
</div>
|
||
</div>
|
||
@if(session('success'))
|
||
<div class="flash" data-flash="success">{{ session('success') }}</div>
|
||
@endif
|
||
@if(session('warning'))
|
||
<div class="warning" data-flash="warning">{{ session('warning') }}</div>
|
||
@endif
|
||
@if(session('error'))
|
||
<div class="error-box" data-flash="error">{{ session('error') }}</div>
|
||
@endif
|
||
@if($errors->any())
|
||
<div class="error-box">
|
||
<strong>提交失败:</strong>
|
||
<ul class="list-indent">
|
||
@foreach($errors->all() as $error)
|
||
<li>{{ $error }}</li>
|
||
@endforeach
|
||
</ul>
|
||
</div>
|
||
@endif
|
||
@yield('content')
|
||
</main>
|
||
</div>
|
||
<script src="/js/admin.js" defer></script>
|
||
<script data-action="topnav-single-open">
|
||
(function(){
|
||
var root = document.querySelector('[data-role="topnav-groups-root"]');
|
||
if(!root){return;}
|
||
|
||
var groups = root.querySelectorAll('details[data-role="topnav-group"]');
|
||
if(!groups || groups.length === 0){return;}
|
||
|
||
groups.forEach(function(d){
|
||
d.addEventListener('toggle', function(){
|
||
if(!d.open){return;}
|
||
groups.forEach(function(other){
|
||
if(other !== d){
|
||
other.open = false;
|
||
}
|
||
});
|
||
});
|
||
});
|
||
})();
|
||
</script>
|
||
</body>
|
||
</html>
|