88 lines
3.4 KiB
HTML
88 lines
3.4 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="ko">
|
|
|
|
<head>
|
|
<meta charset="UTF-8" />
|
|
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
<title>한맥가족 자산관리시스템</title>
|
|
<link rel="stylesheet"
|
|
href="https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css" />
|
|
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
|
|
<script src="https://cdn.jsdelivr.net/npm/chartjs-plugin-datalabels@2.0.0"></script>
|
|
<script src="/qrcode.min.js"></script>
|
|
</head>
|
|
|
|
<body>
|
|
<div class="login-layout" id="login-container" style="display: none;">
|
|
<section class="login-card">
|
|
<div class="login-header">
|
|
<img src="/image 92.png" alt="Logo" class="login-logo" />
|
|
<h2>한맥자산관리시스템</h2>
|
|
<p>전화번호로 본인 확인 후 로그인하세요.</p>
|
|
</div>
|
|
|
|
<form id="phone-login-form" class="login-form">
|
|
<label class="login-field">
|
|
<span>전화번호</span>
|
|
<input id="phone-login-id" name="phoneLoginId" type="tel" autocomplete="tel" placeholder="휴대전화 번호 입력" required />
|
|
</label>
|
|
<p id="phone-login-hint" class="login-hint">숫자만 입력하면 됩니다. 인증 링크는 등록된 카카오톡 또는 SMS로 전송됩니다.</p>
|
|
<p id="phone-login-status" class="login-status" hidden></p>
|
|
<p id="phone-login-error" class="login-error" hidden></p>
|
|
<button id="phone-login-submit" type="submit" class="btn btn-primary login-submit">인증 링크 보내기</button>
|
|
</form>
|
|
|
|
<div class="login-footer">
|
|
Baron SSO가 전송한 인증 링크를 모바일에서 승인하면 자동으로 로그인됩니다.
|
|
</div>
|
|
</section>
|
|
</div>
|
|
|
|
<div class="app-layout" id="app-layout" style="display: none;">
|
|
<!-- Single-Line Integrated Header -->
|
|
<header class="main-header">
|
|
<div class="header-container" id="nav-container">
|
|
<div class="brand">
|
|
<img src="/image 92.png" alt="Logo" class="main-logo" />
|
|
<h1>한맥자산관리시스템</h1>
|
|
</div>
|
|
|
|
<!-- Navigation (GNB + LNB in same row) -->
|
|
<nav class="integrated-nav" id="main-nav">
|
|
<!-- JS will render main items and sub items here side-by-side -->
|
|
</nav>
|
|
|
|
<div class="header-actions">
|
|
<div class="role-switcher" id="role-switcher">
|
|
<span class="role-label user active">실무자</span>
|
|
<label class="switch">
|
|
<input type="checkbox" id="role-toggle-checkbox">
|
|
<span class="slider round"></span>
|
|
</label>
|
|
<span class="role-label admin">관리자</span>
|
|
</div>
|
|
<button id="btn-admin-page" class="hidden"></button> <!-- JS 호환용 숨김 -->
|
|
<button id="btn-open-guide-header" class="btn btn-outline" title="프로세스 가이드">
|
|
<i data-lucide="book-open"></i> 가이드
|
|
</button>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
|
|
<!-- Main Content Area -->
|
|
<main class="content-area" id="main-content">
|
|
<!-- Components inject views here -->
|
|
</main>
|
|
|
|
<!-- Footer -->
|
|
<footer class="main-footer">
|
|
<p>© 2026 BARON Consultant Co,Ltd. All rights reserved.</p>
|
|
</footer>
|
|
</div>
|
|
|
|
<!-- All modals are injected dynamically -->
|
|
<script type="module" src="/src/main.ts"></script>
|
|
</body>
|
|
|
|
</html> |