"use client"; import { LayoutNavbarNew, WARNA } from "@/module/_global"; import { useHookstate } from "@hookstate/core"; import { Avatar, Box, Button, Flex, Group, rem, Select, Stack, Text, Textarea, TextInput, } from "@mantine/core"; import { useShallowEffect } from "@mantine/hooks"; import { useRouter } from "next/navigation"; import React, { useState } from "react"; import { IoIosArrowDropright } from "react-icons/io"; import { globalMemberDivision } from "../lib/val_division"; import toast from "react-hot-toast"; import { funGetUserByCookies } from "@/module/auth"; import { funGetAllGroup, IDataGroup } from "@/module/group"; import NavbarAdminDivision from "./navbar_admin_division"; import NavbarCreateUsers from "./navbar_create_users"; export default function CreateDivision() { const router = useRouter(); const [dataGroup, setDataGroup] = useState([]); const [roleUser, setRoleUser] = useState("") const [isChooseAnggota, setChooseAnggota] = useState(false) const [isChooseAdmin, setChooseAdmin] = useState(false) const member = useHookstate(globalMemberDivision) const [body, setBody] = useState({ idGroup: "", name: "", desc: "", }); const [touched, setTouched] = useState({ idGroup: false, name: false, }); async function loadData() { const loadGroup = await funGetAllGroup('?active=true') if (loadGroup.success) { setDataGroup(loadGroup.data); } else { toast.error(loadGroup.message); } const loadUser = await funGetUserByCookies(); setRoleUser(loadUser.idUserRole) } function onSubmit() { if (roleUser == "supadmin" && (body.idGroup == "" || body.idGroup == null)) { return toast.error("Error! grup harus diisi") } if (body.name == "") { return toast.error("Error! nama divisi harus diisi") } if (member.length == 0) { return toast.error("Error! belum ada anggota yang terdaftar") } setChooseAdmin(true) } function onToChooseAnggota() { if (roleUser == "supadmin" && body.idGroup == "") return toast.error("Error! grup harus diisi") setChooseAnggota(true) } function onChooseGroup(val: any) { member.set([]) setBody({ ...body, idGroup: val }) } useShallowEffect(() => { loadData(); }, []); if (isChooseAdmin) return { if (val) { member.set([]) setBody({ ...body, idGroup: "", name: "", desc: "", }) } setChooseAdmin(false) }} /> if (isChooseAnggota) return { setChooseAnggota(false) }} /> return ( { (roleUser == "supadmin") && (