This commit is contained in:
parent
a12b2124ba
commit
d8f14b3ce6
|
|
@ -1,5 +1,8 @@
|
||||||
"use client";
|
"use client";
|
||||||
|
import { DTLToken } from "@/contracts";
|
||||||
|
import { COURSES } from "@/mockData";
|
||||||
import { useState } from "react";
|
import { useState } from "react";
|
||||||
|
import { useContractWrite, usePrepareContractWrite } from "wagmi";
|
||||||
import styles from "./page.module.css";
|
import styles from "./page.module.css";
|
||||||
|
|
||||||
const Step = ({ label }) => {
|
const Step = ({ label }) => {
|
||||||
|
|
@ -13,7 +16,22 @@ const Step = ({ label }) => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
const Home = () => {
|
const LearnPage = ({ params }) => {
|
||||||
|
const course = COURSES.find((c) => c.slug === params.courseSlug);
|
||||||
|
|
||||||
|
const { config: finishCourseConfig } = usePrepareContractWrite({
|
||||||
|
address: DTLToken.address,
|
||||||
|
abi: DTLToken.abi,
|
||||||
|
functionName: "finishCourse",
|
||||||
|
args: [
|
||||||
|
course.id,
|
||||||
|
"Osman Nuri Yıldız",
|
||||||
|
"Akıllı Kontrat Güvenliği",
|
||||||
|
"Atıl Samancıoğlu",
|
||||||
|
],
|
||||||
|
});
|
||||||
|
const finishCourse = useContractWrite(finishCourseConfig);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className={styles.container}>
|
<div className={styles.container}>
|
||||||
<div className={styles.videoContainer}>
|
<div className={styles.videoContainer}>
|
||||||
|
|
@ -47,6 +65,7 @@ const Home = () => {
|
||||||
marginRight: "auto",
|
marginRight: "auto",
|
||||||
display: "block",
|
display: "block",
|
||||||
}}
|
}}
|
||||||
|
onClick={() => finishCourse.write?.()}
|
||||||
>
|
>
|
||||||
Sertifikayı Al
|
Sertifikayı Al
|
||||||
</button>
|
</button>
|
||||||
|
|
@ -55,4 +74,4 @@ const Home = () => {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default Home;
|
export default LearnPage;
|
||||||
|
|
|
||||||
|
|
@ -37,6 +37,11 @@ export default function DTLDisplay() {
|
||||||
});
|
});
|
||||||
const approveMax = useContractWrite(approveMaxConfig);
|
const approveMax = useContractWrite(approveMaxConfig);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
const interval = setInterval(() => getMyBalance.refetch(), 2000);
|
||||||
|
return () => clearInterval(interval);
|
||||||
|
}, []);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (address) {
|
if (address) {
|
||||||
getMyBalance.refetch();
|
getMyBalance.refetch();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue