upd: pembatasan user role pada diskusi umum
This commit is contained in:
@@ -19,6 +19,8 @@ import { useDispatch, useSelector } from "react-redux";
|
|||||||
|
|
||||||
export default function CreateDiscussionGeneral() {
|
export default function CreateDiscussionGeneral() {
|
||||||
const { token, decryptToken } = useAuthSession()
|
const { token, decryptToken } = useAuthSession()
|
||||||
|
const entityUser = useSelector((state: any) => state.user);
|
||||||
|
const userLogin = useSelector((state: any) => state.entities)
|
||||||
const [chooseGroup, setChooseGroup] = useState({ val: "", label: "" });
|
const [chooseGroup, setChooseGroup] = useState({ val: "", label: "" });
|
||||||
const [valChoose, setValChoose] = useState("")
|
const [valChoose, setValChoose] = useState("")
|
||||||
const [valSelect, setValSelect] = useState<"group" | "member">("group");
|
const [valSelect, setValSelect] = useState<"group" | "member">("group");
|
||||||
@@ -132,6 +134,9 @@ export default function CreateDiscussionGeneral() {
|
|||||||
/>
|
/>
|
||||||
<ScrollView>
|
<ScrollView>
|
||||||
<View style={[Styles.p15, Styles.mb100]}>
|
<View style={[Styles.p15, Styles.mb100]}>
|
||||||
|
{
|
||||||
|
(entityUser.role == "supadmin" ||
|
||||||
|
entityUser.role == "developer") && (
|
||||||
<SelectForm
|
<SelectForm
|
||||||
label="Lembaga Desa"
|
label="Lembaga Desa"
|
||||||
placeholder="Pilih Lembaga Desa"
|
placeholder="Pilih Lembaga Desa"
|
||||||
@@ -142,7 +147,11 @@ export default function CreateDiscussionGeneral() {
|
|||||||
setValSelect("group");
|
setValSelect("group");
|
||||||
setSelect(true);
|
setSelect(true);
|
||||||
}}
|
}}
|
||||||
|
error={error.group}
|
||||||
|
errorText="Lembaga Desa tidak boleh kosong"
|
||||||
/>
|
/>
|
||||||
|
)
|
||||||
|
}
|
||||||
<InputForm
|
<InputForm
|
||||||
label="Judul"
|
label="Judul"
|
||||||
type="default"
|
type="default"
|
||||||
@@ -164,6 +173,7 @@ export default function CreateDiscussionGeneral() {
|
|||||||
<ButtonSelect
|
<ButtonSelect
|
||||||
value="Pilih Anggota"
|
value="Pilih Anggota"
|
||||||
onPress={() => {
|
onPress={() => {
|
||||||
|
if (entityUser.role == "supadmin" || entityUser.role == "developer") {
|
||||||
if (chooseGroup.val != "") {
|
if (chooseGroup.val != "") {
|
||||||
setSelect(true);
|
setSelect(true);
|
||||||
setValSelect("member");
|
setValSelect("member");
|
||||||
@@ -173,6 +183,13 @@ export default function CreateDiscussionGeneral() {
|
|||||||
ToastAndroid.SHORT
|
ToastAndroid.SHORT
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}else{
|
||||||
|
validationForm('group', userLogin.idGroup, userLogin.group);
|
||||||
|
setValChoose(userLogin.idGroup)
|
||||||
|
setSelect(true);
|
||||||
|
setValSelect("member");
|
||||||
|
}
|
||||||
|
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ import { AntDesign } from "@expo/vector-icons"
|
|||||||
import { router } from "expo-router"
|
import { router } from "expo-router"
|
||||||
import { useState } from "react"
|
import { useState } from "react"
|
||||||
import { View } from "react-native"
|
import { View } from "react-native"
|
||||||
|
import { useSelector } from "react-redux"
|
||||||
import ButtonMenuHeader from "../buttonMenuHeader"
|
import ButtonMenuHeader from "../buttonMenuHeader"
|
||||||
import DrawerBottom from "../drawerBottom"
|
import DrawerBottom from "../drawerBottom"
|
||||||
import MenuItemRow from "../menuItemRow"
|
import MenuItemRow from "../menuItemRow"
|
||||||
@@ -11,6 +12,8 @@ import ModalFilter from "../modalFilter"
|
|||||||
export default function HeaderDiscussionGeneral() {
|
export default function HeaderDiscussionGeneral() {
|
||||||
const [isVisible, setVisible] = useState(false)
|
const [isVisible, setVisible] = useState(false)
|
||||||
const [isFilter, setFilter] = useState(false)
|
const [isFilter, setFilter] = useState(false)
|
||||||
|
const entityUser = useSelector((state: any) => state.user)
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<ButtonMenuHeader onPress={() => { setVisible(true) }} />
|
<ButtonMenuHeader onPress={() => { setVisible(true) }} />
|
||||||
@@ -24,6 +27,8 @@ export default function HeaderDiscussionGeneral() {
|
|||||||
router.push('/discussion/create')
|
router.push('/discussion/create')
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
|
{
|
||||||
|
(entityUser.role == 'supadmin' || entityUser.role == 'developer') &&
|
||||||
<MenuItemRow
|
<MenuItemRow
|
||||||
icon={<AntDesign name="filter" color="black" size={25} />}
|
icon={<AntDesign name="filter" color="black" size={25} />}
|
||||||
title="Filter"
|
title="Filter"
|
||||||
@@ -32,6 +37,7 @@ export default function HeaderDiscussionGeneral() {
|
|||||||
setFilter(true)
|
setFilter(true)
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
|
}
|
||||||
</View>
|
</View>
|
||||||
</DrawerBottom>
|
</DrawerBottom>
|
||||||
<ModalFilter close={() => { setFilter(false) }} open={isFilter} page="discussion" />
|
<ModalFilter close={() => { setFilter(false) }} open={isFilter} page="discussion" />
|
||||||
|
|||||||
Reference in New Issue
Block a user