<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.moodle.org/402/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ghenrick</id>
	<title>MoodleDocs - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.moodle.org/402/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ghenrick"/>
	<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/Special:Contributions/Ghenrick"/>
	<updated>2026-04-17T19:16:35Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140714</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140714"/>
		<updated>2021-06-22T17:34:01Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* Admin settings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
==About the Accessibility Starter Toolkit==&lt;br /&gt;
Moodle 3.11 incorporates the Brickfield Accessibility Starter Toolkit to help organisations create accessible course content. &lt;br /&gt;
&lt;br /&gt;
This page explains the usage of the Starter Toolkit. If you are looking for information on the enterprise product - please check the [https://www.brickfield.ie/brickfield-accessibility-toolkit/ Brickfield Education Labs website].&lt;br /&gt;
&lt;br /&gt;
The Accessibility Starter Toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site.&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility Toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The Accessibility Toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
&lt;br /&gt;
By default, the Accessibility Toolkit is already enabled after a new install or an upgrade. You can disable it or control its usage in &#039;&#039;Site administration &amp;gt; Advanced features &amp;gt; Enable accessibility tools&#039;&#039;. When enabled, even if you have not yet registered with the tool, Teachers will see the &amp;quot;Accessibility Toolkit&amp;quot; option on the Course menu. To hide this option, you need to disable the Toolkit.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility Toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
[[File:toolkitsettings.png|500px|center]]&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The Accessibility Toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The Accessibility Toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher. See [[Accessibility review block]] for more information.&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
&lt;br /&gt;
* Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
* Brickfield partnership with Moodle [https://moodle.com/news/moodle-increases-focus-on-accessibility-through-collaboration-with-brickfield-education-labs/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
* Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
* Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
==Any questions?==&lt;br /&gt;
&lt;br /&gt;
Please post in the  [https://moodle.org/mod/forum/view.php?id=8207 Accessibility and usability forum] on moodle.org.&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;br /&gt;
[[de:Tools zur Barrierefreiheit]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140667</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140667"/>
		<updated>2021-06-14T13:18:16Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* Admin settings */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
==About the Accessibility Starter Toolkit==&lt;br /&gt;
Moodle 3.11 incorporates the Brickfield Accessibility Starter Toolkit to help organisations create accessible course content. &lt;br /&gt;
&lt;br /&gt;
This page explains the usage of the Starter Toolkit. If you are looking for information on the enterprise product - please check the [https://www.brickfield.ie/brickfield-accessibility-toolkit/ Brickfield Education Labs website].&lt;br /&gt;
&lt;br /&gt;
The Accessibility Starter Toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site.&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility Toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The Accessibility Toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility Toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility Toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
[[File:toolkitsettings.png|500px|center]]&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The Accessibility Toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The Accessibility Toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher. See [[Accessibility review block]] for more information.&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
&lt;br /&gt;
* Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
* Brickfield partnership with Moodle [https://moodle.com/news/moodle-increases-focus-on-accessibility-through-collaboration-with-brickfield-education-labs/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
* Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
* Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
==Any questions?==&lt;br /&gt;
&lt;br /&gt;
Please post in the  [https://moodle.org/mod/forum/view.php?id=8207 Accessibility and usability forum] on moodle.org.&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;br /&gt;
[[de:Tools zur Barrierefreiheit]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140666</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140666"/>
		<updated>2021-06-14T13:17:43Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* Report pages for the site */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
==About the Accessibility Starter Toolkit==&lt;br /&gt;
Moodle 3.11 incorporates the Brickfield Accessibility Starter Toolkit to help organisations create accessible course content. &lt;br /&gt;
&lt;br /&gt;
This page explains the usage of the Starter Toolkit. If you are looking for information on the enterprise product - please check the [https://www.brickfield.ie/brickfield-accessibility-toolkit/ Brickfield Education Labs website].&lt;br /&gt;
&lt;br /&gt;
The Accessibility Starter Toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site.&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility Toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The Accessibility Toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility Toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
[[File:toolkitsettings.png|500px|center]]&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The Accessibility Toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The Accessibility Toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher. See [[Accessibility review block]] for more information.&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
&lt;br /&gt;
* Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
* Brickfield partnership with Moodle [https://moodle.com/news/moodle-increases-focus-on-accessibility-through-collaboration-with-brickfield-education-labs/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
* Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
* Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
==Any questions?==&lt;br /&gt;
&lt;br /&gt;
Please post in the  [https://moodle.org/mod/forum/view.php?id=8207 Accessibility and usability forum] on moodle.org.&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;br /&gt;
[[de:Tools zur Barrierefreiheit]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_review_block&amp;diff=140525</id>
		<title>Accessibility review block</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_review_block&amp;diff=140525"/>
		<updated>2021-05-24T13:51:58Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Managing a Moodle course}}&lt;br /&gt;
{{New features}}&lt;br /&gt;
If the [[Accessibility toolkit]] is enabled by the site admin, course teachers may be allowed to add an accessibility review block. The block allows them to submit their course for an accessibility analysis and it will then display useful information including:&lt;br /&gt;
&lt;br /&gt;
* A summary of the accessibility errors for the course categorized by type.&lt;br /&gt;
* A heatmap which highlights the errors for each course element. You can activate or hide the heatmap by clicking on the eye.&lt;br /&gt;
* A link to the accessibility toolkit which includes different reports and the error list with links to edit the mistakes&lt;br /&gt;
* A link to download the accessibility toolkit summary report in a printable pdf format.&lt;br /&gt;
&lt;br /&gt;
Note: Students cannot see this block, as it is only for teachers.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldTeacher.png|600px|none|Accessibility heatmap on course main page]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Block]]&lt;br /&gt;
&lt;br /&gt;
[[es:Bloque de revisión de accesibilidad]]&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
&lt;br /&gt;
* Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
* Brickfield partnership with Moodle [https://moodle.com/news/moodle-increases-focus-on-accessibility-through-collaboration-with-brickfield-education-labs/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
* Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
* Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140523</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140523"/>
		<updated>2021-05-24T09:59:44Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* About the Accessibility Starter Toolkit */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
==About the Accessibility Starter Toolkit==&lt;br /&gt;
Moodle 3.11 incorporates the Brickfield Accessibility Starter Toolkit to help organisations create accessible course content. &lt;br /&gt;
&lt;br /&gt;
This page explains the usage of the Starter Toolkit. If you are looking for information on the enterprise product - please check the [https://www.brickfield.ie/brickfield-accessibility-toolkit/ Brickfield Education Labs website].&lt;br /&gt;
&lt;br /&gt;
The Accessibility Starter Toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site.&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility Toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The Accessibility Toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility Toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
[[File:toolkitsettings.png|500px|center]]&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The Accessibility Toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The Accessibility Toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher. See [[Accessibility review block]] for more information.&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
&lt;br /&gt;
* Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
* Brickfield partnership with Moodle [https://moodle.com/news/moodle-increases-focus-on-accessibility-through-collaboration-with-brickfield-education-labs/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
* Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
* Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
==Any questions?==&lt;br /&gt;
&lt;br /&gt;
Please post in the  [https://moodle.org/mod/forum/view.php?id=8207 Accessibility and usability forum] on moodle.org.&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140522</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140522"/>
		<updated>2021-05-24T09:59:29Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* About the Accessibility Starter Toolkit */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
==About the Accessibility Starter Toolkit==&lt;br /&gt;
Moodle 3.11 incorporates the Brickfield Accessibility Starter Toolkit to help organisations create accessible course content. This page explains the usage of the Starter Toolkit. If you are looking for information on the enterprise product - please check the [https://www.brickfield.ie/brickfield-accessibility-toolkit/ Brickfield Education Labs website].&lt;br /&gt;
&lt;br /&gt;
The Accessibility Starter Toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site.&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility Toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The Accessibility Toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility Toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
[[File:toolkitsettings.png|500px|center]]&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The Accessibility Toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The Accessibility Toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher. See [[Accessibility review block]] for more information.&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
&lt;br /&gt;
* Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
* Brickfield partnership with Moodle [https://moodle.com/news/moodle-increases-focus-on-accessibility-through-collaboration-with-brickfield-education-labs/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
* Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
* Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
==Any questions?==&lt;br /&gt;
&lt;br /&gt;
Please post in the  [https://moodle.org/mod/forum/view.php?id=8207 Accessibility and usability forum] on moodle.org.&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140521</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140521"/>
		<updated>2021-05-24T09:58:01Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* About the Accessibility toolkit */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
==About the Accessibility Starter Toolkit==&lt;br /&gt;
Moodle 3.11 incorporate the [https://www.brickfield.ie/brickfield-accessibility-toolkit/ Brickfield Accessibility] Starter Toolkit to help organisations create accessible course content.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Starter Toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site.&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility Toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The Accessibility Toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility Toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
[[File:toolkitsettings.png|500px|center]]&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The Accessibility Toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The Accessibility Toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher. See [[Accessibility review block]] for more information.&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
&lt;br /&gt;
* Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
* Brickfield partnership with Moodle [https://moodle.com/news/moodle-increases-focus-on-accessibility-through-collaboration-with-brickfield-education-labs/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
* Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
* Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
==Any questions?==&lt;br /&gt;
&lt;br /&gt;
Please post in the  [https://moodle.org/mod/forum/view.php?id=8207 Accessibility and usability forum] on moodle.org.&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140495</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140495"/>
		<updated>2021-05-21T13:36:20Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* Important Links */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
==About the Accessibility toolkit==&lt;br /&gt;
Moodle 3.11 incorporate the [https://www.brickfield.ie/brickfield-accessibility-toolkit/ Brickfield Accessibility] Starter Toolkit to help organisations create accessible course content.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Starter Toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site.&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility Toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The Accessibility Toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility Toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
[[File:toolkitsettings.png|500px|center]]&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The Accessibility Toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The Accessibility Toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher. See [[Accessibility review block]] for more information.&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
&lt;br /&gt;
* Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
* Brickfield partnership with Moodle [https://moodle.com/news/moodle-increases-focus-on-accessibility-through-collaboration-with-brickfield-education-labs/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
* Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
* Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
==Any questions?==&lt;br /&gt;
&lt;br /&gt;
Please post in the  [https://moodle.org/mod/forum/view.php?id=8207 Accessibility and usability forum] on moodle.org.&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140494</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140494"/>
		<updated>2021-05-21T13:35:33Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
==About the Accessibility toolkit==&lt;br /&gt;
Moodle 3.11 incorporate the [https://www.brickfield.ie/brickfield-accessibility-toolkit/ Brickfield Accessibility] Starter Toolkit to help organisations create accessible course content.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Starter Toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site.&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility Toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The Accessibility Toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility Toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
[[File:toolkitsettings.png|500px|center]]&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The Accessibility Toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The Accessibility Toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The Accessibility Toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility Toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher. See [[Accessibility review block]] for more information.&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
&lt;br /&gt;
* Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
* Brickfield partnership with Moodle [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
* Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
* Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
==Any questions?==&lt;br /&gt;
&lt;br /&gt;
Please post in the  [https://moodle.org/mod/forum/view.php?id=8207 Accessibility and usability forum] on moodle.org.&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140363</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140363"/>
		<updated>2021-05-15T10:48:30Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* About the Accessibility toolkit */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==About the Accessibility toolkit==&lt;br /&gt;
Moodle 3.11 incorporate the [https://www.brickfield.ie/brickfield-accessibility-toolkit/ Brickfield Accessibility] Starter Toolkit to help organisations create accessible course content.&lt;br /&gt;
&lt;br /&gt;
The accessibility starter toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The accessibility toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
*** Needs Image ***&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The accessibility toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility toolkit.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher, including:&lt;br /&gt;
&lt;br /&gt;
* A summary of the accessibility errors for the course categorized by type.&lt;br /&gt;
* A heatmap which highlights the errors for each course element. You can activate or hide the heatmap by clicking on the eye.&lt;br /&gt;
* A link to the accessibility toolkit which includes different reports and the error list with links to edit the mistakes&lt;br /&gt;
* A link to download the accessibility toolkit summary report in a printable pdf format.&lt;br /&gt;
&lt;br /&gt;
Note: Students cannot see this block as it is only for teachers.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldTeacher.png|600px|none|Accessibility heatmap on course main page]]&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
&lt;br /&gt;
Brickfield partnership with Moodle [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
&lt;br /&gt;
Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
&lt;br /&gt;
Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140362</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140362"/>
		<updated>2021-05-15T10:28:00Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* Report pages */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==About the Accessibility toolkit==&lt;br /&gt;
The accessibility starter toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The accessibility toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
*** Needs Image ***&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages for the course==&lt;br /&gt;
The accessibility toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Report pages for the site==&lt;br /&gt;
From Site Administration / Plugins tab / Admin Tools / Accessibility / Reports the administrator can access the site reports generated by the Accessibility toolkit.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
This is a global-site report, provided data is from the whole site, not for each course. If you need more specific information about a course, go to the course Accessibility toolkit.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher, including:&lt;br /&gt;
&lt;br /&gt;
* A summary of the accessibility errors for the course categorized by type.&lt;br /&gt;
* A heatmap which highlights the errors for each course element. You can activate or hide the heatmap by clicking on the eye.&lt;br /&gt;
* A link to the accessibility toolkit which includes different reports and the error list with links to edit the mistakes&lt;br /&gt;
* A link to download the accessibility toolkit summary report in a printable pdf format.&lt;br /&gt;
&lt;br /&gt;
Note: Students cannot see this block as it is only for teachers.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldTeacher.png|600px|none|Accessibility heatmap on course main page]]&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
&lt;br /&gt;
Brickfield partnership with Moodle [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
&lt;br /&gt;
Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
&lt;br /&gt;
Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140361</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140361"/>
		<updated>2021-05-15T10:26:01Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==About the Accessibility toolkit==&lt;br /&gt;
The accessibility starter toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
You can also get a graphic display of types of error, and a report with an overview of all errors. In order to use it, first the site administrator has to register into Brickfield and then activate the plugin in the Moodle site&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The accessibility toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
*** Needs Image ***&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
In your course, add the Accessibility review block and click the &amp;quot;Submit for analysis&amp;quot; button. After some minutes, you’ll see the results of the analysis. Please note that the first time that you run the analysis is not immediate. You can also run the analysis from the Edit cog&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle course against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages==&lt;br /&gt;
The accessibility toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher, including:&lt;br /&gt;
&lt;br /&gt;
* A summary of the accessibility errors for the course categorized by type.&lt;br /&gt;
* A heatmap which highlights the errors for each course element. You can activate or hide the heatmap by clicking on the eye.&lt;br /&gt;
* A link to the accessibility toolkit which includes different reports and the error list with links to edit the mistakes&lt;br /&gt;
* A link to download the accessibility toolkit summary report in a printable pdf format.&lt;br /&gt;
&lt;br /&gt;
Note: Students cannot see this block as it is only for teachers.&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldTeacher.png|600px|none|Accessibility heatmap on course main page]]&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
&lt;br /&gt;
Brickfield partnership with Moodle [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
&lt;br /&gt;
Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
&lt;br /&gt;
Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140360</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140360"/>
		<updated>2021-05-14T19:22:26Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==About the Accessibility toolkit==&lt;br /&gt;
The accessibility starter toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The accessibility toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
The accessibility toolkit works when educators or administrators submit &amp;quot;Request for analysis&amp;quot; requests for their courses, either via the accessibility review block or via the accessibility toolkit page for their course.&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle courses against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages==&lt;br /&gt;
The accessibility toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher, including:&lt;br /&gt;
&lt;br /&gt;
* A summary of the accessibility errors for the course&lt;br /&gt;
* A heatmap which highlights the errors for each course element&lt;br /&gt;
* A link to the accessibility toolkit&lt;br /&gt;
* A link to download the accessibility toolkit summary report&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldTeacher.png|600px|none|Accessibility heatmap on course main page]]&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal]&lt;br /&gt;
&lt;br /&gt;
Brickfield partnership with Moodle [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Moodle News story] -  [https://www.brickfield.ie/2021/04/27/brickfield-partnering-with-moodle/ Brickfield Blog] &lt;br /&gt;
&lt;br /&gt;
Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
&lt;br /&gt;
Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140359</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140359"/>
		<updated>2021-05-14T19:19:51Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==About the Accessibility toolkit==&lt;br /&gt;
The accessibility starter toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The accessibility toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
The accessibility toolkit works when educators or administrators submit &amp;quot;Request for analysis&amp;quot; requests for their courses, either via the accessibility review block or via the accessibility toolkit page for their course.&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle courses against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages==&lt;br /&gt;
The accessibility toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher, including:&lt;br /&gt;
&lt;br /&gt;
* A summary of the accessibility errors for the course&lt;br /&gt;
* A heatmap which highlights the errors for each course element&lt;br /&gt;
* A link to the accessibility toolkit&lt;br /&gt;
* A link to download the accessibility toolkit summary report&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldTeacher.png|600px|none|Accessibility heatmap on course main page]]&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
&lt;br /&gt;
Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140358</id>
		<title>Accessibility Toolkit</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Accessibility_Toolkit&amp;diff=140358"/>
		<updated>2021-05-14T19:19:32Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{New features}}&lt;br /&gt;
{{MediaPlayer | url = https://youtu.be/Vj3aEgb1ihw | desc = Accessibility toolkit in Moodle 3.11}}&lt;br /&gt;
&lt;br /&gt;
==About the Accessibility toolkit==&lt;br /&gt;
The accessibility starter toolkit allows educators and administrators to assess the accessibility of their course content and to identify existing common accessibility issues.&lt;br /&gt;
&lt;br /&gt;
==Registration==&lt;br /&gt;
From the Site administration panel, Moodle admins will find the Accessibility Toolkit under Admin tools in the Plugins section. The accessibility toolkit pages all initially redirect to the registration page, which needs to be submitted with a set of keys, an API key and a secret key, which are generated for you, once you have registered on the [https://account.mybrickfield.ie/login Brickfield registration portal].&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldAdmin1.png|600px|none|Accessibility registration page]]&lt;br /&gt;
&lt;br /&gt;
==Admin settings==&lt;br /&gt;
The accessibility toolkit&#039;s main purpose is to process content accessibility analysis, and initially this is set to disabled to allow institutions to enable it when ready. This is done at Site administration / Plugins / Admin tools / Accessibility / Accessibility toolkit settings with the &amp;quot;Enable analysis requests&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
==Teacher usage==&lt;br /&gt;
The accessibility toolkit works when educators or administrators submit &amp;quot;Request for analysis&amp;quot; requests for their courses, either via the accessibility review block or via the accessibility toolkit page for their course.&lt;br /&gt;
&lt;br /&gt;
It includes the automated analysis of these requested Moodle courses against a set of common accessibility rules, checking the content inside all of Moodle’s core activities. The toolkit then generates reports of all detected accessibility errors, which can also be broken down by type of content or type of activity. This provides insights to educators and organisations on the overall accessibility of their courses and the areas that should be improved.&lt;br /&gt;
&lt;br /&gt;
Once a course has been analysed, any ongoing updates or edits or additions within the course will also be analysed automatically, being triggered by Moodle&#039;s event observers / callbacks.&lt;br /&gt;
&lt;br /&gt;
==Report pages==&lt;br /&gt;
The accessibility toolkit link to its reports is accessed via a course&#039;s Actions menu (Boost theme) or via the course administration block (Classic theme). It can also be accessed via the accessibility review block, if this has been added to the course.&lt;br /&gt;
&lt;br /&gt;
The accessibility toolkit provides a number of reports, to display the detected accessibility errors:&lt;br /&gt;
&lt;br /&gt;
* Error list with direct links, which makes it really easy to navigate to their location and fix them.&lt;br /&gt;
* Activity breakdown, showing pass ratios per activity&lt;br /&gt;
* Content types, showing error counts per type of content&lt;br /&gt;
* Summary report, showing a summary of the other reports combined&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:SummaryReport.png|600px|none|Accessibility summary report]]&lt;br /&gt;
&lt;br /&gt;
==Course block==&lt;br /&gt;
The accessibility review block can be added to a course to display useful information to the teacher, including:&lt;br /&gt;
&lt;br /&gt;
* A summary of the accessibility errors for the course&lt;br /&gt;
* A heatmap which highlights the errors for each course element&lt;br /&gt;
* A link to the accessibility toolkit&lt;br /&gt;
* A link to download the accessibility toolkit summary report&lt;br /&gt;
&lt;br /&gt;
[[{{ns:file}}:BrickfieldTeacher.png|600px|none|Accessibility heatmap on course main page]]&lt;br /&gt;
&lt;br /&gt;
==Important Links==&lt;br /&gt;
Registration Portal [https://account.mybrickfield.ie/register Brickfield registration portal].&lt;br /&gt;
Blog Post [https://moodle.com/news/new-accessibility-checker-starter-toolkit-in-moodle-3-11/ New Accessibility Checker Starter Toolkit in Moodle 3.11]&lt;br /&gt;
Enterprise version [https://www.brickfield.ie/brickfield-accessibility-enterprise-toolkit/ Brickfield Accessibility Toolkit].&lt;br /&gt;
&lt;br /&gt;
[[Category: Accessibility]]&lt;br /&gt;
&lt;br /&gt;
[[es:Herramientas de accesibilidad]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124244</id>
		<title>User tours</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124244"/>
		<updated>2016-06-29T14:04:33Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Site appearance}}&lt;br /&gt;
The User tours plugin allows administrators to create user tours of Moodle, which are visual and positional step by step guides. Tours can be created for a wide range of purposes: to guide new users around the interface, to introduce new features, highlight important information, and more. It is also enabled to cater for multilingual content if required using the multi-lang filters.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
Once a user tour has been created and enabled, the first time that any user views a page which matches that user tour’s page (path) settings, the user tour will automatically start to display, starting with the first step. Each tour step will display its title and content, along with three button options:&lt;br /&gt;
*Prev - to return to the previous step in the tour&lt;br /&gt;
*Next - to go to the next step in the tour&lt;br /&gt;
*End Tour - to exit out of the tour completely&lt;br /&gt;
&lt;br /&gt;
Any time a user wishes to re-run the page&#039;s tour, they can click on the &amp;quot;Reset user tour on this page&amp;quot; link at the bottom of the page.&lt;br /&gt;
[[File:usertour_in_action_screenshot.png|thumb|600px|center]]&lt;br /&gt;
&lt;br /&gt;
==Creating User tours==&lt;br /&gt;
#Ensure that the user tours plugin is installed and enabled on your moodle site&lt;br /&gt;
#Login to your Moodle site as administrator&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Appearance &amp;gt; User tours&#039;&#039;.&lt;br /&gt;
#You will now see a list of your existing user tours, along with three button options:&lt;br /&gt;
##Create a new tour - click on this to create a new tour&lt;br /&gt;
##Import tour - click on this to upload a tour file (in .json format)&lt;br /&gt;
##Tour repository - click on this to browse the user tours currently listed on our [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database]&lt;br /&gt;
[[File:usertour_listing_page.png|thumb|600px|center]]&lt;br /&gt;
#For each of your existing tours, you can click either directly on its name or on its View action icon to view its current listed steps&lt;br /&gt;
#Each tour can be individually enabled or disabled as required in its settings page.&lt;br /&gt;
#Please note: this plugin does allow you to have multiple tours created for the same page destination, however you should only have one enabled per page at any given time.&lt;br /&gt;
#Each tour has the following Actions options:&lt;br /&gt;
##View - to view and edit the individual steps in the tour&lt;br /&gt;
##Edit - to edit the tour settings, such as its name, page (specified page to which it is applied) and whether it is enabled or not. Tours will be displayed on any page whose URL matches the specified path value, for instance:&lt;br /&gt;
###/my/% - to match the Dashboard&lt;br /&gt;
###/course/view.php?id=2 - to match a specific course&lt;br /&gt;
###/mod/forum/view.php% - to match the forum discussion list&lt;br /&gt;
###/user/profile.php% - to match the user profile page&lt;br /&gt;
##Export - to export the tour’s full details and steps as a .json file&lt;br /&gt;
##Delete - to delete the tour entirely&lt;br /&gt;
#Each tour will be configured with default step settings which you can edit in the settings page:&lt;br /&gt;
##Placement: Top, Bottom (Default), Left, Right. This determines where the step shows relative to its matching block or CSS selector on the page.&lt;br /&gt;
##Show if target not found: No (Default), Yes. This determines whether the step is shown or not when the target has not been found.&lt;br /&gt;
##Show with backdrop: No (Default), Yes. If yes, the step appears surrounded by a darkened backdrop to emphasis its content and location.&lt;br /&gt;
##Move on click: No (Default), Yes. If yes, the tour continues to the next step when the user clicks within the block or area targeted by the current step.&lt;br /&gt;
&lt;br /&gt;
==Adding steps to your User tour==&lt;br /&gt;
#In your User tour&#039;s View page, you can add, edit, re-order and delete steps for your tour. Either click directly on its name or on its View action icon to view the currently listed steps.&lt;br /&gt;
#For instance, here are the initial steps for a sample tour for the Dashboard page.&lt;br /&gt;
[[File:usertour steps page.png|thumb|600px|center]]&lt;br /&gt;
#Each individual step has the following Actions options:&lt;br /&gt;
##Move Up and/or Down as relevant for re-ordering&lt;br /&gt;
##Edit - to edit the step settings&lt;br /&gt;
##Delete - to delete the step entirely&lt;br /&gt;
#To add a new step:&lt;br /&gt;
##Click on the &#039;New step&#039; link.&lt;br /&gt;
##Select the appropriate type, or area, of the page to highlight: &lt;br /&gt;
###Block - to display next to a matching block on the page&lt;br /&gt;
###CSS Selector - to display next to a matching selector on the page&lt;br /&gt;
###Display in the middle of the page&lt;br /&gt;
##For blocks, select the relevant block from the dropdown&lt;br /&gt;
##For CSS selectors, type in the relevant selector to identify the target&lt;br /&gt;
##Add the title and content&lt;br /&gt;
##For all types, select whether to display the step with a darkened backdrop&lt;br /&gt;
##For blocks or selectors, select the Placement option for where to place the display&lt;br /&gt;
##For blocks or selectors, select whether to display the step if its target isn’t found&lt;br /&gt;
##For blocks or selectors, select whether to move on click, ie move to next step when target is clicked&lt;br /&gt;
##Click on &#039;Save changes&#039;&lt;br /&gt;
##Your new step should now appear at the end of your tour’s current listed steps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Multi-language capability==&lt;br /&gt;
&lt;br /&gt;
If your Moodle site is already set up or intending to be enabled for multi-lingual usage, tours are completely compatible with this requirement. Using the multi-lang filter formatting, each tour step’s titles and content, displayed to the user, can be edited to cater for multi-lingual requirements. Please see [[Multi-language_content_filter]] for further detailed instructions on how to enable, format and submit multi-lingual strings for your Moodle site.&lt;br /&gt;
&lt;br /&gt;
==Sharing is caring==&lt;br /&gt;
&lt;br /&gt;
We really hope that you are able to create some really powerful tours to help guide your users around your site. We certainly think you will and we encourage you to share any of the tours you create with others.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve created a [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database] where you can share your creations and also find inspiration from the ideas of others.&lt;br /&gt;
&lt;br /&gt;
This work was paid for and sponsored by the kind folk of [http://www.dcu.ie/ Dublin City University].&lt;br /&gt;
&lt;br /&gt;
[[es:Tours para Usuarios]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:usertour_in_action_screenshot.png&amp;diff=124194</id>
		<title>File:usertour in action screenshot.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:usertour_in_action_screenshot.png&amp;diff=124194"/>
		<updated>2016-06-22T20:39:42Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: Ghenrick uploaded a new version of File:usertour in action screenshot.png&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sample of User tour in action displaying step on dashboard&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124193</id>
		<title>User tours</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124193"/>
		<updated>2016-06-22T20:37:07Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Site appearance}}&lt;br /&gt;
The User tours plugin allows administrators to create user tours of Moodle, which are visual and positional step by step guides. Tours can be created for a wide range of purposes: to guide new users around the interface, to introduce new features, highlight important information, and more. It is also enabled to cater for multilingual content if required using the multi-lang filters.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
Once a user tour has been created and enabled, the first time that any user views a page which matches that user tour’s page (path) settings, the user tour will automatically start to display, starting with the first step. Each tour step will display its title and content, along with three button options:&lt;br /&gt;
*Prev - to return to the previous step in the tour&lt;br /&gt;
*Next - to go to the next step in the tour&lt;br /&gt;
*End Tour - to exit out of the tour completely&lt;br /&gt;
&lt;br /&gt;
Any time a user wishes to re-run the page&#039;s tour, they can click on the &amp;quot;Reset user tour on this page&amp;quot; link at the bottom of the page.&lt;br /&gt;
[[File:usertour_in_action_screenshot.png|thumb|600px|center]]&lt;br /&gt;
&lt;br /&gt;
==Creating User tours==&lt;br /&gt;
#Ensure that the user tours plugin is installed and enabled on your moodle site&lt;br /&gt;
#Login to your Moodle site as administrator&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Appearance &amp;gt; User tours&#039;&#039;.&lt;br /&gt;
#You will now see a list of your existing user tours, along with three button options:&lt;br /&gt;
##Create a new tour - click on this to create a new tour&lt;br /&gt;
##Import tour - click on this to upload a tour file (in .json format)&lt;br /&gt;
##Tour repository - click on this to browse the user tours currently listed on our [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database]&lt;br /&gt;
[[File:usertour_listing_page.png|thumb|600px|center]]&lt;br /&gt;
#For each of your existing tours, you can click either directly on its name or on its View action icon to view its current listed steps&lt;br /&gt;
#Each tour can be individually enabled or disabled as required in its settings page.&lt;br /&gt;
#Please note: this plugin does allow you to have multiple tours created for the same page destination, however you should only have one enabled per page at any given time.&lt;br /&gt;
#Each tour has the following Actions options:&lt;br /&gt;
##View - to view and edit the individual steps in the tour&lt;br /&gt;
##Edit - to edit the tour settings, such as its name, page (specified page to which it is applied) and whether it is enabled or not. Tours will be displayed on any page whose URL matches the specified path value, for instance:&lt;br /&gt;
###/my/% - to match the Dashboard&lt;br /&gt;
###/course/view.php?id=2 - to match a specific course&lt;br /&gt;
###/mod/forum/view.php% - to match the forum discussion list&lt;br /&gt;
###/user/profile.php% - to match the user profile page&lt;br /&gt;
##Export - to export the tour’s full details and steps as a .json file&lt;br /&gt;
##Delete - to delete the tour entirely&lt;br /&gt;
#Each tour will be configured with default step settings which you can edit in the settings page:&lt;br /&gt;
##Placement: Top, Bottom (Default), Left, Right. This determines where the step shows relative to its matching block or CSS selector on the page.&lt;br /&gt;
##Show if target not found: No (Default), Yes. This determines whether the step is shown or not when the target has not been found.&lt;br /&gt;
##Show with backdrop: No (Default), Yes. If yes, the step appears surrounded by a darkened backdrop to emphasis its content and location.&lt;br /&gt;
##Move on click: No (Default), Yes. If yes, the tour continues to the next step when the user clicks within the block or area targeted by the current step.&lt;br /&gt;
&lt;br /&gt;
==Adding steps to your User tour==&lt;br /&gt;
#In your User tour&#039;s View page, you can add, edit, re-order and delete steps for your tour. Either click directly on its name or on its View action icon to view the currently listed steps.&lt;br /&gt;
#For instance, here are the initial steps for a sample tour for the Dashboard page.&lt;br /&gt;
[[File:usertour steps page.png|thumb|600px|center]]&lt;br /&gt;
#Each individual step has the following Actions options:&lt;br /&gt;
##Move Up and/or Down as relevant for re-ordering&lt;br /&gt;
##Edit - to edit the step settings&lt;br /&gt;
##Delete - to delete the step entirely&lt;br /&gt;
#To add a new step:&lt;br /&gt;
##Click on the &#039;New step&#039; link.&lt;br /&gt;
##Select the appropriate type, or area, of the page to highlight: &lt;br /&gt;
###Block - to display next to a matching block on the page&lt;br /&gt;
###CSS Selector - to display next to a matching selector on the page&lt;br /&gt;
###Display in the middle of the page&lt;br /&gt;
##For blocks, select the relevant block from the dropdown&lt;br /&gt;
##For CSS selectors, type in the relevant selector to identify the target&lt;br /&gt;
##Add the title and content&lt;br /&gt;
##For all types, select whether to display the step with a darkened backdrop&lt;br /&gt;
##For blocks or selectors, select the Placement option for where to place the display&lt;br /&gt;
##For blocks or selectors, select whether to display the step if its target isn’t found&lt;br /&gt;
##For blocks or selectors, select whether to move on click, ie move to next step when target is clicked&lt;br /&gt;
##Click on &#039;Save changes&#039;&lt;br /&gt;
##Your new step should now appear at the end of your tour’s current listed steps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Multi-language capability==&lt;br /&gt;
&lt;br /&gt;
If your Moodle site is already set up or intending to be enabled for multi-lingual usage, tours are completely compatible with this requirement. Using the multi-lang filter formatting, each tour step’s titles and content, displayed to the user, can be edited to cater for multi-lingual requirements. Please see [[Multi-language_content_filter]] for further detailed instructions on how to enable, format and submit multi-lingual strings for your Moodle site.&lt;br /&gt;
&lt;br /&gt;
==Sharing is caring==&lt;br /&gt;
&lt;br /&gt;
We really hope that you are able to create some really powerful tours to help guide your users around your site. We certainly think you will and we encourage you to share any of the tours you create with others.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve created a [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database] where you can share your creations and also find inspiration from the ideas of others.&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124192</id>
		<title>User tours</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124192"/>
		<updated>2016-06-22T20:35:20Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Site appearance}}&lt;br /&gt;
The User tours plugin allows administrators to create user tours of Moodle, which are visual and positional step by step guides. Tours can be created for a wide range of purposes: to guide new users around the interface, to introduce new features, highlight important information, and more. It is also enabled to cater for multilingual content if required using the multi-lang filters.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
Once a user tour has been created and enabled, the first time that any user views a page which matches that user tour’s page (path) settings, the user tour will automatically start to display, starting with the first step. Each tour step will display its title and content, along with three button options:&lt;br /&gt;
*Prev - to return to the previous step in the tour&lt;br /&gt;
*Next - to go to the next step in the tour&lt;br /&gt;
*End Tour - to exit out of the tour completely&lt;br /&gt;
&lt;br /&gt;
Any time a user wishes to re-run the page&#039;s tour, they can click on the &amp;quot;Reset user tour on this page&amp;quot; link at the bottom of the page.&lt;br /&gt;
&lt;br /&gt;
==Creating User tours==&lt;br /&gt;
#Ensure that the user tours plugin is installed and enabled on your moodle site&lt;br /&gt;
#Login to your Moodle site as administrator&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Appearance &amp;gt; User tours&#039;&#039;.&lt;br /&gt;
#You will now see a list of your existing user tours, along with three button options:&lt;br /&gt;
##Create a new tour - click on this to create a new tour&lt;br /&gt;
##Import tour - click on this to upload a tour file (in .json format)&lt;br /&gt;
##Tour repository - click on this to browse the user tours currently listed on our [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database]&lt;br /&gt;
[[File:usertour_listing_page.png|thumb|500px|center]]&lt;br /&gt;
#For each of your existing tours, you can click either directly on its name or on its View action icon to view its current listed steps&lt;br /&gt;
#Each tour can be individually enabled or disabled as required in its settings page.&lt;br /&gt;
#Please note: this plugin does allow you to have multiple tours created for the same page destination, however you should only have one enabled per page at any given time.&lt;br /&gt;
#Each tour has the following Actions options:&lt;br /&gt;
##View - to view and edit the individual steps in the tour&lt;br /&gt;
##Edit - to edit the tour settings, such as its name, page (specified page to which it is applied) and whether it is enabled or not. Tours will be displayed on any page whose URL matches the specified path value, for instance:&lt;br /&gt;
###/my/% - to match the Dashboard&lt;br /&gt;
###/course/view.php?id=2 - to match a specific course&lt;br /&gt;
###/mod/forum/view.php% - to match the forum discussion list&lt;br /&gt;
###/user/profile.php% - to match the user profile page&lt;br /&gt;
##Export - to export the tour’s full details and steps as a .json file&lt;br /&gt;
##Delete - to delete the tour entirely&lt;br /&gt;
#Each tour will be configured with default step settings which you can edit in the settings page:&lt;br /&gt;
##Placement: Top, Bottom (Default), Left, Right. This determines where the step shows relative to its matching block or CSS selector on the page.&lt;br /&gt;
##Show if target not found: No (Default), Yes. This determines whether the step is shown or not when the target has not been found.&lt;br /&gt;
##Show with backdrop: No (Default), Yes. If yes, the step appears surrounded by a darkened backdrop to emphasis its content and location.&lt;br /&gt;
##Move on click: No (Default), Yes. If yes, the tour continues to the next step when the user clicks within the block or area targeted by the current step.&lt;br /&gt;
&lt;br /&gt;
==Adding steps to your User tour==&lt;br /&gt;
#In your User tour&#039;s View page, you can add, edit, re-order and delete steps for your tour. Either click directly on its name or on its View action icon to view the currently listed steps.&lt;br /&gt;
#For instance, here are the initial steps for a sample tour for the Dashboard page.&lt;br /&gt;
[[File:usertour steps page.png|thumb|500px|center]]&lt;br /&gt;
#Each individual step has the following Actions options:&lt;br /&gt;
##Move Up and/or Down as relevant for re-ordering&lt;br /&gt;
##Edit - to edit the step settings&lt;br /&gt;
##Delete - to delete the step entirely&lt;br /&gt;
#To add a new step:&lt;br /&gt;
##Click on the &#039;New step&#039; link.&lt;br /&gt;
##Select the appropriate type, or area, of the page to highlight: &lt;br /&gt;
###Block - to display next to a matching block on the page&lt;br /&gt;
###CSS Selector - to display next to a matching selector on the page&lt;br /&gt;
###Display in the middle of the page&lt;br /&gt;
##For blocks, select the relevant block from the dropdown&lt;br /&gt;
##For CSS selectors, type in the relevant selector to identify the target&lt;br /&gt;
##Add the title and content&lt;br /&gt;
##For all types, select whether to display the step with a darkened backdrop&lt;br /&gt;
##For blocks or selectors, select the Placement option for where to place the display&lt;br /&gt;
##For blocks or selectors, select whether to display the step if its target isn’t found&lt;br /&gt;
##For blocks or selectors, select whether to move on click, ie move to next step when target is clicked&lt;br /&gt;
##Click on &#039;Save changes&#039;&lt;br /&gt;
##Your new step should now appear at the end of your tour’s current listed steps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Multi-language capability==&lt;br /&gt;
&lt;br /&gt;
If your Moodle site is already set up or intending to be enabled for multi-lingual usage, tours are completely compatible with this requirement. Using the multi-lang filter formatting, each tour step’s titles and content, displayed to the user, can be edited to cater for multi-lingual requirements. Please see [[Multi-language_content_filter]] for further detailed instructions on how to enable, format and submit multi-lingual strings for your Moodle site.&lt;br /&gt;
&lt;br /&gt;
==Sharing is caring==&lt;br /&gt;
&lt;br /&gt;
We really hope that you are able to create some really powerful tours to help guide your users around your site. We certainly think you will and we encourage you to share any of the tours you create with others.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve created a [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database] where you can share your creations and also find inspiration from the ideas of others.&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124191</id>
		<title>User tours</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124191"/>
		<updated>2016-06-22T20:34:39Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Site appearance}}&lt;br /&gt;
==Introduction==&lt;br /&gt;
The User tours plugin allows administrators to create user tours of Moodle, which are visual and positional step by step guides. Tours can be created for a wide range of purposes: to guide new users around the interface, to introduce new features, highlight important information, and more. It is also enabled to cater for multilingual content if required using the multi-lang filters.&lt;br /&gt;
&lt;br /&gt;
==Usage==&lt;br /&gt;
Once a user tour has been created and enabled, the first time that any user views a page which matches that user tour’s page (path) settings, the user tour will automatically start to display, starting with the first step. Each tour step will display its title and content, along with three button options:&lt;br /&gt;
*Prev - to return to the previous step in the tour&lt;br /&gt;
*Next - to go to the next step in the tour&lt;br /&gt;
*End Tour - to exit out of the tour completely&lt;br /&gt;
&lt;br /&gt;
Any time a user wishes to re-run the page&#039;s tour, they can click on the &amp;quot;Reset user tour on this page&amp;quot; link at the bottom of the page.&lt;br /&gt;
&lt;br /&gt;
==Creating User tours==&lt;br /&gt;
#Ensure that the user tours plugin is installed and enabled on your moodle site&lt;br /&gt;
#Login to your Moodle site as administrator&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Appearance &amp;gt; User tours&#039;&#039;.&lt;br /&gt;
#You will now see a list of your existing user tours, along with three button options:&lt;br /&gt;
##Create a new tour - click on this to create a new tour&lt;br /&gt;
##Import tour - click on this to upload a tour file (in .json format)&lt;br /&gt;
##Tour repository - click on this to browse the user tours currently listed on our [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database]&lt;br /&gt;
[[File:usertour_listing_page.png|thumb|500px|center]]&lt;br /&gt;
#For each of your existing tours, you can click either directly on its name or on its View action icon to view its current listed steps&lt;br /&gt;
#Each tour can be individually enabled or disabled as required in its settings page.&lt;br /&gt;
#Please note: this plugin does allow you to have multiple tours created for the same page destination, however you should only have one enabled per page at any given time.&lt;br /&gt;
#Each tour has the following Actions options:&lt;br /&gt;
##View - to view and edit the individual steps in the tour&lt;br /&gt;
##Edit - to edit the tour settings, such as its name, page (specified page to which it is applied) and whether it is enabled or not. Tours will be displayed on any page whose URL matches the specified path value, for instance:&lt;br /&gt;
###/my/% - to match the Dashboard&lt;br /&gt;
###/course/view.php?id=2 - to match a specific course&lt;br /&gt;
###/mod/forum/view.php% - to match the forum discussion list&lt;br /&gt;
###/user/profile.php% - to match the user profile page&lt;br /&gt;
##Export - to export the tour’s full details and steps as a .json file&lt;br /&gt;
##Delete - to delete the tour entirely&lt;br /&gt;
#Each tour will be configured with default step settings which you can edit in the settings page:&lt;br /&gt;
##Placement: Top, Bottom (Default), Left, Right. This determines where the step shows relative to its matching block or CSS selector on the page.&lt;br /&gt;
##Show if target not found: No (Default), Yes. This determines whether the step is shown or not when the target has not been found.&lt;br /&gt;
##Show with backdrop: No (Default), Yes. If yes, the step appears surrounded by a darkened backdrop to emphasis its content and location.&lt;br /&gt;
##Move on click: No (Default), Yes. If yes, the tour continues to the next step when the user clicks within the block or area targeted by the current step.&lt;br /&gt;
&lt;br /&gt;
==Adding steps to your User tour==&lt;br /&gt;
#In your User tour&#039;s View page, you can add, edit, re-order and delete steps for your tour. Either click directly on its name or on its View action icon to view the currently listed steps.&lt;br /&gt;
#For instance, here are the initial steps for a sample tour for the Dashboard page.&lt;br /&gt;
[[File:usertour steps page.png|thumb|500px|center]]&lt;br /&gt;
#Each individual step has the following Actions options:&lt;br /&gt;
##Move Up and/or Down as relevant for re-ordering&lt;br /&gt;
##Edit - to edit the step settings&lt;br /&gt;
##Delete - to delete the step entirely&lt;br /&gt;
#To add a new step:&lt;br /&gt;
##Click on the &#039;New step&#039; link.&lt;br /&gt;
##Select the appropriate type, or area, of the page to highlight: &lt;br /&gt;
###Block - to display next to a matching block on the page&lt;br /&gt;
###CSS Selector - to display next to a matching selector on the page&lt;br /&gt;
###Display in the middle of the page&lt;br /&gt;
##For blocks, select the relevant block from the dropdown&lt;br /&gt;
##For CSS selectors, type in the relevant selector to identify the target&lt;br /&gt;
##Add the title and content&lt;br /&gt;
##For all types, select whether to display the step with a darkened backdrop&lt;br /&gt;
##For blocks or selectors, select the Placement option for where to place the display&lt;br /&gt;
##For blocks or selectors, select whether to display the step if its target isn’t found&lt;br /&gt;
##For blocks or selectors, select whether to move on click, ie move to next step when target is clicked&lt;br /&gt;
##Click on &#039;Save changes&#039;&lt;br /&gt;
##Your new step should now appear at the end of your tour’s current listed steps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Multi-language capability==&lt;br /&gt;
&lt;br /&gt;
If your Moodle site is already set up or intending to be enabled for multi-lingual usage, tours are completely compatible with this requirement. Using the multi-lang filter formatting, each tour step’s titles and content, displayed to the user, can be edited to cater for multi-lingual requirements. Please see [[Multi-language_content_filter]] for further detailed instructions on how to enable, format and submit multi-lingual strings for your Moodle site.&lt;br /&gt;
&lt;br /&gt;
==Sharing is caring==&lt;br /&gt;
&lt;br /&gt;
We really hope that you are able to create some really powerful tours to help guide your users around your site. We certainly think you will and we encourage you to share any of the tours you create with others.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve created a [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database] where you can share your creations and also find inspiration from the ideas of others.&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124190</id>
		<title>User tours</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124190"/>
		<updated>2016-06-22T20:33:37Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Site appearance}}&lt;br /&gt;
==User tours==&lt;br /&gt;
===Introduction===&lt;br /&gt;
The User tours plugin allows administrators to create user tours of Moodle, which are visual and positional step by step guides. Tours can be created for a wide range of purposes: to guide new users around the interface, to introduce new features, highlight important information, and more. It is also enabled to cater for multilingual content if required using the multi-lang filters.&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
Once a user tour has been created and enabled, the first time that any user views a page which matches that user tour’s page (path) settings, the user tour will automatically start to display, starting with the first step. Each tour step will display its title and content, along with three button options:&lt;br /&gt;
*Prev - to return to the previous step in the tour&lt;br /&gt;
*Next - to go to the next step in the tour&lt;br /&gt;
*End Tour - to exit out of the tour completely&lt;br /&gt;
&lt;br /&gt;
Any time a user wishes to re-run the page&#039;s tour, they can click on the &amp;quot;Reset user tour on this page&amp;quot; link at the bottom of the page.&lt;br /&gt;
&lt;br /&gt;
===Creating User tours===&lt;br /&gt;
#Ensure that the user tours plugin is installed and enabled on your moodle site&lt;br /&gt;
#Login to your Moodle site as administrator&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Appearance &amp;gt; User tours&#039;&#039;.&lt;br /&gt;
#You will now see a list of your existing user tours, along with three button options:&lt;br /&gt;
##Create a new tour - click on this to create a new tour&lt;br /&gt;
##Import tour - click on this to upload a tour file (in .json format)&lt;br /&gt;
##Tour repository - click on this to browse the user tours currently listed on our [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database]&lt;br /&gt;
[[File:usertour_listing_page.png|thumb|500px|center]]&lt;br /&gt;
#For each of your existing tours, you can click either directly on its name or on its View action icon to view its current listed steps&lt;br /&gt;
#Each tour can be individually enabled or disabled as required in its settings page.&lt;br /&gt;
#Please note: this plugin does allow you to have multiple tours created for the same page destination, however you should only have one enabled per page at any given time.&lt;br /&gt;
#Each tour has the following Actions options:&lt;br /&gt;
##View - to view and edit the individual steps in the tour&lt;br /&gt;
##Edit - to edit the tour settings, such as its name, page (specified page to which it is applied) and whether it is enabled or not. Tours will be displayed on any page whose URL matches the specified path value, for instance:&lt;br /&gt;
###/my/% - to match the Dashboard&lt;br /&gt;
###/course/view.php?id=2 - to match a specific course&lt;br /&gt;
###/mod/forum/view.php% - to match the forum discussion list&lt;br /&gt;
###/user/profile.php% - to match the user profile page&lt;br /&gt;
##Export - to export the tour’s full details and steps as a .json file&lt;br /&gt;
##Delete - to delete the tour entirely&lt;br /&gt;
#Each tour will be configured with default step settings which you can edit in the settings page:&lt;br /&gt;
##Placement: Top, Bottom (Default), Left, Right. This determines where the step shows relative to its matching block or CSS selector on the page.&lt;br /&gt;
##Show if target not found: No (Default), Yes. This determines whether the step is shown or not when the target has not been found.&lt;br /&gt;
##Show with backdrop: No (Default), Yes. If yes, the step appears surrounded by a darkened backdrop to emphasis its content and location.&lt;br /&gt;
##Move on click: No (Default), Yes. If yes, the tour continues to the next step when the user clicks within the block or area targeted by the current step.&lt;br /&gt;
&lt;br /&gt;
===Adding steps to your User tour===&lt;br /&gt;
#In your User tour&#039;s View page, you can add, edit, re-order and delete steps for your tour. Either click directly on its name or on its View action icon to view the currently listed steps.&lt;br /&gt;
#For instance, here are the initial steps for a sample tour for the Dashboard page.&lt;br /&gt;
[[File:usertour steps page.png|thumb|500px|center]]&lt;br /&gt;
#Each individual step has the following Actions options:&lt;br /&gt;
##Move Up and/or Down as relevant for re-ordering&lt;br /&gt;
##Edit - to edit the step settings&lt;br /&gt;
##Delete - to delete the step entirely&lt;br /&gt;
#To add a new step:&lt;br /&gt;
##Click on the &#039;New step&#039; link.&lt;br /&gt;
##Select the appropriate type, or area, of the page to highlight: &lt;br /&gt;
###Block - to display next to a matching block on the page&lt;br /&gt;
###CSS Selector - to display next to a matching selector on the page&lt;br /&gt;
###Display in the middle of the page&lt;br /&gt;
##For blocks, select the relevant block from the dropdown&lt;br /&gt;
##For CSS selectors, type in the relevant selector to identify the target&lt;br /&gt;
##Add the title and content&lt;br /&gt;
##For all types, select whether to display the step with a darkened backdrop&lt;br /&gt;
##For blocks or selectors, select the Placement option for where to place the display&lt;br /&gt;
##For blocks or selectors, select whether to display the step if its target isn’t found&lt;br /&gt;
##For blocks or selectors, select whether to move on click, ie move to next step when target is clicked&lt;br /&gt;
##Click on &#039;Save changes&#039;&lt;br /&gt;
##Your new step should now appear at the end of your tour’s current listed steps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Multi-language capability===&lt;br /&gt;
&lt;br /&gt;
If your Moodle site is already set up or intending to be enabled for multi-lingual usage, tours are completely compatible with this requirement. Using the multi-lang filter formatting, each tour step’s titles and content, displayed to the user, can be edited to cater for multi-lingual requirements. Please see [[Multi-language_content_filter]] for further detailed instructions on how to enable, format and submit multi-lingual strings for your Moodle site.&lt;br /&gt;
&lt;br /&gt;
===Sharing is caring===&lt;br /&gt;
&lt;br /&gt;
We really hope that you are able to create some really powerful tours to help guide your users around your site. We certainly think you will and we encourage you to share any of the tours you create with others.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve created a [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database] where you can share your creations and also find inspiration from the ideas of others.&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124189</id>
		<title>User tours</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124189"/>
		<updated>2016-06-22T20:31:08Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==User tours==&lt;br /&gt;
===Introduction===&lt;br /&gt;
The User tours plugin allows administrators to create user tours of Moodle, which are visual and positional step by step guides. Tours can be created for a wide range of purposes: to guide new users around the interface, to introduce new features, highlight important information, and more. It is also enabled to cater for multilingual content if required using the multi-lang filters.&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
Once a user tour has been created and enabled, the first time that any user views a page which matches that user tour’s page (path) settings, the user tour will automatically start to display, starting with the first step. Each tour step will display its title and content, along with three button options:&lt;br /&gt;
*Prev - to return to the previous step in the tour&lt;br /&gt;
*Next - to go to the next step in the tour&lt;br /&gt;
*End Tour - to exit out of the tour completely&lt;br /&gt;
&lt;br /&gt;
Any time a user wishes to re-run the page&#039;s tour, they can click on the &amp;quot;Reset user tour on this page&amp;quot; link at the bottom of the page.&lt;br /&gt;
&lt;br /&gt;
===Creating User tours===&lt;br /&gt;
#Ensure that the user tours plugin is installed and enabled on your moodle site&lt;br /&gt;
#Login to your Moodle site as administrator&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Appearance &amp;gt; User tours&#039;&#039;.&lt;br /&gt;
#You will now see a list of your existing user tours, along with three button options:&lt;br /&gt;
##Create a new tour - click on this to create a new tour&lt;br /&gt;
##Import tour - click on this to upload a tour file (in .json format)&lt;br /&gt;
##Tour repository - click on this to browse the user tours currently listed on our [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database]&lt;br /&gt;
[[File:usertour_listing_page.png|thumb|500px|center]]&lt;br /&gt;
#For each of your existing tours, you can click either directly on its name or on its View action icon to view its current listed steps&lt;br /&gt;
#Each tour can be individually enabled or disabled as required in its settings page.&lt;br /&gt;
#Please note: this plugin does allow you to have multiple tours created for the same page destination, however you should only have one enabled per page at any given time.&lt;br /&gt;
#Each tour has the following Actions options:&lt;br /&gt;
##View - to view and edit the individual steps in the tour&lt;br /&gt;
##Edit - to edit the tour settings, such as its name, page (specified page to which it is applied) and whether it is enabled or not. Tours will be displayed on any page whose URL matches the specified path value, for instance:&lt;br /&gt;
###/my/% - to match the Dashboard&lt;br /&gt;
###/course/view.php?id=2 - to match a specific course&lt;br /&gt;
###/mod/forum/view.php% - to match the forum discussion list&lt;br /&gt;
###/user/profile.php% - to match the user profile page&lt;br /&gt;
##Export - to export the tour’s full details and steps as a .json file&lt;br /&gt;
##Delete - to delete the tour entirely&lt;br /&gt;
#Each tour will be configured with default step settings which you can edit in the settings page:&lt;br /&gt;
##Placement: Top, Bottom (Default), Left, Right. This determines where the step shows relative to its matching block or CSS selector on the page.&lt;br /&gt;
##Show if target not found: No (Default), Yes. This determines whether the step is shown or not when the target has not been found.&lt;br /&gt;
##Show with backdrop: No (Default), Yes. If yes, the step appears surrounded by a darkened backdrop to emphasis its content and location.&lt;br /&gt;
##Move on click: No (Default), Yes. If yes, the tour continues to the next step when the user clicks within the block or area targeted by the current step.&lt;br /&gt;
&lt;br /&gt;
===Adding steps to your User tour===&lt;br /&gt;
#In your User tour&#039;s View page, you can add, edit, re-order and delete steps for your tour. Either click directly on its name or on its View action icon to view the currently listed steps.&lt;br /&gt;
#For instance, here are the initial steps for a sample tour for the Dashboard page.&lt;br /&gt;
[[File:usertour steps page.png|thumb|500px|center]]&lt;br /&gt;
#Each individual step has the following Actions options:&lt;br /&gt;
##Move Up and/or Down as relevant for re-ordering&lt;br /&gt;
##Edit - to edit the step settings&lt;br /&gt;
##Delete - to delete the step entirely&lt;br /&gt;
#To add a new step:&lt;br /&gt;
##Click on the &#039;New step&#039; link.&lt;br /&gt;
##Select the appropriate type, or area, of the page to highlight: &lt;br /&gt;
###Block - to display next to a matching block on the page&lt;br /&gt;
###CSS Selector - to display next to a matching selector on the page&lt;br /&gt;
###Display in the middle of the page&lt;br /&gt;
##For blocks, select the relevant block from the dropdown&lt;br /&gt;
##For CSS selectors, type in the relevant selector to identify the target&lt;br /&gt;
##Add the title and content&lt;br /&gt;
##For all types, select whether to display the step with a darkened backdrop&lt;br /&gt;
##For blocks or selectors, select the Placement option for where to place the display&lt;br /&gt;
##For blocks or selectors, select whether to display the step if its target isn’t found&lt;br /&gt;
##For blocks or selectors, select whether to move on click, ie move to next step when target is clicked&lt;br /&gt;
##Click on &#039;Save changes&#039;&lt;br /&gt;
##Your new step should now appear at the end of your tour’s current listed steps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Multi-language capability===&lt;br /&gt;
&lt;br /&gt;
If your Moodle site is already set up or intending to be enabled for multi-lingual usage, tours are completely compatible with this requirement. Using the multi-lang filter formatting, each tour step’s titles and content, displayed to the user, can be edited to cater for multi-lingual requirements. Please see [[Multi-language_content_filter]] for further detailed instructions on how to enable, format and submit multi-lingual strings for your Moodle site.&lt;br /&gt;
&lt;br /&gt;
===Sharing is caring===&lt;br /&gt;
&lt;br /&gt;
We really hope that you are able to create some really powerful tours to help guide your users around your site. We certainly think you will and we encourage you to share any of the tours you create with others.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve created a [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database] where you can share your creations and also find inspiration from the ideas of others.&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124188</id>
		<title>User tours</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=User_tours&amp;diff=124188"/>
		<updated>2016-06-22T20:28:36Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: Created page with &amp;quot;==User tours== ===Introduction=== The User tours plugin allows administrators to create user tours of Moodle, which are visual and positional step by step guides. Tours can be...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==User tours==&lt;br /&gt;
===Introduction===&lt;br /&gt;
The User tours plugin allows administrators to create user tours of Moodle, which are visual and positional step by step guides. Tours can be created for a wide range of purposes: to guide new users around the interface, to introduce new features, highlight important information, and more. It is also enabled to cater for multilingual content if required using the multi-lang filters.&lt;br /&gt;
&lt;br /&gt;
===Usage===&lt;br /&gt;
Once a user tour has been created and enabled, the first time that any user views a page which matches that user tour’s page (path) settings, the user tour will automatically start to display, starting with the first step. Each tour step will display its title and content, along with three button options:&lt;br /&gt;
*Prev - to return to the previous step in the tour&lt;br /&gt;
*Next - to go to the next step in the tour&lt;br /&gt;
*End Tour - to exit out of the tour completely&lt;br /&gt;
&lt;br /&gt;
Any time a user wishes to re-run the page&#039;s tour, they can click on the &amp;quot;Reset user tour on this page&amp;quot; link at the bottom of the page.&lt;br /&gt;
&lt;br /&gt;
===Creating User tours===&lt;br /&gt;
#Ensure that the user tours plugin is installed and enabled on your moodle site&lt;br /&gt;
#Login to your Moodle site as administrator, and click on the &#039;User tours&#039; link under &#039;Site administration&#039; and under &#039;Appearance&#039;.&lt;br /&gt;
#You will now see a list of your existing user tours, along with three button options:&lt;br /&gt;
##Create a new tour - click on this to create a new tour&lt;br /&gt;
##Import tour - click on this to upload a tour file (in .json format)&lt;br /&gt;
##Tour repository - click on this to browse the user tours currently listed on our [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database]&lt;br /&gt;
[[File:usertour_listing_page.png|thumb|500px|center]]&lt;br /&gt;
#For each of your existing tours, you can click either directly on its name or on its View action icon to view its current listed steps&lt;br /&gt;
#Each tour can be individually enabled or disabled as required in its settings page.&lt;br /&gt;
#Please note: this plugin does allow you to have multiple tours created for the same page destination, however you should only have one enabled per page at any given time.&lt;br /&gt;
#Each tour has the following Actions options:&lt;br /&gt;
##View - to view and edit the individual steps in the tour&lt;br /&gt;
##Edit - to edit the tour settings, such as its name, page (specified page to which it is applied) and whether it is enabled or not. Tours will be displayed on any page whose URL matches the specified path value, for instance:&lt;br /&gt;
###/my/% - to match the Dashboard&lt;br /&gt;
###/course/view.php?id=2 - to match a specific course&lt;br /&gt;
###/mod/forum/view.php% - to match the forum discussion list&lt;br /&gt;
###/user/profile.php% - to match the user profile page&lt;br /&gt;
##Export - to export the tour’s full details and steps as a .json file&lt;br /&gt;
##Delete - to delete the tour entirely&lt;br /&gt;
#Each tour will be configured with default step settings which you can edit in the settings page:&lt;br /&gt;
##Placement: Top, Bottom (Default), Left, Right. This determines where the step shows relative to its matching block or CSS selector on the page.&lt;br /&gt;
##Show if target not found: No (Default), Yes. This determines whether the step is shown or not when the target has not been found.&lt;br /&gt;
##Show with backdrop: No (Default), Yes. If yes, the step appears surrounded by a darkened backdrop to emphasis its content and location.&lt;br /&gt;
##Move on click: No (Default), Yes. If yes, the tour continues to the next step when the user clicks within the block or area targeted by the current step.&lt;br /&gt;
&lt;br /&gt;
===Adding steps to your User tour===&lt;br /&gt;
#In your User tour&#039;s View page, you can add, edit, re-order and delete steps for your tour. Either click directly on its name or on its View action icon to view the currently listed steps.&lt;br /&gt;
#For instance, here are the initial steps for a sample tour for the Dashboard page.&lt;br /&gt;
[[File:usertour steps page.png|thumb|500px|center]]&lt;br /&gt;
#Each individual step has the following Actions options:&lt;br /&gt;
##Move Up and/or Down as relevant for re-ordering&lt;br /&gt;
##Edit - to edit the step settings&lt;br /&gt;
##Delete - to delete the step entirely&lt;br /&gt;
#To add a new step:&lt;br /&gt;
##Click on the &#039;New step&#039; link.&lt;br /&gt;
##Select the appropriate type, or area, of the page to highlight: &lt;br /&gt;
###Block - to display next to a matching block on the page&lt;br /&gt;
###CSS Selector - to display next to a matching selector on the page&lt;br /&gt;
###Display in the middle of the page&lt;br /&gt;
##For blocks, select the relevant block from the dropdown&lt;br /&gt;
##For CSS selectors, type in the relevant selector to identify the target&lt;br /&gt;
##Add the title and content&lt;br /&gt;
##For all types, select whether to display the step with a darkened backdrop&lt;br /&gt;
##For blocks or selectors, select the Placement option for where to place the display&lt;br /&gt;
##For blocks or selectors, select whether to display the step if its target isn’t found&lt;br /&gt;
##For blocks or selectors, select whether to move on click, ie move to next step when target is clicked&lt;br /&gt;
##Click on &#039;Save changes&#039;&lt;br /&gt;
##Your new step should now appear at the end of your tour’s current listed steps&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Multi-language capability===&lt;br /&gt;
&lt;br /&gt;
If your Moodle site is already set up or intending to be enabled for multi-lingual usage, tours are completely compatible with this requirement. Using the multi-lang filter formatting, each tour step’s titles and content, displayed to the user, can be edited to cater for multi-lingual requirements. Please see [[Multi-language_content_filter]] for further detailed instructions on how to enable, format and submit multi-lingual strings for your Moodle site.&lt;br /&gt;
&lt;br /&gt;
===Sharing is caring===&lt;br /&gt;
&lt;br /&gt;
We really hope that you are able to create some really powerful tours to help guide your users around your site. We certainly think you will and we encourage you to share any of the tours you create with others.&lt;br /&gt;
&lt;br /&gt;
We&#039;ve created a [https://moodle.net/mod/data/view.php?id=17 Moodle.net tour database] where you can share your creations and also find inspiration from the ideas of others.&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:usertour_in_action_screenshot.png&amp;diff=124187</id>
		<title>File:usertour in action screenshot.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:usertour_in_action_screenshot.png&amp;diff=124187"/>
		<updated>2016-06-22T20:02:42Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: Sample of User tour in action displaying step on dashboard&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sample of User tour in action displaying step on dashboard&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:usertour_steps_page.png&amp;diff=124186</id>
		<title>File:usertour steps page.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:usertour_steps_page.png&amp;diff=124186"/>
		<updated>2016-06-22T20:00:54Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: Sample Usertours editing steps page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sample Usertours editing steps page&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:usertour_listing_page.png&amp;diff=124185</id>
		<title>File:usertour listing page.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:usertour_listing_page.png&amp;diff=124185"/>
		<updated>2016-06-22T19:58:47Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: Sample User tours main listing page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Sample User tours main listing page&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122890</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122890"/>
		<updated>2016-04-08T17:04:15Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mobile}}&lt;br /&gt;
Many teachers and lecturers use clickers and student response systems to add a level of real-time interaction during a lecture or presentation. Moodle has a inbuilt poll activity called choice which can be set up to allow students select one of a number of options. With so many students having mobile devices, this facilitates the teacher to have the students take the choice activity either using the mobile web interface of Moodle, or using the Moodle Mobile App.&lt;br /&gt;
&lt;br /&gt;
This guide takes you through setting up a Moodle web service to view live choice results in a real time dynamic graph - so replacing the clicker requirement and using the students&#039; own mobile devices instead. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|300px|thumb|center|Example of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
&lt;br /&gt;
#Configurations for your Moodle site&lt;br /&gt;
# A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
# A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Advanced features&#039;&#039; where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_ws.png|600px|thumb|center|Enabling web services]]&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols&#039;&#039; where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_protocols.png|600px|thumb|center|Enabling REST protocol]]&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile&#039;&#039; where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_mobile.png|600px|thumb|center|Enabling mobile access]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See [[Managing accounts]] for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define role&#039;&#039;s. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role1.png|600px|thumb|center|Add custom role]]&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role2.png|600px|thumb|center|Add capability]]&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See [[Creating custom roles]] for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&#039;&#039;&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_assign_user.png|600px|thumb|center|Assign role]]&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_ws.png|600px|thumb|center|Add web service]]&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_functions.png|600px|thumb|center|Add functions]]&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&#039;&#039;&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&#039;&#039;&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_token.png|600px|thumb|center|Add token]]&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_code.png|600px|thumb|center|Code configuration]]&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sample Code==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$url=&amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot;;&lt;br /&gt;
$function=&amp;quot;mod_choice_get_choice_results&amp;quot;;&lt;br /&gt;
$function2=&amp;quot;mod_choice_get_choices_by_courses&amp;quot;;&lt;br /&gt;
$token=&amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Grabs choice details including title&lt;br /&gt;
$ch2 = curl_init();&lt;br /&gt;
curl_setopt($ch2, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function2&amp;amp;wstoken=$token&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result2 = json_decode(curl_exec($ch2));&lt;br /&gt;
&lt;br /&gt;
if (isset($_REQUEST[&#039;choiceid&#039;])) {&lt;br /&gt;
    $choiceid=intval($_REQUEST[&#039;choiceid&#039;]);&lt;br /&gt;
} else if (count($result2-&amp;gt;choices) &amp;gt; 0) { // accessible choices found&lt;br /&gt;
    $choiceid=intval($result2-&amp;gt;choices[0]-&amp;gt;id);&lt;br /&gt;
} else {&lt;br /&gt;
    $choiceid = 0; // default value&lt;br /&gt;
}&lt;br /&gt;
if ($choiceid &amp;lt; 1) {&lt;br /&gt;
    echo(&amp;quot;invalid id&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
$colour=&amp;quot;249,128,18&amp;quot;; // Moodle orange, change as required.&lt;br /&gt;
&lt;br /&gt;
$ch = curl_init();&lt;br /&gt;
curl_setopt($ch, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function&amp;amp;wstoken=$token&amp;amp;choiceid=$choiceid&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result = json_decode(curl_exec($ch));&lt;br /&gt;
&lt;br /&gt;
$graph_title = &amp;quot;&amp;quot;;&lt;br /&gt;
$dropdown = &amp;quot;&amp;lt;select name=&#039;choiceid&#039; onchange=&#039;this.form.submit()&#039;&amp;gt;\n&amp;quot;;&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;option value=&#039;0&#039;&amp;gt;Select&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
foreach ($result2-&amp;gt;choices as $choice) {&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;lt;option value=&#039;{$choice-&amp;gt;id}&#039;&amp;quot;;&lt;br /&gt;
    if ($choice-&amp;gt;id == $choiceid) {&lt;br /&gt;
        $graph_title = $choice-&amp;gt;name;&lt;br /&gt;
        $dropdown .= &amp;quot; selected&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;gt;{$choice-&amp;gt;name}&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;/select&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// data for bar graph&lt;br /&gt;
$chart = new stdClass();&lt;br /&gt;
$data = array();&lt;br /&gt;
$labels = array();&lt;br /&gt;
foreach ($result-&amp;gt;options as $a) {&lt;br /&gt;
    $data[] = $a-&amp;gt;numberofuser;&lt;br /&gt;
    $labels[] = $a-&amp;gt;text.&amp;quot; (&amp;quot;.round($a-&amp;gt;percentageamount,1).&amp;quot;%)&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$chart-&amp;gt;labels = $labels;&lt;br /&gt;
$dataset = new stdClass();&lt;br /&gt;
$dataset-&amp;gt;data = $data;&lt;br /&gt;
$dataset-&amp;gt;fillColor = &amp;quot;rgba({$colour},0.5)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;strokeColor = &amp;quot;rgba({$colour},0.8)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightFill = &amp;quot;rgba({$colour},0.75)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightStroke = &amp;quot;rgba({$colour},1)&amp;quot;;&lt;br /&gt;
$chart-&amp;gt;datasets = array($dataset);&lt;br /&gt;
&lt;br /&gt;
curl_close($ch);&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;!doctype html&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
        &amp;lt;head&amp;gt;&lt;br /&gt;
                &amp;lt;meta http-equiv=&amp;quot;refresh&amp;quot; content=&amp;quot;5&amp;quot; &amp;gt;&lt;br /&gt;
                &amp;lt;title&amp;gt;Bar Chart&amp;lt;/title&amp;gt;&lt;br /&gt;
                &amp;lt;script src=&amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/head&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;&lt;br /&gt;
        &amp;lt;center&amp;gt;&lt;br /&gt;
        &amp;lt;h1&amp;gt;&amp;lt;?php echo($graph_title); ?&amp;gt;&amp;lt;/h1&amp;gt;&lt;br /&gt;
                &amp;lt;div id=&amp;quot;canvas-holder&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;canvas id=&amp;quot;chart-area&amp;quot; width=&amp;quot;900&amp;quot; height=&amp;quot;600&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
            &amp;lt;form&amp;gt;&amp;lt;?php echo($dropdown); ?&amp;gt;&amp;lt;noscript&amp;gt;&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit&amp;quot;&amp;gt;&amp;lt;/noscript&amp;gt;&amp;lt;/form&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;script&amp;gt;&lt;br /&gt;
            var pieData = &amp;lt;?php echo json_encode($chart); ?&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
                        window.onload = function(){&lt;br /&gt;
                                var ctx = document.getElementById(&#039;chart-area&#039;).getContext(&#039;2d&#039;);&lt;br /&gt;
                                window.myPie = new Chart(ctx).Bar(pieData, {animationSteps : 1, responsive: false});&lt;br /&gt;
                        };&lt;br /&gt;
		&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/center&amp;gt;&lt;br /&gt;
        &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122889</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122889"/>
		<updated>2016-04-08T17:03:34Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mobile}}&lt;br /&gt;
Many teachers and lecturers use clickers and student response systems to add a level of real-time interaction during a lecture or presentation. Moodle has a inbuilt poll activity called choice which can be set up to allow students select one of a number of options. With so many students having mobile devices, this facilitates the teacher to have the students take the choice activity either using the mobile web interface of Moodle, or using the Moodle Mobile App.&lt;br /&gt;
&lt;br /&gt;
This guide takes you through setting up a Moodle web service to view live choice results in a real time dynamic graph - so replacing the clicker requirement and using the students&#039; own mobile devices instead. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|600px|thumb|center|Example of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
&lt;br /&gt;
#Configurations for your Moodle site&lt;br /&gt;
# A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
# A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Advanced features&#039;&#039; where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_ws.png|600px|thumb|center|Enabling web services]]&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols&#039;&#039; where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_protocols.png|600px|thumb|center|Enabling REST protocol]]&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile&#039;&#039; where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_mobile.png|600px|thumb|center|Enabling mobile access]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See [[Managing accounts]] for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define role&#039;&#039;s. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role1.png|600px|thumb|center|Add custom role]]&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role2.png|600px|thumb|center|Add capability]]&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See [[Creating custom roles]] for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&#039;&#039;&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_assign_user.png|600px|thumb|center|Assign role]]&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_ws.png|600px|thumb|center|Add web service]]&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_functions.png|600px|thumb|center|Add functions]]&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&#039;&#039;&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&#039;&#039;&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_token.png|600px|thumb|center|Add token]]&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_code.png|600px|thumb|center|Code configuration]]&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sample Code==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$url=&amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot;;&lt;br /&gt;
$function=&amp;quot;mod_choice_get_choice_results&amp;quot;;&lt;br /&gt;
$function2=&amp;quot;mod_choice_get_choices_by_courses&amp;quot;;&lt;br /&gt;
$token=&amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Grabs choice details including title&lt;br /&gt;
$ch2 = curl_init();&lt;br /&gt;
curl_setopt($ch2, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function2&amp;amp;wstoken=$token&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result2 = json_decode(curl_exec($ch2));&lt;br /&gt;
&lt;br /&gt;
if (isset($_REQUEST[&#039;choiceid&#039;])) {&lt;br /&gt;
    $choiceid=intval($_REQUEST[&#039;choiceid&#039;]);&lt;br /&gt;
} else if (count($result2-&amp;gt;choices) &amp;gt; 0) { // accessible choices found&lt;br /&gt;
    $choiceid=intval($result2-&amp;gt;choices[0]-&amp;gt;id);&lt;br /&gt;
} else {&lt;br /&gt;
    $choiceid = 0; // default value&lt;br /&gt;
}&lt;br /&gt;
if ($choiceid &amp;lt; 1) {&lt;br /&gt;
    echo(&amp;quot;invalid id&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
$colour=&amp;quot;249,128,18&amp;quot;; // Moodle orange, change as required.&lt;br /&gt;
&lt;br /&gt;
$ch = curl_init();&lt;br /&gt;
curl_setopt($ch, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function&amp;amp;wstoken=$token&amp;amp;choiceid=$choiceid&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result = json_decode(curl_exec($ch));&lt;br /&gt;
&lt;br /&gt;
$graph_title = &amp;quot;&amp;quot;;&lt;br /&gt;
$dropdown = &amp;quot;&amp;lt;select name=&#039;choiceid&#039; onchange=&#039;this.form.submit()&#039;&amp;gt;\n&amp;quot;;&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;option value=&#039;0&#039;&amp;gt;Select&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
foreach ($result2-&amp;gt;choices as $choice) {&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;lt;option value=&#039;{$choice-&amp;gt;id}&#039;&amp;quot;;&lt;br /&gt;
    if ($choice-&amp;gt;id == $choiceid) {&lt;br /&gt;
        $graph_title = $choice-&amp;gt;name;&lt;br /&gt;
        $dropdown .= &amp;quot; selected&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;gt;{$choice-&amp;gt;name}&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;/select&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// data for bar graph&lt;br /&gt;
$chart = new stdClass();&lt;br /&gt;
$data = array();&lt;br /&gt;
$labels = array();&lt;br /&gt;
foreach ($result-&amp;gt;options as $a) {&lt;br /&gt;
    $data[] = $a-&amp;gt;numberofuser;&lt;br /&gt;
    $labels[] = $a-&amp;gt;text.&amp;quot; (&amp;quot;.round($a-&amp;gt;percentageamount,1).&amp;quot;%)&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$chart-&amp;gt;labels = $labels;&lt;br /&gt;
$dataset = new stdClass();&lt;br /&gt;
$dataset-&amp;gt;data = $data;&lt;br /&gt;
$dataset-&amp;gt;fillColor = &amp;quot;rgba({$colour},0.5)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;strokeColor = &amp;quot;rgba({$colour},0.8)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightFill = &amp;quot;rgba({$colour},0.75)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightStroke = &amp;quot;rgba({$colour},1)&amp;quot;;&lt;br /&gt;
$chart-&amp;gt;datasets = array($dataset);&lt;br /&gt;
&lt;br /&gt;
curl_close($ch);&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;!doctype html&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
        &amp;lt;head&amp;gt;&lt;br /&gt;
                &amp;lt;meta http-equiv=&amp;quot;refresh&amp;quot; content=&amp;quot;5&amp;quot; &amp;gt;&lt;br /&gt;
                &amp;lt;title&amp;gt;Bar Chart&amp;lt;/title&amp;gt;&lt;br /&gt;
                &amp;lt;script src=&amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/head&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;&lt;br /&gt;
        &amp;lt;center&amp;gt;&lt;br /&gt;
        &amp;lt;h1&amp;gt;&amp;lt;?php echo($graph_title); ?&amp;gt;&amp;lt;/h1&amp;gt;&lt;br /&gt;
                &amp;lt;div id=&amp;quot;canvas-holder&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;canvas id=&amp;quot;chart-area&amp;quot; width=&amp;quot;900&amp;quot; height=&amp;quot;600&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
            &amp;lt;form&amp;gt;&amp;lt;?php echo($dropdown); ?&amp;gt;&amp;lt;noscript&amp;gt;&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit&amp;quot;&amp;gt;&amp;lt;/noscript&amp;gt;&amp;lt;/form&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;script&amp;gt;&lt;br /&gt;
            var pieData = &amp;lt;?php echo json_encode($chart); ?&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
                        window.onload = function(){&lt;br /&gt;
                                var ctx = document.getElementById(&#039;chart-area&#039;).getContext(&#039;2d&#039;);&lt;br /&gt;
                                window.myPie = new Chart(ctx).Bar(pieData, {animationSteps : 1, responsive: false});&lt;br /&gt;
                        };&lt;br /&gt;
		&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/center&amp;gt;&lt;br /&gt;
        &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122888</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122888"/>
		<updated>2016-04-08T17:03:20Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mobile}}&lt;br /&gt;
&lt;br /&gt;
Many teachers and lecturers use clickers and student response systems to add a level of real-time interaction during a lecture or presentation. Moodle has a inbuilt poll activity called choice which can be set up to allow students select one of a number of options. With so many students having mobile devices, this facilitates the teacher to have the students take the choice activity either using the mobile web interface of Moodle, or using the Moodle Mobile App.&lt;br /&gt;
&lt;br /&gt;
This guide takes you through setting up a Moodle web service to view live choice results in a real time dynamic graph - so replacing the clicker requirement and using the students&#039; own mobile devices instead. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|600px|thumb|center|Example of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
&lt;br /&gt;
#Configurations for your Moodle site&lt;br /&gt;
# A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
# A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Advanced features&#039;&#039; where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_ws.png|600px|thumb|center|Enabling web services]]&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols&#039;&#039; where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_protocols.png|600px|thumb|center|Enabling REST protocol]]&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile&#039;&#039; where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_mobile.png|600px|thumb|center|Enabling mobile access]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See [[Managing accounts]] for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define role&#039;&#039;s. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role1.png|600px|thumb|center|Add custom role]]&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role2.png|600px|thumb|center|Add capability]]&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See [[Creating custom roles]] for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&#039;&#039;&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_assign_user.png|600px|thumb|center|Assign role]]&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_ws.png|600px|thumb|center|Add web service]]&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_functions.png|600px|thumb|center|Add functions]]&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&#039;&#039;&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&#039;&#039;&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_token.png|600px|thumb|center|Add token]]&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_code.png|600px|thumb|center|Code configuration]]&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sample Code==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$url=&amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot;;&lt;br /&gt;
$function=&amp;quot;mod_choice_get_choice_results&amp;quot;;&lt;br /&gt;
$function2=&amp;quot;mod_choice_get_choices_by_courses&amp;quot;;&lt;br /&gt;
$token=&amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Grabs choice details including title&lt;br /&gt;
$ch2 = curl_init();&lt;br /&gt;
curl_setopt($ch2, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function2&amp;amp;wstoken=$token&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result2 = json_decode(curl_exec($ch2));&lt;br /&gt;
&lt;br /&gt;
if (isset($_REQUEST[&#039;choiceid&#039;])) {&lt;br /&gt;
    $choiceid=intval($_REQUEST[&#039;choiceid&#039;]);&lt;br /&gt;
} else if (count($result2-&amp;gt;choices) &amp;gt; 0) { // accessible choices found&lt;br /&gt;
    $choiceid=intval($result2-&amp;gt;choices[0]-&amp;gt;id);&lt;br /&gt;
} else {&lt;br /&gt;
    $choiceid = 0; // default value&lt;br /&gt;
}&lt;br /&gt;
if ($choiceid &amp;lt; 1) {&lt;br /&gt;
    echo(&amp;quot;invalid id&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
$colour=&amp;quot;249,128,18&amp;quot;; // Moodle orange, change as required.&lt;br /&gt;
&lt;br /&gt;
$ch = curl_init();&lt;br /&gt;
curl_setopt($ch, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function&amp;amp;wstoken=$token&amp;amp;choiceid=$choiceid&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result = json_decode(curl_exec($ch));&lt;br /&gt;
&lt;br /&gt;
$graph_title = &amp;quot;&amp;quot;;&lt;br /&gt;
$dropdown = &amp;quot;&amp;lt;select name=&#039;choiceid&#039; onchange=&#039;this.form.submit()&#039;&amp;gt;\n&amp;quot;;&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;option value=&#039;0&#039;&amp;gt;Select&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
foreach ($result2-&amp;gt;choices as $choice) {&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;lt;option value=&#039;{$choice-&amp;gt;id}&#039;&amp;quot;;&lt;br /&gt;
    if ($choice-&amp;gt;id == $choiceid) {&lt;br /&gt;
        $graph_title = $choice-&amp;gt;name;&lt;br /&gt;
        $dropdown .= &amp;quot; selected&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;gt;{$choice-&amp;gt;name}&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;/select&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// data for bar graph&lt;br /&gt;
$chart = new stdClass();&lt;br /&gt;
$data = array();&lt;br /&gt;
$labels = array();&lt;br /&gt;
foreach ($result-&amp;gt;options as $a) {&lt;br /&gt;
    $data[] = $a-&amp;gt;numberofuser;&lt;br /&gt;
    $labels[] = $a-&amp;gt;text.&amp;quot; (&amp;quot;.round($a-&amp;gt;percentageamount,1).&amp;quot;%)&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$chart-&amp;gt;labels = $labels;&lt;br /&gt;
$dataset = new stdClass();&lt;br /&gt;
$dataset-&amp;gt;data = $data;&lt;br /&gt;
$dataset-&amp;gt;fillColor = &amp;quot;rgba({$colour},0.5)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;strokeColor = &amp;quot;rgba({$colour},0.8)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightFill = &amp;quot;rgba({$colour},0.75)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightStroke = &amp;quot;rgba({$colour},1)&amp;quot;;&lt;br /&gt;
$chart-&amp;gt;datasets = array($dataset);&lt;br /&gt;
&lt;br /&gt;
curl_close($ch);&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;!doctype html&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
        &amp;lt;head&amp;gt;&lt;br /&gt;
                &amp;lt;meta http-equiv=&amp;quot;refresh&amp;quot; content=&amp;quot;5&amp;quot; &amp;gt;&lt;br /&gt;
                &amp;lt;title&amp;gt;Bar Chart&amp;lt;/title&amp;gt;&lt;br /&gt;
                &amp;lt;script src=&amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/head&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;&lt;br /&gt;
        &amp;lt;center&amp;gt;&lt;br /&gt;
        &amp;lt;h1&amp;gt;&amp;lt;?php echo($graph_title); ?&amp;gt;&amp;lt;/h1&amp;gt;&lt;br /&gt;
                &amp;lt;div id=&amp;quot;canvas-holder&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;canvas id=&amp;quot;chart-area&amp;quot; width=&amp;quot;900&amp;quot; height=&amp;quot;600&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
            &amp;lt;form&amp;gt;&amp;lt;?php echo($dropdown); ?&amp;gt;&amp;lt;noscript&amp;gt;&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit&amp;quot;&amp;gt;&amp;lt;/noscript&amp;gt;&amp;lt;/form&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;script&amp;gt;&lt;br /&gt;
            var pieData = &amp;lt;?php echo json_encode($chart); ?&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
                        window.onload = function(){&lt;br /&gt;
                                var ctx = document.getElementById(&#039;chart-area&#039;).getContext(&#039;2d&#039;);&lt;br /&gt;
                                window.myPie = new Chart(ctx).Bar(pieData, {animationSteps : 1, responsive: false});&lt;br /&gt;
                        };&lt;br /&gt;
		&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/center&amp;gt;&lt;br /&gt;
        &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122887</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122887"/>
		<updated>2016-04-08T17:02:00Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mobile}}&lt;br /&gt;
&lt;br /&gt;
=Moodle choice live results=&lt;br /&gt;
Many teachers and lecturers use clickers and student response systems to add a level of real-time interaction during a lecture or presentation. Moodle has a inbuilt poll activity called choice which can be set up to allow students select one of a number of options. With so many students having mobile devices, this facilitates the teacher to have the students take the choice activity either using the mobile web interface of Moodle, or using the Moodle Mobile App.&lt;br /&gt;
&lt;br /&gt;
This guide takes you through setting up a Moodle web service to view live choice results in a real time dynamic graph - so replacing the clicker requirement and using the students&#039; own mobile devices instead. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|600px|thumb|center|Example of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
&lt;br /&gt;
#Configurations for your Moodle site&lt;br /&gt;
# A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
# A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Advanced features&#039;&#039; where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_ws.png|600px|thumb|center|Enabling web services]]&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols&#039;&#039; where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_protocols.png|600px|thumb|center|Enabling REST protocol]]&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile&#039;&#039; where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_mobile.png|600px|thumb|center|Enabling mobile access]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See [[Managing accounts]] for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define role&#039;&#039;s. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role1.png|600px|thumb|center|Add custom role]]&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role2.png|600px|thumb|center|Add capability]]&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See [[Creating custom roles]] for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&#039;&#039;&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_assign_user.png|600px|thumb|center|Assign role]]&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_ws.png|600px|thumb|center|Add web service]]&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_functions.png|600px|thumb|center|Add functions]]&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&#039;&#039;&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at &#039;&#039;Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&#039;&#039;&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_token.png|600px|thumb|center|Add token]]&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_code.png|600px|thumb|center|Code configuration]]&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sample Code==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$url=&amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot;;&lt;br /&gt;
$function=&amp;quot;mod_choice_get_choice_results&amp;quot;;&lt;br /&gt;
$function2=&amp;quot;mod_choice_get_choices_by_courses&amp;quot;;&lt;br /&gt;
$token=&amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Grabs choice details including title&lt;br /&gt;
$ch2 = curl_init();&lt;br /&gt;
curl_setopt($ch2, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function2&amp;amp;wstoken=$token&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result2 = json_decode(curl_exec($ch2));&lt;br /&gt;
&lt;br /&gt;
if (isset($_REQUEST[&#039;choiceid&#039;])) {&lt;br /&gt;
    $choiceid=intval($_REQUEST[&#039;choiceid&#039;]);&lt;br /&gt;
} else if (count($result2-&amp;gt;choices) &amp;gt; 0) { // accessible choices found&lt;br /&gt;
    $choiceid=intval($result2-&amp;gt;choices[0]-&amp;gt;id);&lt;br /&gt;
} else {&lt;br /&gt;
    $choiceid = 0; // default value&lt;br /&gt;
}&lt;br /&gt;
if ($choiceid &amp;lt; 1) {&lt;br /&gt;
    echo(&amp;quot;invalid id&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
$colour=&amp;quot;249,128,18&amp;quot;; // Moodle orange, change as required.&lt;br /&gt;
&lt;br /&gt;
$ch = curl_init();&lt;br /&gt;
curl_setopt($ch, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function&amp;amp;wstoken=$token&amp;amp;choiceid=$choiceid&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result = json_decode(curl_exec($ch));&lt;br /&gt;
&lt;br /&gt;
$graph_title = &amp;quot;&amp;quot;;&lt;br /&gt;
$dropdown = &amp;quot;&amp;lt;select name=&#039;choiceid&#039; onchange=&#039;this.form.submit()&#039;&amp;gt;\n&amp;quot;;&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;option value=&#039;0&#039;&amp;gt;Select&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
foreach ($result2-&amp;gt;choices as $choice) {&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;lt;option value=&#039;{$choice-&amp;gt;id}&#039;&amp;quot;;&lt;br /&gt;
    if ($choice-&amp;gt;id == $choiceid) {&lt;br /&gt;
        $graph_title = $choice-&amp;gt;name;&lt;br /&gt;
        $dropdown .= &amp;quot; selected&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;gt;{$choice-&amp;gt;name}&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;/select&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// data for bar graph&lt;br /&gt;
$chart = new stdClass();&lt;br /&gt;
$data = array();&lt;br /&gt;
$labels = array();&lt;br /&gt;
foreach ($result-&amp;gt;options as $a) {&lt;br /&gt;
    $data[] = $a-&amp;gt;numberofuser;&lt;br /&gt;
    $labels[] = $a-&amp;gt;text.&amp;quot; (&amp;quot;.round($a-&amp;gt;percentageamount,1).&amp;quot;%)&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$chart-&amp;gt;labels = $labels;&lt;br /&gt;
$dataset = new stdClass();&lt;br /&gt;
$dataset-&amp;gt;data = $data;&lt;br /&gt;
$dataset-&amp;gt;fillColor = &amp;quot;rgba({$colour},0.5)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;strokeColor = &amp;quot;rgba({$colour},0.8)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightFill = &amp;quot;rgba({$colour},0.75)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightStroke = &amp;quot;rgba({$colour},1)&amp;quot;;&lt;br /&gt;
$chart-&amp;gt;datasets = array($dataset);&lt;br /&gt;
&lt;br /&gt;
curl_close($ch);&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;!doctype html&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
        &amp;lt;head&amp;gt;&lt;br /&gt;
                &amp;lt;meta http-equiv=&amp;quot;refresh&amp;quot; content=&amp;quot;5&amp;quot; &amp;gt;&lt;br /&gt;
                &amp;lt;title&amp;gt;Bar Chart&amp;lt;/title&amp;gt;&lt;br /&gt;
                &amp;lt;script src=&amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/head&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;&lt;br /&gt;
        &amp;lt;center&amp;gt;&lt;br /&gt;
        &amp;lt;h1&amp;gt;&amp;lt;?php echo($graph_title); ?&amp;gt;&amp;lt;/h1&amp;gt;&lt;br /&gt;
                &amp;lt;div id=&amp;quot;canvas-holder&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;canvas id=&amp;quot;chart-area&amp;quot; width=&amp;quot;900&amp;quot; height=&amp;quot;600&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
            &amp;lt;form&amp;gt;&amp;lt;?php echo($dropdown); ?&amp;gt;&amp;lt;noscript&amp;gt;&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit&amp;quot;&amp;gt;&amp;lt;/noscript&amp;gt;&amp;lt;/form&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;script&amp;gt;&lt;br /&gt;
            var pieData = &amp;lt;?php echo json_encode($chart); ?&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
                        window.onload = function(){&lt;br /&gt;
                                var ctx = document.getElementById(&#039;chart-area&#039;).getContext(&#039;2d&#039;);&lt;br /&gt;
                                window.myPie = new Chart(ctx).Bar(pieData, {animationSteps : 1, responsive: false});&lt;br /&gt;
                        };&lt;br /&gt;
		&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/center&amp;gt;&lt;br /&gt;
        &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122884</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122884"/>
		<updated>2016-04-08T16:39:18Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mobile}}&lt;br /&gt;
&lt;br /&gt;
=Moodle choice live results=&lt;br /&gt;
Setting up a Moodle web service to view live choice results in real time!.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|600px|thumb|center|Example of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
1) Configurations for your Moodle site&lt;br /&gt;
2) A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
3) A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at Site administration -&amp;gt; Advanced features where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_ws.png|600px|thumb|center|Enabling web services]]&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_protocols.png|600px|thumb|center|Enabling REST protocol]]&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_mobile.png|600px|thumb|center|Enabling mobile access]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See https://docs.moodle.org/en/Managing_accounts for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define roles. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role1.png|600px|thumb|center|Add custom role]]&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role2.png|600px|thumb|center|Add capability]]&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See https://docs.moodle.org/en/Creating_custom_roles for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_assign_user.png|600px|thumb|center|Assign role]]&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_ws.png|600px|thumb|center|Add web service]]&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_functions.png|600px|thumb|center|Add functions]]&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_token.png|600px|thumb|center|Add token]]&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_code.png|600px|thumb|center|Code configuration]]&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sample Code==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$url=&amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot;;&lt;br /&gt;
$function=&amp;quot;mod_choice_get_choice_results&amp;quot;;&lt;br /&gt;
$function2=&amp;quot;mod_choice_get_choices_by_courses&amp;quot;;&lt;br /&gt;
$token=&amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Grabs choice details including title&lt;br /&gt;
$ch2 = curl_init();&lt;br /&gt;
curl_setopt($ch2, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function2&amp;amp;wstoken=$token&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result2 = json_decode(curl_exec($ch2));&lt;br /&gt;
&lt;br /&gt;
if (isset($_REQUEST[&#039;choiceid&#039;])) {&lt;br /&gt;
    $choiceid=intval($_REQUEST[&#039;choiceid&#039;]);&lt;br /&gt;
} else if (count($result2-&amp;gt;choices) &amp;gt; 0) { // accessible choices found&lt;br /&gt;
    $choiceid=intval($result2-&amp;gt;choices[0]-&amp;gt;id);&lt;br /&gt;
} else {&lt;br /&gt;
    $choiceid = 0; // default value&lt;br /&gt;
}&lt;br /&gt;
if ($choiceid &amp;lt; 1) {&lt;br /&gt;
    echo(&amp;quot;invalid id&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
$colour=&amp;quot;249,128,18&amp;quot;; // Moodle orange, change as required.&lt;br /&gt;
&lt;br /&gt;
$ch = curl_init();&lt;br /&gt;
curl_setopt($ch, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function&amp;amp;wstoken=$token&amp;amp;choiceid=$choiceid&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result = json_decode(curl_exec($ch));&lt;br /&gt;
&lt;br /&gt;
$graph_title = &amp;quot;&amp;quot;;&lt;br /&gt;
$dropdown = &amp;quot;&amp;lt;select name=&#039;choiceid&#039; onchange=&#039;this.form.submit()&#039;&amp;gt;\n&amp;quot;;&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;option value=&#039;0&#039;&amp;gt;Select&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
foreach ($result2-&amp;gt;choices as $choice) {&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;lt;option value=&#039;{$choice-&amp;gt;id}&#039;&amp;quot;;&lt;br /&gt;
    if ($choice-&amp;gt;id == $choiceid) {&lt;br /&gt;
        $graph_title = $choice-&amp;gt;name;&lt;br /&gt;
        $dropdown .= &amp;quot; selected&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;gt;{$choice-&amp;gt;name}&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;/select&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// data for bar graph&lt;br /&gt;
$chart = new stdClass();&lt;br /&gt;
$data = array();&lt;br /&gt;
$labels = array();&lt;br /&gt;
foreach ($result-&amp;gt;options as $a) {&lt;br /&gt;
    $data[] = $a-&amp;gt;numberofuser;&lt;br /&gt;
    $labels[] = $a-&amp;gt;text.&amp;quot; (&amp;quot;.round($a-&amp;gt;percentageamount,1).&amp;quot;%)&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$chart-&amp;gt;labels = $labels;&lt;br /&gt;
$dataset = new stdClass();&lt;br /&gt;
$dataset-&amp;gt;data = $data;&lt;br /&gt;
$dataset-&amp;gt;fillColor = &amp;quot;rgba({$colour},0.5)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;strokeColor = &amp;quot;rgba({$colour},0.8)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightFill = &amp;quot;rgba({$colour},0.75)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightStroke = &amp;quot;rgba({$colour},1)&amp;quot;;&lt;br /&gt;
$chart-&amp;gt;datasets = array($dataset);&lt;br /&gt;
&lt;br /&gt;
curl_close($ch);&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;!doctype html&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
        &amp;lt;head&amp;gt;&lt;br /&gt;
                &amp;lt;meta http-equiv=&amp;quot;refresh&amp;quot; content=&amp;quot;5&amp;quot; &amp;gt;&lt;br /&gt;
                &amp;lt;title&amp;gt;Bar Chart&amp;lt;/title&amp;gt;&lt;br /&gt;
                &amp;lt;script src=&amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/head&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;&lt;br /&gt;
        &amp;lt;center&amp;gt;&lt;br /&gt;
        &amp;lt;h1&amp;gt;&amp;lt;?php echo($graph_title); ?&amp;gt;&amp;lt;/h1&amp;gt;&lt;br /&gt;
                &amp;lt;div id=&amp;quot;canvas-holder&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;canvas id=&amp;quot;chart-area&amp;quot; width=&amp;quot;900&amp;quot; height=&amp;quot;600&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
            &amp;lt;form&amp;gt;&amp;lt;?php echo($dropdown); ?&amp;gt;&amp;lt;noscript&amp;gt;&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit&amp;quot;&amp;gt;&amp;lt;/noscript&amp;gt;&amp;lt;/form&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;script&amp;gt;&lt;br /&gt;
            var pieData = &amp;lt;?php echo json_encode($chart); ?&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
                        window.onload = function(){&lt;br /&gt;
                                var ctx = document.getElementById(&#039;chart-area&#039;).getContext(&#039;2d&#039;);&lt;br /&gt;
                                window.myPie = new Chart(ctx).Bar(pieData, {animationSteps : 1, responsive: false});&lt;br /&gt;
                        };&lt;br /&gt;
		&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/center&amp;gt;&lt;br /&gt;
        &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122883</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122883"/>
		<updated>2016-04-08T16:39:02Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Mobile}}&lt;br /&gt;
&lt;br /&gt;
=Moodle choice live results=&lt;br /&gt;
Setting up a Moodle web service to view live choice results in real time!.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|600px|thumb|center|Example of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
1) Configurations for your Moodle site&lt;br /&gt;
2) A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
3) A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at Site administration -&amp;gt; Advanced features where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_ws.png|600px|thumb|center|Enabling web services]]&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_protocols.png|600px|thumb|center|Enabling REST protocol]]&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_mobile.png|600px|thumb|center|Enabling mobile access]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See https://docs.moodle.org/en/Managing_accounts for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define roles. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role1.png|600px|thumb|center|Add custom role]]&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role2.png|600px|thumb|center|Add capability]]&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See https://docs.moodle.org/en/Creating_custom_roles for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_assign_user.png|600px|thumb|center|Assign role]]&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_ws.png|600px|thumb|center|Add web service]]&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_functions.png|600px|thumb|center|Add functions]]&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_token.png|600px|thumb|center|Add token]]&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_code.png|600px|thumb|center|Code configuration]]&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sample Code==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$url=&amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot;;&lt;br /&gt;
$function=&amp;quot;mod_choice_get_choice_results&amp;quot;;&lt;br /&gt;
$function2=&amp;quot;mod_choice_get_choices_by_courses&amp;quot;;&lt;br /&gt;
$token=&amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Grabs choice details including title&lt;br /&gt;
$ch2 = curl_init();&lt;br /&gt;
curl_setopt($ch2, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function2&amp;amp;wstoken=$token&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result2 = json_decode(curl_exec($ch2));&lt;br /&gt;
&lt;br /&gt;
if (isset($_REQUEST[&#039;choiceid&#039;])) {&lt;br /&gt;
    $choiceid=intval($_REQUEST[&#039;choiceid&#039;]);&lt;br /&gt;
} else if (count($result2-&amp;gt;choices) &amp;gt; 0) { // accessible choices found&lt;br /&gt;
    $choiceid=intval($result2-&amp;gt;choices[0]-&amp;gt;id);&lt;br /&gt;
} else {&lt;br /&gt;
    $choiceid = 0; // default value&lt;br /&gt;
}&lt;br /&gt;
if ($choiceid &amp;lt; 1) {&lt;br /&gt;
    echo(&amp;quot;invalid id&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
$colour=&amp;quot;249,128,18&amp;quot;; // Moodle orange, change as required.&lt;br /&gt;
&lt;br /&gt;
$ch = curl_init();&lt;br /&gt;
curl_setopt($ch, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function&amp;amp;wstoken=$token&amp;amp;choiceid=$choiceid&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result = json_decode(curl_exec($ch));&lt;br /&gt;
&lt;br /&gt;
$graph_title = &amp;quot;&amp;quot;;&lt;br /&gt;
$dropdown = &amp;quot;&amp;lt;select name=&#039;choiceid&#039; onchange=&#039;this.form.submit()&#039;&amp;gt;\n&amp;quot;;&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;option value=&#039;0&#039;&amp;gt;Select&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
foreach ($result2-&amp;gt;choices as $choice) {&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;lt;option value=&#039;{$choice-&amp;gt;id}&#039;&amp;quot;;&lt;br /&gt;
    if ($choice-&amp;gt;id == $choiceid) {&lt;br /&gt;
        $graph_title = $choice-&amp;gt;name;&lt;br /&gt;
        $dropdown .= &amp;quot; selected&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;gt;{$choice-&amp;gt;name}&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;/select&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// data for bar graph&lt;br /&gt;
$chart = new stdClass();&lt;br /&gt;
$data = array();&lt;br /&gt;
$labels = array();&lt;br /&gt;
foreach ($result-&amp;gt;options as $a) {&lt;br /&gt;
    $data[] = $a-&amp;gt;numberofuser;&lt;br /&gt;
    $labels[] = $a-&amp;gt;text.&amp;quot; (&amp;quot;.round($a-&amp;gt;percentageamount,1).&amp;quot;%)&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$chart-&amp;gt;labels = $labels;&lt;br /&gt;
$dataset = new stdClass();&lt;br /&gt;
$dataset-&amp;gt;data = $data;&lt;br /&gt;
$dataset-&amp;gt;fillColor = &amp;quot;rgba({$colour},0.5)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;strokeColor = &amp;quot;rgba({$colour},0.8)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightFill = &amp;quot;rgba({$colour},0.75)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightStroke = &amp;quot;rgba({$colour},1)&amp;quot;;&lt;br /&gt;
$chart-&amp;gt;datasets = array($dataset);&lt;br /&gt;
&lt;br /&gt;
curl_close($ch);&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;!doctype html&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
        &amp;lt;head&amp;gt;&lt;br /&gt;
                &amp;lt;meta http-equiv=&amp;quot;refresh&amp;quot; content=&amp;quot;5&amp;quot; &amp;gt;&lt;br /&gt;
                &amp;lt;title&amp;gt;Bar Chart&amp;lt;/title&amp;gt;&lt;br /&gt;
                &amp;lt;script src=&amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/head&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;&lt;br /&gt;
        &amp;lt;center&amp;gt;&lt;br /&gt;
        &amp;lt;h1&amp;gt;&amp;lt;?php echo($graph_title); ?&amp;gt;&amp;lt;/h1&amp;gt;&lt;br /&gt;
                &amp;lt;div id=&amp;quot;canvas-holder&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;canvas id=&amp;quot;chart-area&amp;quot; width=&amp;quot;900&amp;quot; height=&amp;quot;600&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
            &amp;lt;form&amp;gt;&amp;lt;?php echo($dropdown); ?&amp;gt;&amp;lt;noscript&amp;gt;&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit&amp;quot;&amp;gt;&amp;lt;/noscript&amp;gt;&amp;lt;/form&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;script&amp;gt;&lt;br /&gt;
            var pieData = &amp;lt;?php echo json_encode($chart); ?&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
                        window.onload = function(){&lt;br /&gt;
                                var ctx = document.getElementById(&#039;chart-area&#039;).getContext(&#039;2d&#039;);&lt;br /&gt;
                                window.myPie = new Chart(ctx).Bar(pieData, {animationSteps : 1, responsive: false});&lt;br /&gt;
                        };&lt;br /&gt;
		&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/center&amp;gt;&lt;br /&gt;
        &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
[[Category:Quick guide]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122882</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122882"/>
		<updated>2016-04-08T16:36:10Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Choice}}&lt;br /&gt;
&lt;br /&gt;
=Moodle choice live results=&lt;br /&gt;
Setting up a Moodle web service to view live choice results in real time!.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|600px|thumb|center|Example of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
1) Configurations for your Moodle site&lt;br /&gt;
2) A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
3) A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at Site administration -&amp;gt; Advanced features where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_ws.png|600px|thumb|center|Enabling web services]]&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_protocols.png|600px|thumb|center|Enabling REST protocol]]&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_mobile.png|600px|thumb|center|Enabling mobile access]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See https://docs.moodle.org/en/Managing_accounts for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define roles. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role1.png|600px|thumb|center|Add custom role]]&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role2.png|600px|thumb|center|Add capability]]&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See https://docs.moodle.org/en/Creating_custom_roles for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_assign_user.png|600px|thumb|center|Assign role]]&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_ws.png|600px|thumb|center|Add web service]]&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_functions.png|600px|thumb|center|Add functions]]&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_token.png|600px|thumb|center|Add token]]&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_code.png|600px|thumb|center|Code configuration]]&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sample Code==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
&lt;br /&gt;
$url=&amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot;;&lt;br /&gt;
$function=&amp;quot;mod_choice_get_choice_results&amp;quot;;&lt;br /&gt;
$function2=&amp;quot;mod_choice_get_choices_by_courses&amp;quot;;&lt;br /&gt;
$token=&amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// Grabs choice details including title&lt;br /&gt;
$ch2 = curl_init();&lt;br /&gt;
curl_setopt($ch2, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function2&amp;amp;wstoken=$token&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result2 = json_decode(curl_exec($ch2));&lt;br /&gt;
&lt;br /&gt;
if (isset($_REQUEST[&#039;choiceid&#039;])) {&lt;br /&gt;
    $choiceid=intval($_REQUEST[&#039;choiceid&#039;]);&lt;br /&gt;
} else if (count($result2-&amp;gt;choices) &amp;gt; 0) { // accessible choices found&lt;br /&gt;
    $choiceid=intval($result2-&amp;gt;choices[0]-&amp;gt;id);&lt;br /&gt;
} else {&lt;br /&gt;
    $choiceid = 0; // default value&lt;br /&gt;
}&lt;br /&gt;
if ($choiceid &amp;lt; 1) {&lt;br /&gt;
    echo(&amp;quot;invalid id&amp;quot;);&lt;br /&gt;
}&lt;br /&gt;
$colour=&amp;quot;249,128,18&amp;quot;; // Moodle orange, change as required.&lt;br /&gt;
&lt;br /&gt;
$ch = curl_init();&lt;br /&gt;
curl_setopt($ch, CURLOPT_URL, &amp;quot;$url/webservice/rest/server.php?wsfunction=$function&amp;amp;wstoken=$token&amp;amp;choiceid=$choiceid&amp;amp;moodlewsrestformat=json&amp;quot;);&lt;br /&gt;
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);&lt;br /&gt;
$result = json_decode(curl_exec($ch));&lt;br /&gt;
&lt;br /&gt;
$graph_title = &amp;quot;&amp;quot;;&lt;br /&gt;
$dropdown = &amp;quot;&amp;lt;select name=&#039;choiceid&#039; onchange=&#039;this.form.submit()&#039;&amp;gt;\n&amp;quot;;&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;option value=&#039;0&#039;&amp;gt;Select&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
foreach ($result2-&amp;gt;choices as $choice) {&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;lt;option value=&#039;{$choice-&amp;gt;id}&#039;&amp;quot;;&lt;br /&gt;
    if ($choice-&amp;gt;id == $choiceid) {&lt;br /&gt;
        $graph_title = $choice-&amp;gt;name;&lt;br /&gt;
        $dropdown .= &amp;quot; selected&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    $dropdown .= &amp;quot;&amp;gt;{$choice-&amp;gt;name}&amp;lt;/option&amp;gt;\n&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$dropdown .= &amp;quot;&amp;lt;/select&amp;gt;\n&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
// data for bar graph&lt;br /&gt;
$chart = new stdClass();&lt;br /&gt;
$data = array();&lt;br /&gt;
$labels = array();&lt;br /&gt;
foreach ($result-&amp;gt;options as $a) {&lt;br /&gt;
    $data[] = $a-&amp;gt;numberofuser;&lt;br /&gt;
    $labels[] = $a-&amp;gt;text.&amp;quot; (&amp;quot;.round($a-&amp;gt;percentageamount,1).&amp;quot;%)&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
$chart-&amp;gt;labels = $labels;&lt;br /&gt;
$dataset = new stdClass();&lt;br /&gt;
$dataset-&amp;gt;data = $data;&lt;br /&gt;
$dataset-&amp;gt;fillColor = &amp;quot;rgba({$colour},0.5)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;strokeColor = &amp;quot;rgba({$colour},0.8)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightFill = &amp;quot;rgba({$colour},0.75)&amp;quot;;&lt;br /&gt;
$dataset-&amp;gt;highlightStroke = &amp;quot;rgba({$colour},1)&amp;quot;;&lt;br /&gt;
$chart-&amp;gt;datasets = array($dataset);&lt;br /&gt;
&lt;br /&gt;
curl_close($ch);&lt;br /&gt;
&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;!doctype html&amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
        &amp;lt;head&amp;gt;&lt;br /&gt;
                &amp;lt;meta http-equiv=&amp;quot;refresh&amp;quot; content=&amp;quot;5&amp;quot; &amp;gt;&lt;br /&gt;
                &amp;lt;title&amp;gt;Bar Chart&amp;lt;/title&amp;gt;&lt;br /&gt;
                &amp;lt;script src=&amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;&amp;gt;&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/head&amp;gt;&lt;br /&gt;
        &amp;lt;body&amp;gt;&lt;br /&gt;
        &amp;lt;center&amp;gt;&lt;br /&gt;
        &amp;lt;h1&amp;gt;&amp;lt;?php echo($graph_title); ?&amp;gt;&amp;lt;/h1&amp;gt;&lt;br /&gt;
                &amp;lt;div id=&amp;quot;canvas-holder&amp;quot;&amp;gt;&lt;br /&gt;
                        &amp;lt;canvas id=&amp;quot;chart-area&amp;quot; width=&amp;quot;900&amp;quot; height=&amp;quot;600&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
            &amp;lt;form&amp;gt;&amp;lt;?php echo($dropdown); ?&amp;gt;&amp;lt;noscript&amp;gt;&amp;lt;input type=&amp;quot;submit&amp;quot; value=&amp;quot;Submit&amp;quot;&amp;gt;&amp;lt;/noscript&amp;gt;&amp;lt;/form&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;script&amp;gt;&lt;br /&gt;
            var pieData = &amp;lt;?php echo json_encode($chart); ?&amp;gt;;&lt;br /&gt;
&lt;br /&gt;
                        window.onload = function(){&lt;br /&gt;
                                var ctx = document.getElementById(&#039;chart-area&#039;).getContext(&#039;2d&#039;);&lt;br /&gt;
                                window.myPie = new Chart(ctx).Bar(pieData, {animationSteps : 1, responsive: false});&lt;br /&gt;
                        };&lt;br /&gt;
		&amp;lt;/script&amp;gt;&lt;br /&gt;
        &amp;lt;/center&amp;gt;&lt;br /&gt;
        &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
[[Category:Quick guide]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122881</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122881"/>
		<updated>2016-04-08T16:33:35Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Choice}}&lt;br /&gt;
&lt;br /&gt;
=Moodle choice live results=&lt;br /&gt;
Setting up a Moodle web service to view live choice results in real time!.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|600px|thumb|center|Example of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
1) Configurations for your Moodle site&lt;br /&gt;
2) A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
3) A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at Site administration -&amp;gt; Advanced features where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_ws.png|600px|thumb|center|Enabling web services]]&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_protocols.png|600px|thumb|center|Enabling REST protocol]]&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_mobile.png|600px|thumb|center|Enabling mobile access]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See https://docs.moodle.org/en/Managing_accounts for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define roles. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role1.png|600px|thumb|center|Add custom role]]&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role2.png|600px|thumb|center|Add capability]]&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See https://docs.moodle.org/en/Creating_custom_roles for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_assign_user.png|600px|thumb|center|Assign role]]&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_ws.png|600px|thumb|center|Add web service]]&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_functions.png|600px|thumb|center|Add functions]]&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_token.png|600px|thumb|center|Add token]]&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_code.png|600px|thumb|center|Code configuration]]&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Sample Code==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Quick guide]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_code.png&amp;diff=122880</id>
		<title>File:choice res code.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_code.png&amp;diff=122880"/>
		<updated>2016-04-08T16:32:58Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122879</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122879"/>
		<updated>2016-04-08T16:31:37Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* Moodle site configurations */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Choice}}&lt;br /&gt;
&lt;br /&gt;
=Moodle choice live results=&lt;br /&gt;
Setting up a Moodle web service to view live choice results in real time!.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|600px|thumb|center|Exmaple of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
1) Configurations for your Moodle site&lt;br /&gt;
2) A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
3) A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at Site administration -&amp;gt; Advanced features where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_ws.png|600px|thumb|center|Enabling web services]]&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_protocols.png|600px|thumb|center|Enabling REST protocol]]&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_enable_mobile.png|600px|thumb|center|Enabling mobile access]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See https://docs.moodle.org/en/Managing_accounts for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define roles. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role1.png|600px|thumb|center|Add custom role]]&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_role2.png|600px|thumb|center|Add capability]]&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See https://docs.moodle.org/en/Creating_custom_roles for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_assign_user.png|600px|thumb|center|Assign role]]&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_ws.png|600px|thumb|center|Add web service]]&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_functions.png|600px|thumb|center|Add functions]]&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_add_token.png|600px|thumb|center|Add token]]&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==Sample code file==&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*ADD SAMPLE CODE FILE* todo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Quick guide]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_token.png&amp;diff=122878</id>
		<title>File:choice res add token.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_token.png&amp;diff=122878"/>
		<updated>2016-04-08T16:30:23Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_functions.png&amp;diff=122877</id>
		<title>File:choice res add functions.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_functions.png&amp;diff=122877"/>
		<updated>2016-04-08T16:29:23Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_ws.png&amp;diff=122876</id>
		<title>File:choice res add ws.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_ws.png&amp;diff=122876"/>
		<updated>2016-04-08T16:28:54Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_assign_user.png&amp;diff=122875</id>
		<title>File:choice res assign user.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_assign_user.png&amp;diff=122875"/>
		<updated>2016-04-08T16:27:52Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_role2.png&amp;diff=122874</id>
		<title>File:choice res add role2.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_role2.png&amp;diff=122874"/>
		<updated>2016-04-08T16:27:10Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_role1.png&amp;diff=122873</id>
		<title>File:choice res add role1.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_add_role1.png&amp;diff=122873"/>
		<updated>2016-04-08T16:26:34Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_enable_mobile.png&amp;diff=122872</id>
		<title>File:choice res enable mobile.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_enable_mobile.png&amp;diff=122872"/>
		<updated>2016-04-08T16:25:12Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_enable_protocols.png&amp;diff=122871</id>
		<title>File:choice res enable protocols.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_enable_protocols.png&amp;diff=122871"/>
		<updated>2016-04-08T16:24:24Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_enable_ws.png&amp;diff=122870</id>
		<title>File:choice res enable ws.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_enable_ws.png&amp;diff=122870"/>
		<updated>2016-04-08T16:23:20Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122869</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122869"/>
		<updated>2016-04-08T16:22:26Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Choice}}&lt;br /&gt;
&lt;br /&gt;
=Moodle choice live results=&lt;br /&gt;
Setting up a Moodle web service to view live choice results in real time!.&lt;br /&gt;
&lt;br /&gt;
[[File:choice_res_choice_results.png|600px|thumb|center|Exmaple of choice results view]]&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
1) Configurations for your Moodle site&lt;br /&gt;
2) A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
3) A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at Site administration -&amp;gt; Advanced features where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See https://docs.moodle.org/en/Managing_accounts for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define roles. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See https://docs.moodle.org/en/Creating_custom_roles for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*ADD SAMPLE CODE FILE* todo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Quick guide]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=File:choice_res_choice_results.png&amp;diff=122868</id>
		<title>File:choice res choice results.png</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=File:choice_res_choice_results.png&amp;diff=122868"/>
		<updated>2016-04-08T16:21:53Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122867</id>
		<title>Viewing live choice results</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Viewing_live_choice_results&amp;diff=122867"/>
		<updated>2016-04-08T16:17:12Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: How to set up a Moodle web service to view live choice results in real time.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Choice}}&lt;br /&gt;
&lt;br /&gt;
=Moodle choice live results=&lt;br /&gt;
Setting up a Moodle web service to view live choice results in real time!.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Initial set up==&lt;br /&gt;
You will need to configure the following components for this, as follows:&lt;br /&gt;
1) Configurations for your Moodle site&lt;br /&gt;
2) A separate PHP script page which calls your Moodle site via Moodle web services&lt;br /&gt;
3) A chartjs (or similar online graphing application) installation for displaying the choice results in visual graphs online&lt;br /&gt;
&lt;br /&gt;
==Moodle site configurations==&lt;br /&gt;
&lt;br /&gt;
1) Ensure your site is ready for web services:&lt;br /&gt;
This is at Site administration -&amp;gt; Advanced features where you need to enable and save the &amp;quot;Enable web services&amp;quot; setting&lt;br /&gt;
&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
2) Ensure your site is ready for web services protocols&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage protocols where you need to enable and save either of the protocols you wish to use (for this guide, we will be using the REST protocol)&lt;br /&gt;
&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
3) Ensure your site settings are ready for mobile access, thus allowing choice submissions from users via mobile devices&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Mobile where you need to enable and save &amp;quot;Enable web services for mobile devices&amp;quot;&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
4) Add a new user - call them &amp;quot;Choice View User&amp;quot; or something similar. &lt;br /&gt;
See https://docs.moodle.org/en/Managing_accounts for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
5) Add a new role - call it &amp;quot;Choice WS Role&amp;quot; or something similar. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Define roles. &lt;br /&gt;
On the first Adding a new role page, leave &amp;quot;Use role or archetype&amp;quot; set at &amp;quot;No role&amp;quot; and click on Continue&lt;br /&gt;
For Context types where this role may be assigned - assign to System&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
In capabilities - filter for the word service - click on Allow for Web service: REST protocol, or whichever protocol you&#039;re using&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
Finally click on &amp;quot;Create this role&amp;quot;&lt;br /&gt;
See https://docs.moodle.org/en/Creating_custom_roles for further details on this operation.&lt;br /&gt;
&lt;br /&gt;
6) Assign your new user to the new role. &lt;br /&gt;
This is at Site administration -&amp;gt; Users -&amp;gt; Permissions -&amp;gt; Assign system roles.&lt;br /&gt;
Click on your new role&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the role&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
When you reload the Assign system roles page, your new user should be listed in the Users with role column for the role.&lt;br /&gt;
&lt;br /&gt;
7) Create the web service to be called for the choice results&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
Add the web service, call it Choice View or something similar, click on Enabled, click on Authorised users only and finally click on Add Service.&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
Next, add two functions to the web service, by searching for the Choice functions (you may need to filter by the word choice):&lt;br /&gt;
- mod_choice_get_choice_results&lt;br /&gt;
- mod_choice_get_choices_by_courses&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
8) Add your new user to the web service Authorised users list&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; External services&lt;br /&gt;
To add authorised users, click on the Authorised users link for your Choice View web service, this is similar to the interface where you assigned your user to the Choice View role.&lt;br /&gt;
Search for your new user (you may need to filter by the user name)&lt;br /&gt;
Select your user in the list and click on Add to assign the user to the Authorised users list&lt;br /&gt;
&lt;br /&gt;
9) Create a web service token to authenticate the expected HTTP(S) requests&lt;br /&gt;
This is at Site administration -&amp;gt; Plugins -&amp;gt; Web services -&amp;gt; Manage tokens&lt;br /&gt;
Click on Add&lt;br /&gt;
Search for the user you created for the Choice View&lt;br /&gt;
In the Service dropdown, select the Choice View service you also just created&lt;br /&gt;
Add an IP restriction if needed&lt;br /&gt;
Add a time restriction if needed&lt;br /&gt;
Click on Save changes and copy the resulting token&lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
10) Enrol your new user, &amp;quot;Choice View User&amp;quot;, as a teacher in all courses from where you want to access the choice activities. This is needed so that the web service will be able to access the choice activity details using your user&#039;s token.&lt;br /&gt;
&lt;br /&gt;
==PHP script page for displaying results==&lt;br /&gt;
This page will access your Moodle site choice activities and display their results with visual graphs.&lt;br /&gt;
Copy our sample PHP script code to wherever you want it hosted and called from.&lt;br /&gt;
It will need http or https access to your Moodle site where the choice activities are hosted.&lt;br /&gt;
It will also need to have some level of security if it’s going to be a publicly accessible URL as the PHP script itself contains details of a REST web service login with access to your Moodle site. We would suggest a htaccess login or similar. &lt;br /&gt;
Edit and save the sample PHP script code to add your Moodle site URL and Choice View token values to where the code states &amp;quot;&amp;lt;yourURL&amp;gt;&amp;quot; and &amp;quot;&amp;lt;yourtoken&amp;gt;&amp;quot; respectively. &lt;br /&gt;
Add image&lt;br /&gt;
&lt;br /&gt;
The script code will also need access to an installation of chartjs, or other graphing application, in order to display the graphs, please see http://www.chartjs.org/ for more details. You will then also need to edit the script code to add the server directory location of your chartjs installation to where the code states &amp;quot;&amp;lt;yourchartjslocation&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
To reveal the results, just type in the URL of your PHP script code into your browser.&lt;br /&gt;
&lt;br /&gt;
The web service will now display all course accessible choice activities in the page dropdown, displaying the one which was first created initially. If you know the choice id from the database already, you can instead add the parameter to the URL as follows: &amp;quot;?choiceid=X&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
One final point, the sample PHP script code is set with a simple reload of the page every 5 seconds so that the displayed graph updates with the latest results regularly. This reload could be more elegantly processed if needed, using AJAX for instance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*ADD SAMPLE CODE FILE* todo&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Quick guide]]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=Plugin_Review_Criteria&amp;diff=105365</id>
		<title>Plugin Review Criteria</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=Plugin_Review_Criteria&amp;diff=105365"/>
		<updated>2013-05-27T06:35:57Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: Some criteria to consider when looking at a 3rd party Add-ons&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Help}}&lt;br /&gt;
== Some Criteria to consider when looking at 3rd party Add-ons==&lt;br /&gt;
There are many great 3rd party plugins available for Moodle. However, it is important to assess the suitability and reliability of the plugin before adopting it.&lt;br /&gt;
&lt;br /&gt;
This list is not exhaustive as there may be more or less questions depending on the individual installation and organisation.&lt;br /&gt;
&lt;br /&gt;
This list was published originally by Gavin Henrick ([http://www.lts.ie/ Learning Technology Services]), see [http://www.somerandomthoughts.com/blog/2012/05/14/some-criteria-to-review-when-considering-a-plugin/ Some criteria to review when considering a plugin] &lt;br /&gt;
&lt;br /&gt;
== Some initial questions==&lt;br /&gt;
*What is the purpose of the plugin? &lt;br /&gt;
*Is there nothing in the installation which can deliver this feature already?&lt;br /&gt;
*Is this the best solution for this requirement?&lt;br /&gt;
== Is it easy to install?==&lt;br /&gt;
*Is the source managed on svn/github&lt;br /&gt;
*Is it available in the Moodle.org plugins database&lt;br /&gt;
*Is the zip available to download into the correct folder name or does it need exploring to change&lt;br /&gt;
*Is it just a drop in and use notifications or is it more complex / require patches manual intervention&lt;br /&gt;
== Is the documentation good?==&lt;br /&gt;
*Has it got a Moodle Docs page&lt;br /&gt;
*Has it got good readme.txt&lt;br /&gt;
*Has it got good help files &amp;amp; instructions&lt;br /&gt;
== Is it easy for teacher to use?==&lt;br /&gt;
*For the most common use case is it logical in usage?&lt;br /&gt;
*Are the instructions for use correct and usable?&lt;br /&gt;
== Is it easy for student to use?==&lt;br /&gt;
*For the most common use case is it logical in usage?&lt;br /&gt;
*Are the instructions for use correct and usable?&lt;br /&gt;
== Does it do what it says?==&lt;br /&gt;
*Are the instructions for use correct and usable?&lt;br /&gt;
*Does it provide the functionality as described in a good sensible way, is it a &amp;quot;full feature&amp;quot; or an interim solution.&lt;br /&gt;
== Features==&lt;br /&gt;
*Does it have a roadmap of potential improvements /changes?&lt;br /&gt;
*Will it work on Mobile theme and on Web?&lt;br /&gt;
== Feedback==&lt;br /&gt;
*Are there any comments from users on the plugin site?&lt;br /&gt;
*Are there any reviews of the module?&lt;br /&gt;
*Are there any discussions on it in the forums?&lt;br /&gt;
== Author Background (experience/reliability check)==&lt;br /&gt;
*Are they active in Moodle community for a good period of time?&lt;br /&gt;
*Do they respond well to queries on bugs etc.?&lt;br /&gt;
*Do they work for an established Moodle development team (Moodle partner, the OU, or HQ for example)?&lt;br /&gt;
&lt;br /&gt;
== Technical==&lt;br /&gt;
*Does it work properly with the different database types?&lt;br /&gt;
*Is the mod being updated regularly with new Moodle versions?&lt;br /&gt;
*Does the module follow good Moodle coding standards?&lt;br /&gt;
*Does it properly use language files or has it got hardcoded text?&lt;br /&gt;
*Does it properly follow accessibility guidelines?&lt;br /&gt;
*Does it properly follow css and theming approaches?&lt;br /&gt;
*Does it conflict with anything else naming wise?&lt;br /&gt;
*Does author regularly bug fix?&lt;br /&gt;
*Does it impact performance of Moodle in normal or high traffic usage?&lt;br /&gt;
*What resources will it require to be used?&lt;br /&gt;
*Does backup/restore work?&lt;br /&gt;
*Has it got unit tests?&lt;br /&gt;
&lt;br /&gt;
== See Also==&lt;br /&gt;
*[http://www.somerandomthoughts.com/blog/2012/05/14/some-criteria-to-review-when-considering-a-plugin/ Some criteria to review when considering a plugin] Gavin Henrick - May 2012&lt;br /&gt;
*[http://www.moodleaddons.com/book/ Moodle Addons Book] Gavin Henrick, Michael de Raadt - May 2013&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/402/en/index.php?title=question/type/ddmarker&amp;diff=96013</id>
		<title>question/type/ddmarker</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/402/en/index.php?title=question/type/ddmarker&amp;diff=96013"/>
		<updated>2012-02-20T10:21:15Z</updated>

		<summary type="html">&lt;p&gt;Ghenrick: /* How To Documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Description ==&lt;br /&gt;
&lt;br /&gt;
=== About Drag and Drop Marker ===&lt;br /&gt;
&lt;br /&gt;
Drag and drop marker questions allow for multiple markers to be placed onto an image and the positioning of each marker to be assessed.&lt;br /&gt;
&lt;br /&gt;
Drag and drop marker questions differ from Drag and drop onto image questions in that there are no predefined areas on the underlying image that are visible to the student. &lt;br /&gt;
&lt;br /&gt;
This is a question type created and maintained by the Open University.&lt;br /&gt;
&lt;br /&gt;
=== How To Documentation ===&lt;br /&gt;
&lt;br /&gt;
The Open University maintain a set of documentation for the plugin here -&amp;gt; [http://labspace.open.ac.uk/mod/oucontent/view.php?id=470268&amp;amp;section=5.5.1 http://labspace.open.ac.uk/mod/oucontent/view.php?id=470268&amp;amp;section=5.5.1]&lt;/div&gt;</summary>
		<author><name>Ghenrick</name></author>
	</entry>
</feed>