- Introduced common.js for shared functions including API calls, error reporting, and UI helpers. - Implemented feedback.js for the feedback reporting page, including form handling and displaying feedback status. - Added layout.js for managing galaxy and section layouts in the visualization. - Created login.js for user authentication with session management. - Developed search.js for term searching based on user input and synonyms. - Implemented signup.js for user registration with validation and immediate login.
113 lines
5.6 KiB
HTML
113 lines
5.6 KiB
HTML
<!doctype html>
|
|
<html lang="ko">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>오류 신고 · 지역사회간호학 개념 우주</title>
|
|
<meta name="description" content="개념 우주의 잘못된 뜻, 관계, 출처, 화면 오류를 알려 주세요.">
|
|
<link rel="icon" href="/static/favicon.svg" type="image/svg+xml">
|
|
<link rel="stylesheet" href="/static/css/base.css">
|
|
<link rel="stylesheet" href="/static/css/feedback.css">
|
|
</head>
|
|
<body>
|
|
<a class="skip-link" href="#main">본문으로 건너뛰기</a>
|
|
<header class="topbar">
|
|
<a class="brand" href="/">
|
|
<span class="brand-logo" aria-hidden="true"></span>
|
|
<span>
|
|
<span class="brand-title">지역사회간호학 개념 우주</span><br>
|
|
<span class="brand-sub">교과서 색인으로 만든 개념 지도</span>
|
|
</span>
|
|
</a>
|
|
<nav class="topnav" aria-label="주 메뉴">
|
|
<a href="/">개념 우주</a>
|
|
<a href="/feedback" aria-current="page">오류 신고</a>
|
|
<a href="/admin">관리</a>
|
|
</nav>
|
|
</header>
|
|
|
|
<main id="main" class="fb-main">
|
|
<section class="card fb-form-card" aria-labelledby="fb-title">
|
|
<h1 id="fb-title">오류 신고</h1>
|
|
<p class="muted fb-lead">뜻이 틀렸거나, 관계가 이상하거나, 출처 페이지가 맞지 않는 곳을 발견하면 알려 주세요. 검수자가 확인한 뒤 고치고, 처리 결과를 아래 목록에 남깁니다.</p>
|
|
|
|
<div id="fb-done" class="fb-done" hidden tabindex="-1" role="status"></div>
|
|
|
|
<form id="fb-form" novalidate>
|
|
<div class="fb-grid">
|
|
<label class="field">
|
|
<span>유형 <b class="req" aria-hidden="true">*</b></span>
|
|
<select id="fb-type" class="input" name="type" required></select>
|
|
</label>
|
|
|
|
<div class="field fb-target">
|
|
<label for="fb-term"><span class="field-label">어떤 용어인가요? <span class="faint">(선택)</span></span></label>
|
|
<div class="ac" id="fb-ac">
|
|
<input id="fb-term" class="input" type="text" autocomplete="off" placeholder="용어 이름이나 영어 표기로 찾기"
|
|
role="combobox" aria-autocomplete="list" aria-expanded="false" aria-controls="fb-term-list">
|
|
<ul id="fb-term-list" class="ac-list" role="listbox" hidden></ul>
|
|
</div>
|
|
<div id="fb-term-chosen" class="fb-chosen" hidden></div>
|
|
<div id="fb-rel-chosen" class="fb-chosen" hidden></div>
|
|
</div>
|
|
</div>
|
|
|
|
<label class="field">
|
|
<span>무엇이 잘못되었나요? <b class="req" aria-hidden="true">*</b></span>
|
|
<textarea id="fb-message" class="input" name="message" required minlength="2" maxlength="4000" rows="5"
|
|
aria-describedby="fb-message-help fb-message-count"
|
|
placeholder="예: ‘일차보건의료’의 쉬운 뜻이 교과서 정의와 다릅니다."></textarea>
|
|
<span class="field-foot"><span id="fb-message-help" class="faint">2자 이상 적어 주세요.</span><span id="fb-message-count" class="faint" aria-live="polite">0 / 4000</span></span>
|
|
</label>
|
|
|
|
<label class="field">
|
|
<span>올바른 내용 제안 <span class="faint">(선택)</span></span>
|
|
<textarea id="fb-suggestion" class="input" name="suggestion" maxlength="4000" rows="4"
|
|
aria-describedby="fb-suggestion-help"
|
|
placeholder="바르게 고친 문장이나 연결을 적어 주세요."></textarea>
|
|
<span id="fb-suggestion-help" class="faint field-foot">근거가 있다면 함께 적어 주세요.</span>
|
|
</label>
|
|
|
|
<div class="fb-grid">
|
|
<label class="field">
|
|
<span>이름 <span class="faint">(선택)</span></span>
|
|
<input id="fb-reporter" class="input" name="reporter" maxlength="60" autocomplete="name">
|
|
</label>
|
|
<label class="field">
|
|
<span>연락처 <span class="faint">(선택)</span></span>
|
|
<input id="fb-contact" class="input" name="contact" maxlength="120" autocomplete="email" aria-describedby="fb-contact-help">
|
|
<span id="fb-contact-help" class="faint field-foot">이메일 등. 관리자만 볼 수 있고 공개 목록에는 나오지 않습니다.</span>
|
|
</label>
|
|
</div>
|
|
|
|
<label class="field">
|
|
<span>신고한 화면 주소 <span class="faint">(선택)</span></span>
|
|
<input id="fb-page" class="input" name="page_url" maxlength="500" inputmode="url">
|
|
</label>
|
|
|
|
<div class="hp" aria-hidden="true">
|
|
<label>웹사이트 <input type="text" name="website" id="fb-website" tabindex="-1" autocomplete="off"></label>
|
|
</div>
|
|
|
|
<div class="row fb-actions">
|
|
<button type="submit" class="btn primary" id="fb-submit">신고 보내기</button>
|
|
<button type="reset" class="btn ghost">다시 쓰기</button>
|
|
</div>
|
|
</form>
|
|
</section>
|
|
|
|
<section class="fb-list-sec" aria-labelledby="fb-list-title">
|
|
<div class="row fb-list-head">
|
|
<h2 id="fb-list-title" class="grow">접수된 신고</h2>
|
|
<span id="fb-total" class="faint" aria-live="polite"></span>
|
|
</div>
|
|
<div class="chips" role="group" aria-label="처리 상태로 거르기" id="fb-chips"></div>
|
|
<ol id="fb-list" class="fb-list" aria-live="polite"></ol>
|
|
<div class="fb-more-wrap"><button type="button" class="btn" id="fb-more" hidden>더 보기</button></div>
|
|
</section>
|
|
</main>
|
|
|
|
<script type="module" src="/static/js/feedback.js"></script>
|
|
</body>
|
|
</html>
|