source: jobvista-frontend/src/views/job_advertisements/DeleteJobAdModal.js

main
Last change on this file was 08f82ec, checked in by 223021 <daniel.ilievski.2@…>, 13 days ago

Did more refactoring

  • Property mode set to 100644
File size: 2.4 KB
Line 
1import React, {useState} from "react";
2import "../shared_css/Modal.css";
3
4import 'react-responsive-modal/styles.css';
5import {Modal} from 'react-responsive-modal';
6import Select from "react-select";
7
8//Validation
9import * as yup from "yup";
10import {yupResolver} from "@hookform/resolvers/yup";
11import {Controller, useForm} from "react-hook-form";
12
13
14import {employmentStatusOptions, industryOptions, jobTypeOptions} from "../selectOptions";
15import {useDispatch, useSelector} from "react-redux";
16import {JobAdvertisementActions} from "../../redux/actions/jobAdvertisementActions";
17import {notifyJobAdDelete} from "../../utils/toastUtils";
18
19
20export const DeleteJobAdModal = (jobAd) => {
21 const [modal, setModal] = useState(false);
22 const dispatch = useDispatch();
23 const auth = useSelector(state => state.auth.currentUser)
24 const toggleModal = () => {
25 setModal(!modal);
26 };
27
28 const deleteJobAdvertisement = async () => {
29 try {
30 dispatch(JobAdvertisementActions.deleteJobAdvertisement(jobAd.props.id, (success) => {
31 if (success) {
32 toggleModal()
33 notifyJobAdDelete()
34 }
35 }))
36 } catch (err) {
37 console.error(err)
38 }
39 }
40
41 return (<div className="modal-wrap">
42 <i className="fa-solid fa-trash trash-delete-btn" onClick={toggleModal}></i>
43 <Modal open={modal} onClose={toggleModal} center classNames="job-advertisement-modal">
44 <i className="fa-solid fa-x btn-close-modal" style={{color: "black"}} onClick={toggleModal}></i>
45 <div className="modal-delete-content">
46 <div className="row modal-delete-content-inside">
47 <div className="col-md-1"><i className="fa-regular fa-circle-xmark x-icon"></i></div>
48 <div className="col-md-11 modal-delete-text">
49 <h4>Are you sure?</h4>
50 <p>Do you really want to delete this advertisement? This process cannot be undone.</p>
51 </div>
52 </div>
53 <div className="modal-delete-buttons">
54 <button className="cancel-btn" onClick={toggleModal}>Cancel</button>
55 <button className="delete-btn" onClick={deleteJobAdvertisement}> Delete</button>
56 </div>
57 </div>
58 </Modal>
59 </div>)
60}
Note: See TracBrowser for help on using the repository browser.