Files
AWatch-rus/adk-rust/crates/detmir-portal/src/static/index.html
T

91 lines
4.4 KiB
HTML

<!doctype html>
<html lang="ru">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>AWatch-rus Portal</title>
<link rel="stylesheet" href="app.css">
</head>
<body>
<div class="app-layout">
<aside class="sidebar" aria-label="Основная навигация">
<div class="sidebar-brand">
<strong>AWatch-rus</strong>
<span>Активность и риски</span>
</div>
<nav class="tabs">
<button class="tab is-active" data-tab="operator">Обзор</button>
<button class="tab" data-tab="employees">Сотрудники</button>
<button class="tab" data-tab="departments">Подразделения</button>
<button class="tab" data-tab="owner">Риски</button>
<button class="tab" data-tab="incidents">Расследования</button>
<button class="tab" data-tab="perimeter">Сетевой периметр</button>
<button class="tab" data-tab="reports">Отчеты</button>
<button class="tab" data-tab="settings">Настройки</button>
<a class="nav-link" href="/portal/architecture">Архитектура</a>
</nav>
</aside>
<main class="shell">
<header class="topbar">
<div class="brand">
<p class="eyebrow">AWatch-rus</p>
<h1>Пульс организации</h1>
<p class="lead">Активность сотрудников, риски подразделений и материалы расследований за выбранный период</p>
</div>
<div class="topbar-side" aria-label="Параметры отчета">
<div class="control-strip">
<label>
<span>Период</span>
<select id="periodFilter">
<option value="today">Сегодня</option>
<option value="week">7 дней</option>
<option value="month">30 дней</option>
</select>
</label>
<label>
<span>Подразделение</span>
<select id="departmentFilter">
<option>Все</option>
</select>
</label>
</div>
<div class="view-switch" aria-label="Ролевое представление">
<span>Роль</span>
<button class="view-button is-active" data-view-mode="executive" type="button">Руководитель</button>
<button class="view-button" data-view-mode="manager" type="button">Менеджер</button>
<button class="view-button" data-view-mode="security" type="button">Безопасность</button>
<button class="view-button" data-view-mode="forensics" type="button">Расследования</button>
<button class="view-button" data-view-mode="admin" type="button">Админ</button>
</div>
<div class="header-actions">
<button class="small-button primary" data-open-reports="true">Сформировать отчет</button>
<button class="small-button" data-export-markdown="true">Текстовый отчет</button>
<button class="small-button" data-print-report="true">PDF-отчет</button>
<a class="small-button" href="/portal/api/reports" target="_blank" rel="noopener noreferrer">Данные</a>
<div id="globalStatus" class="status-pill status-unknown">Загрузка данных</div>
</div>
</div>
</header>
<section id="loadingStatus" class="loading-status loading-status-unknown" aria-live="polite">
<div class="loading-status-head">
<div>
<strong id="loadingStateText">Загрузка данных</strong>
<span id="loadingStageText">Получение данных</span>
</div>
<span id="loadingUpdatedText">последнее обновление: -</span>
</div>
<div class="loading-progress" aria-hidden="true">
<div id="loadingProgressBar" style="width: 0%"></div>
</div>
</section>
<section id="content" class="content-panel" aria-live="polite"></section>
<section id="summary" class="summary-grid service-summary"></section>
</main>
</div>
<script src="app.js?v=20260604-security-cache"></script>
</body>
</html>