mjordan / islandora_repository_reports

A Drupal 8 module that provides a collection of graphical reports on various aspects of an Islandora repository.
GNU General Public License v2.0
2 stars 5 forks source link

Islandora Repository Reports

Introduction

A Drupal 10 module that provides a collection of reports on various aspects of an Islandora repository. This module's goal is to provide Islandora repository administrators with a set of visual reports that work with little, or no, configuration. It is not a replacment for Views.

Reports included in this module are:

Also included are several optional submodules (each needs be enabled separately) that:

Overview

Users with "View Repository Reports" permission can visit the reports page from Drupal's Reports list (admin/reports), or, if they don't have permission to view the Reports list, they can link to it directly at admin/reports/islandora_repository_reports. Selecting one of the available reports, and then clicking on the "Go" button, will produce a pie chart, like this one:

Random pie chart

Or a bar chart, like this one:

Random bar chart

All reports allow the user to "Generate a CSV file of this data" by checking a box before clicking on the "Go" button. If this box is checked, a link to download the CSV file will appear.

Requirements

Installation

  1. Clone this repo into your Islandora's drupal/web/modules/contrib directory or via Composer: composer require mjordan/islandora_repository_reports
  2. Enable the module either under the "Admin > Extend" menu or by running drush en -y islandora_repository_reports.

Configuration

Configuration options (pie vs. doughnut, color options, caching) are available in the "Islandora" config group, or directly at admin/config/islandora/islandora_repository_reports. Some additional coniguration-related notes:

Pregenerating report data

Generally speaking, as the size of your repository grows, the longer it will take to generate the data that is visualized in the charts. If you choose to cache your reports data, you can pregenerate the data to make the charts render in a reasonable amount of time. This module comes with a set of Drush commands that generates the data used in the reports and caches it:

  1. To list the enabled report types: drush islandora_repository_reports:list_report_types
  2. To pregenerate the data for the 'model' report: drush islandora_repository_reports:build_cache model
  3. To delete the data for the 'mimetype' report: drush islandora_repository_reports:delete_cache mimetype

Note that the Drush command that generates the cached data uses the chart options that the user most recently selected via the report selection form at admin/reports/islandora_repository_reports. Chart options cannot be passed into the Drush command (although there is an open issue to add that ability).

Writing data source plugins

This module is intended to be easy for repository admins to use, and also for developers to extend. Writing submodules that provide data source plugins is fairly straight forward.

Current maintainer

Contributing

Contributing to this module will increase your awesomeness.

License

GPLv2