import React, { useEffect, useState } from "react"; import "./lesson1.css"; import { useNavigate } from "react-router-dom"; import axios from "axios"; import { useCookies } from "react-cookie"; const Lesson1 = ({ mainStep, lessonStep }) => { const [planetStep, setPlanetStep] = useState(0); const [cookies1, setCookie1] = useCookies(["username"]); const [recom, setRecom] = useState([]); const navigate = useNavigate(); useEffect(() => { console.log("mainStep" + mainStep); console.log("lessonStep" + lessonStep); }, [mainStep, lessonStep]); const goWordAbsorb = () => { const updatedPlanetStep = 1; // 업데이트된 행성 값을 변수에 저장 setPlanetStep(updatedPlanetStep); // 행성 값을 업데이트 navigate("/studymain-wordabsorb", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, // 업데이트된 행성 값을 전달 }); }; const goWordBundle = () => { const updatedPlanetStep = 2; // 업데이트된 행성 값을 변수에 저장 setPlanetStep(updatedPlanetStep); // 행성 값을 업데이트 navigate("/studymain-wordbundle", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, // 업데이트된 행성 값을 전달 }); }; const goSentenceDiary = () => { const updatedPlanetStep = 3; setPlanetStep(updatedPlanetStep); navigate("/studymain-sentencediary", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, }); }; const goSentenceAbsorb = () => { const updatedPlanetStep = 4; setPlanetStep(updatedPlanetStep); navigate("/studymain-sentenceabsorb", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, }); }; const goGrammarFairy = () => { const updatedPlanetStep = 5; setPlanetStep(updatedPlanetStep); navigate("/studymain-grammarfairy", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, }); }; const goGrammarLand = () => { const updatedPlanetStep = 6; setPlanetStep(updatedPlanetStep); navigate("/studymain-grammarland", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, }); }; const goFairyTravel = () => { const updatedPlanetStep = 7; setPlanetStep(updatedPlanetStep); navigate("/studymain-fairytravel", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, }); }; const goFairyWorld = () => { const updatedPlanetStep = 8; setPlanetStep(updatedPlanetStep); navigate("/studymain-fairyworld", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, }); }; const goSongTravel = () => { const updatedPlanetStep = 9; setPlanetStep(updatedPlanetStep); navigate("/studymain-songworld", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, }); }; const goSongCountry = () => { const updatedPlanetStep = 10; setPlanetStep(updatedPlanetStep); navigate("/studymain-songcountry", { state: { mainStep, lessonStep, planetStep: updatedPlanetStep }, }); }; const [solved, setSolved] = useState([]); const fetchData = async () => { try { const response = await axios.get(`http://165.229.169.127:8080/member/solved`, { withCredentials: true, }); if (response.data && response.data.result) { setSolved(response.data.data); } } catch (error) { console.error("Error fetching data: ", error); } }; const fetchDataRecommend = async () => { const username = cookies1.username; try { const response = await axios.post( `http://165.229.169.32:32344/recommend`, { student_id: username }, { withCredentials: true, } ); setRecom(response.data.recommended_content); } catch (error) { console.error("Error fetching data: ", error); } }; useEffect(() => { fetchData(); fetchDataRecommend(); }, []); useEffect(() => { console.log(solved); console.log(recom[0]); }, [solved, recom]); const isContentSolved = (studyType) => { return solved.some( (item) => item.study.chapter === mainStep && item.study.lesson === lessonStep && item.study.studyType === studyType ); }; const isContentRecommended = (studyType) => { return recom.some( (item) => item[0] === mainStep && item[1] === lessonStep && item[2] === studyType ); }; const getContentContainer = (imageName, isChecked, isRecommended) => (
컨텐츠 행성