opensrp / fhircore

FHIR Core / OpenSRP 2 is a Kotlin application for delivering offline-capable, mobile-first healthcare project implementations from local community to national and international scale using FHIR and WHO Smart Guidelines on Android.
https://smartregister.org
Apache License 2.0
50 stars 39 forks source link

Make Settings Options Configurable #3241

Closed qiarie closed 1 month ago

qiarie commented 1 month ago

Describe the feature request. Make the options available on the app's Settings screen configurable.

Additional context Not all options implemented on the Settings screen should be available to users by default. For example, Offline Maps, Download Database, etc.

An app that does not have mapping feature should not have Offline Maps as an option. Download Database option requires the feature to be sanctioned by a client before it can be available to users due to data privacy regulations.

Acceptance criteria

Implementation plan (For Engineers)

  1. Add settingsScreenOptions config in the application config. This should accept a list of enums.
  2. In UserSettingScreen, check that the configuration setting has been set in the application config for each of the options before rendering.
f-odhiambo commented 1 month ago

@qiarie some food for thought How to make the Settings page configurable

  1. Will this be part of the Application Config?
  2. Do we need to harmonize the structure of each setting menu item config?
  3. Do we need to update the workflows for each action on the settings page?
qiarie commented 1 month ago

@f-odhiambo We agreed to use the application config to configure what menu options are to be displayed on the Settings screen to simplify the feature.