From 3d1cabfd99f29b475f7147fd88af5a367be79d10 Mon Sep 17 00:00:00 2001
From: latin-panda <66472237+latin-panda@users.noreply.github.com>
Date: Thu, 27 Jul 2023 16:29:18 +0700
Subject: [PATCH] update docs
---
.../en/apps/reference/app-settings/_index.md | 27 ++---
.../app-settings/user-permissions.md | 99 ++++++++++---------
2 files changed, 64 insertions(+), 62 deletions(-)
diff --git a/content/en/apps/reference/app-settings/_index.md b/content/en/apps/reference/app-settings/_index.md
index 48aeef50f..062295f30 100644
--- a/content/en/apps/reference/app-settings/_index.md
+++ b/content/en/apps/reference/app-settings/_index.md
@@ -28,20 +28,21 @@ The following settings do not need to be specified. They should only be defined
### `app_settings.json`
-| Setting | Description | Default | Version |
-|----------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|---------|
-| phone_validation |
- "full": full validation of a phone number for a region using length and prefix information.
- "partial": quickly guesses whether a number is a possible phone number by using only the length information, much faster than a full validation.
- "none": allows almost any values but still fails for any phone that contains a-z chars.
| "full" | 3.1.0 |
-| uhc.contacts_default_sort | - "alpha": Sort contacts alphanumerically
- "last_visited_date": sort contacts by the date they were most recently visited.
| "alpha" | 2.18.0 |
-| uhc.visit_count.month_start_date | The date of each month when the visit count is reset to 0. | 1 | 2.18.0 |
-| uhc.visit_count.visit_count_goal | The monthly visit count goal. | 0 | 2.18.0 |
-| outgoing_deny_list | All outgoing messages will be denied (unsent) if the recipient phone number starts with an entry in this list. A comma delimited list. (eg. `outgoing_deny_list="253,ORANGE"` will deny all messages sent to `253 543 4448` and `ORANGE NET`) | "" | |
-| outgoing_deny_shorter_than | Deny all messages to recipient phone numbers which are shorter than this value. Intended to avoid [message loops]({{% ref "apps/guides/messaging/message-loops" %}}) with short codes used by gateways (eg. `60396`). An integer. | 6 | 3.3.0 |
-| outgoing_deny_with_alphas | When `true`, deny all messages to recipient phone numbers containing letters (eg. `Safaricom`). Intended to avoid [message loops]({{% ref "apps/guides/messaging/message-loops" %}}) with non-numeric senders used by gateways. A boolean. | true | 3.3.0 |
-| outgoing_deny_with_alphas | When `true`, deny all messages to recipient phone numbers containing letters (eg. `Safaricom`). Intended to avoid [message loops]({{% ref "apps/guides/messaging/message-loops" %}}) with non-numeric senders used by gateways. A boolean. | true | 3.3.0 |
-| task_day_limit | The number of days before a task is due to show the due date. | 4 | 3.9.0 |
-| app_url | The URL of the app, eg: "https://demo.app.medicmobile.org" | | 3.10.0 |
-| task_days_overdue | Display number of overdue days in tasks list | false | 3.13.0 |
+| Setting | Description | Default | Version |
+|----------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|--------|---------|
+| phone_validation | - "full": full validation of a phone number for a region using length and prefix information.
- "partial": quickly guesses whether a number is a possible phone number by using only the length information, much faster than a full validation.
- "none": allows almost any values but still fails for any phone that contains a-z chars.
| "full" | 3.1.0 |
+| uhc.contacts_default_sort | - "alpha": Sort contacts alphanumerically
- "last_visited_date": sort contacts by the date they were most recently visited.
| "alpha" | 2.18.0 |
+| uhc.visit_count.month_start_date | The date of each month when the visit count is reset to 0. | 1 | 2.18.0 |
+| uhc.visit_count.visit_count_goal | The monthly visit count goal. | 0 | 2.18.0 |
+| outgoing_deny_list | All outgoing messages will be denied (unsent) if the recipient phone number starts with an entry in this list. A comma delimited list. (eg. `outgoing_deny_list="253,ORANGE"` will deny all messages sent to `253 543 4448` and `ORANGE NET`) | "" | |
+| outgoing_deny_shorter_than | Deny all messages to recipient phone numbers which are shorter than this value. Intended to avoid [message loops]({{% ref "apps/guides/messaging/message-loops" %}}) with short codes used by gateways (eg. `60396`). An integer. | 6 | 3.3.0 |
+| outgoing_deny_with_alphas | When `true`, deny all messages to recipient phone numbers containing letters (eg. `Safaricom`). Intended to avoid [message loops]({{% ref "apps/guides/messaging/message-loops" %}}) with non-numeric senders used by gateways. A boolean. | true | 3.3.0 |
+| outgoing_deny_with_alphas | When `true`, deny all messages to recipient phone numbers containing letters (eg. `Safaricom`). Intended to avoid [message loops]({{% ref "apps/guides/messaging/message-loops" %}}) with non-numeric senders used by gateways. A boolean. | true | 3.3.0 |
+| task_day_limit | The number of days before a task is due to show the due date. | 4 | 3.9.0 |
+| app_url | The URL of the app, eg: "https://demo.app.medicmobile.org" | | 3.10.0 |
+| task_days_overdue | Display number of overdue days in tasks list | false | 3.13.0 |
| languages | Array of objects with `locale` and `enabled` properties representing respectively the 2 or 3 letter language code and whether that language should be enabled.
If unset it falls back to the previous behavior of relying on the `enabled` property of each translation document `messages-XX.properties`. This fallback behavior is now deprecated and will be removed in the next major version (5.0). This `languages` configuration property will be required for CHT 5.0+. | | 4.2.0 |
+| place_hierarchy_types | Array of contact types' IDs, should match the ones defined in `contact_types`. This is used to define the Place Filter's options in Reports tab. | | 2.15.0 |
## SMS Workflows
diff --git a/content/en/apps/reference/app-settings/user-permissions.md b/content/en/apps/reference/app-settings/user-permissions.md
index 38f3b8261..e48f28fb4 100644
--- a/content/en/apps/reference/app-settings/user-permissions.md
+++ b/content/en/apps/reference/app-settings/user-permissions.md
@@ -18,55 +18,56 @@ Permissions can be assigned to user roles either directly in `base_settings.json
### System defined permissions
-|Property|Description|
-|-------|---------|
-| `can_edit` | This is probably one of the most important permissions in CHT Framework. It allows creating, editing and deleting documents in CouchDB's `medic` database. This permission overrides any other permission in this list. |
-| `can_access_gateway_api` | Allows access to gateway API |
-| `can_aggregate_targets` | Allows access to Target Aggregates page |
-| `can_bulk_delete_reports` | Allows users to select multiple reports and delete |
-| `can_configure` | Allows update of configuration parameters |
-| `can_upgrade` | Allows upgrades of the CHT Core Framework version via the API or admin interface |
-| `can_create_people` | Allows creation & editing of person contacts |
-| `can_create_places` | Allows creation & editing of place contacts |
-| `can_create_records` | Allows creation of reports |
-| `can_create_users` | Allows creation of user logins |
-| `can_delete_contacts` | Allows deletion of people and places |
-| `can_delete_messages` | Allows deletion of messages |
-| `can_delete_reports` | Allows deletion of reports |
-| `can_delete_users` | Allows deletion of users |
-| `can_edit_profile` | Allows editing of their own user profile |
-| `can_edit_verification` | Allows setting and editing of report verification status. To block the user from updating the existing status, use `can_verify_reports` instead. |
-| `can_export_all` | Allows export of data including data they do not have access to |
-| `can_export_contacts` | Allows export of contacts |
-| `can_export_dhis` | Allows export of DHIS2 metrics |
-| `can_export_feedback` | Allows export of user feedback |
-| `can_export_messages` | Allows export of reports and messages |
-| `can_log_out_on_android` | Displays logout menu item in hamburger menu for Android users and can be used to log out from the application |
-| `can_update_places` | Allows editing of place documents |
-| `can_update_reports` | Allows editing of report documents |
-| `can_update_users` | Allows editing of user documents |
-| `can_verify_reports` | Allows setting report verification status if no status is currently set. To allow the user to update the existing status, use `can_edit_verification` instead. |
-| `can_view_analytics` | Allows access to in-app analytics |
-| `can_view_analytics_tab` | Displays analytics tab on the application |
-| `can_view_call_action` | Displays a button to call the selected person |
-| `can_view_contacts` | Allows viewing contacts |
-| `can_view_contacts_tab` | Displays the contacts tab in the application |
-| `can_view_last_visited_date` | Enable display of the date a family was last visited |
-| `can_view_message_action` | Displays a button to send a message to the selected contact |
-| `can_view_messages` | Allows viewing messages |
-| `can_view_messages_tab` | Displays the messages tab in the application |
-| `can_view_outgoing_messages` | Allows viewing outgoing messages when logged in as an administrator |
-| `can_view_reports` | Allows viewing reports |
-| `can_view_reports_tab` | Displays the reports tab in the application |
-| `can_view_tasks` | Allows viewing tasks |
-| `can_view_tasks_tab` | Displays tasks tab in the application |
-| `can_view_tasks_group` | Displays all available tasks within same place after submitting |
-| `can_view_uhc_stats` | Allows users to view UHC metrics |
-| `can_view_unallocated_data_records` | Allows viewing reports that have no associated contact |
-| `can_view_users` | Allows viewing all user accounts |
-| `can_write_wealth_quintiles` | Allows updating contacts with wealth quintile information |
-| `can_view_old_filter_and_search` | Allows users to see the old filter and search in Reports Tab and Contact Tab which is considered deprecated and will be completely removed in a future release. Admin user will always see the new redesigned filter. See [Feature Flags]({{< ref "apps/guides/updates/feature-flags" >}}) for more info.|
-| `can_view_old_action_bar` | Allows users to see the old action bar in Message Tab, Reports Tab and Contact Tab which is considered deprecated and will be completely removed in a future release. The More Options menu will be hidden when this permission is enabled. The Admin user will always see the new More Options menu. See [Feature Flags]({{< ref "apps/guides/updates/feature-flags" >}}) for more info.|
+|Property| Description |
+|-------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
+| `can_edit` | This is probably one of the most important permissions in CHT Framework. It allows creating, editing and deleting documents in CouchDB's `medic` database. This permission overrides any other permission in this list. |
+| `can_access_gateway_api` | Allows access to gateway API |
+| `can_aggregate_targets` | Allows access to Target Aggregates page |
+| `can_bulk_delete_reports` | Allows users to select multiple reports and delete |
+| `can_configure` | Allows update of configuration parameters |
+| `can_upgrade` | Allows upgrades of the CHT Core Framework version via the API or admin interface |
+| `can_create_people` | Allows creation & editing of person contacts |
+| `can_create_places` | Allows creation & editing of place contacts |
+| `can_create_records` | Allows creation of reports |
+| `can_create_users` | Allows creation of user logins |
+| `can_delete_contacts` | Allows deletion of people and places |
+| `can_delete_messages` | Allows deletion of messages |
+| `can_delete_reports` | Allows deletion of reports |
+| `can_delete_users` | Allows deletion of users |
+| `can_edit_profile` | Allows editing of their own user profile |
+| `can_edit_verification` | Allows setting and editing of report verification status. To block the user from updating the existing status, use `can_verify_reports` instead. |
+| `can_export_all` | Allows export of data including data they do not have access to |
+| `can_export_contacts` | Allows export of contacts |
+| `can_export_dhis` | Allows export of DHIS2 metrics |
+| `can_export_feedback` | Allows export of user feedback |
+| `can_export_messages` | Allows export of reports and messages |
+| `can_log_out_on_android` | Displays logout menu item in hamburger menu for Android users and can be used to log out from the application |
+| `can_update_places` | Allows editing of place documents |
+| `can_update_reports` | Allows editing of report documents |
+| `can_update_users` | Allows editing of user documents |
+| `can_verify_reports` | Allows setting report verification status if no status is currently set. To allow the user to update the existing status, use `can_edit_verification` instead. |
+| `can_view_analytics` | Allows access to in-app analytics |
+| `can_view_analytics_tab` | Displays analytics tab on the application |
+| `can_view_call_action` | Displays a button to call the selected person |
+| `can_view_contacts` | Allows viewing contacts |
+| `can_view_contacts_tab` | Displays the contacts tab in the application |
+| `can_view_last_visited_date` | Enable display of the date a family was last visited |
+| `can_view_message_action` | Displays a button to send a message to the selected contact |
+| `can_view_messages` | Allows viewing messages |
+| `can_view_messages_tab` | Displays the messages tab in the application |
+| `can_view_outgoing_messages` | Allows viewing outgoing messages when logged in as an administrator |
+| `can_view_reports` | Allows viewing reports |
+| `can_view_reports_tab` | Displays the reports tab in the application |
+| `can_view_tasks` | Allows viewing tasks |
+| `can_view_tasks_tab` | Displays tasks tab in the application |
+| `can_view_tasks_group` | Displays all available tasks within same place after submitting |
+| `can_view_uhc_stats` | Allows users to view UHC metrics |
+| `can_view_unallocated_data_records` | Allows viewing reports that have no associated contact |
+| `can_view_users` | Allows viewing all user accounts |
+| `can_write_wealth_quintiles` | Allows updating contacts with wealth quintile information |
+| `can_view_old_filter_and_search` | Allows users to see the old filter and search in Reports Tab and Contact Tab which is considered deprecated and will be completely removed in a future release. Admin user will always see the new redesigned filter. See [Feature Flags]({{< ref "apps/guides/updates/feature-flags" >}}) for more info. |
+| `can_view_old_action_bar` | Allows users to see the old action bar in Message Tab, Reports Tab and Contact Tab which is considered deprecated and will be completely removed in a future release. The More Options menu will be hidden when this permission is enabled. The Admin user will always see the new More Options menu. See [Feature Flags]({{< ref "apps/guides/updates/feature-flags" >}}) for more info. |
+| `can_default_facility_filter` | Defaults the Place Filter in Reports tab to the user's associated facility. The user should have a contact associated that belongs to a facility. This feature is not available for Admin and Offline type of users. Added in 4.3. |
### Code sample
This sample shows how to define the `permissions` object in the `base_settings.json` file. Observe how `can_edit` permission has been associated to `supervisor_role` and `chw_role` user roles.