diff --git a/src/pages/QuizAnswersPage/CardAnswer.tsx b/src/pages/QuizAnswersPage/CardAnswer.tsx index 533a1645..e422cce3 100644 --- a/src/pages/QuizAnswersPage/CardAnswer.tsx +++ b/src/pages/QuizAnswersPage/CardAnswer.tsx @@ -15,6 +15,7 @@ import AddressIcon from "@icons/ContactFormIcon/AddressIcon"; import { DeleteModal } from "./DeleteModal"; import type { AnyTypedQuizQuestion } from "@frontend/squzanswerer"; +import { useCurrentQuiz } from "@/stores/quizes/hooks"; interface CardAnswerProps { isNew: boolean; @@ -47,6 +48,7 @@ export const CardAnswer: FC = ({ const [questionsResultState, setQuestionsResultState] = useState([]); const { editQuizId } = useQuizStore(); const { questions } = useQuestionsStore(); + const quiz = useCurrentQuiz(); const openResults = async () => { setIsOpen(!isOpen); if (!isOpen) { @@ -295,17 +297,22 @@ export const CardAnswer: FC = ({ }} > {resultsAnswer.map((answer, id) => { + // console.log(answer) + // console.log(answer.content) let titleQuestion; let typeOuestion; let typeQuestionFile; + let qid let quest = questions; //массив с вопросами let i; let idAnswer = answer.question_id; //айди вопроса у ответа for (i in quest) { if (quest[i].backendId === idAnswer) { + console.log(quest[i]) titleQuestion = quest[i].title; typeOuestion = quest[i].type; typeQuestionFile = quest[i].content.type; + qid = quest[i].backendId } } return ( @@ -316,6 +323,7 @@ export const CardAnswer: FC = ({ alignItems: "center", gap: "13px", }} + onClick={(e) => e.stopPropagation()} > {id + 1}. {titleQuestion}. @@ -323,23 +331,23 @@ export const CardAnswer: FC = ({ {typeOuestion === "file" && ( - {typeQuestionFile === "video" && ( + {typeQuestionFile === "video" && answer.content && ( )} - {typeQuestionFile === "picture" && ( + {typeQuestionFile === "picture" && answer.content && ( @@ -347,15 +355,15 @@ export const CardAnswer: FC = ({ клик для скачивания )} - {(typeOuestion === "images" || typeOuestion === "varimg") && ( + {(typeOuestion === "images" || typeOuestion === "varimg") && answer.content && ( <> ')[0]} + src={timewebContent(quiz?.qid, answer.content, qid)} /> - {answer.content.split("<")[0]} + {/* {answer.content.split("<")[0]} */} )} {!(typeOuestion === "file" || typeOuestion === "images" || typeOuestion === "varimg") && ( @@ -428,3 +436,22 @@ export const CardAnswer: FC = ({ ); }; + +function timewebContentFile(editQuizId: string, content: string, qid: string) { + if (content.includes(" + return content.split("<")[1].split('src="')[1].split('"/>')[0] + } + //Новая версия: контент просто записан с указанием расширения файла + return `https://s3.timeweb.cloud/3c580be9-cf31f296-d055-49cf-b39e-30c7959dc17b/squizanswer/${editQuizId}/${qid}/${content}` +} +function timewebContent(editQuizId: string, content: string, qid: string) { + if (content.includes(" + return content.split("<")[1].split('src="')[1].split('"/>')[0] + } + //Новая версия: контент просто записан с указанием расширения файла + return `https://s3.timeweb.cloud/3c580be9-cf31f296-d055-49cf-b39e-30c7959dc17b/squizimages/${editQuizId}/${content}` +} \ No newline at end of file diff --git a/src/pages/Tariffs/Tariffs.tsx b/src/pages/Tariffs/Tariffs.tsx index 08d30060..2b729a38 100644 --- a/src/pages/Tariffs/Tariffs.tsx +++ b/src/pages/Tariffs/Tariffs.tsx @@ -137,12 +137,15 @@ function TariffPage() { if (payError || !data) { //если денег не хватило - if (payError?.includes("insufficient funds")) { + if (payError?.includes("insufficient funds") || payError?.includes("Payment Required")) { let cashDif = Number(payError.split(":")[1]); + console.log(payError) + console.log(cashDif) var link = document.createElement("a"); link.href = `https://${isTestServer ? "s" : ""}hub.pena.digital/quizpayment?action=squizpay&dif=${cashDif}&data=${token}&userid=${userId}`; document.body.appendChild(link); - link.click(); + console.log(link) + // link.click(); return; } @@ -388,14 +391,14 @@ export const Tariffs = withErrorBoundary(TariffPage, { const LoadingPage = () => ( - {"Подождите, пожалуйста, идёт загрузка :)"} + {"Подождите, пожалуйста, идёт загрузка"} ); @@ -433,7 +436,7 @@ const outCart = (cart: string[]) => { return; } - let saveCart = JSON.parse(localStorage.getItem("saveCart") || "[]"); + let saveCart = JSON.parse(localStorage.getItem("saveCart") || "[]") || []; saveCart = saveCart.push(id); localStorage.setItem("saveCart", JSON.stringify(saveCart)); }); diff --git a/src/utils/parse-error.ts b/src/utils/parse-error.ts index 57592fb8..ff52ee29 100644 --- a/src/utils/parse-error.ts +++ b/src/utils/parse-error.ts @@ -32,9 +32,9 @@ export const parseAxiosError = (nativeError: unknown): [string, number?] => { const serverError = error.response.data as ServerError; let SEMessage; - if (error.response.statusText) { - return [error.response.statusText]; - } + // if (error.response.statusText) { + // return [error.response.statusText]; + // } if ("statusCode" in serverError) { SEMessage = serverError?.message.toLowerCase() || "";