diff --git a/app/Controllers/BaseController.php b/app/Controllers/BaseController.php index a027808..07c6ae9 100644 --- a/app/Controllers/BaseController.php +++ b/app/Controllers/BaseController.php @@ -51,13 +51,16 @@ abstract class BaseController extends Controller protected function renderWorkPage(string $title, string $contentView, array $contentData = []): string { $content = view($contentView, $contentData); - $uri = service('request')->getUri(); - $seg1 = $uri->getSegment(1); - $seg2 = $uri->getSegment(2); - - // 지정판매소 관리는 관리자 전용 기능으로, /bag 경로여도 관리자 레이아웃을 유지한다. - $forceAdminLayoutOnBag = ($seg1 === 'bag' && $seg2 === 'designated-shops'); - if ($seg1 === 'bag' && ! $forceAdminLayoutOnBag) { + helper('admin'); + $path = function_exists('current_nav_request_path') ? current_nav_request_path() : ''; + if ($path === '') { + $uri = service('request')->getUri(); + $path = trim((string) $uri->getPath(), '/'); + } + while (str_starts_with($path, 'index.php/')) { + $path = substr($path, strlen('index.php/')); + } + if ($path === 'bag' || str_starts_with($path, 'bag/')) { return view('bag/layout/main', [ 'title' => $title, 'content' => $content,