diff options
author | MikunoNaka <bokuwakanojogahoshii@yahoo.com> | 2021-05-02 18:47:28 +0530 |
---|---|---|
committer | MikunoNaka <bokuwakanojogahoshii@yahoo.com> | 2021-05-02 18:47:28 +0530 |
commit | 17ea30faae3c3b0ab1d58bbeb6c1a6a404639817 (patch) | |
tree | 53ecaceaf58960b0315c61f3dfb4b62027f6ee20 /src/components/Form/RegisterItemForm.js | |
parent | 6c0164e035bc9762a81ccbaade714e5193538095 (diff) |
organised the Form components into more directories
Diffstat (limited to 'src/components/Form/RegisterItemForm.js')
-rw-r--r-- | src/components/Form/RegisterItemForm.js | 134 |
1 files changed, 0 insertions, 134 deletions
diff --git a/src/components/Form/RegisterItemForm.js b/src/components/Form/RegisterItemForm.js deleted file mode 100644 index 8ce2161..0000000 --- a/src/components/Form/RegisterItemForm.js +++ /dev/null @@ -1,134 +0,0 @@ -/* - * OpenBills - Self hosted browser app to generate and keep track of simple invoices - * Version - 0 - * Licensed under the MIT license - https://opensource.org/licenses/MIT - * - * Copyright (c) 2021 Vidhu Kant Sharma -*/ - -// TODO: Code isn't tested properly -// I'd be surprised if it < 10 bugs - -// TODO: Implement override protection - -import React, { useState } from "react"; -import axios from "axios"; -import "./Form.scss"; - - -const RegisterItemForm = (props) => { - const [newItemNameValue, setNewItemNameValue] = useState(""); - const [newItemDescValue, setNewItemDescValue] = useState(""); - const [newItemPriceValue, setNewItemPriceValue] = useState(0.00); - const [newItemHSNValue, setNewItemHSNValue] = useState(""); - const [newItemGSTValue, setNewItemGSTValue] = useState(props.defGSTValue); - // const [newItemBrandValue, setNewItemBrandValue] = useState(""); - // const [newItemTypeValue, setNewItemTypeValue] = useState(""); - - const hideSelf = () => props.setVisibility(false); - - const closeOnBGClicked = (event) => - event.target.className === "floatingMenuBG" && hideSelf(); - - const postForm = (event) => { - event.preventDefault(); - - // TODO: show confirmation before being invisible - axios.post( - `/api/items/` - + `?model=${newItemNameValue}` - + `&desc=${newItemDescValue}` - + `&price=${newItemPriceValue}` - + `&hsn=${newItemHSNValue}` - + `&gst=${newItemGSTValue}` - ) - .then((res) => { - console.log(res); - props.setVisibility(false); - }) - .catch((err) => { - console.log(err); - }); - props.updateItemsList(); - } - - - return ( - <div className={"floatingMenuBG"} onClick={closeOnBGClicked}> - <div className={"floatingMenu"}> - <div className={"formContainer"}> - <form className={"floatingForm"} onSubmit={postForm}> - <div className={"twoPaneForm"}> - <div className={"widePane"}> - <label> - Item/Service: <input className={"wideInputBox"} type="text" value={newItemNameValue} onChange={ - (event) => { - setNewItemNameValue(event.target.value); - } - } required /> - </label> - - <label> - Description: <input className={"wideInputBox"} type="text" value={newItemDescValue} onChange={ - (event) => { - setNewItemDescValue(event.target.value); - } - } /> - </label> - - </div> - <div className={"widePane"}> - <label> - Price: <input className={"smallInputBox"} type="number" min="0.00" step="0.001" value={newItemPriceValue} onChange={ - (event) => { - const value = event.target.value; - setNewItemPriceValue(value); - } - } /> - </label> - - <label> - HSN: <input className={"smallInputBox"} type="number" min="0" value={newItemHSNValue} onChange={ - (event) => { - const value = event.target.value; - setNewItemHSNValue(value); - } - } /> - </label> - - <label> - GST: <input className={"smallInputBox"} type="number" min="0" value={newItemGSTValue} onChange={ - (event) => { - const value = event.target.value; - setNewItemGSTValue(value); - } - } /> - </label> - </div> - </div> - - <div className={"menu"}> - <input - type="button" - value="cancel" - onClick={ - () => { - props.setVisibility(false); - } - } - /> - - <input - type="submit" - value="Register/Add" - disabled={newItemNameValue !== "" ? "" : "disabled"} - /> - </div> - </form> - </div> - </div> - </div> - ); -} - -export default RegisterItemForm; |