| import AddAdModalSecondStage from "./AddAdModalSecondStage"; | import AddAdModalSecondStage from "./AddAdModalSecondStage"; | ||||
| import AddAdModalThirdStage from "./AddAdModalThirdStage"; | import AddAdModalThirdStage from "./AddAdModalThirdStage"; | ||||
| import { useSelector, useDispatch } from "react-redux"; | import { useSelector, useDispatch } from "react-redux"; | ||||
| import { setTechnologiesAddAdReq } from "../../store/actions/addAdTechnologies/addAdTechnologiesActions"; | |||||
| import { | |||||
| resetIsCheckedAddAdValue, | |||||
| setTechnologiesAddAdReq, | |||||
| } from "../../store/actions/addAdTechnologies/addAdTechnologiesActions"; | |||||
| import { setCreateAdReq } from "../../store/actions/createAd/createAdActions"; | import { setCreateAdReq } from "../../store/actions/createAd/createAdActions"; | ||||
| const style = { | const style = { | ||||
| dispatch(setTechnologiesAddAdReq()); | dispatch(setTechnologiesAddAdReq()); | ||||
| }, []); | }, []); | ||||
| const addAdHandler = (htmlKeyResponsibilities, htmlRequirements, htmlOffer) => { | |||||
| const onSuccessAddAd = () => { | |||||
| setStage(1); | |||||
| setTitle(""); | |||||
| setEmploymentType("Work"); | |||||
| setWorkHour("FullTime"); | |||||
| setExpiredAt(""); | |||||
| setExperience(0); | |||||
| dispatch(resetIsCheckedAddAdValue()); | |||||
| }; | |||||
| const addAdHandler = ( | |||||
| htmlKeyResponsibilities, | |||||
| htmlRequirements, | |||||
| htmlOffer | |||||
| ) => { | |||||
| const technologiesIds = technologies | const technologiesIds = technologies | ||||
| .filter((x) => x.isChecked === true) | .filter((x) => x.isChecked === true) | ||||
| .map((x) => x.technologyId); | .map((x) => x.technologyId); | ||||
| minimumExperience: experience, | minimumExperience: experience, | ||||
| createdAt: new Date(), | createdAt: new Date(), | ||||
| expiredAt, | expiredAt, | ||||
| // keyResponsibilities, | |||||
| keyResponsibilities: htmlKeyResponsibilities, | keyResponsibilities: htmlKeyResponsibilities, | ||||
| requirements: htmlRequirements, | requirements: htmlRequirements, | ||||
| offer: htmlOffer, | offer: htmlOffer, | ||||
| workHour, | workHour, | ||||
| employmentType, | employmentType, | ||||
| technologiesIds, | technologiesIds, | ||||
| onSuccessAddAd, | |||||
| }) | }) | ||||
| ); | ); | ||||
| handleClose(); | handleClose(); |
| export const FETCH_ADD_AD_TECHNOLOGIES_SUCCESS = "FETCH_ADD_AD_TECHNOLOGIES_SUCCESS"; | export const FETCH_ADD_AD_TECHNOLOGIES_SUCCESS = "FETCH_ADD_AD_TECHNOLOGIES_SUCCESS"; | ||||
| export const CHANGE_ISCHECKED_VALUE_ADD_AD = "CHANGE_ISCHECKED_VALUE"; | export const CHANGE_ISCHECKED_VALUE_ADD_AD = "CHANGE_ISCHECKED_VALUE"; | ||||
| export const RESET_ISCHECKED_VALUE_ADD_AD = "RESET_ISCHECKED_VALUE_ADD_AD"; |
| import { | import { | ||||
| FETCH_ADD_AD_TECHNOLOGIES_REQ, | |||||
| FETCH_ADD_AD_TECHNOLOGIES_ERR, | |||||
| FETCH_ADD_AD_TECHNOLOGIES_SUCCESS, | |||||
| CHANGE_ISCHECKED_VALUE_ADD_AD, | |||||
| } from "./addAdTechnologiesActionConstants"; | |||||
| export const setTechnologiesAddAdReq = () => ({ | |||||
| type: FETCH_ADD_AD_TECHNOLOGIES_REQ, | |||||
| }); | |||||
| export const setTechnologiesAddAdError = (payload) => ({ | |||||
| type: FETCH_ADD_AD_TECHNOLOGIES_ERR, | |||||
| payload, | |||||
| }); | |||||
| export const setTechnologiesAddAd = (payload) => ({ | |||||
| type: FETCH_ADD_AD_TECHNOLOGIES_SUCCESS, | |||||
| payload, | |||||
| }); | |||||
| export const changeIsCheckedAddAdValue = (payload) => ({ | |||||
| type: CHANGE_ISCHECKED_VALUE_ADD_AD, | |||||
| payload, | |||||
| }); | |||||
| FETCH_ADD_AD_TECHNOLOGIES_REQ, | |||||
| FETCH_ADD_AD_TECHNOLOGIES_ERR, | |||||
| FETCH_ADD_AD_TECHNOLOGIES_SUCCESS, | |||||
| CHANGE_ISCHECKED_VALUE_ADD_AD, | |||||
| RESET_ISCHECKED_VALUE_ADD_AD, | |||||
| } from "./addAdTechnologiesActionConstants"; | |||||
| export const setTechnologiesAddAdReq = () => ({ | |||||
| type: FETCH_ADD_AD_TECHNOLOGIES_REQ, | |||||
| }); | |||||
| export const setTechnologiesAddAdError = (payload) => ({ | |||||
| type: FETCH_ADD_AD_TECHNOLOGIES_ERR, | |||||
| payload, | |||||
| }); | |||||
| export const setTechnologiesAddAd = (payload) => ({ | |||||
| type: FETCH_ADD_AD_TECHNOLOGIES_SUCCESS, | |||||
| payload, | |||||
| }); | |||||
| export const changeIsCheckedAddAdValue = (payload) => ({ | |||||
| type: CHANGE_ISCHECKED_VALUE_ADD_AD, | |||||
| payload, | |||||
| }); | |||||
| export const resetIsCheckedAddAdValue = () => ({ | |||||
| type: RESET_ISCHECKED_VALUE_ADD_AD, | |||||
| }); |
| FETCH_ADD_AD_TECHNOLOGIES_ERR, | FETCH_ADD_AD_TECHNOLOGIES_ERR, | ||||
| FETCH_ADD_AD_TECHNOLOGIES_SUCCESS, | FETCH_ADD_AD_TECHNOLOGIES_SUCCESS, | ||||
| CHANGE_ISCHECKED_VALUE_ADD_AD, | CHANGE_ISCHECKED_VALUE_ADD_AD, | ||||
| RESET_ISCHECKED_VALUE_ADD_AD, | |||||
| } from "../../actions/addAdTechnologies/addAdTechnologiesActionConstants"; | } from "../../actions/addAdTechnologies/addAdTechnologiesActionConstants"; | ||||
| const initialState = { | const initialState = { | ||||
| [FETCH_ADD_AD_TECHNOLOGIES_SUCCESS]: setStateTechnologiesAddAd, | [FETCH_ADD_AD_TECHNOLOGIES_SUCCESS]: setStateTechnologiesAddAd, | ||||
| [FETCH_ADD_AD_TECHNOLOGIES_ERR]: setStateAddAdErrorMessage, | [FETCH_ADD_AD_TECHNOLOGIES_ERR]: setStateAddAdErrorMessage, | ||||
| [CHANGE_ISCHECKED_VALUE_ADD_AD]: setIsCheckedTechnologyAddAd, | [CHANGE_ISCHECKED_VALUE_ADD_AD]: setIsCheckedTechnologyAddAd, | ||||
| [RESET_ISCHECKED_VALUE_ADD_AD]: setResetTechnologyAddAd, | |||||
| }, | }, | ||||
| initialState | initialState | ||||
| ); | ); | ||||
| ), | ), | ||||
| }; | }; | ||||
| } | } | ||||
| function setResetTechnologyAddAd(state) { | |||||
| const resetedTechnologies = state.technologies.map((tech) => ({ | |||||
| ...tech, | |||||
| isChecked: false, | |||||
| })); | |||||
| return { ...state, technologies: resetedTechnologies }; | |||||
| } |
| // import { JWT_TOKEN } from "../../constants/localStorage"; | // import { JWT_TOKEN } from "../../constants/localStorage"; | ||||
| // import { addHeaderToken } from "../../request"; | // import { addHeaderToken } from "../../request"; | ||||
| import { rejectErrorCodeHelper } from "../../util/helpers/rejectErrorCodeHelper"; | import { rejectErrorCodeHelper } from "../../util/helpers/rejectErrorCodeHelper"; | ||||
| import { archiveActiveAd, archiveActiveAdError } from "../actions/archiveActiveAd/archiveActiveAdActions"; | |||||
| import { | |||||
| archiveActiveAd, | |||||
| archiveActiveAdError, | |||||
| } from "../actions/archiveActiveAd/archiveActiveAdActions"; | |||||
| export function* getAds() { | export function* getAds() { | ||||
| try { | try { | ||||
| yield put(setAds(resultAds.data)); | yield put(setAds(resultAds.data)); | ||||
| const resultArchiveAds = yield call(getAllArchiveAds); | const resultArchiveAds = yield call(getAllArchiveAds); | ||||
| yield put(setArchiveAds(resultArchiveAds.data)); | yield put(setArchiveAds(resultArchiveAds.data)); | ||||
| if (payload.onSuccessAddAd) { | |||||
| yield call(payload.onSuccessAddAd); | |||||
| } | |||||
| } catch (error) { | } catch (error) { | ||||
| yield put(setCreateAdError(error)); | yield put(setCreateAdError(error)); | ||||
| } | } | ||||
| yield put(setAds(resultAds.data)); | yield put(setAds(resultAds.data)); | ||||
| const resultArchiveAds = yield call(getAllArchiveAds); | const resultArchiveAds = yield call(getAllArchiveAds); | ||||
| yield put(setArchiveAds(resultArchiveAds.data)); | yield put(setArchiveAds(resultArchiveAds.data)); | ||||
| if(payload.navigateToAds){ | |||||
| yield call(payload.navigateToAds) | |||||
| if (payload.navigateToAds) { | |||||
| yield call(payload.navigateToAds); | |||||
| } | } | ||||
| } catch (error) { | } catch (error) { | ||||
| const errorMessage = yield call(rejectErrorCodeHelper, error); | const errorMessage = yield call(rejectErrorCodeHelper, error); |