Skip to content

Commit

Permalink
fix: rollback to remote refs
Browse files Browse the repository at this point in the history
  • Loading branch information
MailineN committed Aug 6, 2024
1 parent 9447a33 commit 4a16afa
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 5 deletions.
6 changes: 3 additions & 3 deletions src/App.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import {
getAuthCache,
getDatas,
initPropsAuth,
initializeDatas,
initializeRemoteDatas,
initializeListSurveys,
} from "service/survey-service";
import { getUserRights, setAuth, setUser, setUserToken } from "service/user-service";
Expand Down Expand Up @@ -84,7 +84,7 @@ const App = () => {

//auth.userManager.startSilentRenew();
promisesToWait.push(
initializeDatas(setError).then(() => {
initializeRemoteDatas(setError).then(() => {
setInitialized(true);
return initPropsAuth(auth).then(() => {
const options = optionsFiltered(getAutoCompleteRef());
Expand Down Expand Up @@ -127,7 +127,7 @@ const App = () => {
}

promisesToWait.push(
initializeDatas(setError).then(() => {
initializeRemoteDatas(setError).then(() => {
if (getUserRights() === EdtUserRightsEnum.REVIEWER) {
return initializeListSurveys(setError).then(() => {
setInitialized(true);
Expand Down
5 changes: 3 additions & 2 deletions src/pages/home-surveyed/HomeSurveyed.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ import {
getUserDatasActivity,
initializeDatas,
initializeHomeSurveys,
initializeRemoteDatas,
initializeSurveysDatasCache,
initializeSurveysIdsDemo,
nameSurveyGroupMap,
Expand Down Expand Up @@ -85,11 +86,11 @@ const HomeSurveyedPage = () => {

useEffect(() => {
if (navigator.onLine && getUserRights() === EdtUserRightsEnum.SURVEYED) {
initializeDatas(setError).then(() => {
initializeRemoteDatas(setError).then(() => {
setInitialized(true);
});
} else if (getUserRights() === EdtUserRightsEnum.SURVEYED) {
initializeDatas(setError).then(() => {
initializeRemoteDatas(setError).then(() => {
setInitialized(true);
setState({});
});
Expand Down
25 changes: 25 additions & 0 deletions src/service/survey-service.ts
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@ import { getActivitiesOrRoutes, getScore } from "./survey-activity-service";
import { getUserRights, isReviewer } from "./user-service";
import { remotePutSurveyData, remotePutSurveyDataReviewer } from "./api-service/putRemoteData";
import { fetchReferentiels } from "./api-service/getLocalSurveyData";
import { fetchRemoteReferentiels } from "service/api-service/getRemoteData";
import {
getSurveyStateData,
initStateData,
Expand Down Expand Up @@ -141,6 +142,17 @@ const initializeDatas = (setError: (error: ErrorCodeEnum) => void): Promise<bool
});
};

const initializeRemoteDatas = (setError: (error: ErrorCodeEnum) => void): Promise<boolean> => {
const promisesToWait: Promise<any>[] = [];
return new Promise(resolve => {
promisesToWait.push(initializeRemoteRefs(setError));
promisesToWait.push(initializeSurveysIdsAndSources(setError));
Promise.all(promisesToWait).then(() => {
resolve(true);
});
});
};

const initPropsAuth = (auth: AuthContextProps): Promise<DataState> => {
const dataState: DataState = {
data: {
Expand Down Expand Up @@ -175,6 +187,18 @@ const getAuthCache = (): Promise<DataState> => {
});
};

const initializeRemoteRefs = (setError: (error: ErrorCodeEnum) => void) => {
return lunaticDatabase.get(REFERENTIELS_ID).then(refData => {
if (!refData && navigator.onLine) {
return fetchRemoteReferentiels(setError).then(refs => {
return saveReferentiels(refs);
});
} else {
referentielsData = refData as ReferentielData;
}
});
};

const initializeRefs = () => {
return lunaticDatabase.get(REFERENTIELS_ID).then(refData => {
if (!refData && navigator.onLine) {
Expand Down Expand Up @@ -1903,6 +1927,7 @@ export {
initStateData,
initSurveyData,
initializeDatas,
initializeRemoteDatas,
initializeHomeSurveys,
initializeListSurveys,
initializeSurveysDatasCache,
Expand Down

0 comments on commit 4a16afa

Please sign in to comment.