Add admin breadcrumb and menu icons
TaxBaik CI/CD / build-and-deploy (push) Successful in 1m5s

This commit is contained in:
2026-07-09 13:35:30 +09:00
parent 5ee6a9da3f
commit 714d27bc01
2 changed files with 36 additions and 14 deletions
+21 -14
View File
@@ -2,6 +2,7 @@
var path = (Context.Request.Path.Value ?? string.Empty).ToLowerInvariant();
Func<string, bool> isActive = target => path.StartsWith(target.ToLowerInvariant(), StringComparison.OrdinalIgnoreCase);
Func<string, string> activeClass = target => isActive(target) ? "active" : string.Empty;
var breadcrumbText = ViewData["Title"]?.ToString() ?? "대시보드";
var coreOpen = isActive("/admin/dashboard") || isActive("/admin/settings") || isActive("/admin/clientlogs") || path == "/admin";
var customerOpen = isActive("/admin/customers") || isActive("/admin/clients") || isActive("/admin/inquiries") || isActive("/admin/consultingactivities");
var contentOpen = isActive("/admin/blog") || isActive("/admin/announcements") || isActive("/admin/faqs");
@@ -58,9 +59,9 @@
</h2>
<div id="adminMenuCore" class="accordion-collapse collapse @(coreOpen ? "show" : string.Empty)" data-bs-parent="#adminSidebarAccordion">
<div class="list-group list-group-flush list-group-transparent">
<a class="list-group-item list-group-item-action @activeClass("/admin/dashboard")" href="/admin/dashboard">대시보드</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/settings")" href="/admin/settings">설정</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/clientlogs")" href="/admin/clientlogs">클라이언트 로그</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/dashboard")" href="/admin/dashboard">대시보드</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/settings")" href="/admin/settings">설정</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/clientlogs")" href="/admin/clientlogs">클라이언트 로그</a>
</div>
</div>
</div>
@@ -72,10 +73,10 @@
</h2>
<div id="adminMenuCustomer" class="accordion-collapse collapse @(customerOpen ? "show" : string.Empty)" data-bs-parent="#adminSidebarAccordion">
<div class="list-group list-group-flush list-group-transparent">
<a class="list-group-item list-group-item-action @activeClass("/admin/customers")" href="/admin/customers">고객</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/clients")" href="/admin/clients">고객사</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/inquiries")" href="/admin/inquiries">문의</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/consultingactivities")" href="/admin/consultingactivities">상담 활동</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/customers")" href="/admin/customers">고객</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/clients")" href="/admin/clients">고객사</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/inquiries")" href="/admin/inquiries">문의</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/consultingactivities")" href="/admin/consultingactivities">상담 활동</a>
</div>
</div>
</div>
@@ -87,9 +88,9 @@
</h2>
<div id="adminMenuContent" class="accordion-collapse collapse @(contentOpen ? "show" : string.Empty)" data-bs-parent="#adminSidebarAccordion">
<div class="list-group list-group-flush list-group-transparent">
<a class="list-group-item list-group-item-action @activeClass("/admin/blog")" href="/admin/blog">블로그</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/announcements")" href="/admin/announcements">공지사항</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/faqs")" href="/admin/faqs">FAQ</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/blog")" href="/admin/blog">블로그</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/announcements")" href="/admin/announcements">공지사항</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/faqs")" href="/admin/faqs">? FAQ</a>
</div>
</div>
</div>
@@ -101,10 +102,10 @@
</h2>
<div id="adminMenuFinance" class="accordion-collapse collapse @(financeOpen ? "show" : string.Empty)" data-bs-parent="#adminSidebarAccordion">
<div class="list-group list-group-flush list-group-transparent">
<a class="list-group-item list-group-item-action @activeClass("/admin/taxprofiles")" href="/admin/taxprofiles">세무 프로필</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/taxfilings")" href="/admin/taxfilings">신고 관리</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/taxfilingschedules")" href="/admin/taxfilingschedules">신고 일정</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/revenuetrackings")" href="/admin/revenuetrackings">매출 추적</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/taxprofiles")" href="/admin/taxprofiles">세무 프로필</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/taxfilings")" href="/admin/taxfilings">신고 관리</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/taxfilingschedules")" href="/admin/taxfilingschedules">신고 일정</a>
<a class="list-group-item list-group-item-action @activeClass("/admin/revenuetrackings")" href="/admin/revenuetrackings">매출 추적</a>
</div>
</div>
</div>
@@ -115,6 +116,12 @@
<main class="col-12 col-lg-9 col-xxl-10">
<div class="card shadow-sm border-0 admin-content-card admin-main-surface">
<div class="card-body p-3 p-md-4 p-xl-5">
<nav aria-label="breadcrumb" class="mb-4">
<ol class="breadcrumb breadcrumb-muted">
<li class="breadcrumb-item"><a href="/admin/dashboard">관리자</a></li>
<li class="breadcrumb-item active" aria-current="page">@breadcrumbText</li>
</ol>
</nav>
@RenderBody()
</div>
</div>
+15
View File
@@ -415,6 +415,21 @@ html, body {
min-height: calc(100vh - 140px);
}
.breadcrumb-muted {
--bs-breadcrumb-divider-color: var(--text-tertiary);
margin-bottom: 0;
}
.breadcrumb-muted a {
color: var(--text-secondary);
text-decoration: none;
}
.breadcrumb-muted a:hover {
color: var(--primary-dark);
text-decoration: underline;
}
.admin-faq-edit-panel {
max-width: 720px;
}