diff --git a/src/components/CheckFastlink.tsx b/src/components/CheckFastlink.tsx deleted file mode 100644 index 428ff65..0000000 --- a/src/components/CheckFastlink.tsx +++ /dev/null @@ -1,96 +0,0 @@ -import { useLayoutEffect, useState } from "react" -import { useUserStore } from "@root/stores/user"; -import { Box, Button, Modal, Typography } from "@mui/material"; -import { useDiscounts } from "@root/api/price"; -import { activatePromocode } from "@root/api/promocode"; -import { mutate } from "swr"; -import { enqueueSnackbar } from "notistack"; - -export function CheckFastlink() { - const userId = useUserStore((state) => state.userId); - const discounts = useDiscounts(userId); - const [askToChange, setAskToChange] = useState(false) - const [promocode, setPromocode] = useState("") - - const fetchPromocode = () => { - if (promocode.length > 0) { - activatePromocode(promocode).then(response => { - enqueueSnackbar(response); - localStorage.setItem("fl", "") - mutate("discounts"); - }).catch(error => { - enqueueSnackbar(error.message); - localStorage.setItem("fl", "") - }); - } - } - - useLayoutEffect(() => { - //Промокод может быть или в урл адресе или в ЛС - const params = new URLSearchParams(window.location.search); - const flURL = params.get("fl"); - - if (flURL !== null) { - localStorage.setItem("fl", flURL) - var url = new URL(window.location.href); - url.searchParams.delete('fl'); - history.pushState(null, document.title, url); - } - - const flLS = localStorage.getItem("fl"); - - if (flLS !== null && flLS.length > 0) { - setPromocode(flLS) - - if (userId !== null) { - //У нас есть промокод и юзер авторизован. Проверяем есть ли у него применённый промокод - if (discounts?.find(e => e.Condition.User === userId)) { - //есть - setAskToChange(true) - } else { - //нет - fetchPromocode() - } - - } - } - - }, [userId, discounts]) - - return ( - setAskToChange(false)} - aria-labelledby="modal-modal-title" - aria-describedby="modal-modal-description" - > - - - Заменить текущий промокод? - - - - - - - - ); -} \ No newline at end of file diff --git a/src/components/Drawers.tsx b/src/components/Drawers.tsx index a2bdf7c..18b6d58 100644 --- a/src/components/Drawers.tsx +++ b/src/components/Drawers.tsx @@ -173,7 +173,10 @@ function Drawers() { - setIsDrawerOpen(false)} sx={{ background: "rgba(0, 0, 0, 0.55)" }}> + { + setIsDrawerOpen(false) + setNotEnoughMoneyAmount(0) + }} sx={{ background: "rgba(0, 0, 0, 0.55)" }}> Корзина - setIsDrawerOpen(false)} sx={{ p: 0 }}> + { + setIsDrawerOpen(false) + setNotEnoughMoneyAmount(0) + }} sx={{ p: 0 }}> diff --git a/src/components/NavbarLanding/NavbarFull.tsx b/src/components/NavbarLanding/NavbarFull.tsx index cfd8216..ebfd2be 100644 --- a/src/components/NavbarLanding/NavbarFull.tsx +++ b/src/components/NavbarLanding/NavbarFull.tsx @@ -28,6 +28,7 @@ import { import { currencyFormatter } from "@root/utils/currencyFormatter"; import { clearCustomTariffs } from "@root/stores/customTariffs"; import { clearTickets } from "@root/stores/tickets"; +import {setNotEnoughMoneyAmount} from "@stores/cart" interface Props { isLoggedIn: boolean; @@ -47,6 +48,7 @@ export default function NavbarFull({ isLoggedIn }: Props) { clearUserData(); clearCustomTariffs(); clearTickets(); + setNotEnoughMoneyAmount(0) navigate("/"); const [_, logoutError] = await logout(); diff --git a/src/components/NavbarSite/DialogMenu.tsx b/src/components/NavbarSite/DialogMenu.tsx index c451495..bee1989 100644 --- a/src/components/NavbarSite/DialogMenu.tsx +++ b/src/components/NavbarSite/DialogMenu.tsx @@ -17,6 +17,7 @@ import { logout } from "@root/api/auth"; import { enqueueSnackbar } from "notistack"; import { clearCustomTariffs } from "@root/stores/customTariffs"; import { clearTickets } from "@root/stores/tickets"; +import {setNotEnoughMoneyAmount} from "@stores/cart" type MenuItem = { name: string; @@ -69,6 +70,7 @@ export default function DialogMenu({ handleClose }: DialogMenuProps) { clearUserData(); clearCustomTariffs(); clearTickets(); + setNotEnoughMoneyAmount(0) navigate("/"); const [_, logoutError] = await logout(); diff --git a/src/components/NavbarSite/NavbarFull.tsx b/src/components/NavbarSite/NavbarFull.tsx index 53281e8..67bb46e 100644 --- a/src/components/NavbarSite/NavbarFull.tsx +++ b/src/components/NavbarSite/NavbarFull.tsx @@ -17,6 +17,7 @@ import { currencyFormatter } from "@root/utils/currencyFormatter"; import { clearTickets } from "@root/stores/tickets"; import type { ReactNode } from "react"; +import {setNotEnoughMoneyAmount} from "@stores/cart" interface Props { children: ReactNode; @@ -33,6 +34,7 @@ export default function NavbarFull({ children }: Props) { clearUserData(); clearCustomTariffs(); clearTickets(); + setNotEnoughMoneyAmount(0) navigate("/"); const [_, logoutError] = await logout(); diff --git a/src/components/NavbarSite/NavbarPanel.tsx b/src/components/NavbarSite/NavbarPanel.tsx index d572a7c..2627163 100644 --- a/src/components/NavbarSite/NavbarPanel.tsx +++ b/src/components/NavbarSite/NavbarPanel.tsx @@ -18,6 +18,7 @@ import { clearTickets } from "@root/stores/tickets"; import { currencyFormatter } from "@root/utils/currencyFormatter"; import walletIcon from "@root/assets/Icons/wallet_icon.svg"; +import {setNotEnoughMoneyAmount} from "@stores/cart" export const NavbarPanel = () => { const navigate = useNavigate(); @@ -31,6 +32,7 @@ export const NavbarPanel = () => { clearUserData(); clearCustomTariffs(); clearTickets(); + setNotEnoughMoneyAmount(0) navigate("/"); const [_, logoutError] = await logout(); diff --git a/src/index.tsx b/src/index.tsx index f67d59e..b4dcf9f 100644 --- a/src/index.tsx +++ b/src/index.tsx @@ -55,7 +55,7 @@ import OutdatedLink from "@root/pages/auth/OutdatedLink"; import { verify } from "./pages/AccountSettings/helper"; import AfterPay from "./pages/AfterPay"; import { PageNotFound } from "./pages/PageNotFound"; -import { CheckFastlink } from "./components/CheckFastlink"; +import {setNotEnoughMoneyAmount} from "@stores/cart" pdfjs.GlobalWorkerOptions.workerSrc = new URL( "pdfjs-dist/build/pdf.worker.min.js", @@ -67,8 +67,9 @@ const App = () => { const location = useLocation(); const userId = useUserStore((state) => state.userId); const navigate = useNavigate(); - + console.log(location.pathname === "/cart") console.log(userId); + if(location.pathname !== "/cart"){setNotEnoughMoneyAmount(0)} useUserFetcher({ url: process.env.REACT_APP_DOMAIN + `/user/${userId}`, userId, @@ -212,7 +213,6 @@ root.render( - // diff --git a/src/pages/QuizPayment/QuizPayment.tsx b/src/pages/QuizPayment/QuizPayment.tsx index 0ad90aa..fc4748c 100644 --- a/src/pages/QuizPayment/QuizPayment.tsx +++ b/src/pages/QuizPayment/QuizPayment.tsx @@ -20,6 +20,7 @@ import { import { logout } from "@root/api/auth"; import { clearCustomTariffs } from "@root/stores/customTariffs"; import { clearTickets } from "@root/stores/tickets"; +import {setNotEnoughMoneyAmount} from "@stores/cart" function refresh(token: string) { return axios>( @@ -77,7 +78,7 @@ export default function QuizPayment() { clearUserData(); clearCustomTariffs(); clearTickets(); - + setNotEnoughMoneyAmount(0) await logout(); }