Skip to content

Commit e4e9af3

Browse files
authored
Merge pull request #54824 from c3024/mark-tour-task-as-complete-after-completing-the-navattic-tour
Mark the tour task as complete on redirecting to Concierge after finishing the Navattic tour
2 parents 66d6ba8 + ffc68dc commit e4e9af3

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

src/CONST.ts

+1
Original file line numberDiff line numberDiff line change
@@ -926,6 +926,7 @@ const CONST = {
926926
ADMIN_TOUR_STAGING: 'https://expensify.navattic.com/3i300k18',
927927
EMPLOYEE_TOUR_PRODUCTION: 'https://expensify.navattic.com/35609gb',
928928
EMPLOYEE_TOUR_STAGING: 'https://expensify.navattic.com/cf15002s',
929+
COMPLETED: 'completed',
929930
},
930931
OLD_DOT_PUBLIC_URLS: {
931932
TERMS_URL: `${EXPENSIFY_URL}/terms`,

src/pages/ConciergePage.tsx

+19-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import {useFocusEffect} from '@react-navigation/native';
1+
import {useFocusEffect, useRoute} from '@react-navigation/native';
22
import React, {useCallback, useEffect, useRef} from 'react';
33
import {View} from 'react-native';
44
import {useOnyx} from 'react-native-onyx';
@@ -10,6 +10,8 @@ import useThemeStyles from '@hooks/useThemeStyles';
1010
import Navigation from '@libs/Navigation/Navigation';
1111
import * as App from '@userActions/App';
1212
import * as Report from '@userActions/Report';
13+
import * as Task from '@userActions/Task';
14+
import CONST from '@src/CONST';
1315
import ONYXKEYS from '@src/ONYXKEYS';
1416

1517
/*
@@ -23,6 +25,11 @@ function ConciergePage() {
2325
const {shouldUseNarrowLayout} = useResponsiveLayout();
2426
const [session] = useOnyx(ONYXKEYS.SESSION);
2527
const [isLoadingReportData] = useOnyx(ONYXKEYS.IS_LOADING_REPORT_DATA, {initialValue: true});
28+
const route = useRoute();
29+
30+
const [introSelected] = useOnyx(ONYXKEYS.NVP_INTRO_SELECTED);
31+
const viewTourTaskReportID = introSelected?.viewTour;
32+
const [viewTourTaskReport] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT}${viewTourTaskReportID}`);
2633

2734
useFocusEffect(
2835
useCallback(() => {
@@ -32,12 +39,22 @@ function ConciergePage() {
3239
if (isUnmounted.current || isLoadingReportData === undefined || !!isLoadingReportData) {
3340
return;
3441
}
42+
43+
// Mark the viewTourTask as complete if we are redirected to Concierge after finishing the Navattic tour
44+
const {navattic} = route.params as {navattic?: string};
45+
if (navattic === CONST.NAVATTIC.COMPLETED) {
46+
if (viewTourTaskReport) {
47+
if (viewTourTaskReport.stateNum !== CONST.REPORT.STATE_NUM.APPROVED || viewTourTaskReport.statusNum !== CONST.REPORT.STATUS_NUM.APPROVED) {
48+
Task.completeTask(viewTourTaskReport);
49+
}
50+
}
51+
}
3552
Report.navigateToConciergeChat(true, () => !isUnmounted.current);
3653
});
3754
} else {
3855
Navigation.navigate();
3956
}
40-
}, [session, isLoadingReportData]),
57+
}, [session, isLoadingReportData, route.params, viewTourTaskReport]),
4158
);
4259

4360
useEffect(() => {

0 commit comments

Comments
 (0)