diff --git a/src/views/Master/MasterMenu/DialogForm.js b/src/views/Master/MasterMenu/DialogForm.js
index 759a56c..60b8134 100644
--- a/src/views/Master/MasterMenu/DialogForm.js
+++ b/src/views/Master/MasterMenu/DialogForm.js
@@ -1,166 +1,193 @@
-import React, { useEffect, useState } from 'react'
-import { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';
-import { Button, Form, FormGroup, Label, Input, Col, Row } from 'reactstrap';
-import { Select } from 'antd';
-import moment from 'moment';
-import 'antd/dist/antd.css';
-import { useTranslation } from 'react-i18next';
-
-const { Option } = Select
-
-const DialogForm = ({ openDialog, closeDialog, toggleDialog, typeDialog, dataEdit, dataMenu }) => {
- const [id, setId] = useState(0)
- const [name, setName] = useState('')
- const [url, setUrl] = useState('')
- const [aliasName, setAliasName] = useState('')
- const [icon, setIcon] = useState('')
- const [sequence, setSequence] = useState(0)
- const [parentId, setParentId] = useState(null)
- const { t } = useTranslation()
-
- useEffect(() => {
- if (typeDialog === "Edit") {
- console.log("data edit", dataEdit)
- setId(dataEdit.id)
- setName(dataEdit.name)
- setUrl(dataEdit.url)
- setIcon(dataEdit.icon)
- setParentId(dataEdit.parent_id)
- setSequence(dataEdit.sequence)
- setAliasName(dataEdit.alias_name)
- } else {
- setId(0)
- setName('')
- setUrl('')
- setIcon('')
- setParentId(null)
- setSequence(0)
- setAliasName('')
- }
- }, [dataEdit, openDialog])
-
- const handleSave = () => {
- let data = '';
- if (typeDialog === "Save") {
- data = {
- name,
- url,
- sequence: parseInt(sequence),
- icon,
- alias_name: aliasName
- }
-
- if (parentId && parentId > 0) {
- data['parent_id'] = parentId
- }
-
- closeDialog('save', data);
- } else {
- data = {
- id,
- name,
- url,
- sequence: parseInt(sequence),
- icon,
- alias_name: aliasName
- }
-
- if (parentId && parentId > 0) {
- data['parent_id'] = parentId
- }
-
- closeDialog('edit', data);
- }
- setId(0)
- setName('')
- setUrl('')
- setIcon('')
- setParentId(null)
- setSequence(0)
- setAliasName('')
- }
-
- const handleCancel = () => {
- closeDialog('cancel', 'none')
- setId(0)
- setName('')
- setUrl('')
- setIcon('')
- setParentId(null)
- setSequence(0)
- setAliasName('')
- }
-
- const onChangeParent = (val) => {
- setParentId(val)
- }
-
- const setupSelectParent = () => {
- return (
- <>
- {dataMenu.map((val, index) => {
- return (
-
- )
- })}
- >
- )
- }
-
- const renderForm = () => {
- return (
-
- )
- }
-
-
- return (
-
- {typeDialog == "Save" ? `Tambah` : "Edit"} Menu
-
- {renderForm()}
-
-
- {' '}
-
-
-
- )
-
-}
-
-export default DialogForm;
\ No newline at end of file
+import React, { useEffect, useState } from 'react'
+import { Modal, ModalHeader, ModalBody, ModalFooter } from 'reactstrap';
+import { Button, Form, FormGroup, Label, Input, Col, Row } from 'reactstrap';
+import { Select } from 'antd';
+import moment from 'moment';
+import 'antd/dist/antd.css';
+import { useTranslation } from 'react-i18next';
+
+const { Option } = Select
+
+const DialogForm = ({ openDialog, closeDialog, toggleDialog, typeDialog, dataEdit, dataMenu }) => {
+ const [id, setId] = useState(0)
+ const [name, setName] = useState('')
+ const [url, setUrl] = useState('')
+ const [aliasName, setAliasName] = useState('')
+ const [icon, setIcon] = useState('')
+ const [sequence, setSequence] = useState(0)
+ const [parentId, setParentId] = useState(null)
+ const { t } = useTranslation()
+
+ useEffect(() => {
+ if (typeDialog === "Edit") {
+ console.log("data edit", dataEdit)
+ setId(dataEdit.id)
+ setName(dataEdit.name)
+ setUrl(dataEdit.url)
+ setIcon(dataEdit.icon)
+ setParentId(dataEdit.parent_id)
+ setSequence(dataEdit.sequence)
+ setAliasName(dataEdit.alias_name)
+ } else {
+ setId(0)
+ setName('')
+ setUrl('')
+ setIcon('')
+ setParentId(null)
+ setSequence(0)
+ setAliasName('')
+ }
+ }, [dataEdit, openDialog])
+
+ const validation = () => {
+ if (!name || name === "") {
+ alert("Menu Name cannot be empty!");
+ return true;
+ }
+ if (!url || url === "") {
+ alert("URL cannot be empty!");
+ return true;
+ }
+ if (!icon || icon === "") {
+ alert("Icon cannot be empty!");
+ return true;
+ }
+ if (sequence < 0) {
+ alert("Order cannot be empty!");
+ return true;
+ }
+ }
+
+ const handleSave = () => {
+ let data = '';
+ const err = validation();
+ if (!err) {
+ if (typeDialog === "Save") {
+ data = {
+ name,
+ url,
+ sequence: parseInt(sequence),
+ icon,
+ alias_name: aliasName
+ }
+
+ if (parentId && parentId > 0) {
+ data['parent_id'] = parentId
+ }
+
+ closeDialog('save', data);
+ } else {
+ data = {
+ id,
+ name,
+ url,
+ sequence: parseInt(sequence),
+ icon,
+ alias_name: aliasName
+ }
+
+ if (parentId && parentId > 0) {
+ data['parent_id'] = parentId
+ }
+
+ closeDialog('edit', data);
+ }
+ setId(0)
+ setName('')
+ setUrl('')
+ setIcon('')
+ setParentId(null)
+ setSequence(0)
+ setAliasName('')
+ }
+ }
+
+ const handleCancel = () => {
+ closeDialog('cancel', 'none')
+ setId(0)
+ setName('')
+ setUrl('')
+ setIcon('')
+ setParentId(null)
+ setSequence(0)
+ setAliasName('')
+ }
+
+ const onChangeParent = (val) => {
+ setParentId(val)
+ }
+
+ const setupSelectParent = () => {
+ return (
+ <>
+ {dataMenu.map((val, index) => {
+ return (
+
+ )
+ })}
+ >
+ )
+ }
+
+ const renderForm = () => {
+ return (
+
+ )
+ }
+
+
+ return (
+
+ {typeDialog == "Save" ? `Tambah` : "Edit"} Menu
+
+ {renderForm()}
+
+
+ {' '}
+
+
+
+ )
+
+}
+
+export default DialogForm;