fix: Admin-Login setzt jetzt korrekt isAdminLoggedIn im Redux-Store

- Redux-Dispatch `setAdminLoggedIn(true)` in handleAdminLogin integriert
- Login-Funktion in GeneralSettings.tsx angepasst, um Dispatch weiterzugeben
- Sichtbarkeit von Admin-Funktionen wie Firmware-Update-Button funktioniert jetzt zuverlässig
This commit is contained in:
Ismail Ali
2025-04-17 19:02:27 +02:00
parent f2360149c3
commit ed028d5168
3 changed files with 11 additions and 3 deletions

View File

@@ -51,9 +51,11 @@ const GeneralSettings: React.FC = () => {
(errorMsg) => { (errorMsg) => {
setLoginSuccess(false); setLoginSuccess(false);
setError(errorMsg); setError(errorMsg);
} },
dispatch // ✅ hier übergeben
); );
}; };
//------------------------------- //-------------------------------
useEffect(() => { useEffect(() => {
if (!systemSettings.deviceName) { if (!systemSettings.deviceName) {

View File

@@ -2,12 +2,14 @@
import bcrypt from "bcryptjs"; import bcrypt from "bcryptjs";
import { generateToken } from "../utils/cryptoUtils"; import { generateToken } from "../utils/cryptoUtils";
import USERS from "../config/users"; import USERS from "../config/users";
import { setAdminLoggedIn } from "../../../../redux/slices/authSlice"; // ✅ Wichtig
const handleAdminLogin = ( const handleAdminLogin = (
username: string, username: string,
password: string, password: string,
onSuccess: () => void, onSuccess: () => void,
onError: (errorMsg: string) => void onError: (errorMsg: string) => void,
dispatch: any // ✅ neu
) => { ) => {
const user = USERS.Admin; const user = USERS.Admin;
bcrypt.compare(password, user.password, (err, isMatch) => { bcrypt.compare(password, user.password, (err, isMatch) => {
@@ -15,8 +17,12 @@ const handleAdminLogin = (
const token = generateToken(user); const token = generateToken(user);
sessionStorage.setItem("token", token); sessionStorage.setItem("token", token);
localStorage.setItem("isAdminLoggedIn", "true"); localStorage.setItem("isAdminLoggedIn", "true");
dispatch(setAdminLoggedIn(true)); // ✅ Redux-Status setzen
onSuccess(); onSuccess();
} else { } else {
dispatch(setAdminLoggedIn(false)); // optional
onError( onError(
"Login fehlgeschlagen. Bitte überprüfen Sie Benutzername und Passwort." "Login fehlgeschlagen. Bitte überprüfen Sie Benutzername und Passwort."
); );

View File

@@ -6,5 +6,5 @@
2: Patch oder Hotfix (Bugfixes oder kleine Änderungen). 2: Patch oder Hotfix (Bugfixes oder kleine Änderungen).
*/ */
const webVersion = "1.6.239"; const webVersion = "1.6.240";
export default webVersion; export default webVersion;