diff --git a/src/backend/app/organisations/organisation_schemas.py b/src/backend/app/organisations/organisation_schemas.py index 7939c6be17..10ce7c342a 100644 --- a/src/backend/app/organisations/organisation_schemas.py +++ b/src/backend/app/organisations/organisation_schemas.py @@ -66,6 +66,7 @@ def parse_organisation_input( created_by: Optional[int] = Form(None), community_type: CommunityType = Form(None), description: Optional[str] = Form(None), + associated_email: Optional[str] = Form(None), url: Optional[str] = Form(None), type: OrganisationType = Form(None, alias="type"), odk_central_url: Optional[str] = Form(None), @@ -86,6 +87,7 @@ def parse_organisation_input( slug=slug, created_by=created_by, description=description, + associated_email=associated_email, url=url, community_type=community_type, type=type, diff --git a/src/frontend/src/api/OrganisationService.ts b/src/frontend/src/api/OrganisationService.ts index 0a59ff53fb..d3a7ede312 100644 --- a/src/frontend/src/api/OrganisationService.ts +++ b/src/frontend/src/api/OrganisationService.ts @@ -79,12 +79,9 @@ export const MyOrganisationDataService = (url: string) => { export const PostOrganisationDataService = (url: string, payload: any) => { return async (dispatch: AppDispatch) => { - dispatch(OrganisationAction.SetOrganisationFormData({})); dispatch(OrganisationAction.PostOrganisationDataLoading(true)); const postOrganisationData = async (url, payload) => { - dispatch(OrganisationAction.SetOrganisationFormData(payload)); - try { const generateApiFormData = new FormData(); appendObjectToFormData(generateApiFormData, payload); @@ -99,6 +96,8 @@ export const PostOrganisationDataService = (url: string, payload: any) => { dispatch(OrganisationAction.PostOrganisationDataLoading(false)); dispatch(OrganisationAction.postOrganisationData(resp)); + dispatch(OrganisationAction.SetOrganisationFormData({})); + dispatch( CommonActions.SetSnackBar({ open: true, @@ -132,7 +131,16 @@ export const GetIndividualOrganizationService = (url: string) => { const getOrganisationDataResponse = await axios.get(url); const response: GetOrganisationDataModel = getOrganisationDataResponse.data; dispatch(OrganisationAction.SetIndividualOrganization(response)); - } catch (error) {} + } catch (error) { + dispatch( + CommonActions.SetSnackBar({ + open: true, + message: error.response.data.detail || 'Failed to fetch organization.', + variant: 'error', + duration: 2000, + }), + ); + } }; await getOrganisationData(url); }; @@ -140,12 +148,9 @@ export const GetIndividualOrganizationService = (url: string) => { export const PatchOrganizationDataService = (url: string, payload: any) => { return async (dispatch: AppDispatch) => { - dispatch(OrganisationAction.SetOrganisationFormData({})); dispatch(OrganisationAction.PostOrganisationDataLoading(true)); const patchOrganisationData = async (url, payload) => { - dispatch(OrganisationAction.SetOrganisationFormData(payload)); - try { const generateApiFormData = new FormData(); appendObjectToFormData(generateApiFormData, payload); @@ -159,6 +164,7 @@ export const PatchOrganizationDataService = (url: string, payload: any) => { const resp: GetOrganisationDataModel = patchOrganisationData.data; dispatch(OrganisationAction.PostOrganisationDataLoading(false)); dispatch(OrganisationAction.postOrganisationData(resp)); + dispatch(OrganisationAction.SetOrganisationFormData({})); dispatch( CommonActions.SetSnackBar({ open: true, diff --git a/src/frontend/src/components/ApproveOrganization/ApproveOrganizationHeader.tsx b/src/frontend/src/components/ApproveOrganization/ApproveOrganizationHeader.tsx index 79b90db9ac..9cd5fc5c84 100644 --- a/src/frontend/src/components/ApproveOrganization/ApproveOrganizationHeader.tsx +++ b/src/frontend/src/components/ApproveOrganization/ApproveOrganizationHeader.tsx @@ -12,7 +12,7 @@ const ApproveOrganizationHeader = () => {
navigate('/organisation')} + onClick={() => navigate('/organization')} >
diff --git a/src/frontend/src/components/ApproveOrganization/OrganizationForm.tsx b/src/frontend/src/components/ApproveOrganization/OrganizationForm.tsx index 6752ce4861..0e0e6153ad 100644 --- a/src/frontend/src/components/ApproveOrganization/OrganizationForm.tsx +++ b/src/frontend/src/components/ApproveOrganization/OrganizationForm.tsx @@ -52,7 +52,7 @@ const OrganizationForm = () => { if (organizationApprovalSuccess) { dispatch(OrganisationAction.SetOrganisationFormData({})); dispatch(OrganisationAction.SetOrganizationApprovalStatus(false)); - navigate('/organisation'); + navigate('/organization'); } }, [organizationApprovalSuccess]); @@ -82,6 +82,15 @@ const OrganizationForm = () => { fieldType="text" disabled /> + {}} + fieldType="text" + disabled + />