diff --git a/src/components/AppDrawer/AppDrawer.js b/src/components/AppDrawer/AppDrawer.js index a612897..11cfc6f 100644 --- a/src/components/AppDrawer/AppDrawer.js +++ b/src/components/AppDrawer/AppDrawer.js @@ -72,57 +72,41 @@ function AppDrawer({ forceRerender, setForceRerender }) { } }, []); - React.useEffect(() => { + const handleLocalStorageValue = ()=>{ + localStorage.setItem('apphomelang', value); + localStorage.setItem('validateLimit', validateLimit); + localStorage.setItem('discoveryLimit', discoveryLimit); + localStorage.setItem('contentPracticeLimit', contentPracticeLimit); + localStorage.setItem('contentTargetLimit', contentTargetLimit); + localStorage.setItem('isAudioPreprocessing', isAudioPreprocessingEnabled ? true : false); localStorage.setItem('discoveryStatus', isDiscoveryEnabled ? 'enabled' : 'disabled'); - }, [isDiscoveryEnabled]); + localStorage.setItem('userCurrentLevel', level) + localStorage.setItem('validationSession', validationSession); + localStorage.setItem('practiceSession', practiceSession); + fetchDataFromApi(value); + } - React.useEffect(() => { - localStorage.setItem('isAudioPreprocessing', isAudioPreprocessingEnabled ? true : false); - }, [isAudioPreprocessingEnabled]); + const handleModalCloseWithoutSave = ()=>{ + setValue(localStorage.getItem('apphomelang')) + setValidateLimit(localStorage.getItem('validateLimit')) + setDiscoveryLimit(localStorage.getItem('discoveryLimit')); + setContentPracticeLimit(localStorage.getItem('contentPracticeLimit')); + setContentTargetLimit(localStorage.getItem('contentTargetLimit')); + setAudioPreprocessingStatus(localStorage.getItem('isAudioPreprocessing') === 'true'?true:false); + setDiscoveryStatus(localStorage.getItem('discoveryStatus') === 'enabled'? true : false); + setLevel(localStorage.getItem('userCurrentLevel')); + setPracticeSession(localStorage.getItem('practiceSession')) + setValidationSession(localStorage.getItem('validationSession')); + fetchDataFromApi(value); + } React.useEffect(() => { if (value) { - localStorage.setItem('apphomelang', value); handleGetLesson(); + fetchDataFromApi(value); } }, [value]); - React.useEffect(() => { - if (validateLimit) { - localStorage.setItem('validateLimit', validateLimit); - } - }, [validateLimit]); - - React.useEffect(() => { - if (discoveryLimit) { - localStorage.setItem('discoveryLimit', discoveryLimit); - } - }, [discoveryLimit]); - - React.useEffect(() => { - if (contentPracticeLimit) { - localStorage.setItem('contentPracticeLimit', contentPracticeLimit); - } - }, [contentPracticeLimit]); - - React.useEffect(() => { - if (contentTargetLimit) { - localStorage.setItem('contentTargetLimit', contentTargetLimit); - } - }, [contentTargetLimit]); - - React.useEffect(() => { - if (validationSession) { - localStorage.setItem('validationSession', validationSession); - } - }, [validationSession]); - - React.useEffect(() => { - if (practiceSession) { - localStorage.setItem('practiceSession', practiceSession); - } - }, [practiceSession]); - React.useEffect(() => { fetchApi(); }, []); @@ -130,7 +114,7 @@ function AppDrawer({ forceRerender, setForceRerender }) { const fetchApi = async () => { try { const response = await fetch( - `${process.env.REACT_APP_LEARNER_AI_APP_HOST}/lais/scores/getMilestone/user/${localStorage.getItem('virtualID')}?language=${localStorage.getItem('apphomelang')}` + `${process.env.REACT_APP_LEARNER_AI_APP_HOST}/lais/scores/getMilestone/user/${localStorage.getItem('virtualID')}?language=${value}` ) .then(res => { return res.json(); @@ -158,10 +142,9 @@ function AppDrawer({ forceRerender, setForceRerender }) { } }; - const fetchDataFromApi = async () => { + const fetchDataFromApi = async (lang) => { try { - const result = await fetchPointerApi(); - + const result = await fetchPointerApi(lang); if (result && result.result) { localStorage.setItem( 'totalSessionPoints', @@ -204,7 +187,7 @@ function AppDrawer({ forceRerender, setForceRerender }) { process.env.REACT_APP_LEARNER_AI_APP_HOST }/lp-tracker/api/lesson/getLessonProgressByUserId/${localStorage.getItem( 'virtualID' - )}?language=${localStorage.getItem('apphomelang')}` + )}?language=${value}` ) .then(res => { return res.json(); @@ -228,8 +211,8 @@ function AppDrawer({ forceRerender, setForceRerender }) { const handleSave = () => { onClose(); handleNavigate(); - setForceRerender(!forceRerender); - fetchDataFromApi(); + setForceRerender(!forceRerender); + handleLocalStorageValue() }; return ( <> @@ -249,7 +232,10 @@ function AppDrawer({ forceRerender, setForceRerender }) { { + onClose(); + handleModalCloseWithoutSave(); + }} size={'md'} finalFocusRef={btnRef} > @@ -328,24 +314,26 @@ function AppDrawer({ forceRerender, setForceRerender }) { /> - + Limit: - 5 - 10 - 15 + 5 + 10 + 15 - Validation + + Validation + - + Limit: - 5 - 10 - 15 - ALL + 5 + 10 + 15 + ALL @@ -353,50 +341,74 @@ function AppDrawer({ forceRerender, setForceRerender }) {
Session ID:
- + setValidationSession(event.target.value) + } + > + {PreviousUserSessions?.map((session, ind) => ( + + ))}
- Practice - - + + Practice + + + Content Limit: - 5 - 10 - 15 + 5 + 10 + 15 - - + + Target Limit: - 5 - 10 - 15 + 5 + 10 + 15
Session ID:
-
+
+ +

- + Practice Config @@ -406,13 +418,19 @@ function AppDrawer({ forceRerender, setForceRerender }) { - -