diff --git a/frontend/src/appConfig.ts b/frontend/src/appConfig.ts index f0ee237e5438d551dbab537d822de0506c6dfe66..9b9a542358414133fd9a36b20bddfcbec61c2a93 100644 --- a/frontend/src/appConfig.ts +++ b/frontend/src/appConfig.ts @@ -27,6 +27,10 @@ export const appStagingWarning: boolean = export const guestConsentStepEnabled: boolean = env.REACT_APP_GUEST_CONSENT_STEP_ENABLED === 'true' +/* Should the 'available in search' field on roles be available for use? */ +export const availableInSearchEnabled: boolean = + env.REACT_APP_AVAILABLE_IN_SEARCH_ENABLED === 'true' + /* Footer content */ export const responsibleOrganization: string = env.REACT_APP_RESPONSIBLE_ORGANIZATION as string diff --git a/frontend/src/routes/sponsor/guest/newGuestRole/index.tsx b/frontend/src/routes/sponsor/guest/newGuestRole/index.tsx index ab141683b36243d3a9cd8bb16754ce32e0a09806..bdaa366cc0d4737434c2facb2a79481a602613e2 100644 --- a/frontend/src/routes/sponsor/guest/newGuestRole/index.tsx +++ b/frontend/src/routes/sponsor/guest/newGuestRole/index.tsx @@ -1,5 +1,10 @@ -import { DatePicker } from '@mui/lab' +import { useState } from 'react' +import { Controller, useForm } from 'react-hook-form' +import { useTranslation } from 'react-i18next' +import { Link, useHistory, useParams } from 'react-router-dom' +import { format } from 'date-fns' import { addDays } from 'date-fns/fp' +import { DatePicker } from '@mui/lab' import { Checkbox, Button, @@ -15,17 +20,13 @@ import { Typography, } from '@mui/material' import Page from 'components/page' -import { format } from 'date-fns' +import { Guest } from 'interfaces' import useOus, { enSort, nbSort, OuData } from 'hooks/useOus' import useRoleTypes, { RoleTypeData } from 'hooks/useRoleTypes' -import { Guest } from 'interfaces' -import { useState } from 'react' -import { Controller, useForm } from 'react-hook-form' -import { useTranslation } from 'react-i18next' -import { Link, useHistory, useParams } from 'react-router-dom' import SponsorInfoButtons from 'routes/components/sponsorInfoButtons' import { submitJsonOpts } from 'utils' import { useFeatureContext } from 'contexts/featureContext' +import { availableInSearchEnabled } from 'appConfig' type AddRoleFormData = { orgunit: number @@ -72,7 +73,7 @@ const postRole = async (formData: AddRoleFormData, pid: string) => { if (formData.comments) { payload.comments = formData.comments } - if (formData.available_in_search) { + if (availableInSearchEnabled && formData.available_in_search) { payload.available_in_search = formData.available_in_search } @@ -299,16 +300,17 @@ function NewGuestRole({ guest, reloadGuestInfo }: NewGuestRoleProps) { {...register('comments')} /> )} - - <FormControlLabel - control={ - <Checkbox - id="available_in_search" - {...register('available_in_search')} - /> - } - label={t('input.searchable')} - /> + {availableInSearchEnabled && ( + <FormControlLabel + control={ + <Checkbox + id="available_in_search" + {...register('available_in_search')} + /> + } + label={t('input.searchable')} + /> + )} <Button variant="contained" color="secondary" type="submit"> {t('button.save')} </Button>