fix: 워크스페이스 탭 중첩 셸 방지 + 세션 만료 시 로그인 리다이렉트
- EmbedRedirectFilter 추가: 임베드(embed=1) 요청의 리다이렉트 Location에 embed 유지(중첩 셸 방지) - bag/* 전체에 loginAuth 적용, 임베드 대시보드 로그아웃 시 로그인으로 이동 - 기본코드 종류 선택 시 embed 유지, 일괄입고 오류 복귀를 명시 URL로(back() 제거) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -12,6 +12,7 @@ $showKindActions = $canManageKinds;
|
||||
$selectedKindId = (int) ($selectedKind->ck_idx ?? 0);
|
||||
$colCount = 6 + ($showKindActions ? 1 : 0);
|
||||
$detailColCount = 7 + ($canManageDetails ? 1 : 0);
|
||||
$embedQs = ! empty($isEmbed) ? '&embed=1' : ''; // 워크스페이스 탭 안에서는 embed 유지(중첩 셸 방지)
|
||||
|
||||
/** 상태 배지 (업무현황 스타일의 가벼운 pill) */
|
||||
$stateBadge = static function (int $state): string {
|
||||
@@ -51,7 +52,7 @@ $stateBadge = static function (int $state): string {
|
||||
<?php $i = 0; foreach ($codeKinds as $row): $i++; ?>
|
||||
<?php
|
||||
$isSelected = (int) $row->ck_idx === $selectedKindId;
|
||||
$detailUrl = base_url('bag/code-kinds?ck_idx=' . (int) $row->ck_idx);
|
||||
$detailUrl = base_url('bag/code-kinds?ck_idx=' . (int) $row->ck_idx . $embedQs);
|
||||
?>
|
||||
<tr class="border-b border-gray-200 last:border-0 cursor-pointer hover:bg-blue-50/60 <?= $isSelected ? 'bg-blue-50' : '' ?>"
|
||||
onclick="window.location.href='<?= esc($detailUrl, 'attr') ?>'">
|
||||
|
||||
Reference in New Issue
Block a user