added value to selector

This commit is contained in:
2026-01-19 14:07:39 +01:00
parent 3c5ec1923f
commit 001999f21d

View File

@@ -11,6 +11,7 @@ import {
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { useState, useEffect } from "react"; import { useState, useEffect } from "react";
import { submitFormData } from "../utils/sender"; import { submitFormData } from "../utils/sender";
import Cookies from "js-cookie";
interface Message { interface Message {
type: "error" | "info" | "success" | "warning"; type: "error" | "info" | "success" | "warning";
@@ -40,6 +41,7 @@ export const MainForm = () => {
paymentMethod: "", paymentMethod: "",
}); });
const [users, setUsers] = useState<string[]>([]); const [users, setUsers] = useState<string[]>([]);
const [selectedUser, setSelectedUser] = useState<string | null>(null);
useEffect(() => { useEffect(() => {
// Fetch user data or any other data needed for the form // Fetch user data or any other data needed for the form
@@ -59,26 +61,35 @@ export const MainForm = () => {
}); });
console.error("Error fetching users:", error); console.error("Error fetching users:", error);
} }
if (Cookies.get("selectedUser")) {
const cookieUser = Cookies.get("selectedUser")!;
setSelectedUser(cookieUser);
confirmUser(cookieUser);
}
}, []); }, []);
const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => { const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
setFormData({ ...formData, [e.target.name]: e.target.value }); setFormData({ ...formData, [e.target.name]: e.target.value });
}; };
const confirmUser = async (selectedUser: string) => {
try {
const response = await fetch(
`http://localhost:8004/default/confirm-user?username=${selectedUser}`
);
const data = await response.json();
setNextID(data.nextID);
} catch (error) {
console.error("Error confirming user:", error);
}
};
const handleUserSelection = (selectedUser: string | null) => { const handleUserSelection = (selectedUser: string | null) => {
if (!selectedUser) return; if (!selectedUser) return;
const confirmUser = async () => { setSelectedUser(selectedUser);
try { confirmUser(selectedUser);
const response = await fetch( Cookies.set("selectedUser", selectedUser);
`http://localhost:8004/default/confirm-user?username=${selectedUser}`
);
const data = await response.json();
setNextID(data.nextID);
} catch (error) {
console.error("Error confirming user:", error);
}
};
confirmUser();
}; };
const handleSubmit = async () => { const handleSubmit = async () => {
@@ -115,6 +126,7 @@ export const MainForm = () => {
<Autocomplete <Autocomplete
disablePortal disablePortal
options={users} options={users}
value={selectedUser}
sx={{ width: 300 }} sx={{ width: 300 }}
renderInput={(params) => <TextField {...params} label={t("user")} />} renderInput={(params) => <TextField {...params} label={t("user")} />}
onChange={(_event, value) => handleUserSelection(value)} onChange={(_event, value) => handleUserSelection(value)}