feat: Redux zur Verwaltung des Admin-Status hinzugefügt
- Neuen Redux-Slice 'authSlice' erstellt, um den Admin-Login-Status zu verwalten. - Token-Verwaltung im SettingsModal angepasst, um Redux-Status zu aktualisieren. - Admin-Warnhinweis im Header zeigt jetzt den Redux-Status an und aktualisiert sich automatisch. - Abmeldefunktion verbessert, um Token aus dem Redux-Store zu entfernen und Seite zu aktualisieren.
This commit is contained in:
@@ -9,6 +9,8 @@ import handleReboot from "./handlers/handleReboot";
|
||||
import handleSetDateTime from "./handlers/handleSetDateTime";
|
||||
import handleSubmit from "./handlers/handleSubmit";
|
||||
import { useRouter } from "next/router";
|
||||
import { setAdminLoggedIn } from "../../../store/authSlice";
|
||||
import { useDispatch } from "react-redux";
|
||||
|
||||
ReactModal.setAppElement("#__next");
|
||||
|
||||
@@ -27,6 +29,7 @@ function generateToken(user) {
|
||||
}
|
||||
|
||||
function SettingModal({ showModal, onClose }) {
|
||||
const dispatch = useDispatch();
|
||||
const [username, setUsername] = useState("");
|
||||
const [password, setPassword] = useState("");
|
||||
const [error, setError] = useState("");
|
||||
@@ -43,8 +46,10 @@ function SettingModal({ showModal, onClose }) {
|
||||
if (user) {
|
||||
const token = generateToken(user);
|
||||
localStorage.setItem("token", token);
|
||||
dispatch(setAdminLoggedIn(true));
|
||||
setIsLoggedIn(true);
|
||||
setShowLoginForm(false);
|
||||
onClose();
|
||||
} else {
|
||||
setError(
|
||||
"Login fehlgeschlagen. Bitte überprüfen Sie Benutzername und Passwort."
|
||||
|
||||
Reference in New Issue
Block a user