Skip to content

Commit d5fa320

Browse files
committed
fix(dref-translation): add enforce selected langauge in useLazyRequest
1 parent dc5a761 commit d5fa320

File tree

2 files changed

+13
-4
lines changed
  • app/src
    • utils/restRequest
    • views/AccountMyFormsDref/DrefTableActions

2 files changed

+13
-4
lines changed

app/src/utils/restRequest/go.ts

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,9 @@ export interface AdditionalOptions {
4444
formData?: boolean;
4545
isCsvRequest?: boolean;
4646
enforceEnglishForQuery?: boolean;
47+
// FIXME using the current language should be default behaviour so we might not need this.
4748
useCurrentLanguageForMutation?: boolean;
49+
enforceLanguageForMutation?: Language;
4850
isExcelRequest?: boolean;
4951
}
5052

@@ -167,6 +169,7 @@ export const processGoOptions: GoContextInterface['transformOptions'] = (
167169
isExcelRequest,
168170
enforceEnglishForQuery = false,
169171
useCurrentLanguageForMutation = false,
172+
enforceLanguageForMutation,
170173
} = extraOptions;
171174

172175
const currentLanguage = getFromStorage<Language>(KEY_LANGUAGE_STORAGE) ?? 'en';
@@ -180,9 +183,15 @@ export const processGoOptions: GoContextInterface['transformOptions'] = (
180183
if (method === 'GET') {
181184
// Query
182185
defaultHeaders['Accept-Language'] = enforceEnglishForQuery ? 'en' : currentLanguage;
183-
} else {
186+
} else if (method === 'POST' || method === 'PUT' || method === 'PATCH') {
184187
// Mutation
185-
defaultHeaders['Accept-Language'] = useCurrentLanguageForMutation ? currentLanguage : 'en';
188+
if (isDefined(enforceLanguageForMutation)) {
189+
defaultHeaders['Accept-Language'] = enforceLanguageForMutation;
190+
} else if (useCurrentLanguageForMutation) {
191+
defaultHeaders['Accept-Language'] = currentLanguage;
192+
} else {
193+
defaultHeaders['Accept-Language'] = 'en';
194+
}
186195
}
187196

188197
if (formData) {

app/src/views/AccountMyFormsDref/DrefTableActions/index.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -405,7 +405,7 @@ function DrefTableActions(props: Props) {
405405
dref: drefId,
406406
starting_language: startingLanguage === 'en' ? startingLanguage : selectOpsLanguage,
407407
} as unknown as OpsUpdateRequestBody),
408-
useCurrentLanguageForMutation: true,
408+
enforceLanguageForMutation: selectOpsLanguage,
409409
onSuccess: (response) => {
410410
navigate(
411411
'drefOperationalUpdateForm',
@@ -434,8 +434,8 @@ function DrefTableActions(props: Props) {
434434
} = useLazyRequest({
435435
method: 'POST',
436436
url: '/api/v2/dref-final-report/',
437+
enforceLanguageForMutation: selectFinalLanguage,
437438
// FIXME: the type should be fixed on the server
438-
useCurrentLanguageForMutation: true,
439439
body: (
440440
drefId: number,
441441
) => ({

0 commit comments

Comments
 (0)