Admi-Modus noch nicht fertig

This commit is contained in:
ISA
2024-11-18 13:20:46 +01:00
parent ade87db2cf
commit 15584e12fb
2 changed files with 11 additions and 11 deletions

View File

@@ -4,12 +4,13 @@ import Image from "next/image";
import { useRouter } from "next/router";
import "bootstrap-icons/font/bootstrap-icons.css";
import SettingsModal from "./modales/settingsModal/SettingsModal";
import { useSelector } from "react-redux";
function Header() {
const router = useRouter();
const [showSettingsModal, setShowSettingsModal] = useState(false);
const [isAdminLoggedIn, setIsAdminLoggedIn] = useState(false); // Lokaler Zustand
const deviceName = "Station XY"; // Dummy-Daten, da Redux entfernt wurde
const deviceName = useSelector((state) => state.variables.deviceName);
const handleSettingsClick = () => setShowSettingsModal(true);
const handleCloseSettingsModal = () => setShowSettingsModal(false);

View File

@@ -9,8 +9,7 @@ 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";
import bcrypt from "bcryptjs";
ReactModal.setAppElement("#__next");
@@ -33,12 +32,12 @@ function generateToken(user) {
}
function SettingModal({ showModal, onClose }) {
const isAdminLoggedIn = useSelector((state) => state.auth.isAdminLoggedIn);
const dispatch = useDispatch();
const [isAdminLoggedIn, setAdminLoggedIn] = useState(false);
//const isAdminLoggedIn = sessionStorage.getItem("token");
const [username, setUsername] = useState("");
const [password, setPassword] = useState("");
const [error, setError] = useState("");
const [isLoggedIn, setIsLoggedIn] = useState(false);
const [showLoginForm, setShowLoginForm] = useState(false); // Zustand für Login-Formular
const router = useRouter();
@@ -49,7 +48,7 @@ function SettingModal({ showModal, onClose }) {
if (isMatch) {
const token = generateToken(user);
sessionStorage.setItem("token", token); // Speichere Token in SessionStorage
dispatch(setAdminLoggedIn(true));
setShowLoginForm(false);
onClose();
} else {
@@ -99,7 +98,6 @@ function SettingModal({ showModal, onClose }) {
};
const handleAdminLogout = () => {
localStorage.removeItem("token"); // Remove token on logout
dispatch(setAdminLoggedIn(false)); // Update Redux state
};
useEffect(() => {
@@ -143,13 +141,14 @@ function SettingModal({ showModal, onClose }) {
]);
useEffect(() => {
// Check if a valid token exists in localStorage
const token = localStorage.getItem("token");
const token = sessionStorage.getItem("token");
if (token) {
setAdminLoggedIn(true);
const { exp } = JSON.parse(atob(token));
if (Date.now() < exp) {
setIsLoggedIn(true);
setAdminLoggedIn(true);
} else {
localStorage.removeItem("token"); // Remove expired token
// localStorage.removeItem("token"); // Remove expired token
}
}
}, []);