TASK OBJECT PERMISSIONS
The operations allowed on the TASKs stored in the platform are controlled by the following permissions:
read: Indicates whether the active USER can request information about a TASK
edit: Indicates whether the active USER can modify the properties of a TASK (e.g. the scheduled date, assignments, etc.)
delete: Indicates whether the active USER can delete a TASK
alter_contents: indicates whether the active USER can edit the ACTIVITIES of a TASK (answering the questions in the FORMS of a TASK)
add_activity: Depending on the configuration of the PROGRAM, some TASK TEMPLATES are designed so that it is possible to append manually new ACTIVITIES. This permission determines whether the USER is allowed to add new ACTIVITIES manually
open: Permission to open a closed TASK
This permissions are granted/denied depending on the characteristics of the active session USER. Currently there are 3 possible scenarios:
The active USER is a CASE (patient)
The active USER is an ASSOCIATE of a CASE (someone taking care of a patient) trying to get access to the TASKs of the patient
The active USER is a PROFESSIONAL
The following sections describe how permissions are granted depending on the active USER:
As a CASE (patient)
Permission | Permission granted (all conditions must be true) |
---|---|
read |
|
edit |
|
delete |
|
alter_contents |
|
add_activity |
|
open |
|
As an ASSOCIATE accessing the TASKS of his patient
An ASSOCIATE that tries to do any operation on a TASK of one of his patients must meet the same conditions than the patient, but also must have specific permissions granted by the patient:
Permission | Require ASSOCIATE Permission |
---|---|
read | BROWSE_ACTIVITIES |
edit | (edition of the properties of a TASK is never granted) |
delete | EDIT_ACTIVITES |
alter_contents | EDIT_ACTIVITES |
add_activity | EDIT_ACTIVITES |
open | EDIT_ACTIVITES |
As a PROFESSIONAL
The minimum required condition to execute any operation over a TASK related with a CASE is that the CASE is a patient of the active PROFESSIONAL. This means that the PROFESSIONAL must be member of any of the SUBSCRIPTIONS where the CASE has an ADMISSION.
Therefore: No permission will be granted on a TASK of a CASE that is not patient of the PROFESSIONAL
For example, consider the following situation:
A Patient called “John P” has 2 ADMISSIONS:
an ADMISSION in a SUBSCRIPTION of a PROGRAM called “Care Plan 1”, which contains a TASK called “Task 1”
an ADMISSION in a SUBSCRIPTION of a PROGRAM called “Care Plan 2”, which contains a TASK called “Task 2”
The Professional “P1”:
Is member of the SUBSCRIPTION of “Care Plan 1” with ROLE “Case Manager” (any other ROLE would also be valid). This makes “John P” one of his patients.
Is not member of the SUBSCRIPTION of “Care Plan 2”
The Professional “P2” is not member of any of the SUBSCRIPTIONS “Care Plan 1” nor “Care Plan 2”.
In this situation:
The professional “P1” can operate on “Task 1” because “John P” he is member of the SUBSCRIPTION “Care Plan 1”
The professional “P1” can operate on “Task 2” even though he is not member of the SUBSCRIPTION “Care Plan 2”, because “John P” is one of his patients (some restrictions in the level of access may apply).
The professional “P2” can’t see “Task 1” nor “Task 2”, because “John P” is not one of his patients in any SUBSCRIPTION
Apart from this basic conditions, the different permissions are calculated as follows:
Permission | Permission granted (all conditions must be true) |
---|---|
read |
|
edit |
|
delete |
|
alter_contents | The permission will be always denied unless the following conditions are true:
Additionally, depending on the active session’s ROLE:
|
add_activity |
|
open |
|