Admi-Modus noch nicht fertig
This commit is contained in:
@@ -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);
|
||||
|
||||
@@ -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
|
||||
}
|
||||
}
|
||||
}, []);
|
||||
|
||||
Reference in New Issue
Block a user