diff --git a/components/product-page/Attended-course.vue b/components/product-page/Attended-course.vue index 8f29da5..0caa497 100644 --- a/components/product-page/Attended-course.vue +++ b/components/product-page/Attended-course.vue @@ -512,15 +512,14 @@ async function addToProgress() { } watchEffect(() =>{ if (route.query.episode === undefined) { - episodeId.value = data.value[0].id + episodeId.value = data?.value[0]?.id }else{ episodeId.value = route.query.episode } }) -console.log('route', episodeId.value); -console.log(data.value[0].id); + const { data: progress, refresh: reload } = await useFetch("/api/progress", { query: { id: route.params.product, @@ -614,7 +613,7 @@ if (query.value.hasOwnProperty("episode")) { activeHead.value = data.value[0]; const getUrl = await useFetch("/api/checkMedia", { query: { - fileName: data.value[0].videoUrl, + fileName: data?.value[0]?.videoUrl, }, }); url.value = getUrl.data.value.url; diff --git a/components/product-page/course-details/Course-information.vue b/components/product-page/course-details/Course-information.vue index 77b6cd2..fb41935 100644 --- a/components/product-page/course-details/Course-information.vue +++ b/components/product-page/course-details/Course-information.vue @@ -277,14 +277,16 @@ const paymentHandler = async (id) => { const data = await useFetch("/api/user/registerCourse", { method: "POST", body: { - courseId: id, - code: "", + courseId: id }, }); - if (data?.data?.value?.status === 406 || data?.data?.value?.status === 500) { - toast.error(data?.data?.value?.message); - } else { + console.log(data?.data?.value?.paymentData?.redirectUrl); + if (data?.data?.value?.payment?.authority === 'FREE') { toast.success("ثبت نام انجام شد"); + navigateTo('/account/my-courses') + + } else { + location.href = data?.data?.value?.paymentData?.redirectUrl } // setTimeout(() => { // location.reload(); diff --git a/pages/payment/verify/Zarinpal/cart.vue b/pages/payment/verify/Zarinpal/cart.vue new file mode 100644 index 0000000..b7693ff --- /dev/null +++ b/pages/payment/verify/Zarinpal/cart.vue @@ -0,0 +1,76 @@ + + + + پرداخت با موفقیت انجام شد + پرداخت ناموفق ! + + + + صفحه اصلی + + + + + مشاهده + + + + + + + + + + + \ No newline at end of file diff --git a/server/api/user/registerCourse.js b/server/api/user/registerCourse.js index dbeac8f..6d04182 100644 --- a/server/api/user/registerCourse.js +++ b/server/api/user/registerCourse.js @@ -4,7 +4,7 @@ export default defineEventHandler(async (event) => { const body = await readBody(event); try { - const data = await $fetch(`${apiBase}/user/registerCourse`, { + const data = await $fetch(`${apiBase}/payment`, { method: 'POST', headers: { 'Accept': 'application/json',