The reference application provides a clinician-facing dashboard that is highly configurable–it has two columns, and an implementer, via json, can configure a variety of different widgets to appear within these two columns. However, previously only a single clinicial- dashboard was available. Context-specific dashboards allow implementer to define multiple dashboard configuration based on context. The only concrete implementation at the moment are program-specific dashboards, but the functionality is meant to support a variety of different configurations in the future.
This functionality has bene been extended so that the clinical clinician-facing dashboard page controller takes in an optional parameter dashboard dashboard. If this parameter is present, the controller will look for a different set of extension points, with the "patientDashboard" component of the extension point name replaced with the parameter passed in to "dashboard". For example, if the page request includes included "dashboard=myFirstDashboard" then coreapps module the controller will load any extensions it finds for the following extension points:
By using the context-specific dashboard in conjunction with the Programs List widget (see Patient Summary Widget Documentation) implementers are able to create dashboards customs to certain programs.
The Programs List widget can be configured to provide links to to a Program-Specific Dashboard by setting an "enableProgramDashboards" configuration to true. When this is set to true, the widget will create hyperlinks for each of the configured programs. This will link to the patient dashboard, but will pass in the uuid of the program as the dashboard parameter.
For example if the implementer has created an HIV program with the uuid "some-uuid-aaaa-bbbb" and configured that program to be listed as part of the Programs List, a custom dashboard could be defined for that program by adding extensions via the following extension points:
Note that the Program Status and Program History widgets (Patient Summary Widget Documentation) are specifically designed to appear on a Program-Specific dashboard to facilitate enrolling a patient in a specific program and managing patient program enrollment.