import React, { useState } from 'react'; import { useSelector } from 'react-redux'; import './payment-screen.css'; import useSteps, { Step } from '@/hooks/palmistry/use-steps'; import useTimer from '@/hooks/palmistry/use-timer'; import HeaderLogo from '@/components/palmistry/header-logo/header-logo'; import { selectors } from '@/store'; import { EPlacementKeys } from '@/api/resources/Paywall'; import { useSearchParams } from 'react-router-dom'; import PaymentModalNew from '@/components/PaymentModalNew'; import { getFormattedPrice } from '@/utils/price.utils'; export default function PaymentScreen() { const time = useTimer(); const activeProductFromStore = useSelector(selectors.selectActiveProduct); const [searchParams] = useSearchParams(); const subscriptionStatus = searchParams.get("redirect_status") === "succeeded" ? "subscribed" : "lead"; const [height, setHeight] = useState(subscriptionStatus === "subscribed" ? 246 : 146); const steps = useSteps(); React.useEffect(() => { if (subscriptionStatus === "subscribed") { setTimeout(() => { steps.goNext(); }, 1500); } // eslint-disable-next-line react-hooks/exhaustive-deps }, [subscriptionStatus]); React.useEffect(() => { if (!activeProductFromStore) { steps.setFirstUnpassedStep(Step.SubscriptionPlan); } // eslint-disable-next-line react-hooks/exhaustive-deps }, [activeProductFromStore]); const trialPrice = activeProductFromStore?.trialPrice || 0; const fullPrice = activeProductFromStore?.price || 0; const [minutes, seconds] = time.split(":"); const returnUrl = window.location.origin + '/palmistry/payment'; return (
The #1 Astrology app trusted by over{" "} 25 million{" "} people.
Personalized offer reserved
{minutes[0]} {minutes[1]}:{seconds[0]} {seconds[1]}

Start your 7-day trial

Total today ${getFormattedPrice(trialPrice)}
Code AURA24 applied!
You will be charged only{" "} ${getFormattedPrice(trialPrice)} for your 7-day trial. Then ${getFormattedPrice(fullPrice)} $ {getFormattedPrice(trialPrice)} per week. Save $ {getFormattedPrice(fullPrice - trialPrice)} every week. We’ll email you a reminder before your trial ends.
No commitment. Cancel anytime.
30-Day Money-Back Guarantee
{activeProductFromStore && (
{subscriptionStatus !== "subscribed" && ( )} {subscriptionStatus === "subscribed" && (
Payment success
)}
)}
); }