сценарии генерации урла на хаб
Some checks failed
Deploy / CreateImage (push) Failing after 3m6s
Deploy / DeployService (push) Has been skipped

This commit is contained in:
Nastya 2025-07-16 09:21:03 +03:00
parent acfc9727ed
commit 0d0acfd7b9
3 changed files with 45 additions and 6 deletions

@ -21,6 +21,7 @@ import { setUserAccount, setCustomerAccount } from "@/stores/user";
import { quizApi } from "@api/quiz"; import { quizApi } from "@api/quiz";
import { setQuizes } from "@root/quizes/actions"; import { setQuizes } from "@root/quizes/actions";
import TooltipClickInfo from "@/ui_kit/Toolbars/TooltipClickInfo"; import TooltipClickInfo from "@/ui_kit/Toolbars/TooltipClickInfo";
import { generateHubWalletRequestURL } from "@/utils/generateHubWalletRequest";
const tariff = isTestServer ? "6844b8858258f5cc35791ef7" : "6851db40acfb4d3e5fcd9b19"; const tariff = isTestServer ? "6844b8858258f5cc35791ef7" : "6851db40acfb4d3e5fcd9b19";
export default function PersonalizationAI() { export default function PersonalizationAI() {
@ -240,7 +241,15 @@ export default function PersonalizationAI() {
//если денег не хватило //если денег не хватило
if (payError?.includes("insufficient funds") || payError?.includes("Payment Required")) { if (payError?.includes("insufficient funds") || payError?.includes("Payment Required")) {
var link = document.createElement("a"); var link = document.createElement("a");
link.href = `https://${isTestServer ? "s" : ""}hub.pena.digital/quizpayment?action=squizpay&dif=50000&data=${token}&userid=${userId}&from=AI&wayback=ai_${quiz?.backendId}`; link.href = generateHubWalletRequestURL({
wayback: "edit",
action: "buy",
dif: "50000",
userid: userId,
additionalinformation: quiz?.backendId.toString(),
token
});
//link.href = `https://${isTestServer ? "s" : ""}hub.pena.digital/quizpayment?action=squizpay&dif=50000&data=${token}&userid=${userId}&from=AI&wayback=ai_${quiz?.backendId}`;
document.body.appendChild(link); document.body.appendChild(link);
link.click(); link.click();
return; return;

@ -28,6 +28,7 @@ import { useDiscounts } from '@utils/hooks/useDiscounts';
import { PaymentConfirmationModal } from "./components/PaymentConfirmationModal"; import { PaymentConfirmationModal } from "./components/PaymentConfirmationModal";
import { TariffsHeader } from "./components/TariffsHeader"; import { TariffsHeader } from "./components/TariffsHeader";
import { inCart, outCart } from "./utils"; import { inCart, outCart } from "./utils";
import { generateHubWalletRequestURL } from "@/utils/generateHubWalletRequest";
const StepperText: Record<string, string> = { const StepperText: Record<string, string> = {
day: "Тарифы на время", day: "Тарифы на время",
@ -70,7 +71,6 @@ console.log(tariffs)
setCash(cs, cc, cr); setCash(cs, cc, cr);
} }
}, [userWithWallet]); }, [userWithWallet]);
useEffect(() => { useEffect(() => {
if (cc) { if (cc) {
setIsRequestCreate(true) setIsRequestCreate(true)
@ -104,8 +104,14 @@ console.log(tariffs)
if (payError?.includes("insufficient funds") || payError?.includes("Payment Required")) { if (payError?.includes("insufficient funds") || payError?.includes("Payment Required")) {
let cashDif = Number(payError.split(":")[1]); let cashDif = Number(payError.split(":")[1]);
var link = document.createElement("a"); var link = document.createElement("a");
link.href = `https://${isTestServer ? "s" : ""}hub.pena.digital/quizpayment?action=squizpay&dif=${cashDif}&data=${token}&userid=${userId}`; link.href = generateHubWalletRequestURL({
if (cc) link.href = link.href + "&cc=true"//после покупки тарифа и возвращения будем знать что надо открыть модалку action: cc ? "createquizcc" : "buy",
dif: cashDif.toString(),
userid: userId,
token
});
// link.href = `https://${isTestServer ? "s" : ""}hub.pena.digital/quizpayment?action=squizpay&dif=${cashDif}&data=${token}&userid=${userId}`;
// if (cc) link.href = link.href + "&cc=true"//после покупки тарифа и возвращения будем знать что надо открыть модалку
document.body.appendChild(link); document.body.appendChild(link);
link.click(); link.click();
return; return;

@ -0,0 +1,24 @@
import { isTestServer } from "./hooks/useDomainDefine";
export const generateHubWalletRequestURL = ({
wayback,
action,
dif,
userid,
additionalinformation,
token
}:{
wayback?: string;
action: "topupwallet" | "createquizcc" | "buy";
dif: string;
userid: string;
additionalinformation?: string;
token: string;
}) => {
let currentDomain = window.location.host;
if (currentDomain === "localhost") currentDomain += ":3000";
let url = `https://${isTestServer ? "s" : ""}hub.pena.digital/payment?fromdomain=${currentDomain}&action=${action}&dif=${dif}&userid=${userid}&sec=${token}`;
if (additionalinformation) url += `&additionalinformation=${additionalinformation}`;
if (wayback) url += `&wayback=${wayback}`;
return url;
}