First pass at allowing image pasting on the infraction modal

This commit is contained in:
regalijan 2023-10-19 16:49:36 -04:00
parent 477fe0451a
commit 51d2da399e
Signed by: regalijan
GPG Key ID: 5D4196DA269EF520

View File

@ -14,6 +14,32 @@ import {
} from "@chakra-ui/react"; } from "@chakra-ui/react";
export default function (props: { isOpen: boolean; onClose: () => void }) { export default function (props: { isOpen: boolean; onClose: () => void }) {
addEventListener("paste", (e) => {
if (!props.isOpen) return;
const evidenceElement = document.getElementById(
"evidence"
) as HTMLInputElement;
if (!evidenceElement.files && e.clipboardData?.files) {
evidenceElement.files = e.clipboardData.files;
return;
}
if (!evidenceElement.files || !e.clipboardData?.files.length) return;
if (typeof window["DataTransfer"] === "undefined")
return alert("Your browser is too old to paste images in.");
const dataTransfer = new DataTransfer();
for (const file of evidenceElement.files) dataTransfer.items.add(file);
dataTransfer.items.add(e.clipboardData.files[0]);
evidenceElement.files = dataTransfer.files;
});
function reset() { function reset() {
( (
document.getElementById("punishment") as unknown as HTMLSelectElement document.getElementById("punishment") as unknown as HTMLSelectElement