added value to selector
This commit is contained in:
@@ -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)}
|
||||||
|
|||||||
Reference in New Issue
Block a user