import Button from "./Button"; import DeleteUser from "./DeleteUser"; import UserProjectListAdmin from "./UserProjectListAdmin"; import { useState } from "react"; import InputField from "./InputField"; import ChangeUsername from "./ChangeUsername"; import { StrNameChange } from "../Types/goTypes"; function UserInfoModal(props: { isVisible: boolean; username: string; onClose: () => void; }): JSX.Element { const [showInput, setShowInput] = useState(false); const [newUsername, setNewUsername] = useState(""); const [newPassword, setNewPassword] = useState(""); if (!props.isVisible) { return <>>; } const handleChangeNameView = (): void => { if (showInput) { setShowInput(false); } else { setShowInput(true); } }; const handleClickChangeName = (): void => { if (newUsername === "") return; if ( confirm( `Do you really want to change username of ${props.username} to ${newUsername}?`, ) ) { const nameChange: StrNameChange = { prevName: props.username, newName: newUsername.replace(/ /g, ""), }; ChangeUsername({ nameChange: nameChange }); } else { alert("Name was not changed!"); } }; const handleClickChangePassword = (): void => { if (newPassword === "") return; if ( confirm(`Are you sure you want to change password of ${props.username}?`) ) { //TODO: insert change password functionality alert("Not implemented yet"); setNewPassword(""); } else { alert("Password was not changed!"); } }; return (
{props.username}
(Change Username or Password)
{showInput && (