54 lines
4.1 KiB
HTML
54 lines
4.1 KiB
HTML
<!doctype html>
|
||
<html lang="ru">
|
||
<head>
|
||
<meta charset="utf-8">
|
||
<meta name="viewport" content="width=device-width,initial-scale=1">
|
||
<title>1С Adapter · SQL-базы</title>
|
||
<link rel="stylesheet" href="/admin/style.css">
|
||
</head>
|
||
<body>
|
||
<header class="topbar">
|
||
<div><span class="mark">1C</span><strong>Adapter Control</strong></div>
|
||
<div class="connection"><span id="statusDot" class="dot"></span><span id="connectionText">Не подключено</span></div>
|
||
</header>
|
||
<main>
|
||
<section class="intro">
|
||
<div><p class="eyebrow">Подключения</p><h1>SQL-базы 1С</h1><p>Управление адресами и учётными данными адаптера.</p></div>
|
||
<button id="addButton" class="primary">+ Добавить базу</button>
|
||
</section>
|
||
<section class="panel table-panel">
|
||
<div class="panel-head"><div><h2>Настроенные базы</h2><span id="count">0 подключений</span></div><button id="refreshButton" class="icon" title="Обновить" aria-label="Обновить">↻</button></div>
|
||
<div id="notice" class="notice" hidden></div>
|
||
<div class="table-wrap">
|
||
<table><thead><tr><th>Base ID</th><th>SQL Server</th><th>База данных</th><th>Логин</th><th>Пароль</th><th></th></tr></thead><tbody id="bases"></tbody></table>
|
||
<div id="empty" class="empty">Подключения ещё не настроены.</div>
|
||
</div>
|
||
</section>
|
||
<section class="panel table-panel requests-panel">
|
||
<div class="panel-head"><div><h2>Заявки на захват</h2><span id="requestCount">0 заявок</span></div></div>
|
||
<div class="table-wrap">
|
||
<table><thead><tr><th>Заявка</th><th>База</th><th>Статус</th><th>Объекты</th><th>Создана</th></tr></thead><tbody id="requests"></tbody></table>
|
||
<div id="requestsEmpty" class="empty">Заявок пока нет.</div>
|
||
</div>
|
||
</section>
|
||
</main>
|
||
<dialog id="editor">
|
||
<form id="baseForm" method="dialog">
|
||
<div class="dialog-head"><div><p class="eyebrow">SQL-подключение</p><h2 id="editorTitle">Новая база</h2></div><button value="cancel" class="close" aria-label="Закрыть">×</button></div>
|
||
<input id="originalId" type="hidden">
|
||
<div class="grid">
|
||
<label>Base ID<input id="baseId" required pattern="[A-Za-z0-9_.-]+" placeholder="upo_test"></label>
|
||
<label>SQL Server / IP<input id="server" required placeholder="192.168.1.10"></label>
|
||
<label>Имя базы SQL<input id="database" required placeholder="upo_test"></label>
|
||
<label>SQL-логин<input id="user" required autocomplete="username" placeholder="onec_reader"></label>
|
||
<label class="wide">Пароль<input id="password" type="password" autocomplete="new-password" placeholder="Оставьте пустым, чтобы не менять"><small id="passwordHint">Пароль сохраняется в защищённом runtime-файле и никогда не отображается.</small></label>
|
||
<label class="wide">Или переменная окружения<input id="passwordEnv" placeholder="ONEC_SQL_PASSWORD_UPO_TEST"><small>Если заполнено, имеет приоритет над введённым паролем.</small></label>
|
||
<label class="wide">Слои разработки (JSON)<textarea id="developmentLayers" rows="12" spellcheck="false" placeholder='{"base":{"repository":{"mode":"manual"},"support":{"mode":"unknown"}}}'></textarea><small>Основная конфигурация задаётся ключом base, каждое расширение — отдельным ключом extension:<GUID>. repository.mode: none/manual/automatic/unknown; support.mode: none/editable/locked/rules/unknown.</small></label>
|
||
</div>
|
||
<div class="dialog-actions"><button value="cancel" class="secondary">Отмена</button><button id="saveButton" value="default" class="primary">Сохранить</button></div>
|
||
</form>
|
||
</dialog>
|
||
<script src="/admin/app.js"></script>
|
||
</body>
|
||
</html>
|