NoteJS/public/register.html
Fovway 8fd529302f Реализовано переключение темной и светлой темы в интерфейсе
- Добавлены функции для переключения между темной и светлой темами с использованием localStorage.
- Обновлены стили для поддержки темной темы, включая цвета фона, текста и иконок.
- Добавлены кнопки для переключения темы на страницах входа, профиля, заметок и настроек.
- Оптимизирован код для предотвращения мерцания темы при загрузке страницы.
2025-10-25 17:14:04 +07:00

187 lines
5.6 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="en">
<head>
<meta charset="UTF-8" />
<meta
name="viewport"
content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"
/>
<title>Регистрация - NoteJS</title>
<script>
try {
if (localStorage.getItem("isAuthenticated") === "true") {
window.location.replace("/notes");
}
} catch (e) {}
</script>
<!-- Предотвращение мерцания темы -->
<script>
(function () {
try {
const savedTheme = localStorage.getItem("theme");
const systemPrefersDark = window.matchMedia(
"(prefers-color-scheme: dark)"
).matches;
const theme = savedTheme || (systemPrefersDark ? "dark" : "light");
if (theme === "dark") {
document.documentElement.setAttribute("data-theme", "dark");
}
} catch (e) {}
})();
</script>
<!-- PWA Meta Tags -->
<meta
name="description"
content="NoteJS - современная система заметок с поддержкой Markdown, изображений, тегов и календаря"
/>
<meta name="theme-color" content="#007bff" />
<meta name="mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta
name="apple-mobile-web-app-status-bar-style"
content="black-translucent"
/>
<meta name="apple-mobile-web-app-title" content="NoteJS" />
<meta name="apple-touch-fullscreen" content="yes" />
<meta name="msapplication-TileColor" content="#007bff" />
<meta name="msapplication-config" content="/browserconfig.xml" />
<meta name="msapplication-TileImage" content="/icons/icon-144x144.png" />
<meta name="application-name" content="NoteJS" />
<meta name="format-detection" content="telephone=no" />
<!-- Icons -->
<link rel="icon" type="image/svg+xml" href="/icon.svg" />
<link
rel="icon"
type="image/png"
sizes="32x32"
href="/icons/icon-32x32.png"
/>
<link
rel="icon"
type="image/png"
sizes="16x16"
href="/icons/icon-16x16.png"
/>
<link rel="apple-touch-icon" sizes="57x57" href="/icons/icon-48x48.png" />
<link rel="apple-touch-icon" sizes="60x60" href="/icons/icon-48x48.png" />
<link rel="apple-touch-icon" sizes="72x72" href="/icons/icon-72x72.png" />
<link rel="apple-touch-icon" sizes="76x76" href="/icons/icon-72x72.png" />
<link
rel="apple-touch-icon"
sizes="114x114"
href="/icons/icon-128x128.png"
/>
<link
rel="apple-touch-icon"
sizes="120x120"
href="/icons/icon-128x128.png"
/>
<link
rel="apple-touch-icon"
sizes="144x144"
href="/icons/icon-144x144.png"
/>
<link
rel="apple-touch-icon"
sizes="152x152"
href="/icons/icon-152x152.png"
/>
<link
rel="apple-touch-icon"
sizes="180x180"
href="/icons/icon-192x192.png"
/>
<link rel="mask-icon" href="/icon.svg" color="#007bff" />
<!-- Manifest -->
<link rel="manifest" href="/manifest.json" />
<!-- Styles -->
<link rel="stylesheet" href="/style.css" />
<!-- Scripts -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/iconify/2.0.0/iconify.min.js"></script>
</head>
<body>
<div class="container">
<header>
<div
style="
display: flex;
align-items: center;
justify-content: space-between;
"
>
<span
><span class="iconify" data-icon="mdi:account-plus"></span>
Регистрация</span
>
<button
id="theme-toggle-btn"
class="theme-toggle-btn"
title="Переключить тему"
>
<span class="iconify" data-icon="mdi:theme-light-dark"></span>
</button>
</div>
</header>
<div class="login-form">
<form id="registerForm">
<div class="form-group">
<label for="username">Логин:</label>
<input
type="text"
id="username"
name="username"
required
placeholder="Минимум 3 символа"
minlength="3"
/>
</div>
<div class="form-group">
<label for="password">Пароль:</label>
<input
type="password"
id="password"
name="password"
required
placeholder="Минимум 6 символов"
minlength="6"
/>
</div>
<div class="form-group">
<label for="confirmPassword">Подтвердите пароль:</label>
<input
type="password"
id="confirmPassword"
name="confirmPassword"
required
placeholder="Введите пароль еще раз"
minlength="6"
/>
</div>
<button type="submit" class="btnSave">Зарегистрироваться</button>
</form>
<div
id="errorMessage"
class="error-message"
style="display: none"
></div>
<p class="auth-link">Уже есть аккаунт? <a href="/">Войдите</a></p>
</div>
</div>
<div class="footer">
<p>Создатель: <span>Fovway</span></p>
</div>
<script src="/register.js"></script>
<!-- PWA Script -->
<script src="/pwa.js"></script>
</body>
</html>