Microsoft Block

Blocks ::: block_microsoft
Maintained by Enovation Dev Team, James McQuillan, Nima Mojgani, Zion Brewer
This block provides a user-facing menu to access various Microsoft 365 integration features, resources, and settings.

Microsoft Block for Moodle 3.0

Mike Churchward
Thursday, March 17, 2016, 4:20 AM
General comments

Version reviewed:

The microsoft block allows the user to access the course sharepoint file location, view the course OneNote notebook for submissions and modify their Office 365 integration preferences. Overall the block is very useful, but does require that a theme use blocks in it and that the teacher or admin adds the block to the course.

The integration works well and functions as designed. Microsoft and Remote-Learner are actively improving the integration and as such you will need to review if you have the latest version of the plugin every few months if any errors arise.


The plugin is installed in the normal fashion for Moodle plugins either by cloning the repository into the blocks directory from the github repository or downloading a zip and following the installation instructions:

  1. Unpack the plugin into /blocks/microsoft within your Moodle install.

  2. From the Moodle Administration block, expand Site Administration and click "Notifications".

  3. Follow the on-screen instructions to install the plugin.

  4. Add the block to any page you want it displayed.


The user (teacher or student) navigated to the block on the course page. The block informs the user if their account is connected to Office 365. From here the users has the options to:

  1. Access the Course folder on Sharepoint (this only works for teachers as student’s do not have permissions to access the folder). From here the teacher can add, update and delete files that they want to associate with the course.

  2. Access the course OneNote notebook with all of the user’s submissions and feedback

  3. Update their Outlook Calendar sync settings (setting to sync the site, personal and each individual courses calendars with Outlook)

  4. Access their Office 365 settings, which is duplicated in the Calendar sync and manager office 365 Connection links in the block

  5. Disconnect their account from Office 365.

Each of the links is easy to use and the on screen instructions are each to follow to complete the task that user set out to complete.

Course Maintenance:

The block will need to be added to the course for users to have access the OneNote notebook for the course. Alternatively the admin can configure the block to appear on every course page.


The Microsoft block documentation is included in the overall Office 365 documentation page. There isn’t a comprehensive document that covers all of the features in the block so an user will have to read through the more administrative focused documentation to understand how to use the block. It would be recommended for students that a separate document be created


  1. Accessing the Course OneNote Notebook

  2. Accessing the course sharepoint repository

  3. Configuring the Outlook calendar sync

  4. Managing the user’s connection to Office 365

  5. Setting the user’s Office 365 preferences


No formal accessibility testing was done on this plugin. However, nothing has come up in our other tests to indicate a problem. In the future, we will be developing more formal accessibility testing suites and will redo them then.


Technical Code Review:

Full code testing results

(Scores out of 2 - 2 = perfect; 1 = some concerns; 0 = problems.)
Tested for PHP 5.6 and 7 on both MySQL and Postgres. No version of technology problems were found. Score - 2.
Installation test (mpci install) - no problems. Score 2.
PHP syntax test (mpci phplint) - no problems. Score 2.
PHP copy/paste detector (mpci phpcpd) - No duplication. Score 2.
PHP code complexity (mpci phmd) - generally code is okay. One file out of 8 flagged with minor violations. Score - 1.
Moodle code guidelines (mpci codechecker) - Few minor Moodle coding guideline violations (1 file with spacing issue). Score - 1.
CSS syntax test (mpci csslint) - several warnings. Score 1.
JS syntax test (mpci jshint) - two issues. Score 1.
Moodle plugin structure test - Passed. Score - 2.
PHPUnit tests - No tests provided. Score - 0.
Behat tests - No tests provided. Score - 0.
Total score 14 / 22 - 64%.

Maintenance Review:

(Scores out of 2 - 2 = confident; 1 = nervous; 0 = concerned.)
Lifetime: Plugin has existed since November 2015 on version 2.7. Score - 0
Releases: Frequent releases to Moodle plugins DB, with the latest in March 2016. Score - 2
Maintainers: James McQuillan of Remote-Learner (former Moodle Partner) and Microsoft. Score - 2
Support Response: Has a component in Moodle Tracker. Uses Github tracker. Uses Moodle forums. Responds in plugins DB. Score - 2
Release timing: How quickly is a release made available to a major Moodle release? 3.0, 2.9, 2.8, 2.7 met criteria. Score - 2

 Total score 8 / 10 - 80%.