-

Note: You are currently viewing documentation for Moodle 3.10. Up-to-date documentation for the latest stable version of Moodle may be available here: Dashboard Block.

Dashboard Block

From MoodleDocs

The "Dashboard Block" (more accurately Dashboard Element Block) allows displaying graphically or litterally the result of any query made in Moodle.

When used in standard course formats, the block gives access to an extra page displaying the data redering for the specified query.

When used in a paged format such as Flexipage, or any format allowing blocks to layout freely over the page, the block may display directly the graph rendering and be combined to other blocks to fgorm a complex, highly customizable dashboard.

This blocks uses state-of-the art GPL libraries such as MIT JQplot and some other integrations. It has provision for powerfull data filtering and for using results for automatically generated exports.

Installation

The block is standalone and provided with own graphic libraries. Just proceed to standard install by copying the code into the /blocks directory of Moodle and browsing to the notification page to get it installed logically.

Provided libraries are :

   JQplot : MIT Graph plotting library in HTML5
   TimeLine : A smart time line (still to develop)
   GoogleMapAPI : A wrapper to google map plotting of geolocated information


Capabilitties and security advice

This block allows very deep data reading in Moodle database and powerfull data display. As the query can be written by power users with configuraiton capability, the block could be misused by unauthorised people and produce unwanted access to critical information.

To reduce such risks, a couple of capabilities has been added to control precisely :

   who is allowed to add such a blcok in a coutse.
   who is allowed to access the block configuration.

Global behaviour of the block

The key point of the block is its confguration form that will define all information needed to get data, filter it, choose what should be output in each rendering method, and finally individual parameters for each rendering method.

Additional configuration allows to add dynamic filtering proposed to end users to filter dynamically the output.

Althoug the setup form and rules are quite complex, we tried to implement a very lot of possibilities so this bloc becomes some kind of "swiss-knife" for Moodle smart reporting.

Configuration

The configuration documetnation is splitted into sections, each addressing a key feature of the dashboard.

  • [Configuration: Rendering channels]
  • [Configuration: Writing Query]
  • [Configuration: Raw data (litteral) rendering]
  • [Configuration: Graph rendering settings]
  • [Configuration: Configuring summarizers]
  • [Configuration: Cache options and settign up exports]

Some extra confguration can improve data display

   [Additional settings for crosstable and tree-shaped data display]
   [Additional parameters for output colouring of data]

Development Road Map

  • Query parametrization with user filled variables
  • PDF generators
  • Crosstable Excel exports
  • Filtering values pre-fetch caching to improve performance