1+ /* eslint-disable @typescript-eslint/no-non-null-asserted-optional-chain */
12import React from "react" ;
23import Menu from "@material-ui/core/Menu" ;
34import MenuItem from "@material-ui/core/MenuItem" ;
45import MeetingForm from "./meetingStuff/MeetingForm" ;
56import PollForm from "./pollStuff/PollForm" ;
67import { meetingType , pollType } from "./MeetingTabs" ;
8+ import { deletePoll } from "src/utils/pollCalls" ;
9+ import useTokenStore from "src/store/tokenStore" ;
10+ import { mutate } from "swr" ;
11+ import { server } from "src/store/global" ;
12+ import useYearStore from "src/store/yearStore" ;
713
814interface MenuOptionsProps {
915 meetingData ?: meetingType ;
@@ -25,6 +31,8 @@ const MenuOptions: React.FC<MenuOptionsProps> = ({
2531 close ( ) ;
2632 } ;
2733 const [ formOpen , setFormOpen ] = React . useState ( false ) ;
34+ const accessToken = useTokenStore ( ( state ) => state . token ) ;
35+ const year = useYearStore ( ( state ) => state . year ) ;
2836
2937 const forms = [
3038 < MeetingForm
@@ -39,6 +47,17 @@ const MenuOptions: React.FC<MenuOptionsProps> = ({
3947 /> ,
4048 ] ;
4149
50+ const handleDelete = async ( ) => {
51+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
52+ const res = await deletePoll ( pollData ?. _id ! , pollData ?. club ! , accessToken ) ;
53+ if ( res . done ) {
54+ mutate ( [ `${ server } /api/poll/get_all?year=${ year } ` , accessToken ] ) ;
55+ close ( ) ;
56+ } else {
57+ console . log ( res . err ) ;
58+ }
59+ } ;
60+
4261 return (
4362 < div >
4463 < Menu
@@ -49,10 +68,12 @@ const MenuOptions: React.FC<MenuOptionsProps> = ({
4968 onClose = { close }
5069 >
5170 < MenuItem onClick = { ( ) => setFormOpen ( true ) } > Edit</ MenuItem >
52- < MenuItem onClick = { handleClick } > Delete </ MenuItem >
71+
5372 { type === 0 ? (
5473 < MenuItem onClick = { handleClick } > Registers</ MenuItem >
55- ) : null }
74+ ) : (
75+ < MenuItem onClick = { handleDelete } > Delete</ MenuItem >
76+ ) }
5677 </ Menu >
5778 { forms [ type ] }
5879 </ div >
0 commit comments