Files
magistr/frontend/teacher/index.html
2026-08-06 01:10:33 +03:00

79 lines
4.0 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Расписание преподавателя</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<main class="shell">
<header class="topbar">
<div class="title">
<h1>Расписание преподавателя</h1>
<span id="week-label">Загрузка периода...</span>
</div>
<div class="actions">
<button class="btn btn-icon-md btn-secondary" id="theme-toggle-local" type="button" aria-label="Переключить тему">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
<path d="M21 12.79A9 9 0 1 1 11.21 3a7 7 0 0 0 9.79 9.79z"></path>
</svg>
</button>
<a class="btn btn-danger-subtle" href="/" id="logout-link">Выйти</a>
</div>
</header>
<section class="toolbar">
<div class="week-nav">
<button class="btn btn-icon-md btn-secondary" id="prev-week" type="button" aria-label="Предыдущая неделя">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
<polyline points="15 18 9 12 15 6"></polyline>
</svg>
</button>
<button class="btn btn-md btn-primary" id="today-week" type="button">Сегодня</button>
<button class="btn btn-icon-md btn-secondary" id="next-week" type="button" aria-label="Следующая неделя">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
<polyline points="9 18 15 12 9 6"></polyline>
</svg>
</button>
</div>
<input class="date-input" id="date-picker" type="date" aria-label="Дата недели">
</section>
<div class="status" id="status-line"></div>
<section class="teacher-absence-panel">
<div class="teacher-absence-heading">
<div>
<span>Изменение планов</span>
<h2>Сообщить об отсутствии</h2>
<p>Заявка поступит кафедре на подтверждение. После согласования учебный отдел сможет подобрать замены.</p>
</div>
<button class="btn btn-md btn-secondary" id="absence-form-toggle" type="button" aria-expanded="false">
Новая заявка
</button>
</div>
<form class="teacher-absence-form" id="teacher-absence-form" hidden>
<label>
<span>Начало</span>
<input class="date-input" id="teacher-absence-start" type="date" required>
</label>
<label>
<span>Окончание</span>
<input class="date-input" id="teacher-absence-end" type="date" required>
</label>
<label class="teacher-absence-reason">
<span>Причина</span>
<input id="teacher-absence-reason" type="text" maxlength="2000" placeholder="Например, командировка" required>
</label>
<button class="btn btn-md btn-primary" type="submit">Отправить кафедре</button>
</form>
<div class="teacher-absence-status" id="teacher-absence-status"></div>
<div class="teacher-absence-list" id="teacher-absence-list" aria-live="polite"></div>
</section>
<section class="schedule" id="schedule-grid" aria-live="polite"></section>
</main>
<script type="module" src="app.js"></script>
</body>
</html>