upd: banner
Deskripsi: - tambah banner - hapus banner - edit one banner - hapus coding contoh tombol upload pada login page No Issues
This commit is contained in:
@@ -5,17 +5,42 @@ import ButtonBackHeader from "@/components/buttonBackHeader"
|
||||
import DrawerBottom from "@/components/drawerBottom"
|
||||
import MenuItemRow from "@/components/menuItemRow"
|
||||
import Styles from "@/constants/Styles"
|
||||
import { apiDeleteBanner, apiGetBanner } from "@/lib/api"
|
||||
import { setEntities } from "@/lib/bannerSlice"
|
||||
import { useAuthSession } from "@/providers/AuthProvider"
|
||||
import { Ionicons, MaterialCommunityIcons } from "@expo/vector-icons"
|
||||
import { router, Stack } from "expo-router"
|
||||
import { useState } from "react"
|
||||
import { Image, SafeAreaView, ScrollView, ToastAndroid, View } from "react-native"
|
||||
import { useSelector } from "react-redux"
|
||||
import { useDispatch, useSelector } from "react-redux"
|
||||
|
||||
export default function BannerList() {
|
||||
const { decryptToken, token } = useAuthSession();
|
||||
const [isModal, setModal] = useState(false)
|
||||
const entities = useSelector((state: any) => state.banner)
|
||||
const [dataId, setDataId] = useState('')
|
||||
const [dataStorage, setDataStorage] = useState('')
|
||||
const dispatch = useDispatch();
|
||||
|
||||
const handleDeleteEntity = async () => {
|
||||
try {
|
||||
const hasil = await decryptToken(String(token?.current));
|
||||
const deletedEntity = await apiDeleteBanner({ user: hasil }, dataId);
|
||||
if (deletedEntity.success) {
|
||||
ToastAndroid.show("Berhasil menghapus data", ToastAndroid.SHORT);
|
||||
apiGetBanner({ user: hasil }).then((data) =>
|
||||
dispatch(setEntities(data.data))
|
||||
);
|
||||
} else {
|
||||
ToastAndroid.show('Gagal menghapus data', ToastAndroid.SHORT);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error(error)
|
||||
ToastAndroid.show('Terjadi kesalahan', ToastAndroid.SHORT)
|
||||
} finally {
|
||||
setModal(false)
|
||||
}
|
||||
|
||||
};
|
||||
|
||||
return (
|
||||
<SafeAreaView>
|
||||
@@ -35,7 +60,6 @@ export default function BannerList() {
|
||||
key={key}
|
||||
onPress={() => {
|
||||
setDataId(index.id)
|
||||
setDataStorage(index.image)
|
||||
setModal(true)
|
||||
}}
|
||||
borderType="all"
|
||||
@@ -73,10 +97,7 @@ export default function BannerList() {
|
||||
AlertKonfirmasi({
|
||||
title: 'Konfirmasi',
|
||||
desc: 'Apakah anda yakin ingin menghapus data?',
|
||||
onPress: () => {
|
||||
setModal(false)
|
||||
ToastAndroid.show('Berhasil menghapus data', ToastAndroid.SHORT)
|
||||
}
|
||||
onPress: () => { handleDeleteEntity() }
|
||||
})
|
||||
}}
|
||||
/>
|
||||
|
||||
Reference in New Issue
Block a user