(refactor) BillEditForm: billed-to-* converted from radio buttons to select; added info box
This commit is contained in:
@@ -10,6 +10,7 @@ import { formatYearMonth } from "../lib/format";
|
||||
import { decodeFromImage, DecodeResult, findDecodePdf417 } from "../lib/pdf/barcodeDecoder";
|
||||
import { useLocale, useTranslations } from "next-intl";
|
||||
import { Pdf417Barcode } from "./Pdf417Barcode";
|
||||
import { InfoBox } from "./InfoBox";
|
||||
|
||||
// Next.js does not encode an utf-8 file name correctly when sending a form with a file attachment
|
||||
// This is a workaround for that
|
||||
@@ -67,7 +68,7 @@ export const BillEditForm: FC<BillEditFormProps> = ({ location, bill }) => {
|
||||
}, [bill?.barcodeImage, hub3aText]);
|
||||
|
||||
|
||||
const billedTo_handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {
|
||||
const billedTo_handleChange = (event: React.ChangeEvent<HTMLSelectElement>) => {
|
||||
setBilledToValue(event.target.value as BilledTo);
|
||||
}
|
||||
|
||||
@@ -227,33 +228,14 @@ export const BillEditForm: FC<BillEditFormProps> = ({ location, bill }) => {
|
||||
))}
|
||||
</div>
|
||||
|
||||
<div className="form-control mt-4">
|
||||
<div className="flex items-center gap-4">
|
||||
<span className="label-text">{t("billed-to-label")}</span>
|
||||
<label className="label cursor-pointer gap-2">
|
||||
<input
|
||||
type="radio"
|
||||
name="billedTo"
|
||||
value={BilledTo.Tenant}
|
||||
className="radio radio-primary"
|
||||
checked={billedToValue === BilledTo.Tenant}
|
||||
onChange={billedTo_handleChange}
|
||||
/>
|
||||
<span className="label-text">{t("billed-to-tenant-option")}</span>
|
||||
</label>
|
||||
<label className="label cursor-pointer gap-2">
|
||||
<input
|
||||
type="radio"
|
||||
name="billedTo"
|
||||
value={BilledTo.Landlord}
|
||||
className="radio radio-primary"
|
||||
checked={billedToValue === BilledTo.Landlord}
|
||||
onChange={billedTo_handleChange}
|
||||
/>
|
||||
<span className="label-text">{t("billed-to-landlord-option")}</span>
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
<fieldset className="fieldset bg-base-200 border-base-300 rounded-box w-xs border p-4 pb-2 mt-4">
|
||||
<legend className="fieldset-legend font-semibold uppercase">{t("billed-to-legend")}</legend>
|
||||
<select className="select select-bordered w-full" name="billedTo" defaultValue={billedToValue} onChange={billedTo_handleChange}>
|
||||
<option value={BilledTo.Tenant}>{t("billed-to-tenant-option")}</option>
|
||||
<option value={BilledTo.Landlord}>{t("billed-to-landlord-option")}</option>
|
||||
</select>
|
||||
<InfoBox className="m-0 mt-3 mb-1 p-0">{t("billed-to-info")}</InfoBox>
|
||||
</fieldset>
|
||||
|
||||
{/* Show toggle only when adding a new bill (not editing) */}
|
||||
{!bill && (
|
||||
|
||||
Reference in New Issue
Block a user