From 308b21ae6cb3f2b8849150738371e3f3c098e6df Mon Sep 17 00:00:00 2001 From: Theis Date: Wed, 21 Jan 2026 15:51:38 +0100 Subject: [PATCH] improved choosing payment method --- frontend/src/pages/MainForm.tsx | 64 ++++++++++++++++++++-- frontend/src/utils/i18n/locales/de/de.json | 5 +- frontend/src/utils/i18n/locales/en/en.json | 5 +- 3 files changed, 64 insertions(+), 10 deletions(-) diff --git a/frontend/src/pages/MainForm.tsx b/frontend/src/pages/MainForm.tsx index e6f5ddd..e597a63 100644 --- a/frontend/src/pages/MainForm.tsx +++ b/frontend/src/pages/MainForm.tsx @@ -9,11 +9,14 @@ import { Chip, Box, Paper, + Menu, + MenuItem, } from "@mui/material"; import { useTranslation } from "react-i18next"; import { useState, useEffect } from "react"; import { submitFormData } from "../utils/sender"; import Cookies from "js-cookie"; +import * as React from "react"; interface Message { type: "error" | "info" | "success" | "warning"; @@ -45,6 +48,16 @@ export const MainForm = () => { const [users, setUsers] = useState([]); const [selectedUser, setSelectedUser] = useState(null); + // Payment Methods Menu States + const [anchorEl, setAnchorEl] = React.useState(null); + const open = Boolean(anchorEl); + const handleClick = (event: React.MouseEvent) => { + setAnchorEl(event.currentTarget); + }; + const handleClose = () => { + setAnchorEl(null); + }; + useEffect(() => { // Fetch user data or any other data needed for the form try { @@ -317,13 +330,52 @@ export const MainForm = () => { /> )} - {/* Payment Methods */} - - } label={t("cash")} /> - } label={t("paypal")} /> - } label={t("transfer")} /> - + + + { + setFormData({ ...formData, paymentMethod: "bar" }); + handleClose(); + }} + > + {t("cash")} + + { + setFormData({ ...formData, paymentMethod: "paypal" }); + handleClose(); + }} + > + {t("paypal")} + + { + setFormData({ ...formData, paymentMethod: "andere" }); + handleClose(); + }} + > + {t("transfer")} + + {/* Submit Button */}