Table of Contents

Overview

Organization Dashboard extension which provides an interface for appropriately permissioned users to administer the organizations to which they belong. The interface is intended to be a public-facing rather than a backend tool: the anticipated audience is the membership base of the CiviCRM installation owner. An organization administrator may update the organization's details as well as manage relationships and contact information for contacts related to her organization.

The extension strives to give site administrators maximal flexibility. A site admin may configure:

  • which relationship types to display in the dashboard
  • which relationship types to highlight in the contact list view
  • which relationship types to use when building an organization's list of bestowable benefits
  • which profiles to use for editing the organization or associated contacts

Usage

  • Configure the extension by navigating to Administer > System Settings > Organization Dashboard. Permission "administer CiviCRM" is required.
    • The admin form is built on CiviCRM features that are not yet available on the version Chorus America is on.
    • As Chorus America will be on the Extended Security Release version of CiviCRM, it will be some time before the functionality is available.
    • Updates to the configuration can be made via the API.
    • TO-DO: Provide some examples of API config updates in the docs.
  • The "access AJAX API" permission is required for all public-facing organization dashboard pages.
  • A user may navigate to https://www.chorusamerica.org/civicrm/orgdash to visit her organizations' dashboards. If she doesn't have any permissioned relationships, she will see a message indicating she does't have permission to administer any organizations. If she has a permissioned relationship with exactly one organization, she will be redirected to https://www.chorusamerica.org/civicrm/orgdash/#/<organization_contact_id>/org. If she has permissioned relationships with more than one organization, she will be presented a menu to select the organization to administer.
  • Users visiting https://www.chorusamerica.org/civicrm/orgdash/#/<organization_contact_id> and lacking permission to edit the organization (via ACL, permissioned relationship, global permissions like "edit all contacts," etc.) will be denied access.
  • Chorus America staff members have permission to access any member organization's dashboard by visiting https://www.chorusamerica.org/civicrm/orgdash/#/<organization_contact_id>.
  • To add new contacts to the organization, the acting user should have the "add contacts" permission.

Requirements

Notes on CiviCRM version dependency

In v5.8, CiviCRM introduced a "generic" settings form which builds a user interface based off of settings metadata. Organization Dashboard's administrative interface is built on the "generic" settings form. Users running an earlier version of CiviCRM will either need to backport the "generic" form functionality (cursory review indicates this is not as straightforward adding the new CRM_Admin_Form_Generic class and porting updates to the CRM_Admin_Form_SettingTraittrait) or configure the extension outside the user interface (e.g., via the settings API or hardcoded values incivicrm.settings.php).

In v5.10, some problems with how CiviCRM handles case variability in API requests were corrected. This bugfix is required to enable entityRef autocomplete widgets to be used with Profiles in the administrative interface. Organization Dashboard makes use of the same corrected logic in delegating API permissions overrides to entity-specific classes (see CRM_Orgdash_Permission::canSkipPermissionsCheck()).


Updated: 3-6-2019