error window handled

This commit is contained in:
VividTruthKeeper 2022-03-28 14:20:59 +05:00
parent 570be3804d
commit 3c72e149a2
12 changed files with 74 additions and 17 deletions

View File

@ -25,7 +25,10 @@ export const changePassword = (
}
})
.catch((err) => {
setError(err.response.data.error);
setError(true);
setTimeout(() => {
setError(false);
}, 2000);
setIsLoading(false);
setSuccess(false);
});

View File

@ -1,7 +1,14 @@
// IMPORT MODULES
import axios from "axios";
export const sendMessage = (url, token, data, stateSetter, loader) => {
export const sendMessage = (
url,
token,
data,
stateSetter,
loader,
setError
) => {
axios
.post(`${url}?token=${token}`, data)
.then((res) => {
@ -10,5 +17,9 @@ export const sendMessage = (url, token, data, stateSetter, loader) => {
})
.catch(() => {
stateSetter(false);
setError(true);
setTimeout(() => {
setError(false);
}, 2000);
});
};

View File

@ -1,6 +1,13 @@
import axios from "axios";
export const sendRequest = (url, token, data, setState, setLoader) => {
export const sendRequest = (
url,
token,
data,
setState,
setLoader,
setError
) => {
const form = new FormData();
let today = new Date();
@ -38,9 +45,13 @@ export const sendRequest = (url, token, data, setState, setLoader) => {
}
})
.catch((err) => {
console.log(err);
if (setLoader) {
setLoader(false);
}
setError(true);
setTimeout(() => {
setError(false);
}, 2000);
});
};

View File

@ -1,7 +1,7 @@
import axios from "axios";
// import { getDate } from "../helpers/Date";
export const sendRequestCard = (url, token, data, setLoader) => {
export const sendRequestCard = (url, token, data, setLoader, setError) => {
let today = new Date();
let dd = String(today.getDate()).padStart(2, "0");
let mm = String(today.getMonth() + 1).padStart(2, "0"); //January is 0!
@ -32,12 +32,16 @@ export const sendRequestCard = (url, token, data, setLoader) => {
axios
.post(`${url}?token=${token}`, form)
.then((res) => {
window.open(res.request.responseURL, "_blank").focus();
window.open(res.request.responseURL, "_self").focus();
if (setLoader) {
setLoader(false);
}
})
.catch(() => {
setLoader(false);
setError(true);
setTimeout(() => {
setError(false);
}, 2000);
});
};

View File

@ -20,6 +20,7 @@ const CardStage6 = ({
setLoader,
setModalOpen,
setSuccess,
setError,
}) => {
const { setUser } = useContext(UserContext);
const token = localStorage.getItem("userToken");
@ -133,14 +134,20 @@ const CardStage6 = ({
onClick={() => {
setLoader(true);
setModalOpen(false);
sendRequestCard(postUrl, token, data, () => {
setSuccess(true);
setLoader(false);
setTimeout(() => {
setSuccess(false);
getUserInfo(getUrl, token, setUser, () => null);
}, 2000);
});
sendRequestCard(
postUrl,
token,
data,
() => {
setSuccess(true);
setLoader(false);
setTimeout(() => {
setSuccess(false);
getUserInfo(getUrl, token, setUser, () => null);
}, 2000);
},
setError
);
}}
>
<div>

View File

@ -20,6 +20,7 @@ const CreditStage6 = ({
setModalOpen,
setLoader,
setSuccess,
setError,
}) => {
const { setUser } = useContext(UserContext);
const token = localStorage.getItem("userToken");
@ -132,7 +133,8 @@ const CreditStage6 = ({
getUserInfo(getUrl, token, setUser, () => null);
}, 2000);
},
setLoader
setLoader,
setError
);
}}
>

View File

@ -25,6 +25,7 @@ const ModalForm = ({
setStage,
setLoader,
setSuccess,
setError,
}) => {
const window = useRef();
const [data, setData] = useState({});
@ -146,6 +147,7 @@ const ModalForm = ({
setLoader={setLoader}
setModalOpen={setModalOpen}
setSuccess={setSuccess}
setError={setError}
/>
) : (
""

View File

@ -26,6 +26,7 @@ const CreditModal = ({
setStage,
setLoader,
setSuccess,
setError,
}) => {
const window = useRef();
const [data, setData] = useState({});
@ -179,6 +180,7 @@ const CreditModal = ({
setModalOpen={setModalOpen}
setLoader={setLoader}
setSuccess={setSuccess}
setError={setError}
/>
) : (
""

View File

@ -7,6 +7,7 @@ import Breadcrumb from "../components/global/Breadcrumb";
import ModalForm from "../components/cards/ModalForm";
import Loader from "../components/global/Loader";
import Success from "../components/global/Success";
import Error from "../components/global/Error";
// IMPORT IMAGES
import card from "../icons/card-black.svg";
@ -15,6 +16,7 @@ import allert from "../icons/info-circle.svg";
import nul from "../icons/null.svg";
const Cards = () => {
const [error, setError] = useState(false);
const [success, setSuccess] = useState(false);
const { user } = useContext(UserContext);
const [loader, setLoader] = useState(false);
@ -29,6 +31,7 @@ const Cards = () => {
}, [modalOpen]);
return (
<section className="cards">
{error ? <Error message={"Не удалось отправить запрос"} /> : null}
{success ? <Success message={"Ваш запрос успешно отправлен!"} /> : null}
<Breadcrumb
image={card}
@ -43,6 +46,7 @@ const Cards = () => {
loader={loader}
setLoader={setLoader}
setSuccess={setSuccess}
setError={setError}
/>
{loader ? <Loader /> : null}
<div className="container">

View File

@ -7,6 +7,7 @@ import CustomSelect from "../components/global/CustomSelect";
import Breadcrumb from "../components/global/Breadcrumb";
import Loader from "../components/global/Loader";
import Success from "../components/global/Success";
import Error from "../components/global/Error";
// IMPORT FUNCTIONS
import { sendMessage } from "../backend/sendMessage";
@ -23,6 +24,7 @@ import { destination } from "../destinationUrl";
const ContactUs = () => {
const [success, setSuccess] = useState(false);
const [error, setError] = useState(false);
const token = localStorage.getItem("userToken");
const postUrl = destination + "/message";
const formData = new FormData();
@ -42,6 +44,7 @@ const ContactUs = () => {
}, [topic, inputValid]);
return (
<section className="contact-us">
{error ? <Error message={"Не удалось отправить сообщение"} /> : null}
{success ? (
<Success message={"Ваше сообщение успешно отправлено!"} />
) : null}
@ -130,7 +133,8 @@ const ContactUs = () => {
setTimeout(() => {
setSuccess(false);
}, 2000);
}
},
setError
);
}}
>

View File

@ -7,6 +7,7 @@ import Breadcrumb from "../components/global/Breadcrumb";
import CreditModal from "../components/credits/CreditModal";
import Loader from "../components/global/Loader";
import Success from "../components/global/Success";
import Error from "../components/global/Error";
// IMPORT IMAGES
import credit from "../icons/credit-black.svg";
@ -15,6 +16,7 @@ import allert from "../icons/info-circle.svg";
import nul from "../icons/null.svg";
const Credits = () => {
const [error, setError] = useState(false);
const [success, setSuccess] = useState(false);
const { user } = useContext(UserContext);
const [modalOpen, setModalOpen] = useState(false);
@ -31,6 +33,7 @@ const Credits = () => {
return (
<section className="cards">
{success ? <Success message={"Ваш запрос успешно отправлен!"} /> : null}
{error ? <Error message={"Не удалось отправить запрос"} /> : null}
<Breadcrumb image={credit} link={"/home/credits"} linkTitle={"Кредиты"} />
<CreditModal
setModalOpen={setModalOpen}
@ -40,6 +43,7 @@ const Credits = () => {
loader={loader}
setLoader={setLoader}
setSuccess={setSuccess}
setError={setError}
/>
{loader ? <Loader /> : null}
<div className="container">

View File

@ -7,6 +7,7 @@ import ReCAPTCHA from "react-google-recaptcha";
import Breadcrumb from "../components/global/Breadcrumb";
import Loader from "../components/global/Loader";
import Success from "../components/global/Success";
import Error from "../components/global/Error";
// IMPORT IMAGES
import recovery from "../icons/recovery.svg";
@ -29,6 +30,7 @@ const Recovery = () => {
const inp2 = useRef();
const inp3 = useRef();
const [success, setSuccess] = useState(false);
const [error, setError] = useState(false);
const [isLoading, setIsLoading] = useState(false);
const postUrl = destination + "/me";
const userToken = localStorage.getItem("userToken");
@ -59,6 +61,7 @@ const Recovery = () => {
return (
<section className="p-recovery">
{error ? <Error message={"Не удалось поменять пароль"} /> : null}
{success ? <Success message={"Ваш пароль успешно изменен!"} /> : null}
<Breadcrumb
image={recovery}
@ -98,7 +101,7 @@ const Recovery = () => {
setUser,
true,
userToken,
() => null,
setError,
setIsLoading,
setSuccess
);