Заменить страницу регистрации на информационную заглушку

This commit is contained in:
2026-08-10 00:57:30 +03:00
parent 73b65e0ded
commit 963bb0a7a3
+17 -52
View File
@@ -1,60 +1,25 @@
import React, { useState } from "react";
import { Link, useNavigate } from "react-router-dom";
import { api } from "../api.js";
import React from "react";
import { Link } from "react-router-dom";
// Регистрация в панели закрыта — пользователей создаёт администратор через
// CLI (`python -m app.manage_users create ...`) или через /admin/users.
// Этот маршрут оставлен как информационная заглушка: если кто-то зайдёт
// по старой ссылке или опечатается в URL — он увидит понятное сообщение.
export default function Register() {
const [email, setEmail] = useState("");
const [password, setPassword] = useState("");
const [error, setError] = useState("");
const [done, setDone] = useState(false);
const [busy, setBusy] = useState(false);
const navigate = useNavigate();
async function onSubmit(e) {
e.preventDefault();
setError("");
setBusy(true);
try {
await api.register(email, password);
setDone(true);
setTimeout(() => navigate("/login"), 1200);
} catch (err) {
setError(err.message);
} finally {
setBusy(false);
}
}
return (
<div className="auth-wrap">
<h1 className="page-title">Регистрация</h1>
<p className="page-sub">Первый зарегистрированный пользователь получает права администратора</p>
{error && <div className="error-box">{error}</div>}
{done ? (
<div className="card">Готово, переходим на страницу входа</div>
) : (
<form onSubmit={onSubmit} className="card">
<div className="field">
<label>Email</label>
<input value={email} onChange={(e) => setEmail(e.target.value)} type="email" required />
</div>
<div className="field">
<label>Пароль</label>
<input
value={password}
onChange={(e) => setPassword(e.target.value)}
type="password"
minLength={6}
required
/>
</div>
<button className="btn btn-primary" type="submit" disabled={busy} style={{ width: "100%" }}>
{busy ? "Создаём…" : "Создать аккаунт"}
</button>
</form>
)}
<h1 className="page-title">Регистрация недоступна</h1>
<p className="page-sub">
Публичная регистрация в этой панели отключена из соображений безопасности.
</p>
<div className="card">
<p>
Учётные записи создаёт администратор. Если вам нужен доступ к панели,
обратитесь к администратору он создаст аккаунт и пришлёт данные для входа.
</p>
</div>
<p className="page-sub" style={{ marginTop: 16 }}>
Уже есть аккаунт? <Link to="/login">Войти</Link>
<Link to="/login">Перейти на страницу входа</Link>
</p>
</div>
);