<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.moodle.org/21/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Moodlebot</id>
	<title>MoodleDocs - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.moodle.org/21/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Moodlebot"/>
	<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/Special:Contributions/Moodlebot"/>
	<updated>2026-04-13T22:52:10Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=admin/setting/blocksettingmoodletxt&amp;diff=96350</id>
		<title>admin/setting/blocksettingmoodletxt</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=admin/setting/blocksettingmoodletxt&amp;diff=96350"/>
		<updated>2021-08-10T15:21:14Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== MoodleTxt Settings ==&lt;br /&gt;
&lt;br /&gt;
This page contains all the common configuration options for MoodleTxt. At the top of the page you will see two links:&lt;br /&gt;
&lt;br /&gt;
; ConnectTxt Accounts : This link will take you to the ConnectTxt account admin pages, which will allow you to add, update and restrict these accounts. If you have just installed MoodleTxt, this should be your first stop.&lt;br /&gt;
; Inbound Message Filters : This link will take you to the inbound filter management page, which will allow you to create filters for inbound SMS messages, routing them to particular Moodle users.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Send/Receive Settings ===&lt;br /&gt;
&lt;br /&gt;
The first 4 settings in this section relate to how MoodleTxt gets both message status updates and new inbound messages from the ConnectTxt system. By default, MoodleTxt pulls these updates on a per-request basis, whenever users visit certain pages. However, it can be configured to get these updates automatically, which improves the performance of the block and results in far fewer outbound connections. The available automatic update methods are [[Moodletxt_cron | cron]] and [[Moodletxt_push | push]]. We &#039;&#039;&#039;highly&#039;&#039;&#039; recommend taking the time to set up push functionality, as it is the fastest and most efficient method of obtaining updates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field Name&lt;br /&gt;
! Field Label&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| Get_Status_On_View&lt;br /&gt;
| Automatically get status updates on &amp;quot;View Message&amp;quot; page&lt;br /&gt;
| If this box is checked, then whenever a user views the current status of a sent message, the block will first connect to the ConnectTxt system in order to fetch updates. You should uncheck this if you have configured an automatic update option as mentioned above.&lt;br /&gt;
|-&lt;br /&gt;
| Get_Inbound_On_View&lt;br /&gt;
| Automatically get inbound messages on Inbox page&lt;br /&gt;
| If this box is checked, then whenever a user views their inbox, the block will first connect to the ConnectTxt system in order to fetch new messages. You should uncheck this if you have configured an automatic update option as mentioned above.&lt;br /&gt;
|-&lt;br /&gt;
| Push_Username&lt;br /&gt;
| XML Push Username&lt;br /&gt;
| If you have set up XML push updates (highly recommended) then this is the username you provided to ConnectTxt as part of that setup. ConnectTxt uses this username to authenticate itself with your MoodleTxt installation when connecting to it.&lt;br /&gt;
|-&lt;br /&gt;
| Push_Password&lt;br /&gt;
| XML Push Password&lt;br /&gt;
| If you have set up XML push updates (highly recommended) then this is the password you provided to ConnectTxt as part of that setup. ConnectTxt uses this password to authenticate itself with your MoodleTxt installation when connecting to it.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The last two settings in this category control other parameters related to message sending via ConnectTxt.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field Name&lt;br /&gt;
! Field Label&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| Protocol_Warnings_On&lt;br /&gt;
| Display SSL security warnings&lt;br /&gt;
| If you do not have SSL connections to the ConnectTxt server enabled, MoodleTxt will generally display warnings that your data is being transmitted in an unsecure manner. To disable these warnings, uncheck this box.&lt;br /&gt;
|-&lt;br /&gt;
| Event_Messaging_Account&lt;br /&gt;
| Event Messaging Account&lt;br /&gt;
| This is the ConnectTxt account that MoodleTxt will use when it is asked to send automatic messages out in response to system events. By extension, this is the ConnectTxt account that will be used to send any messages originating via the MoodleTxt Plus message processor plugin. If no account is selected, then MoodleTxt will be unable to send event-generated messages.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Recipient Settings ===&lt;br /&gt;
&lt;br /&gt;
The settings in this section relate to how MoodleTxt captures user phone/name information from the Moodle system, and how it processes that information in order to send SMS messages out. (Future versions of the block will feature improvements in international phone number handling.)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field Name&lt;br /&gt;
! Field Label&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| National_Prefix&lt;br /&gt;
| National Prefix&lt;br /&gt;
| This is the default dialling prefix for phone numbers within your country. It is the digit or set of digits that all phone numbers begin with when being dialled within the country. This defaults to 0, the UK domestic dialling prefix. (&#039;&#039;&#039;Note:&#039;&#039;&#039; If the phone numbers you enter into MoodleTxt are already formatted internationally, e.g. +441234567890, then this setting is ignored.)&lt;br /&gt;
|-&lt;br /&gt;
| Default_International_Prefix&lt;br /&gt;
| Default International Prefix&lt;br /&gt;
| This is the international dialling prefix for phone numbers within your country. This usually consists of a plus &#039;+&#039; sign, along with two or three digits, and is used when dialling into your country from another location. This defaults to +44, the UK international dialling prefix. (&#039;&#039;&#039;Note:&#039;&#039;&#039; If the phone numbers you enter into MoodleTxt are already formatted internationally, e.g. +441234567890, then this setting is ignored.)&lt;br /&gt;
|-&lt;br /&gt;
| Phone_Number_Source&lt;br /&gt;
| Take phone numbers from&lt;br /&gt;
| This option allows you to choose the field in your user database table that MoodleTxt will search for mobile phone numbers (phone1 or phone2). This is largely redundant in modern Moodle setups, where phone2 has been standardised as the mobile phone field, and exists for long-running installations where things may be different. If mobile phone numbers are populated to the phone1 field in your system, then select it from this drop-down.&lt;br /&gt;
|-&lt;br /&gt;
| Default_Recipient_Name&lt;br /&gt;
| Default Recipient Name&lt;br /&gt;
| When Moodle cannot find a recipient&#039;s name in the database, or cannot match an incoming phone number to any known contact, this is the name/identifier it will record against that message.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Proxy Settings ===&lt;br /&gt;
&lt;br /&gt;
If connections between your MoodleTxt installation and ConnectTxt need to be routed via a proxy server, then you can enter the details of that proxy server in this section. &#039;&#039;&#039;Please note:&#039;&#039;&#039; MoodleTxt currently only supports proxy servers that use either BASIC authentication, or no authentication at all. Newer versions of Moodle have their own proxy settings within the system, and future versions of the block will migrate to use those settings for proxy support.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field Name&lt;br /&gt;
! Field Label&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| Proxy_Host&lt;br /&gt;
| Proxy Address&lt;br /&gt;
| The host/IP address of your proxy server.&lt;br /&gt;
|-&lt;br /&gt;
| Proxy_Port&lt;br /&gt;
| Proxy Port&lt;br /&gt;
| The TCP/IP port your proxy server listens on for connections.&lt;br /&gt;
|-&lt;br /&gt;
| Proxy_Username&lt;br /&gt;
| Proxy Username&lt;br /&gt;
| If your proxy server requires a username for authentication, then enter it here (BASIC authentication only).&lt;br /&gt;
|-&lt;br /&gt;
| Proxy_Password&lt;br /&gt;
| Proxy Password&lt;br /&gt;
| If your proxy server requires a password for authentication, then enter it here (BASIC authentication only).&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Miscellaneous Settings ===&lt;br /&gt;
&lt;br /&gt;
This section contains any other global settings for MoodleTxt that do not fall into one of the earlier categories.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field Name&lt;br /&gt;
! Field Label&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| jQuery_Include_Enabled&lt;br /&gt;
| Include main jQuery package&lt;br /&gt;
| MoodleTxt uses the popular jQuery library within its user interface. Some Moodle installations already include this library within their active themes. If this is the case, then attempting to load both libraries can cause problems with the system. To turn off MoodleTxt&#039;s jQuery installation and have it use the one provided with your theme, uncheck this box. (&#039;&#039;&#039;Note:&#039;&#039;&#039; You will require at least jQuery 1.6 for this to work.)&lt;br /&gt;
|-&lt;br /&gt;
| jQuery_UI_Include_Enabled&lt;br /&gt;
| Include jQuery UI Library&lt;br /&gt;
| MoodleTxt uses the jQuery User Interface library for many common widgets/user interface components. Some Moodle installations already include this library within their active themes. If this is the case, then attempting to load both libraries can cause problems with the system. To turn off MoodleTxt&#039;s jQuery UI installation and have it use the one provided with your theme, uncheck this box. (&#039;&#039;&#039;Note:&#039;&#039;&#039; You will require at least jQuery UI 1.7 for this to work.)&lt;br /&gt;
|-&lt;br /&gt;
| Show_Inbound_Numbers&lt;br /&gt;
| Show source names/numbers in inbox (Default)&lt;br /&gt;
| In a classroom situation, such as a survey, where many people can see the messages that are coming into the system, you may wish to anonymise them by hiding the source of the messages. In current versions of MoodleTxt, inbound messages are anonymised by default. To show those message sources on inbox pages by default, then check this box. Since MoodleTxt 3.0, users can override these settings for their own inboxes, so this setting is now a default.&lt;br /&gt;
|-&lt;br /&gt;
| RSS_Update_Interval&lt;br /&gt;
| RSS Update Interval&lt;br /&gt;
| This setting controls how often MoodleTxt should check with the RSS feed on the ConnectTxt servers for new updates. (This is being retired, as Moodle 2.3 and up can find updates automatically.)&lt;br /&gt;
|-&lt;br /&gt;
| RSS_Expiry_Length&lt;br /&gt;
| RSS items expire after&lt;br /&gt;
| This setting controls how long an update notification from ConnectTxt should be displayed on the MoodleTxt admin panel. (This is being retired, as Moodle 2.3 and up can find updates automatically.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:MoodleTxt|Settings]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=admin/repository/nanogong&amp;diff=96349</id>
		<title>admin/repository/nanogong</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=admin/repository/nanogong&amp;diff=96349"/>
		<updated>2021-08-10T15:21:14Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Nanogong plugin=&lt;br /&gt;
&lt;br /&gt;
The Nanogong plugin allows audio-only recording inside the Moodle repositories. The wav files are stored into Moodle using the File API. The sound files can be recorded using the ImaACPCM or Speex codecs. The recorded files and the recording applet are available in all places where the repository is used to select files.&lt;br /&gt;
&lt;br /&gt;
After installing the plugin, you can select the codec used and the quality of the sound for the site-wide recording instance. This instance will be shared by all users of your site (because it only handles recording, and File API handles the rest).&lt;br /&gt;
&lt;br /&gt;
==Audio format==&lt;br /&gt;
&lt;br /&gt;
This option allows you to select the codec used for recording sound.&lt;br /&gt;
&lt;br /&gt;
ImaADPCM stands for International Multimedia Association (IMA) Adaptive Differential Pulse Code Modulation (ADPCM). It is a lossy compression mechanism that compresses data recorded at various sampling rates. The compression ratio obtained is relatively modest, but it is very fast to encode and decode. &lt;br /&gt;
&lt;br /&gt;
Speex is an Open Source/Free Software patent-free (part of the GNU Project) audio compression format designed for speech. Speex is well-adapted to Internet applications and provides useful features that are not present in most other codecs. The design goals have been to make a codec that would be optimized for high quality speech and low bit rate.&lt;br /&gt;
&lt;br /&gt;
==Sampling rate==&lt;br /&gt;
&lt;br /&gt;
This option allows you to select the sampling rate used for recording sound. The actual numeric value associated with each level depends on the audio format in use.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Level&lt;br /&gt;
!ImaADPCM sampling rate (Hz)&lt;br /&gt;
!Speex sampling rate (Hz)&lt;br /&gt;
|-&lt;br /&gt;
|Low quality&lt;br /&gt;
|8000&lt;br /&gt;
|8000&lt;br /&gt;
|-&lt;br /&gt;
|Medium quality&lt;br /&gt;
|11025&lt;br /&gt;
|16000&lt;br /&gt;
|-&lt;br /&gt;
|Normal quality&lt;br /&gt;
|22050&lt;br /&gt;
|32000&lt;br /&gt;
|-&lt;br /&gt;
|High quality&lt;br /&gt;
|44100&lt;br /&gt;
|44100&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Workshop_grading_strategies&amp;diff=96348</id>
		<title>Workshop grading strategies</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Workshop_grading_strategies&amp;diff=96348"/>
		<updated>2021-08-10T15:21:13Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Workshop}}&lt;br /&gt;
Simply said, selected grading strategy determines how the assessment form may look like And how the grade for a submission given by a certain assessment is calculated based on the assessment form. Workshop ships with four standard grading strategies. More strategies can be developed as pluggable extensions.&lt;br /&gt;
&lt;br /&gt;
== Accumulative grading strategy ==&lt;br /&gt;
[[Image:Accumulative assessment form.png|200px|thumb|Assessment form using accumulative grading]]&lt;br /&gt;
In this case, the assessment form consists of a set of criteria. Each criterion is graded separately using either a number grade (eg out of 100) or a scale (using either one of site-wide scale or a scale defined in a course). Each criterion can have its weight set. Reviewers can put comments to all assessed criteria.&lt;br /&gt;
&lt;br /&gt;
When calculating the total grade for the submission, the grades for particular criteria are firstly normalized to a range from 0% to 100%. Then the total grade by a given assessment is calculated as weighted mean of normalized grades. Scales are considered as grades from 0 to M-1, where M is the number of scale items.&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt;G_s = \frac{\sum_{i=1}^N \frac{g_i}{max_i} w_i }{\sum_{i=1}^N w_i}&amp;lt;/math&amp;gt;&lt;br /&gt;
: where &amp;lt;math&amp;gt;g_i \in \mathbb{N}&amp;lt;/math&amp;gt; is the grade given to the i-th criterion, &amp;lt;math&amp;gt;max_i \in \mathbb{N}&amp;lt;/math&amp;gt; is the maximal possible grade of the i-th criterion, &amp;lt;math&amp;gt;w_i \in \mathbb{N} &amp;lt;/math&amp;gt; is the weight of the i-th criterion and &amp;lt;math&amp;gt;N \in \mathbb{N} &amp;lt;/math&amp;gt; is the number of criteria in the assessment form.&lt;br /&gt;
&lt;br /&gt;
It is important to realize that the influence of a particular criterion is determined by its weight only, not the grade type or range used. Let us have three criteria in the form, first using 0-100 grade, the second 0-20 grade and the third using a three items scale. If they all have the same weight, then giving grade 50 in the first criteria has the same impact as giving grade 10 for the second criteria.&lt;br /&gt;
&lt;br /&gt;
Take the case above as an example. Suppose that the third criterion uses &#039;&#039;scale: 6 levels&#039;&#039;. An assessor gives grade 90 for the first criterion (or aspect 1), grade 16 for the second criterion and grade 9 &#039;&#039;very good&#039;&#039; for the last criterion. And the weights of the three criteria are 1, 2, and 3, respectively. Because for the third criterion, the scale has 6 items and grade 9 &#039;&#039;very good&#039;&#039; is the second one of the grade sequence ordered from highest to lowest, grade 9 will be mapped to 4. That is, in the formula above, g3 = 4 and max3 = 5.Then the final grade given by this assessment will be:&lt;br /&gt;
[[Image: Accumulative formula.png|left]]&amp;lt;br clear=&amp;quot;all&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Comments ==&lt;br /&gt;
[[Image:Comments assessment form.png|200px|thumb|right|Assessment form using comments]]&lt;br /&gt;
The assessment form is similar to the one used in accumulative grading strategy but no grades can be given, just comments. The total grade for the assessed submission is always set to 100%. This strategy can be effective in repetitive workflows when the submissions are firstly just commented by reviewers to provide initial feedback to the authors. Then Workshop is switched back to the submission phase and the authors can improve it according the comments. Then the grading strategy can be changed to another one using proper grading and submissions are assessed again using a different assessment form.&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Number of errors ==&lt;br /&gt;
[[Image:Numoferror assessment form.png|200px|thumb|right|Assessment form using Number of Errors]]&lt;br /&gt;
In Moodle 1.x, this was called Error banded strategy. The assessment form consists of several assertions, each of them can be marked as passed or failed by the reviewer. Various words can be set to express the pass or failure state - eg Yes/No, Present/Missing, Good/Poor, etc.&lt;br /&gt;
&lt;br /&gt;
The grade given by a particular assessment is calculated from the weighted count of negative assessment responses (failed assertions). Here, the &#039;&#039;weighted count&#039;&#039; means that a response with weight &amp;lt;math&amp;gt;w_i&amp;lt;/math&amp;gt; is counted &amp;lt;math&amp;gt;w_i&amp;lt;/math&amp;gt;-times. Course facilitators define a mapping table that converts the number of failed assertions to a percent grade for the given submission. Zero failed assertion is always mapped to 100% grade.&lt;br /&gt;
&lt;br /&gt;
This strategy may be used to make sure that certain criteria were addressed in the submission. Examples of such assessment assertions are: &#039;&#039;Has less than 3 spelling errors&#039;&#039;, &#039;&#039;Has no formatting issues&#039;&#039;, &#039;&#039;Has creative ideas&#039;&#039;, &#039;&#039;Meets length requirements&#039;&#039; etc. This assessment method is considered as easier for reviewers to understand and deal with. Therefore it is suitable even for younger participants or those just starting with peer assessment, while still producing quite objective results.&lt;br /&gt;
&lt;br /&gt;
You can edit the original assessment form by following the steps below:&lt;br /&gt;
# Write down the corresponding description for each assertion in the blank. Then fill in the blanks of &#039;&#039;word for the error&#039;&#039; and &#039;&#039;word for the success&#039;&#039;. Set the weight for each assertion. As you can see, the grade mapping table is still blank now.&lt;br /&gt;
# Click the ‘save and close’ button at the end of this page.&lt;br /&gt;
# Click the ‘Edit assessment form’ link at the shade area titled &#039;&#039;setup phase&#039;&#039; in the upper part of this page and view the assessment form again. At this time, you can see that the grade mapping table has already been set. (&#039;&#039;Note&#039;&#039;: Initially all the field are blank. You need to choose the right value from each list to make this grading strategy work properly.)&lt;br /&gt;
[[Image:Numberoferrors grade mapping table.png|300px|thumb|none|grade mapping table]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
For example, if an assessment form contains three assertions:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Assertion No.&lt;br /&gt;
! Content&lt;br /&gt;
! Pass or failure state&lt;br /&gt;
! Weight&lt;br /&gt;
|-&lt;br /&gt;
| 1&lt;br /&gt;
| Has the suitable title&lt;br /&gt;
| Yes/No&lt;br /&gt;
| 1&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| Has creative ideas&lt;br /&gt;
| Present/Miss&lt;br /&gt;
| 2&lt;br /&gt;
|-&lt;br /&gt;
| 3&lt;br /&gt;
| The abstract is well-written&lt;br /&gt;
| Yes/No&lt;br /&gt;
| 3&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the example above, suppose that a reviewer gives one certain work &#039;&#039;Yes/Miss/Yes&#039;&#039; as the assessment. Since the submission only fails to meet the second criterion and the weight of the second criterion is 2, the total number of errors will be 2. Thus the grade for submission given by this assessment is 66%. Suppose that the maximum grade for submission set in &#039;&#039;grade settings&#039;&#039; is 100, therefore the final grade for this submission given by this assessment is grade 66.&lt;br /&gt;
&lt;br /&gt;
== Rubric ==&lt;br /&gt;
[[Image:Rubric assessmentform list.png|200px|thumb|right|Assessment form in list mode]]&lt;br /&gt;
See [http://en.wikipedia.org/wiki/Rubric_(academic) the description] of this scoring tool at Wikipedia. The rubric assessment form consists of a set of criteria. For each criterion, several ordered descriptive levels is provided. A number grade is assigned to each of these levels.  The reviewer chooses which level answers/describes the given criterion best.&lt;br /&gt;
&lt;br /&gt;
The final grade is aggregated as&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt;G_s = \frac{\sum_{i=1}^N (g_i - min_i) }{\sum_{i=1}^N (max_i - min_i)}&amp;lt;/math&amp;gt;&lt;br /&gt;
: where &amp;lt;math&amp;gt;g_i \in \mathbb{N}&amp;lt;/math&amp;gt; is the grade given to the i-th criterion, &amp;lt;math&amp;gt;min_i \in \mathbb{N}&amp;lt;/math&amp;gt; is the minimal possible grade of the i-th criterion, &amp;lt;math&amp;gt;max_i \in \mathbb{N}&amp;lt;/math&amp;gt; is the maximal possible grade of the i-th criterion and &amp;lt;math&amp;gt;N \in \mathbb{N} &amp;lt;/math&amp;gt; is the number of criteria in the rubric.&lt;br /&gt;
[[Image:Rubric assessmentform grid.png|200px|thumb|right|Assessment Form in grid mode]]&lt;br /&gt;
Example of a single criterion can be: &#039;&#039;Overall quality of the paper&#039;&#039; with the levels &#039;&#039;5 - An excellent paper&#039;&#039;, &#039;&#039;3 - A mediocre paper&#039;&#039;, &#039;&#039;0 - A weak paper&#039;&#039; (the number represent the grade).&lt;br /&gt;
&lt;br /&gt;
There are two modes how the assessment form can be rendered - either in common grid form or in a list form. It is safe to switch the representation of the rubric any time.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Example of calculation:&#039;&#039; let us have a rubric with two criteria, which both have four levels 1, 2, 3, 4. The reviewer chooses level with the grade 2 for the first criterion and the grade 3 for the second criterion. Then the final grade is:&lt;br /&gt;
&lt;br /&gt;
: &amp;lt;math&amp;gt;G_s = \frac{(2 - 1) + (3 - 1)}{(4 - 1) + (4 - 1)} = \frac{3}{6} = 50 %&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that this calculation may be different from how you intuitively use rubric. For example, when the reviewer in the previous example chose both levels with the grade 1, the plain sum would be 2 points. But that is actually the lowest possible score so it maps to the grade 0. To avoid confusion, it is recommended to always include a level with the grade 0 in the rubric definition.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note on backwards compatibility:&#039;&#039;&#039; This strategy merges the legacy Rubric and Criterion strategies from Moodle 1.x into a single one. Conceptually, legacy Criterion was just one dimension of Rubric. In Workshop 1.x, Rubric could have several criteria (categories) but were limited to a fixed scale with 0-4 points. On the other hand, Criterion strategy in Workshop 1.9 could use custom scale, but was limited to a single aspect of assessment. The new Rubric strategy combines the old two. To mimic the legacy behaviour, the old Workshop are automatically upgraded so that:&lt;br /&gt;
&lt;br /&gt;
* Criterion strategy from 1.9 are replaced with Rubric 2.0 using just one dimension&lt;br /&gt;
* Rubric from 1.9 are by Rubric 2.0 by using point scale 0-4 for every criterion.&lt;br /&gt;
&lt;br /&gt;
In Moodle 1.9, reviewer could suggest an optional adjustment to a final grade. This is not supported any more. Eventually this may be supported in the future versions again as a standard feature for all grading strategies, not only rubric.&lt;br /&gt;
&lt;br /&gt;
==Experiencing Real Workshop==&lt;br /&gt;
Please visit demo website to know more about how to set assessment form [http://demo.moodle.net/mod/workshop/editform.php?cmid=1770]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note&#039;&#039;: You need to login to view the assessment form.&amp;lt;br clear=&amp;quot;all&amp;quot;/&amp;gt;&lt;br /&gt;
User name: teacher &amp;lt;br clear=&amp;quot;all&amp;quot;/&amp;gt;&lt;br /&gt;
Password: demo&lt;br /&gt;
&lt;br /&gt;
This web page is an original assessment form using rubric grading strategy. You can view assessment forms using other grading strategies by following the steps below:&lt;br /&gt;
&lt;br /&gt;
#Visit [http://demo.moodle.net/course/modedit.php?update=1770&amp;amp;return=1](You also need to login to view these settings.)&lt;br /&gt;
#Choose the specific grading strategy in the drop down menu of &#039;&#039;grading strategy&#039;&#039; in &#039;&#039;grading settings&#039;&#039;.[[Image:Grading settings.png|upright 2.5|thumb|none|grading_settings]]&lt;br /&gt;
#Click ‘save and display’ button at the end of this page.&lt;br /&gt;
#Click ‘Edit assessment form’ link at the shaded area titled ‘setup phase’ in the upper part of this page.&lt;br /&gt;
&lt;br /&gt;
You will be able to see an original assessment form using the grading strategy you just chose.&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Using_Workshop&amp;diff=96347</id>
		<title>Using Workshop</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Using_Workshop&amp;diff=96347"/>
		<updated>2021-08-10T15:21:13Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Workshop}}&lt;br /&gt;
==Workshop phases==&lt;br /&gt;
The work flow for the Workshop module can be viewed as having five phases.  The typical workshop activity can cover days or event week.  The teacher switches the activity from one phase to another.&lt;br /&gt;
&lt;br /&gt;
The typical workshop follows a straight path from Setup to, Submission, Assessment, Grading/Evaluation, and ending with the Closed phased.  However, an advanced recursive path is also possible.&lt;br /&gt;
&lt;br /&gt;
The progress of the activity is visualised in so called Workshop planner tool. It displays all Workshop phases and highlight the current one. It also lists all the tasks the user has in the current phase with the information of whether the task is finished or not yet finished or even failed.&lt;br /&gt;
&lt;br /&gt;
===Setup phase===&lt;br /&gt;
&lt;br /&gt;
In this initial phase, Workshop participants cannot do anything (neither modify their submissions nor their assessments). Course facilitators use this phase to change workshop settings, modify the grading strategy of tweak assessment forms. You can switch to this phase any time you need to change the Workshop setting and prevent users from modifying their work.&lt;br /&gt;
&lt;br /&gt;
===Submission phase===&lt;br /&gt;
&lt;br /&gt;
In the submission phase, Workshop participants submit their work. Access control dates can be set so that even if the Workshop is in this phase, submitting can be allowed in the given time frame only. Submission start date (and time), submission end date (and time) or both can be specified.&lt;br /&gt;
&lt;br /&gt;
===Assessment phase===&lt;br /&gt;
&lt;br /&gt;
If the Workshop uses peer assessment feature, this is the phase when Workshop participants assess the submissions allocated to them for the review. As in the submission phase, access can be controlled by specified date and time since when and/or until when the assessment is allowed.&lt;br /&gt;
&lt;br /&gt;
===Grading evaluation phase===&lt;br /&gt;
&lt;br /&gt;
The major task during this phase is to calculate the final grades for submissions and for assessments and provide feedback for authors and reviewers. Workshop participants cannot modify their submissions or their assessments in this phase any more. Course facilitators can manually override the calculated grades. Also, selected submissions can be set as published so they become available to all Workshop participants in the next phase.&lt;br /&gt;
&lt;br /&gt;
===Closed===&lt;br /&gt;
&lt;br /&gt;
Whenever the Workshop is being switched into this phase, the final grades calculated in the previous phase are pushed into the course [[Gradebook]]. This will result in the Workshop grades appearing in the Gradebook. Participants may view their submissions, their submission assessments and eventually other published submissions in this phase.&lt;br /&gt;
&lt;br /&gt;
==Workshop grading==&lt;br /&gt;
&lt;br /&gt;
The grades for a Workshop activity are obtained gradually at several stages and then they are finalized. The following scheme illustrates the process and also provides the information in what database tables the grade values are stored.&lt;br /&gt;
&lt;br /&gt;
[[Image:workshop_grades_calculation.png|400px|thumb|left|The scheme of grades calculation in Workshop]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;all&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
As you can see, every participant gets two numerical grades into the course Gradebook. During the Grading evaluation phase, course facilitator can let Workshop module to calculate these final grades. Note that they are stored in Workshop module only until the activity is switched to the final (Closed) phase. Therefore it is pretty safe to play with grades unless you are happy with them and then close the Workshop and push the grades into the Gradebook. You can even switch the phase back, recalculate or override the grades and close the Workshop again so the grades are updated in the Gradebook again (should be noted that you can override the grades in the Gradebook, too).&lt;br /&gt;
&lt;br /&gt;
During the grading evaluation, Workshop grades report provides you with a comprehensive overview of all individual grades. The report uses various symbols and syntax:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Value&lt;br /&gt;
! Meaning&lt;br /&gt;
|-&lt;br /&gt;
| - (-) &amp;lt; Alice&lt;br /&gt;
| The is an assessment allocated to be done by Alice, but it has been neither assessed nor evaluated yet&lt;br /&gt;
|-&lt;br /&gt;
| 68 (-) &amp;lt; Alice&lt;br /&gt;
| Alice assessed the submission, giving the grade for submission 68. The grade for assessment (grading grade) has not been evaluated yet.&lt;br /&gt;
|-&lt;br /&gt;
| 23 (-) &amp;gt; Bob&lt;br /&gt;
| Bob&#039;s submission was assessed by a peer, receiving the grade for submission 23. The grade for this assessment has not been evaluated yet.&lt;br /&gt;
|-&lt;br /&gt;
| 76 (12) &amp;lt; Cindy&lt;br /&gt;
| Cindy assessed the submission, giving the grade 76. The grade for this assessment has been evaluated 12.&lt;br /&gt;
|-&lt;br /&gt;
| 67 (8) @ 4 &amp;lt; David&lt;br /&gt;
| David assessed the submission, giving the grade for submission 67, receiving the grade for this assessment 8. His assessment has weight 4&lt;br /&gt;
|-&lt;br /&gt;
| 80 (&amp;lt;del&amp;gt;20&amp;lt;/del&amp;gt; / &amp;lt;ins&amp;gt;17&amp;lt;/ins&amp;gt;) &amp;gt; Eve&lt;br /&gt;
| Eve&#039;s submission was assessed by a peer. Eve&#039;s submission received 80 and the grade for this assessment was calculated to 20. Teacher has overridden the grading grade to 17, probably with an explanation for the reviewer.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Grade for submission ===&lt;br /&gt;
&lt;br /&gt;
The final grade for every submission is calculated as weighted mean of particular assessment grades given by all reviewers of this submission. The value is rounded to a number of decimal places set in the Workshop settings form.&lt;br /&gt;
&lt;br /&gt;
Course facilitator can influence the grade for a given submission in two ways:&lt;br /&gt;
&lt;br /&gt;
* by providing their own assessment, possibly with a higher weight than usual peer reviewers have&lt;br /&gt;
* by overriding the grade to a fixed value&lt;br /&gt;
&lt;br /&gt;
=== Grade for assessment ===&lt;br /&gt;
&lt;br /&gt;
Grade for assessment tries to estimate the quality of assessments that the participant gave to the peers. This grade (also known as &#039;&#039;grading grade&#039;&#039;) is calculated by the artificial intelligence hidden within the Workshop module as it tries to do typical teacher&#039;s job.&lt;br /&gt;
&lt;br /&gt;
During the grading evaluation phase, you use a Workshop subplugin to calculate grades for assessment. At the moment, only one subplugin is available called &#039;&#039;Comparison with the best assessment&#039;&#039;. The following text describes the method used by this subplugin. Note that more grading evaluation subplugins can be developed as Workshop extensions.&lt;br /&gt;
&lt;br /&gt;
Grades for assessment are displayed in the braces () in the Workshop grades report. The final grade for assessment is calculated as the average of particular grading grades.&lt;br /&gt;
&lt;br /&gt;
There is not a single formula to describe the calculation. However the process is deterministic. Workshop picks one of the assessments as the &#039;&#039;best&#039;&#039; one - that is closest to the mean of all assessments - and gives it 100% grade. Then it measures a &#039;distance&#039; of all other assessments from this best one and gives them the lower grade, the more different they are from the best (given that the best one represents a consensus of the majority of assessors). The parameter of the calculation is how strict we should be, that is how quickly the grades fall down if they differ from the best one.&lt;br /&gt;
&lt;br /&gt;
If there are just two assessments per submission, Workshop can not decide which of them is &#039;correct&#039;. Imagine you have two reviewers - Alice and Bob. They both assess Cindy&#039;s submission. Alice says it is a rubbish and Bob says it is excellent. There is no way how to decide who is right. So Workshop simply says - ok, you both are right and I will give you both 100% grade for this assessment. To prevent it, you have two options:&lt;br /&gt;
&lt;br /&gt;
* Either you have to provide an additional assessment so the number of assessors (reviewers) is odd and workshop will be able to pick the best one. Typically, the teacher comes and provide their own assessment of the submission to judge it&lt;br /&gt;
* Or you may decide that you trust one of the reviewers more. For example you know that Alice is much better in assessing than Bob is. In that case, you can increase the weight of Alice&#039;s assessment, let us say to &amp;quot;2&amp;quot; (instead of default &amp;quot;1&amp;quot;). For the purposes of calculation, Alice&#039;s assessment will be considered as if there were two reviewers having the exactly same opinion and therefore it is likely to be picked as the best one.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Backward compatibility note:&#039;&#039;&#039; In Workshop 1.x this case of exactly two assessors with the same weight is not handled properly and leads to wrong results as only the one of them is lucky to get 100% and the second get lower grade.&lt;br /&gt;
&lt;br /&gt;
It is very important to know that the grading evaluation subplugin &#039;&#039;Comparison with the best assessment&#039;&#039; does not compare the final grades. Regardless the grading strategy used, every filled assessment form can be seen as n-dimensional vector or normalized values. So the subplugin compares responses to all assessment form dimensions (criteria, assertions, ...). Then it calculates the distance of two assessments, using the variance statistics.&lt;br /&gt;
&lt;br /&gt;
To demonstrate it on example, let us say you use grading strategy Number of errors to peer-assess research essays. This strategy uses a simple list of assertions and the reviewer (assessor) just checks if the given assertion is passed or failed. Let us say you define the assessment form using three criteria:&lt;br /&gt;
&lt;br /&gt;
# Does the author state the goal of the research clearly? (yes/no)&lt;br /&gt;
# Is the research methodology described? (yes/no)&lt;br /&gt;
# Are references properly cited? (yes/no)&lt;br /&gt;
&lt;br /&gt;
Let us say the author gets 100% grade if all criteria are passed (that is answered &amp;quot;yes&amp;quot; by the assessor), 75% if only two criteria are passed, 25% if only one criterion is passed and 0% if the reviewer gives &#039;no&#039; for all three statements.&lt;br /&gt;
&lt;br /&gt;
Now imagine the work by Daniel is assessed by three colleagues - Alice, Bob and Cindy. They all give individual responses to the criteria in order:&lt;br /&gt;
&lt;br /&gt;
* Alice: yes / yes / no&lt;br /&gt;
* Bob: yes / yes / no&lt;br /&gt;
* Cindy: no / yes / yes&lt;br /&gt;
&lt;br /&gt;
As you can see, they all gave 75% grade to the submission. But Alice and Bob agree in individual responses, too, while the responses in Cindy&#039;s assessment are different. The evaluation method &#039;&#039;Comparison with the best assessment&#039;&#039; tries to imagine, how a hypothetical absolutely fair assessment would look like. In the [[Development:Workshop 2.0 specification]], David refers to it as &amp;quot;how would Zeus assess this submission?&amp;quot; and we estimate it would be something like this (we have no other way):&lt;br /&gt;
&lt;br /&gt;
* Zeus 66% yes / 100% yes / 33% yes&lt;br /&gt;
&lt;br /&gt;
Then we try to find those assessments that are closest to this theoretically objective assessment. We realize that Alice and Bob are the best ones and give 100% grade for assessment to them. Then we calculate how much far Cindy&#039;s assessment is from the best one. As you can see, Cindy&#039;s response matches the best one in only one criterion of the three so Cindy&#039;s grade for assessment will not be much high.&lt;br /&gt;
&lt;br /&gt;
The same logic applies to all other grading strategies, adequately. The conclusion is that the grade given by the best assessor does not need to be the one closest to the average as the assessment are compared at the level of individual responses, not the final grades.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/view.php?id=740 Workshop module forum]&lt;br /&gt;
* Using Moodle forum discussion [http://moodle.org/mod/forum/discuss.php?d=153268] where David explains a particular Workshop results&lt;br /&gt;
* [http://www.slideshare.net/mark.drechsler/moodle-workshop-20-a-simplified-explanation Moodle Workshop 2.0 - a (simplified) explanation] presentation by Mark Drechsler&lt;br /&gt;
* [[Development:Workshop]] for more information on the module infrastructure and ways how to extend provided functionality by developing own Workshop subplugins&lt;br /&gt;
* [http://moodlefairy.posterous.com/a-brief-journey-into-the-moodle-20-workshop A Brief Journey into the Moodle 2.0 Workshop] at moodlefairy&#039;s posterous&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Using_TeX_Notation_4&amp;diff=96346</id>
		<title>Using TeX Notation 4</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Using_TeX_Notation_4&amp;diff=96346"/>
		<updated>2021-08-10T15:21:12Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Matrices=&lt;br /&gt;
A Matrix is a rectangular array of numbers arranged in rows and columns which can be used to organize numeric information. Matrices can be used to predict trends and outcomes in real situations - i.e. polling.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==A Matrix==&lt;br /&gt;
A matrix can be written and displayed like [[Image: matrices03.gif|A matrix]]&lt;br /&gt;
&lt;br /&gt;
In this case the matrix is constructed using the brackets before creating the array:&lt;br /&gt;
  $$ M = \left[\begin{array} a&amp;amp;b&amp;amp;1 \ c&amp;amp;d&amp;amp;2 \ e&amp;amp;f&amp;amp;3\end{array}\right] $$&lt;br /&gt;
The internal structure of the array is generated by the &amp;amp;, ampersand, and the double backslash.&lt;br /&gt;
&lt;br /&gt;
You can also create a grid for the matrix.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|A dashed line&lt;br /&gt;
|A solid line&lt;br /&gt;
|A mixed line&lt;br /&gt;
|-&lt;br /&gt;
|[[Image: matrices04.gif]] 	&lt;br /&gt;
|[[Image: matrices05.gif]]	&lt;br /&gt;
|[[Image: matrices06.gif]]&lt;br /&gt;
|-&lt;br /&gt;
|$$ M = \left[\begin{array}&#039;&#039;&#039;{c.c.c}&#039;&#039;&#039; a&amp;amp;b&amp;amp;1 \ &#039;&#039;&#039;\hdash&#039;&#039;&#039; c&amp;amp;d&amp;amp;2 \ &#039;&#039;&#039;\hdash&#039;&#039;&#039; e&amp;amp;f&amp;amp;3\end{array}\right] $$ 	&lt;br /&gt;
|$$ M = \left[\begin{array}&#039;&#039;&#039;{c|c|c}&#039;&#039;&#039; a&amp;amp;b&amp;amp;1 \ &#039;&#039;&#039;\hline&#039;&#039;&#039; c&amp;amp;d&amp;amp;2 \ &#039;&#039;&#039;\hline&#039;&#039;&#039; e&amp;amp;f&amp;amp;3\end{array}\right] $$ 	&lt;br /&gt;
|$$ M = \left[\begin{array}&#039;&#039;&#039;{c.c|c}&#039;&#039;&#039; a&amp;amp;b&amp;amp;1 \ &#039;&#039;&#039;\hline&#039;&#039;&#039; c&amp;amp;d&amp;amp;2 \ &#039;&#039;&#039;\hdash&#039;&#039;&#039; e&amp;amp;f&amp;amp;3\end{array}\right] $$&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The command sequences here are the {c|c.c} and \hdash and \hline. The pipe, |, and the full stop determine the line type for the vertical line.&lt;br /&gt;
&lt;br /&gt;
Matrices also respond to other TeX Notation commands such as size and colour.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
Colour&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;|Size&lt;br /&gt;
|-&lt;br /&gt;
|[[Image: matrices07.gif]] 	&lt;br /&gt;
|[[Image: matrices08.gif]]&lt;br /&gt;
|[[Image: matrices09.gif]]&lt;br /&gt;
|-&lt;br /&gt;
|$$ &#039;&#039;&#039;\blue&#039;&#039;&#039; M = \left[\begin{array}{c.c.c} a&amp;amp;b&amp;amp;1 \ \hdash c&amp;amp;d&amp;amp;2 \ \hdash e&amp;amp;f&amp;amp;3\end{array}\right] $$ 	&lt;br /&gt;
|$$ &#039;&#039;&#039;\fs7&#039;&#039;&#039; M = \left[\begin{array}{c.c.c} a&amp;amp;b&amp;amp;1 \ \hdash c&amp;amp;d&amp;amp;2 \ \hdash e&amp;amp;f&amp;amp;3\end{array}\right] $$ 	&lt;br /&gt;
|$$ &#039;&#039;&#039;\fs2&#039;&#039;&#039; M = \left[\begin{array}{c.c.c} a&amp;amp;b&amp;amp;1 \ \hdash c&amp;amp;d&amp;amp;2 \ \hdash e&amp;amp;f&amp;amp;3\end{array}\right] $$&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Creating equal and unequal matrices==&lt;br /&gt;
Equal and unequal matrices are simply matrices that either share or not share the same number of rows and columns. To be more precise, equal matrices share the same order and each element in the corresponding positions are equal. Anything else is unequal matrices.&lt;br /&gt;
&lt;br /&gt;
Actually equal and unequal matrices are constructed along similar lines, but have different shapes:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|Equal Matrix&lt;br /&gt;
|An unequal matrix&lt;br /&gt;
|-&lt;br /&gt;
|[[Image: matrices10.gif]] 	&lt;br /&gt;
|[[Image: matrices11.gif]]&lt;br /&gt;
|-&lt;br /&gt;
| $$ \left[\begin{array} a&amp;amp;b&amp;amp;1 \ c&amp;amp;d&amp;amp;2 \ e&amp;amp;f&amp;amp;3\end{array}\right] \ = \ \left[\begin{array} 12&amp;amp;11&amp;amp;z \ 10&amp;amp;9&amp;amp;y \ 8&amp;amp;7&amp;amp;x\end{array}\right] $$&lt;br /&gt;
| $$ \left[\begin{array} a&amp;amp;b \ c&amp;amp;d \ e&amp;amp;f \end{array}\right] \ \neq \ \left[\begin{array} 12&amp;amp;11&amp;amp;z \ 10&amp;amp;9&amp;amp;y \ 8&amp;amp;7&amp;amp;x\end{array}\right] $$&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Labeling a Matrix==&lt;br /&gt;
&lt;br /&gt;
Addition and subtraction matrices are similar again, but the presentation is usually very different. The problem comes when trying to mix labels into arrays. The lack of sophistication in the TeX Notation plays against it here.&lt;br /&gt;
&lt;br /&gt;
Moodle allows an easy adoption of tables to make it work though. For example:&lt;br /&gt;
&lt;br /&gt;
  Bill the baker supplies three shops, A, B and C with pies, pasties and sausage rolls. &lt;br /&gt;
  He is expected to determine the stock levels of those three shops in his estimation of supplies.&lt;br /&gt;
&lt;br /&gt;
It is better to use the Moodle Fullscreen editor for this, to have a better idea of how the end product will look and to take advantage of the additional tools available. Design decisions need occupy our attention for a while. We need a table of five rows and four columns. The first row is a header row, so the label is centred. The next row needs four columns, a blank cell to start and labels A, B and C. The next three rows are divided into two columns, with the labels, pies, pasties and sausage rolls in each row of the first column and the matrix resides in a merged set of columns there. So first the table:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Insert Table - initial properties&lt;br /&gt;
| Merge Cells Button&lt;br /&gt;
| Advanced Properties&lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=&amp;quot;2&amp;quot;|[[Image: matricestable01.png|Table properties]]&lt;br /&gt;
| [[Image: matricestable02.png | Merge cells]]&lt;br /&gt;
| [[Image: matricestable03.png | Cell properties button]]&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;| You may need to look into the Advanced properties setting of the tables and cells to make this work.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This is the immediate result: &lt;br /&gt;
&lt;br /&gt;
[[Image: matricestable04.png | The resulting table]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
While not a very good look, it can be made better by tweaking the table using the advanced settings and properties buttons and then you can tweak the matrix itself.&lt;br /&gt;
&lt;br /&gt;
==Tweaking the Matrix==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image: matricestable05a.png | A tweaked matrix]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Things are not always as they seem, be aware, the &amp;quot;c&amp;quot; does not stand for &amp;quot;column&amp;quot;, it actually stands for &amp;quot;centre&amp;quot;. The columns are aligned by the letters l, for left, c for centre and r for right.&lt;br /&gt;
&lt;br /&gt;
Each column is spread across 50 pixels, so the value of 50 is entered into the alignment declaration. The plus sign before the value is used to &amp;quot;propogate&amp;quot; or to force the value across the whole matrix, but is not used when wanting to separate only one column. &lt;br /&gt;
&lt;br /&gt;
To set the rows is a little more problematic. The capital letter C sets the vertical alignment to the centre, (B is for baseline, but that does not guarantee that the numbers will appear on the base line, and there does not appear to be any third value). The plus sign and following value sets the height of all rows to the number given. In this I have given it a value of 25 pixels for the entire matrix. If there were four or five rows, the same height requirement is made. &lt;br /&gt;
&lt;br /&gt;
The order things appear is also important. If you change the order of these settings, they will either not work at all, or will not render as you expect them to. If something does not work properly, then check to make sure you have the right order first.&lt;br /&gt;
&lt;br /&gt;
==An Addition Matrix==&lt;br /&gt;
&lt;br /&gt;
The rule for performing operations on matrices is that they must be equal matrices. For example, addition matrices look like:&lt;br /&gt;
&lt;br /&gt;
[[Image: matricestable06.png | An addition matrix]]&lt;br /&gt;
&lt;br /&gt;
with the results obvious. The code is:&lt;br /&gt;
&lt;br /&gt;
  $$\left[\begin{array}{c+50C+25.c.c}&lt;br /&gt;
  11&amp;amp;14&amp;amp;12 \ \hdash16&amp;amp;12&amp;amp;22 \ \hdash 14&amp;amp;17&amp;amp;15&lt;br /&gt;
  \end{array}\right] + \left[\begin{array}{c+50C+25.c.c}&lt;br /&gt;
  60&amp;amp;60&amp;amp;60 \ \hdash 40&amp;amp;40&amp;amp;30 \ \hdash 30&amp;amp;30&amp;amp;30&lt;br /&gt;
  \end{array}\right] $$&lt;br /&gt;
&lt;br /&gt;
==A Subtraction Matrix==&lt;br /&gt;
&lt;br /&gt;
Similar to an addition matrix in its construction, the subtraction matrix is subject to the same rules of equality.&lt;br /&gt;
&lt;br /&gt;
Using the same essential data, we can calculate the daily sales of each of the shops.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Image: matricestable07.png | A subtraction matrix]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The code is:&lt;br /&gt;
  $$ \left[\begin{array}{c+50C+25.c.c}&lt;br /&gt;
  72&amp;amp;95&amp;amp;68 \ \hdash 54&amp;amp;61&amp;amp;65 \ \hdash 48&amp;amp;51&amp;amp;60&lt;br /&gt;
  \end{array}\right] - \left[\begin{array}{c+50C+25.c.c}&lt;br /&gt;
  11&amp;amp;14&amp;amp;12 \ \hdash 16&amp;amp;12&amp;amp;22 \ \hdash 14&amp;amp;17&amp;amp;15&lt;br /&gt;
  \end{array}\right] = \left[\begin{array}{c+50C+25.c.c}&lt;br /&gt;
  61&amp;amp;81&amp;amp;56 \ \hdash 38&amp;amp;49&amp;amp;43 \ \hdash 34&amp;amp;34&amp;amp;48&lt;br /&gt;
  \end{array}\right] $$  &lt;br /&gt;
&lt;br /&gt;
This code looks more complex than it really is, it is cluttered by the lines and alignment sequences.&lt;br /&gt;
&lt;br /&gt;
==Multiplication Matrices==&lt;br /&gt;
&lt;br /&gt;
Different than the addition or subtraction matrices, the multiplication matrix comes in three parts, the row matrix, the column matrix and the answer matrix. This implies it has a different construction methodology.&lt;br /&gt;
&lt;br /&gt;
[[Image: matrices16.gif | A multiplication matrix]]&lt;br /&gt;
&lt;br /&gt;
And the code for this is: &lt;br /&gt;
  $$ \begin{array} 10&amp;amp;amp;14&amp;amp;amp;16\end{array} \ &lt;br /&gt;
  \left[\begin{array} 45 \\ 61 \\ 19 \end{array}\right] &lt;br /&gt;
  \ = \ \begin{array} 450&amp;amp;amp;854&amp;amp;amp;304\end{array} $$&lt;br /&gt;
&lt;br /&gt;
While different, it is not necessarily more complex. For example a problem like:&lt;br /&gt;
&lt;br /&gt;
  Bill the baker is selling his product to Con the cafe owner, who &lt;br /&gt;
  wants to make sure his overall prices are profitable for himself. &lt;br /&gt;
  Con needs to make sure that his average price is providing sufficient &lt;br /&gt;
  profit to be able to keep the cafes open. Con makes his calculations &lt;br /&gt;
  on a weekly basis, comparing cost to sale prices.&lt;br /&gt;
&lt;br /&gt;
With the pies, pasties and sausage rolls in that order he applies them to the cost and sale price columns :&lt;br /&gt;
&lt;br /&gt;
[[Image: matrices17.gif | A multiplication matrix]]&lt;br /&gt;
&lt;br /&gt;
The code for this is: &lt;br /&gt;
  $$\left[\begin{array} 350&amp;amp;amp;310&amp;amp;amp;270 \end{array}\right] \ &lt;br /&gt;
  \left[\begin{array} \$2.10&amp;amp;amp;\$3.60 \ \$2.05&amp;amp;amp;\$3.60 \ \$1.90&amp;amp;amp;\$3.10 \end{array} &lt;br /&gt;
  \right] \ = \ \left[\begin{array} \$735.00&amp;amp;amp;\$1260.00 \ \$635.50&amp;amp;amp;\$1116.00 \ &lt;br /&gt;
  \$513.00&amp;amp;amp;$\837.00 \end{array}\right] $$&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Using TeX Notation]]&lt;br /&gt;
* [[Using TeX Notation 2]]&lt;br /&gt;
* [[Using TeX Notation 3]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Mathematics]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Using_TeX_Notation_3&amp;diff=96345</id>
		<title>Using TeX Notation 3</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Using_TeX_Notation_3&amp;diff=96345"/>
		<updated>2021-08-10T15:21:09Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Geometric Shapes== &lt;br /&gt;
&lt;br /&gt;
There are two ways to produce geometric shapes, one is with circles and the other is with lines. Each take a bit of practice to get right, but they can provide some simple geometry. It may be easier to produce the shapes in Illustrator or Paint Shop Pro or any one of a number of other drawing packages and use them to illustrate your lessons, but sometimes, some simple diagrams in Moodle will do a better job.&lt;br /&gt;
&lt;br /&gt;
==Circles==&lt;br /&gt;
&lt;br /&gt;
Circles are easy to make. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:cfmimetex20.gif|left]]&lt;br /&gt;
| Circles are easily created, and only needs a number to determine how large the circle is. &lt;br /&gt;
To create the circle use $$ \circle(150) $$. This makes a circle of 150 pixels in diameter. &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Creating Arcs==&lt;br /&gt;
&lt;br /&gt;
Arcs are also easy to produce, but require some additional parameters. The same code structure used in circles create the basic shape, but the inclusion of a start and end point creates only the arc. However, notice where the 0 point is, not at the true North, but rather the East and run in an anti-clockwise direction. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:cfmimetex21a.gif|left]]&lt;br /&gt;
| $$ \circle(120;90,180)$$&lt;br /&gt;
| [[Image:cfmimetex21b.gif|left]]&lt;br /&gt;
| $$ \circle(120;0,90)$$&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:cfmimetex21c.gif|left]]&lt;br /&gt;
| $$ \circle(120;180,270)$$&lt;br /&gt;
| [[Image:cfmimetex21d.gif|left]]&lt;br /&gt;
| $$ \circle(120;270,360)$$&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
This structure breaks down into the \circle command followed by the diameter, not the radius, of the circle, followed by a semi-colon, then the demarcation of the arc, the nomination of the start and end points in degrees from the 0, East, start point. Note that the canvas is the size of the diameter nominated by the circle&#039;s parameters.&lt;br /&gt;
&lt;br /&gt;
==The \picture Command==&lt;br /&gt;
&lt;br /&gt;
Using circles and arcs as shown above is somewhat limiting. The \picture command allows you to use a frame in which to build a picture of many layers. Each part of the picture though needs to be in its own space, and while this frame allows you to be creative, to a degree, there are some very hard and fast rules about using it. &lt;br /&gt;
&lt;br /&gt;
All elements of a picture need to be located within the picture frame. Unexpected results occur when parts of an arc, for example, runs over the border of the frame. (This is particularly true of lines, which we will get to next, and the consequences of that overstepping of the border can cause serious problems.)&lt;br /&gt;
&lt;br /&gt;
The \picture command is structured like:&lt;br /&gt;
   \picture(100){(50,50){\circle(200)}}&lt;br /&gt;
   \command(size of frame){(x co-ordinate, y co-ordinate){\shape to draw(size or x co-ordinate, y co-ordinate)})  &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; The brace is used to enclose each set of required starting point coordinates. Inside each set of braces, another set of braces is used to isolate each set of coordinates from the other, and those coordinates use their proper brackets and backslash. Count the opening and closing brackets, be careful of the position,       &lt;br /&gt;
  &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:cfmimetex24a.gif|left]]&lt;br /&gt;
| $$ \picture(100){(50,50){\circle(200)}}&amp;amp;&amp;amp;&lt;br /&gt;
&lt;br /&gt;
The picture frame brings elements together that you may not otherwise see.&lt;br /&gt;
&lt;br /&gt;
Because of the frame size of 100px and the centre point of the circle in the mid-point of the frame, the 200px circle will be squashed. Unexpected results occur when sizes are not correct.&lt;br /&gt;
| [[Image:cfmimetex24b.gif|left]]&lt;br /&gt;
|&lt;br /&gt;
Using the picture frame, you can layer circles &lt;br /&gt;
and lines over each other, or they can intersect.&lt;br /&gt;
&lt;br /&gt;
$$ \picture(100){(50,50){\circle(99)} (50,50){\circle(80)}} $$&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:cfmimetex24c.gif|left]]&lt;br /&gt;
| You may want to see an image of a circle with a dot in the middle. &lt;br /&gt;
You may have to try to place the centre dot correctly , but the &lt;br /&gt;
ordering of the elements in the image may have an impact.&lt;br /&gt;
&lt;br /&gt;
$$ \picture(100){(48,46){\bullet}(50,50){\circle(99)}} $$ &lt;br /&gt;
| [[Image:cfmimetex24d.gif|left]]&lt;br /&gt;
| Using the same ideas as above, you can make semi-circles.&lt;br /&gt;
&lt;br /&gt;
$$\picture(150){(50,50){\circle(100;0,180)}(100,50){\circle(100;180,360)}}$$&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Lines==&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Warning:&#039;&#039;&#039; Drawing lines in TeX Notation in Moodle is an issue, go to the [[Using_TeX_Notation#Reserved_Characters_and_Keywords| Using Text Notation]] for more information. If the line is not noted properly then the parser will try to correctly draw the line but will not successfully complete it. This means that every image that needs be drawn will be drawn until it hits the error. When the error is being converted, it fails, so no subsequent image is drawn. Be careful and make sure your line works BEFORE you move to the next problem or next image. &lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image: cfmimetex26.gif|frame|left| a couple of lines]] &lt;br /&gt;
| $$\red \picture(200){(20,0){ \line(180,0)}{(20,180){\line(180,0}$$ &lt;br /&gt;
 &lt;br /&gt;
The structure of the picture box is that the \picture(200) provides a square image template.&lt;br /&gt;
&lt;br /&gt;
The (20,0) provides the starting coordinates for any line that comes after. In this case the start point is at 20pixels in the x axis and 0 pixels in the y axis. The starting point for all coordinates, 0,0, is the bottom left corner and they run in a clockwise manner. &#039;&#039;&#039;Do not confuse this with arcs.&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
The \line(180,0) determines the length and inclination of the line. In this case, the inclination is 0 and the length is 180px. &lt;br /&gt;
&lt;br /&gt;
These are enclosed in braces, all inside one set of braces owned by the \picture() control sequence.&lt;br /&gt;
&lt;br /&gt;
The next set of commands are the same, that is, the (20,200) are the coordinates of the next line. The x co-ordinate is the 20, that is the distance to the right from the 0 point. The y co-ordinates is the distance from the bottom of the image. Whereas the first line started and ran on the bottom of the picture frame, the y co-ordinate starts at the 200 pixel mark from the bottom of the image. The line, at 180 pixels long and has no y slope. This creates a spread pair of parallel lines.     &lt;br /&gt;
| [[Image: cfmimtex27.gif|thumb|right|150px|\picture explained]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
While this explains the structure of a line, there is a couple of elements that you need to go through to do more with them.&lt;br /&gt;
&lt;br /&gt;
==Squares and Rectangles==&lt;br /&gt;
Drawing squares and rectangles is similar, but only slightly different. &lt;br /&gt;
&lt;br /&gt;
There should be a square box tool, and there is, but unless it has something inside it, it does not display. It is actually easier to make a square using the \line command.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image: line03.gif|left]]&lt;br /&gt;
|This box is constructed using:&lt;br /&gt;
$$ \picture(250){(10,10){\line(0,230)}(10,10){\line(230,0)}(240,10){\line(0,230)}(10,240){\line(230,0)}}$$&lt;br /&gt;
It is a 250 pixel square box with a 230 pixel square inside it.&lt;br /&gt;
| [[Image: line04.gif|left]]&lt;br /&gt;
|This box is different in that is has the equal length indicators that are used in a square.&lt;br /&gt;
$$ \picture(250){(10,10){\line(0,230)}&lt;br /&gt;
(5,120){\line(10,0)}&lt;br /&gt;
(10,10){\line(230,0)}&lt;br /&gt;
(120,5){\line(0,10)}&lt;br /&gt;
(240,10){\line(0,230)}&lt;br /&gt;
(235,120){\line(10,0)}&lt;br /&gt;
(10,240){\line(230,0)}&lt;br /&gt;
(120,235){\line(0,10)}}$$&lt;br /&gt;
|-&lt;br /&gt;
| [[Image: line05.gif|left]]&lt;br /&gt;
| The rectangle then becomes the same thing, but with one side shorter. For a portrait canvas it would be:&lt;br /&gt;
$$ \picture(250){(10,10){\line(0,230)}(10,10){\line(150,0)}(160,10){\line(0,230)}(10,240){\line(150,0)}}$$&lt;br /&gt;
| [[Image: line06.gif|left]]&lt;br /&gt;
|The rectangle can also produce a landscape shape:&lt;br /&gt;
$$ \picture(250){(10,10){\line(0,160)}(10,10){\line(230,0)}(240,10){\line(0,160)}(10,170){\line(230,0)}}$$&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Controlling Angles==&lt;br /&gt;
&lt;br /&gt;
Controlling angles is a little different. They involve a different perception, but not one that is unfamiliar. Consider this:&lt;br /&gt;
&lt;br /&gt;
We have a point from which we want to draw a line that is on an angle. The notation used at this point can be positive, positive or positive, negative or negative, positive or negative, negative. Think of it like a number plane or a graph, using directed numbers. The 0,0 point is in the centre, and we have four quadrants around it that give us one of the previously mentioned results.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot;|[[Image:co-ordquadrants.png|left]]&lt;br /&gt;
| [[Image:line06a.gif|left]] $$\picture(100){(50,50){\line(40,45)}}$$, &lt;br /&gt;
a positive x and positive y&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:line06b.gif|left]]$$\picture(100){(50,50){\line(-40,45)}}$$&lt;br /&gt;
a negative x and positive y&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:line06c.gif|left]]$$\picture(100){(50,50){\line(-40,-45)}}$$&lt;br /&gt;
a negative x and negative y&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:line06d.gif|left]]$$\picture(100){(50,50){\line(40,-45)}}$$&lt;br /&gt;
a positive x and a negative y&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Essentially, what these points boil down to is that anything above the insertion point is a positive on the y axis, anything below is a negative. Anything to the left of the insertion point is a negative while everything to the right is a positive. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:line06e.gif|left]]&lt;br /&gt;
| $$\picture(100){(50,50){\line(40,45)}(50,50){\line(-40,45)}(50,50){\line(-40,-45)}(50,50){\line(40,-45)}}$$&lt;br /&gt;
&lt;br /&gt;
The co-ordinate alignment process in TeX is not that good that you can use one set of co-ords as a single starting point for all lines. The layering of each object varies because of the position of the previous object, so each object needs to be exactly placed.&lt;br /&gt;
&lt;br /&gt;
This co-ord structure has a great deal of impact on intersecting lines, parallel lines and triangles. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Intersecting Lines==&lt;br /&gt;
&lt;br /&gt;
You can set up an intersecting pair easily enough, using the \picture control sequence.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:cfmimetex31.gif|left]]&lt;br /&gt;
| $$ \picture(200){(10,0){\line(150,150)} (0,130){\line(180,-180)}} $$&lt;br /&gt;
&lt;br /&gt;
The lines that are drawn can be labeled.&lt;br /&gt;
&lt;br /&gt;
$$ \picture(200){(10,0){\line(150,150)}(0,130){\line(180,-180)}&lt;br /&gt;
(0,10){A}(0,135){B}(140,0){C}(140,150){D}} $$ &lt;br /&gt;
&lt;br /&gt;
To produce another image.&lt;br /&gt;
| [[Image:cfmimetex32.gif|right]]&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot; style=&amp;quot;text-align: center;&amp;quot;| To which you may want to ask the question: &lt;br /&gt;
$$The \ \angle \ of \ AXB \ is \ 72\textdegree. \ What \ is \ the \ value \ of \ \angle BXD? $$&lt;br /&gt;
 [[Image: cfmimetex32a.gif|center]] &lt;br /&gt;
&lt;br /&gt;
NOTE: Labeling this image, above-right, turned out to be fairly simple. Offsetting points by a few pixels at the start or end points of the lines proved a successful strategy. The X point proved a little more problematic, and took a number of adjustments before getting it right. Experience here will help.&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;| With labels the drawing can become a little more like your traditional geometric drawing, but the devil is in the details. The parallel markers need to be placed properly, and that is where experience really comes into it. On lines that are vertical or horizontal, you can get away with using the &amp;gt; or &amp;lt; directly from the keyboard, or the &amp;lt;math&amp;gt;\gg&amp;lt;/math&amp;gt;  or &amp;lt;math&amp;gt;\ll&amp;lt;/math&amp;gt;  symbols. In either case, you need to position them properly.&lt;br /&gt;
&lt;br /&gt;
The code:&lt;br /&gt;
$$\picture(200){(15,45){\line(170,0)} (15,30){c}(170,28){d}(15,160){\line(170,0)}(15,145){e}(180,143){f}(50,20){\line(110,175)}(58,20){a}(140,185){b}(42,32){\kappa}(53,48){\beta}&lt;br /&gt;
(150,165){\kappa}&lt;br /&gt;
(90,38){\gg}(80,153){\gg}&lt;br /&gt;
}$$&lt;br /&gt;
| [[Image:line10.gif|right]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Lines and Arcs==&lt;br /&gt;
&lt;br /&gt;
Combining lines and arcs is a serious challenge actually, on a number of levels. For example lets take an arc from the first page on circles.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image: line11.gif|left]]&lt;br /&gt;
| Fairly innocuous of itself, but when we start to add in elements, it changes dramatically.&lt;br /&gt;
&lt;br /&gt;
$$ \circle(120;90,180) $$&lt;br /&gt;
|-&lt;br /&gt;
| [[Image: line12.gif|left]]&lt;br /&gt;
| $$\picture(150){(75,75){\circle(120;90,180)}(75,75){\line(-70,0)}(75,75){\line(0,75)}} $$&lt;br /&gt;
All elements in this drawing start in the same place. Each is layered, and properly placed on the canvas, and using the same co-ord to start makes it easy to control them. No matter the size of the arc, intersecting lines can all be drawn using the centre co-ords of the arc. &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Triangles == &lt;br /&gt;
&lt;br /&gt;
Of all the drawing objects, it is actually triangles that present the most challenge. For example:&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:line13.gif|left]]&lt;br /&gt;
$$\picture(350){(10,10){\line(0,320)}(10,330){\line(330,0)}(10,10){\line(330,320)}}$$&lt;br /&gt;
|This is a simple triangle, one that allows us to establish a simple set of rules for the sides. The vertical always has an x=0 co-ord and the horizontal always has a y=0 co-ord.&lt;br /&gt;
&lt;br /&gt;
In this case with an x value of 330 on the horizontal, and a y value of 320 on the vertical, the hypotenuse should then have a value of x=340, and the y=330, but not so, they actually have an x=330 and a y=320.&lt;br /&gt;
&lt;br /&gt;
There is no need to add the starting point co-ords to the x and y values of the line.&lt;br /&gt;
| [[Image:line14.gif|right]]&lt;br /&gt;
$$picture(350){(10,10){\line(330,0)}(340,10){\line(0,320)}(340,330){\line(-330,-320)}}$$ &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
This triangle has been developed for a Trigonometry page - but the additional notation should provide insight into how you can use it. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:line16.gif|left]]&lt;br /&gt;
| This is a labeled image, but it has an \fbox in it with its little line. With some effort, it could be replaced with two intersecting short lines.&lt;br /&gt;
$$\picture(350,150){(25,25){\line(300,0)}(325,25){\line(0,110)}(25,25){\line(300,110)}(309,25){\fbox{\line(5,5)}}&lt;br /&gt;
(307,98){\theta}(135,75){\beta}(150,5){\alpha}(335,75){\epsilon}}$$ &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| The triangle shows like: &lt;br /&gt;
[[Image:trig01.gif|left]]&lt;br /&gt;
|We use the different elements of the triangle to identify those things we need to know about a right-angled triangle. &lt;br /&gt;
&lt;br /&gt;
The hypotenuse is always the side that is opposite the right angle. The longest side is always the Hypotenuse. &lt;br /&gt;
&lt;br /&gt;
To identify the other elements of the triangle we look for the sign &amp;lt;math&amp;gt;\theta&amp;lt;/math&amp;gt;. &amp;lt;math&amp;gt;\Theta&amp;lt;/math&amp;gt; is the starting point for naming the other sides. &lt;br /&gt;
&lt;br /&gt;
The side that is opposite &amp;lt;math&amp;gt;\angle \theta&amp;lt;/math&amp;gt; is known as the Opposite. &lt;br /&gt;
&lt;br /&gt;
The side that lies alongside &amp;lt;math&amp;gt;\angle \theta&amp;lt;/math&amp;gt; is known as the Adjacent side. &lt;br /&gt;
&lt;br /&gt;
To determine which is which, draw a line that bisects &amp;lt;math&amp;gt;\angle \theta&amp;lt;/math&amp;gt; and whatever line it crosses is the Opposite side. &lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;| The code:&lt;br /&gt;
$$ \picture(350,250){(25,25){\line(300,0)}(25,25){\line(0,220)}(25,245){\line(300,-220)}(310,25){\circle(100;135,180)}(20,100){\line(310,-75)} (25,25){\fbox{\line(5,5)}}(25,25){\line(150,150)}(165,140){Hypotenuse}(120,2){Adjacent}(2,80){\rotatebox{90}{Opposite}}(270,40){\theta}}$$&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Using TeX Notation]]&lt;br /&gt;
* [[Using TeX Notation 2]]&lt;br /&gt;
* [[Using TeX Notation 4]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Mathematics]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Using_TeX_Notation_2&amp;diff=96344</id>
		<title>Using TeX Notation 2</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Using_TeX_Notation_2&amp;diff=96344"/>
		<updated>2021-08-10T15:21:06Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;As we have already covered the basics of TeX Notation in Moodle, this page is devoted to the characters you can use.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;WARNING:&#039;&#039;&#039; In this Wiki environment, the TeX filter is not controlling the essential rendering of the control sequences. The effects are the same, but they are rendered by another Tex filter or I have uploaded images from my own Moodle of the code&#039;s rendering. It helps the syntax is almost the same though, but unless you download and install TeX Live, a 2gb download, please use the code examples given. &lt;br /&gt;
&lt;br /&gt;
==Maths symbols available in Moodle==&lt;br /&gt;
&lt;br /&gt;
A number of the characters and symbols below have already been covered in previous pages, but this is a more exhaustive list. There are a number more, but their relevance to K-12 maths is questionable.&lt;br /&gt;
&lt;br /&gt;
Keyboard characters are available as themselves but many characters have a significance in TeX. All command sequences start and end with the $$ i.e. $$ \&#039;&#039;entire command sequence&#039;&#039; $$. All control sequences start with the backslash, \, i.e. \times, or \frac{1}{2}, and have no end character.  There are a number of different types of charsets available, not just Maths but also scientific sets but these need be installed to your Moodle if you want additional charsets. Unfortunately, TeX Notation is designed for use in Maths, not science, so it may struggle using non-Maths charsets.&lt;br /&gt;
&lt;br /&gt;
==Symbols==&lt;br /&gt;
&lt;br /&gt;
These are not all the symbols that may be available in TeX Notation for Moodle, just the ones that I have found to work in Moodle.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| \amalg &lt;br /&gt;
| &amp;lt;math&amp;gt;\amalg&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \cup&lt;br /&gt;
| &amp;lt;math&amp;gt;\cup&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \oplus&lt;br /&gt;
| &amp;lt;math&amp;gt;\oplus&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \times&lt;br /&gt;
| &amp;lt;math&amp;gt;\times&amp;lt;/math&amp;gt;   &lt;br /&gt;
|-&lt;br /&gt;
|\ast&lt;br /&gt;
|&amp;lt;math&amp;gt;\ast&amp;lt;/math&amp;gt;  &lt;br /&gt;
|\dagger&lt;br /&gt;
|&amp;lt;math&amp;gt;\dagger&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \oslash&lt;br /&gt;
| &amp;lt;math&amp;gt;\oslash&amp;lt;/math&amp;gt;   &lt;br /&gt;
| \triangleleft&lt;br /&gt;
| &amp;lt;math&amp;gt;\triangleleft&amp;lt;/math&amp;gt;   &lt;br /&gt;
|-&lt;br /&gt;
| \bigcirc&lt;br /&gt;
| &amp;lt;math&amp;gt;\bigcirc&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \ddagger&lt;br /&gt;
| &amp;lt;math&amp;gt;\ddagger&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \otimes&lt;br /&gt;
| &amp;lt;math&amp;gt;\otimes&amp;lt;/math&amp;gt;   &lt;br /&gt;
| \triangleright&lt;br /&gt;
| &amp;lt;math&amp;gt;\triangleright&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| \bigtriangledown&lt;br /&gt;
| &amp;lt;math&amp;gt;\bigtriangledown&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \diamond&lt;br /&gt;
| &amp;lt;math&amp;gt;\diamond&amp;lt;/math&amp;gt;   &lt;br /&gt;
| \pm&lt;br /&gt;
| &amp;lt;math&amp;gt;\pm&amp;lt;/math&amp;gt;  	&lt;br /&gt;
| \odot&lt;br /&gt;
| &amp;lt;math&amp;gt;\odot&amp;lt;/math&amp;gt;   &lt;br /&gt;
|- &lt;br /&gt;
| \bigtriangleup&lt;br /&gt;
| &amp;lt;math&amp;gt;\bigtriangleup&amp;lt;/math&amp;gt;   &lt;br /&gt;
| \div&lt;br /&gt;
| &amp;lt;math&amp;gt;\div&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \ominus&lt;br /&gt;
| &amp;lt;math&amp;gt;\ominus&amp;lt;/math&amp;gt;   &lt;br /&gt;
| \wr&lt;br /&gt;
| &amp;lt;math&amp;gt;\wr&amp;lt;/math&amp;gt;   &lt;br /&gt;
|-&lt;br /&gt;
| \circ&lt;br /&gt;
| &amp;lt;math&amp;gt;\circ&amp;lt;/math&amp;gt;   &lt;br /&gt;
| \wedge&lt;br /&gt;
| &amp;lt;math&amp;gt;\wedge&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \vee&lt;br /&gt;
| &amp;lt;math&amp;gt;\vee&amp;lt;/math&amp;gt;   &lt;br /&gt;
| \sqcup&lt;br /&gt;
| &amp;lt;math&amp;gt;\sqcup&amp;lt;/math&amp;gt;  &lt;br /&gt;
|- &lt;br /&gt;
| \leq&lt;br /&gt;
| &amp;lt;math&amp;gt;\leq&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \geq&lt;br /&gt;
| &amp;lt;math&amp;gt;\geq&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \equiv&lt;br /&gt;
| &amp;lt;math&amp;gt;\equiv&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \prec&lt;br /&gt;
| &amp;lt;math&amp;gt;\prec&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \succ&lt;br /&gt;
| &amp;lt;math&amp;gt;\succ&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \sim&lt;br /&gt;
| &amp;lt;math&amp;gt;\sim&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \perp&lt;br /&gt;
| &amp;lt;math&amp;gt;\perp&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \preceq&lt;br /&gt;
| &amp;lt;math&amp;gt;\preceq&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \succeq&lt;br /&gt;
| &amp;lt;math&amp;gt;\succeq&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \simeq&lt;br /&gt;
| &amp;lt;math&amp;gt;\simeq&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \mid&lt;br /&gt;
| &amp;lt;math&amp;gt;\mid&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \ll&lt;br /&gt;
| &amp;lt;math&amp;gt;\ll&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \gg &lt;br /&gt;
| &amp;lt;math&amp;gt;\gg&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \asymp&lt;br /&gt;
| &amp;lt;math&amp;gt;\asymp&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \parallel&lt;br /&gt;
| &amp;lt;math&amp;gt;\parallel&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \subset&lt;br /&gt;
| &amp;lt;math&amp;gt;\subset&amp;lt;/math&amp;gt;  &lt;br /&gt;
|- &lt;br /&gt;
| \supset&lt;br /&gt;
| &amp;lt;math&amp;gt;\supset&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \subseteq&lt;br /&gt;
| &amp;lt;math&amp;gt;\subseteq&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \supseteq&lt;br /&gt;
| &amp;lt;math&amp;gt;\supseteq&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \approx&lt;br /&gt;
| &amp;lt;math&amp;gt;\approx&amp;lt;/math&amp;gt;  &lt;br /&gt;
|- &lt;br /&gt;
| \neq&lt;br /&gt;
| &amp;lt;math&amp;gt;\neq&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \ni&lt;br /&gt;
| &amp;lt;math&amp;gt;\ni&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \notin&lt;br /&gt;
| &amp;lt;math&amp;gt;\notin&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \in&lt;br /&gt;
| &amp;lt;math&amp;gt;\ni&amp;lt;/math&amp;gt;  &lt;br /&gt;
|- &lt;br /&gt;
| \vdash&lt;br /&gt;
| &amp;lt;math&amp;gt;\vdash&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \dashv&lt;br /&gt;
| &amp;lt;math&amp;gt;\dashv&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \bullet&lt;br /&gt;
| &amp;lt;math&amp;gt;\bullet&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \cdot&lt;br /&gt;
| &amp;lt;math&amp;gt;\cdot&amp;lt;/math&amp;gt;  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Arrows==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \leftarrow	&lt;br /&gt;
| &amp;lt;math&amp;gt; \leftarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \longleftarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \longleftarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \Leftarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \Leftarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \Longleftarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \Longleftarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \rightarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \rightarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \longrightarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \longrightarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \Rightarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \Rightarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \Longrightarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \Longrightarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \uparrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \uparrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \Uparrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \Uparrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \downarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \downarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \Downarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \Downarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \leftrightarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \leftrightarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \longleftrightarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \longleftrightarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \updownarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \updownarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \Updownarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \Updownarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \Leftrightarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \Leftrightarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \Longleftrightarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \Longleftrightarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \leftrightharpoons&lt;br /&gt;
| &amp;lt;math&amp;gt; \rightleftharpoons&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \Im&lt;br /&gt;
| &amp;lt;math&amp;gt; \Im&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \nearrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \nearrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \nwarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \nwarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \swarrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \swarrow&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \searrow&lt;br /&gt;
| &amp;lt;math&amp;gt; \searrow&amp;lt;/math&amp;gt;    &lt;br /&gt;
  &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Delimiters and Maths Constructs==&lt;br /&gt;
&lt;br /&gt;
NOTE: Most delimiters and constructs need additional parameters for them to appear appropriately.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \{x&lt;br /&gt;
| &amp;lt;math&amp;gt; \{x &amp;lt;/math&amp;gt;  &lt;br /&gt;
| x | \}&lt;br /&gt;
| &amp;lt;math&amp;gt;x | \} &amp;lt;/math&amp;gt;  &lt;br /&gt;
| \rangle&lt;br /&gt;
| &amp;lt;math&amp;gt; \rangle &amp;lt;/math&amp;gt;  &lt;br /&gt;
| \langle&lt;br /&gt;
| &amp;lt;math&amp;gt; \langle &amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \angle&lt;br /&gt;
| &amp;lt;math&amp;gt; \angle &amp;lt;/math&amp;gt;  &lt;br /&gt;
| \=&lt;br /&gt;
| &amp;lt;math&amp;gt; \| &amp;lt;/math&amp;gt;  &lt;br /&gt;
| \sqrt{ab}&lt;br /&gt;
| &amp;lt;math&amp;gt; \sqrt{ab}&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \sqrt[n]{ab}&lt;br /&gt;
| &amp;lt;math&amp;gt; \sqrt[n]{ab}&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \frac{ab}{cd}&lt;br /&gt;
| &amp;lt;math&amp;gt; \frac{ab}{cd}&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \backslash&lt;br /&gt;
| &amp;lt;math&amp;gt; \backslash&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \widehat{ab}&lt;br /&gt;
| &amp;lt;math&amp;gt; \widehat{ab}&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \$&lt;br /&gt;
| &amp;lt;math&amp;gt; \$ &amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \overline{ab}&lt;br /&gt;
| &amp;lt;math&amp;gt; \overline{ab}&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \underline{ab}&lt;br /&gt;
| &amp;lt;math&amp;gt; \underline{ab}&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \therefore&lt;br /&gt;
| &amp;lt;math&amp;gt; \therefore&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \ddots&lt;br /&gt;
| &amp;lt;math&amp;gt; \ddots&amp;lt;/math&amp;gt;  &lt;br /&gt;
|-&lt;br /&gt;
| \%&lt;br /&gt;
| &amp;lt;math&amp;gt; \%&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \#&lt;br /&gt;
| &amp;lt;math&amp;gt; \# &amp;lt;/math&amp;gt;  &lt;br /&gt;
| \vdots&lt;br /&gt;
| &amp;lt;math&amp;gt; \vdots&amp;lt;/math&amp;gt;  &lt;br /&gt;
| \emptyset&lt;br /&gt;
| &amp;lt;math&amp;gt; \emptyset&amp;lt;/math&amp;gt;  &lt;br /&gt;
|}&lt;br /&gt;
WARNINGS: The &amp;amp; character in LaTeX usually requires a backslash, \. In TeX Notation for Moodle, apparently, it does not. Other packages, AsciiMath, may use it differently again so be careful using it. The copyright character may use the MimeTeX charset, and produces a copyright notice for John Forkosh Associates who provided a lot of the essential packages for the TeX Notation for Moodle, so I understand. I have been, almost reliably, informed that a particular instruction will produce a different notice though .:)    &lt;br /&gt;
&lt;br /&gt;
There are also a number of characters that can be used in TeX Notation for Moodle but do not render in this page:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image: cfmimetex08.png|frame|left]] &lt;br /&gt;
| Larger \left(x and \right) brackets&lt;br /&gt;
|-&lt;br /&gt;
|[[Image: cfmimetex06.gif|frame|left]]&lt;br /&gt;
| \widetilde{ab}&lt;br /&gt;
|-&lt;br /&gt;
|[[Image: cfmimetex09.gif|frame|left]]&lt;br /&gt;
| \textdegree or (50)^\circ&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Greek Letters==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| &amp;lt;math&amp;gt;\alpha&amp;lt;/math&amp;gt;&lt;br /&gt;
| \alpha  	&lt;br /&gt;
| &amp;lt;math&amp;gt;\beta&amp;lt;/math&amp;gt;&lt;br /&gt;
| \beta  	&lt;br /&gt;
| &amp;lt;math&amp;gt;\gamma&amp;lt;/math&amp;gt;&lt;br /&gt;
| \gamma &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\delta&amp;lt;/math&amp;gt;&lt;br /&gt;
| \delta  	&lt;br /&gt;
| &amp;lt;math&amp;gt;\epsilon&amp;lt;/math&amp;gt;&lt;br /&gt;
| \epsilon &lt;br /&gt;
| &amp;lt;math&amp;gt;\zeta&amp;lt;/math&amp;gt;&lt;br /&gt;
| \zeta &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\eta&amp;lt;/math&amp;gt;&lt;br /&gt;
| \eta &lt;br /&gt;
| &amp;lt;math&amp;gt;\theta&amp;lt;/math&amp;gt;&lt;br /&gt;
| \theta &lt;br /&gt;
| &amp;lt;math&amp;gt;\iota&amp;lt;/math&amp;gt;&lt;br /&gt;
| \iota &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\kappa&amp;lt;/math&amp;gt;&lt;br /&gt;
| \kappa &lt;br /&gt;
| &amp;lt;math&amp;gt;\lambda&amp;lt;/math&amp;gt;&lt;br /&gt;
| \lambda &lt;br /&gt;
| &amp;lt;math&amp;gt;\mu&amp;lt;/math&amp;gt;&lt;br /&gt;
| \mu &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\xi&amp;lt;/math&amp;gt;&lt;br /&gt;
| \xi &lt;br /&gt;
| &amp;lt;math&amp;gt;\pi&amp;lt;/math&amp;gt;&lt;br /&gt;
| \pi &lt;br /&gt;
| &amp;lt;math&amp;gt;\rho&amp;lt;/math&amp;gt;&lt;br /&gt;
| \rho &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\sigma&amp;lt;/math&amp;gt;&lt;br /&gt;
| \sigma &lt;br /&gt;
| &amp;lt;math&amp;gt;\tau&amp;lt;/math&amp;gt;&lt;br /&gt;
| \tau &lt;br /&gt;
| &amp;lt;math&amp;gt;\upsilon&amp;lt;/math&amp;gt;&lt;br /&gt;
| \upsilon &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\phi&amp;lt;/math&amp;gt;&lt;br /&gt;
| \phi &lt;br /&gt;
| &amp;lt;math&amp;gt;\chi&amp;lt;/math&amp;gt;&lt;br /&gt;
| \chi &lt;br /&gt;
| &amp;lt;math&amp;gt;\psi&amp;lt;/math&amp;gt;&lt;br /&gt;
| \psi&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\omega&amp;lt;/math&amp;gt;&lt;br /&gt;
| \omega  	&lt;br /&gt;
| &amp;lt;math&amp;gt;\Omega&amp;lt;/math&amp;gt;&lt;br /&gt;
| \Omega  	&lt;br /&gt;
| &amp;lt;math&amp;gt;\Theta&amp;lt;/math&amp;gt;&lt;br /&gt;
| \Theta&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\Delta&amp;lt;/math&amp;gt;&lt;br /&gt;
| \Delta  	&lt;br /&gt;
| &amp;lt;math&amp;gt;\Pi&amp;lt;/math&amp;gt;&lt;br /&gt;
| \Pi  	&lt;br /&gt;
| &amp;lt;math&amp;gt;\Phi&amp;lt;/math&amp;gt;&lt;br /&gt;
| \Phi&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\Gamma &amp;lt;/math&amp;gt;&lt;br /&gt;
| \Gamma&lt;br /&gt;
| &amp;lt;math&amp;gt;\Lambda  &amp;lt;/math&amp;gt;&lt;br /&gt;
| \Lambda  &lt;br /&gt;
| &amp;lt;math&amp;gt;\Sigma  &amp;lt;/math&amp;gt;&lt;br /&gt;
| \Sigma  &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\Psi &amp;lt;/math&amp;gt;&lt;br /&gt;
| \Psi&lt;br /&gt;
| &amp;lt;math&amp;gt;\Xi &amp;lt;/math&amp;gt;&lt;br /&gt;
| \Xi&lt;br /&gt;
| &amp;lt;math&amp;gt;\Upsilon&amp;lt;/math&amp;gt;&lt;br /&gt;
| \Upsilon&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\vartheta &amp;lt;/math&amp;gt;&lt;br /&gt;
| \vartheta&lt;br /&gt;
| &amp;lt;math&amp;gt;\varrho  &amp;lt;/math&amp;gt;&lt;br /&gt;
| \varrho&lt;br /&gt;
| &amp;lt;math&amp;gt;\varphi &amp;lt;/math&amp;gt;&lt;br /&gt;
| \varphi &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;math&amp;gt;\varsigma &amp;lt;/math&amp;gt;&lt;br /&gt;
| \varsigma&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notable Exceptions&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Greek letter omicron. Simply put, omicron is an &amp;quot;o&amp;quot; or an &amp;quot;O&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
At the time of writing, these Greek capital letters cannot be rendered by TeX Notation in Moodle: &lt;br /&gt;
  Alpha, Beta, Zeta, Eta, Tau, Chi, Mu, Iota, Kappa and Epsilon&lt;br /&gt;
Given the relationship of Tau to finding the area of a circle, it can easily replace Pi, &amp;lt;math&amp;gt;\pi&amp;lt;/math&amp;gt;, it may soon be though.&lt;br /&gt;
&lt;br /&gt;
==Fonts==&lt;br /&gt;
&lt;br /&gt;
To use a particular font you need to access the font using the same syntax as demonstrated above.&lt;br /&gt;
&lt;br /&gt;
A math calligraphic font:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathcal{ABCDEFGHIJKLMNOPQRSTUVXYZ}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
$$ \mathcal{ABCDEFGHIJKLMNOPQRSTUVXYZ}$$&lt;br /&gt;
&lt;br /&gt;
A Castellar type font:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathbb{ABCDEFGHIJKLMNOPQRSTUVXYZ}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
$$ \mathbb{ABCDEFGHIJKLMNOPQRSTUVXYZ}$$&lt;br /&gt;
&lt;br /&gt;
An Old English type font:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathfrak{ABCDEFGHIJKLMNOPQRSTUVXYZ}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
$$ \mathfrak{ABCDEFGHIJKLMNOPQRSTUVXYZ}$$&lt;br /&gt;
&lt;br /&gt;
This is different in Tex Notation in Moodle than it is for other, full, TeX packages. &lt;br /&gt;
&lt;br /&gt;
An italic font:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;ABCDEFGHIJKLMNOPQRSTUVXYZ&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
$$ \mathi{ABCDEFGHIJKLMNOPQRSTUVXYZ} $$&lt;br /&gt;
&lt;br /&gt;
A bold-face font:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\mathbf{ABCDEFGHIJKLMNOPQRSTUVXYZ}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
or&lt;br /&gt;
&lt;br /&gt;
$$ \mathbf{ABCDEFGHIJKLMNOPQRSTUVXYZ} $$&lt;br /&gt;
&lt;br /&gt;
==Size of displays==&lt;br /&gt;
&lt;br /&gt;
The default size is rendered slightly larger than normal font size. TeX Notation in Moodle uses eight different sizes ranging from &amp;quot;tiny&amp;quot; to &amp;quot;huge&amp;quot;. However,these values seem to mean different things and are, I suspect, dependent upon the User&#039;s screen resolution. The sizes can be noted in four different ways: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \fontsize{0} to \fontsize{7}&lt;br /&gt;
| $$\fontsize{2} x \ = \ \frac{\sqrt{144}}{2} \ \times \ (y \ + \ 12)$$&lt;br /&gt;
| [[Image:cfmimetex11a.gif|left]]&lt;br /&gt;
|-&lt;br /&gt;
| \fs{0} to \fs{7}&lt;br /&gt;
| $$\fs{4} x \ = \ \frac{\sqrt{144}}{2} \ \times \ (y \ + \ 12)$$&lt;br /&gt;
| [[Image:cfmimetex11b.gif|left]]&lt;br /&gt;
|-&lt;br /&gt;
| \fs0 to \fs7&lt;br /&gt;
| $$\fs6 x \ = \ \frac{\sqrt{144}}{2} \ \times \ (y \ + \ 12)$$&lt;br /&gt;
| [[Image:cfmimetex11c.gif|left]]&lt;br /&gt;
|-&lt;br /&gt;
| As well, you can use \tiny \small &lt;br /&gt;
\normalsize \large \Large &lt;br /&gt;
\LARGE \huge \Huge&lt;br /&gt;
| $$\normalsize x \ = \ \frac{\sqrt{144}}{2} \ \times \ (y \ + \ 12)$$&lt;br /&gt;
| [[Image:cfmimetex11d.gif|left]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
It appears that TeX Notation in Moodle now allows \fs6, \fs7, \huge and \Huge to be properly rendered.&lt;br /&gt;
&lt;br /&gt;
==Colour==&lt;br /&gt;
&lt;br /&gt;
Unlike many scripting languages, we only need to name the colour we want to use. You may have to experiment a little with colours, but it will make for a brighter page. Once named, the entire statement will appear in the colour, and if you mix colours, the last named colour will dominate. Some examples: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| $$ \red x \ = \ \frac{\sqrt{144}}{2} \ \times \ (y \ + \ 12) $$&lt;br /&gt;
| [[Image: cfmimetex30a.gif|right]] &lt;br /&gt;
|-&lt;br /&gt;
| $$ \blue x \ = \ \frac{\sqrt{144}}{2} \ \times \ (y \ + \ 12) $$&lt;br /&gt;
| [[Image: cfmimetex30b.gif|right]]&lt;br /&gt;
|-&lt;br /&gt;
| $$ \green x \ = \ \frac{\sqrt{144}}{2} \ \times \ (y \ + \ 12) $$&lt;br /&gt;
| [[Image: cfmimetex30c.gif|right]]&lt;br /&gt;
|-&lt;br /&gt;
| $$ \red x \ = \ \frac{\sqrt{144}}{2}$$ $$ \times $$ &lt;br /&gt;
$$\green (y \ + \ 12) $$ $$ \ = $$ $$ \ \blue 6^3 $$ &lt;br /&gt;
| [[Image: cfmimetex30d.gif|right]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
You may note this last one, it is considerably more complex than the previous for colours. TeX Notation in Windows does not allow multicoloured equations, if you name a number of colours in the equation, only the last named will be used.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
* [[Using TeX Notation]]&lt;br /&gt;
* [[Using TeX Notation 3]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Mathematics]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Using_TeX_Notation&amp;diff=96343</id>
		<title>Using TeX Notation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Using_TeX_Notation&amp;diff=96343"/>
		<updated>2021-08-10T15:21:05Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;While there are quite a few notational systems employed for the purpose of representing Math notation, Moodle core provides a [[TeX filter]] that can be configured to employ identified latex, dvips and convert binaries to display a gif or png representation of a Tex expression (and hopefully will soon be able to take advantage of newer Tex distributions which will rely on latex and dvipng.) The Moodle core Tex filter falls back to the use of MimeTex if these binaries can&#039;t be located. Note that the core TeX filter is not the only way to display Tex expressions in Moodle and the discussion of [[Mathematics]] tools address a variety of other solutions. Additionally, the results obtained from the Moodle Tex or algebra filters are dependent on the Tex binaries you have installed. &lt;br /&gt;
&lt;br /&gt;
If you use the Moodle native TeX Notation, you have to realize that this is not the only way of using TeX in Moodle and there are quite a few other &amp;quot;flavors&amp;quot; in the Tex world. You must also accept that the Moodle implementation of TeX is very limited, and a lot of things that work in other varieties of TeX and Latex will not work in TeX Notation. For example, there are three major [http://www.math.uiuc.edu/~hildebr/tex/course/intro2.html Tex modes], but the Moodle core Tex filter employs only one. To make matters even more confusing, Moodle Docs now use [http://www.tug.org/texlive/doc/texlive-en/texlive-en.html Tex Live], which uses the delimiters &amp;lt;nowiki&amp;gt;&amp;lt;math&amp;gt;statement&amp;lt;/math&amp;gt;&amp;lt;/nowiki&amp;gt; to denote TeX statements, yet these pages demonstrate the use of tokens, the $$ statement $$ token, that implement TeX in Moodle&#039;s native TeX Notation. Essentially, what may work in one Tex implementation, may not work in another - yet a lot of the actual maths coding is exactly the same, no matter how it is denoted.&lt;br /&gt;
&lt;br /&gt;
TeX itself is felt by some to present a significant learning curve, and the internet offers a number of tutorials. A.J. Hildebrand, a Math professor at UIUC offers [http://www.math.uiuc.edu/~hildebr/tex/ resources and a tutorial here that you may find helpful.] However, the basics of TeX can be mastered quite quickly. &lt;br /&gt;
&lt;br /&gt;
There are a number of Maths tools available and probably one of the more useful tools for using Tex in Moodle (or elsewhere for that matter), is [[Dragmath]] which will allow you to use a GUI constructor to build your expression, and then insert it in the format you choose.&lt;br /&gt;
&lt;br /&gt;
There is now, for Moodle 2.x, and [[Advanced Maths Tools]] plugin. &lt;br /&gt;
&lt;br /&gt;
==NOTICE==&lt;br /&gt;
The discussion in these pages is centred entirely upon using the TeX Notation filter in Moodle. The code examples given are proven to work inside Moodle, but much of the discussion that addresses Tex syntax can be generalized to other applications that parse Tex. So far, all items tested work in both Moodle 1.9.x and Moodle 2.0 without change or further refinement.&lt;br /&gt;
&lt;br /&gt;
==Using TeX Notation with the Moodle Tex filter==&lt;br /&gt;
&lt;br /&gt;
For the most part, the TeX Notation has been built using a sub-set of characters from the TeX &amp;quot;default&amp;quot; character set. The trouble is there does not seem to be a &amp;quot;default&amp;quot; character set for TeX. This is one of the most confusing aspects of using TeX Notation in Moodle. When we realise that the documentation we are using is related to the creation of printed documents, and we want to use TeX on line, in Moodle, then further problems occur. There are no environment statements to be made. There are few \begins and \ends. If you go to Administration &amp;gt; Modules &amp;gt; Filters &amp;gt; Filter Manager you will see what filters have been enabled. If you then go to the TeX Notation page, the default preamble is editable via the text box. Using this tool you can add in or subtract font packages and other packages, change the default font package, etc.&lt;br /&gt;
&lt;br /&gt;
==Language Conventions== &lt;br /&gt;
&lt;br /&gt;
To invoke the TeX filter, use the $$ symbols to open and close statements. To invoke a particular command or control sequence, use the backslash, \. A typical control sequence looks like: &lt;br /&gt;
&lt;br /&gt;
  $$ x\ =\ \frac{\sqrt{144}}{2}\ \times\ (y\ +\ 12) $$  &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image: cfmimetex10.gif|frame|center]]&lt;br /&gt;
|-&lt;br /&gt;
|Fraction and square root.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Additional spaces are placed into the equation by using the \ without a trailing character. Escape characters, of which there are a few in Moodle&#039;s TeX Notation, have the \ in front of them. These are usually set aside for reserved characters.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039;it also appears that different Moodles will produce different results with regard to spacing so it may require a bit of trial and error to get right.&lt;br /&gt;
&lt;br /&gt;
==Available Characters==&lt;br /&gt;
There seems to be a number of differences between what characters are available in Tex Notation and what are not and what is described in Mimetex. There also seems to be great discrepancies between what the Tex and Latex manuals tell you is available and what is actually available. If you are using such manuals or web sites, they are likely to be more confusing than helpful.  [[Using TeX Notation 2]] shows a lot of what is available, but not all.&lt;br /&gt;
&lt;br /&gt;
==Windows and TeX==&lt;br /&gt;
&lt;br /&gt;
Using TeX in Windows is simpler than it used to be. Download and install a TeX for Windows program, like [http://www.miktex.org/ MikTeX]. (MikTeX is probably the most useful at this point in time for Windows Users.) Also, a graphics package is required for rendering the scripted TeX statements into images, and probably the most readily available and easily installable program useful for this purpose would be [http://www.imagemagick.org/script/index.php ImageMagick]. While there may be better programs available for these purposes, these are the most immediately useful. &lt;br /&gt;
  &#039;&#039;&#039;Recommendation:&#039;&#039;&#039; &lt;br /&gt;
  The programs are easily installed and configured however, be aware, that for XP you can use the Program &lt;br /&gt;
  files folder to install the graphics program, but not the textmf folder, it should be installed as a stand &lt;br /&gt;
  alone folder. It has been noted that in Windows Vista or Windows 7 you should never use system folders for &lt;br /&gt;
  latex distributions, GhostScript or Imagemagick.&lt;br /&gt;
&lt;br /&gt;
==Known Issue==&lt;br /&gt;
The introduction of PHP 5.3 caused some TeX rendering to break in Moodle. The flaw was traced back to the way deprecated functions were reported.  [http://tracker.moodle.org/browse/MDL-22006 Moodle Tracker] responded with this:    &lt;br /&gt;
&lt;br /&gt;
In file &#039;&#039;&#039;filter/tex/pix.php&#039;&#039;&#039; line 29:&lt;br /&gt;
  &#039;&#039;&#039;error_reporting(E_ALL);&#039;&#039;&#039;&lt;br /&gt;
corrupts TeX images with php 5.3.X and there are at least 2 easy ways to fix it:&lt;br /&gt;
&lt;br /&gt;
1) To totally remove line 29 and error reporting from that file&lt;br /&gt;
&lt;br /&gt;
2) To change line 29 to:&lt;br /&gt;
  &#039;&#039;&#039;error_reporting(E_ALL &amp;amp; ~E_DEPRECATED);&#039;&#039;&#039;&lt;br /&gt;
so that php 5.3.X does not show the deprecated functions warnings that otherwise would prevent showing of TeX images.&lt;br /&gt;
&lt;br /&gt;
==Reserved Characters and Keywords==&lt;br /&gt;
&lt;br /&gt;
Most characters and numbers on the keyboard can be used at their default value. As with any computing language, though, there are a set of reserved characters and keywords that are used by the program for its own purposes. TeX Notation is no different, but it does have a very small set of Reserved Characters. This will not be a complete list of reserved characters, but some of these are: &lt;br /&gt;
&lt;br /&gt;
  @ # $ % ^ &amp;amp; * ( ) . &lt;br /&gt;
&lt;br /&gt;
To use these characters in an equation just place the \ in front of them \$ or \%. If you want to use the backslash, just use \backslash. The only exception here seems to be the &amp;amp;, ampersand. See the characters listed in [[Using TeX Notation 2]] for more details.&lt;br /&gt;
&lt;br /&gt;
The Keywords, they are different. There is only one that is of concern here and that it the word &amp;quot;line&amp;quot;. If the \line control sequence, or command, is not properly implemented, then the consequences can be indeterminate. Controlling lines is an adventure of its own, so getting it right when written is important, you can always reposition the line, but you might get it really wrong if you do not use it with some caution. &lt;br /&gt;
&lt;br /&gt;
To use the \line control sequence, go to your text editor, open the filter\lib.php file. In this file look for the array &#039;&#039;&#039;$tex_blacklist = array(&#039;&#039;&#039;, and in the list of words that follow, you will see the word &amp;quot;\line&amp;quot;. Delete the word, with its enclosing single quote marks and trailing comma, from the list. &lt;br /&gt;
&lt;br /&gt;
If you do not have direct access to the server, then the whole thing becomes problematic. You may want to download and install your own Moodle and develop things there rather than on your production site. You can write things out in your own Moodle, render the statement, save the image and then upload it to your production site. If something goes seriously wrong, it is easier to restart your own Moodle than it is your production site.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;WARNING:&#039;&#039;&#039; If you get a dimension wrong on a line, it can actually prevent you from creating any new TeX. You will see the offending control sequence in its natural state. Everything that you have written to that point will work, but nothing you have written after that will.&lt;br /&gt;
&lt;br /&gt;
==Maths Mode==&lt;br /&gt;
A full TeX version has three modes, a &amp;quot;text mode&amp;quot;, an &amp;quot;inline maths mode&amp;quot; and a &amp;quot;maths display mode&amp;quot; but Moodle seems to stay in &amp;quot;inline maths mode&amp;quot;. Perhaps a better description of what happens is that Moodle allows a writer to enter &amp;quot;inline maths mode&amp;quot; when the $$ symbols are written and leave it when the $$ symbol appears a second time. Moodle does not appear to use the &amp;quot;maths display mode&amp;quot;. The command sequences beginning with the $$ are not current practice in any major version of TeX, and why they are used and work in Moodle is not an issue for discussion here. Current common practice in most other flavours of TeX uses a different set of command initiation sequences.&lt;br /&gt;
&lt;br /&gt;
==Superscripts, Subscripts and Roots==&lt;br /&gt;
&lt;br /&gt;
Superscripts are recorded using the caret, ^, symbol. An example for a Maths class might be: &lt;br /&gt;
&lt;br /&gt;
  $$ 4^2 \ \times \ 4^3 \ = 4^5 $$&lt;br /&gt;
  This is a shorthand way of saying: &lt;br /&gt;
  (4 x 4) x (4 x 4 x 4) = (4 x 4 x 4 x 4 x 4)&lt;br /&gt;
  or&lt;br /&gt;
  16 x 64 = 1024.&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;math&amp;gt;4^2 \ \times \ 4^3 \ = 4^5&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Subscripts are similar, but use the underscore character. &lt;br /&gt;
&lt;br /&gt;
  $$ 3x_2 \ \times \ 2x_3 $$&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;math&amp;gt;3x_2 \ \times \ 2x_3&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is OK if you want superscripts or subscripts, but square roots are a little different. This uses a control sequence. &lt;br /&gt;
&lt;br /&gt;
  $$ \sqrt{64} \ = \ 8 $$&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;math&amp;gt;\sqrt{64} \ = \ 8&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also take this a little further, but adding in a control character. You may ask a question like: &lt;br /&gt;
&lt;br /&gt;
  $$ If \ \sqrt[n]{1024} \ = \ 4, \ what \ is \ the \ value \ of \ n? $$  &lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;math&amp;gt;If \ \sqrt[n]{1024} \ = \ 4, \ what \ is \ the \ value \ of \ n?&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Using these different commands allows you to develop equations like: &lt;br /&gt;
&lt;br /&gt;
  $$ The \sqrt{64} \ \times \ 2 \ \times \ 4^3 \ = \ 1024 $$&lt;br /&gt;
  &lt;br /&gt;
  &amp;lt;math&amp;gt;The \sqrt{64} \ \times \ 2 \ \times \ 4^3 \ = \ 1024&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Superscripts, Subscripts and roots can also be noted in [[Using TeX Notation 4 | Matrices]].&lt;br /&gt;
&lt;br /&gt;
==Fractions==&lt;br /&gt;
&lt;br /&gt;
Fractions in TeX are actually simple, as long as you remember the rules.&lt;br /&gt;
&lt;br /&gt;
  $$ \frac{numerator}{denominator} $$ which produces &amp;lt;math&amp;gt;\frac{numerator}{denominator}&amp;lt;/math&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
This can be given as:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;\frac{5}{10} \ is \ equal \ to \ \frac{1}{2}&amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
This is entered as:&lt;br /&gt;
&lt;br /&gt;
  $$ \frac{5}{10} \ is \ equal \ to \ \frac{1}{2}.$$&lt;br /&gt;
&lt;br /&gt;
With fractions (as with other commands) the curly brackets can be nested so that for example you can implement negative exponents in fractions.  As you can see,&lt;br /&gt;
	&lt;br /&gt;
  $$\frac {5^{-2}}{3}$$ will produce &amp;lt;math&amp;gt;\frac {5^{-2}}{3}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  $$\left(\frac{3}{4}\right)^{-3}$$ will produce &amp;lt;math&amp;gt;\left(\frac{3}{4}\right)^{-3}&amp;lt;/math&amp;gt;  and&lt;br /&gt;
&lt;br /&gt;
  $$\frac{3}{4^{-3}}$$ will produce &amp;lt;math&amp;gt; \frac{3}{4^{-3}} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
  You likely do not want to use $$\frac{3}{4}^{-3}$$ as it produces &amp;lt;math&amp;gt;\frac{3}{4}^{-3}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You can also use fractions and negative exponents in [[Using TeX Notation 4 | Matrices]].&lt;br /&gt;
&lt;br /&gt;
==Brackets==&lt;br /&gt;
&lt;br /&gt;
As students advance through Maths, they come into contact with brackets. Algebraic notation depends heavily on brackets. The usual keyboard values of ( and ) are useful, for example:&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;math&amp;gt;d = 2 \ \times \ (4 \ - \ j)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This is written as:&lt;br /&gt;
&lt;br /&gt;
  $$ d = 2 \ \times \ (4 \ - \ j) $$&lt;br /&gt;
&lt;br /&gt;
Usually, these brackets are enough for most formulae but they will not be in some circumstances. Consider this:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;4x^3 \ + \ (x \ + \ \frac{42}{1 + x^4})&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Is OK, but try it this way:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;4x^3 \ + \ \left(x \ + \ \frac{42}{1 + x^4}\right)&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
This can be achieved by:&lt;br /&gt;
&lt;br /&gt;
  $$ 4x^3 \ + \ \left(x \ + \ \frac{42}{1 + x^4}\right) $$&lt;br /&gt;
&lt;br /&gt;
A simple change using the \left( and \right) symbols instead. Note the actual bracket is both named and presented. Brackets are almost essential in [[Using TeX Notation 4 | Matrices]].&lt;br /&gt;
&lt;br /&gt;
==Ellipsis==&lt;br /&gt;
&lt;br /&gt;
The Ellipsis is a simple code:&lt;br /&gt;
&lt;br /&gt;
  &amp;lt;math&amp;gt;x_1, \ x_2, \ \ldots, \ x_n&amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Written like:&lt;br /&gt;
&lt;br /&gt;
  $$ x_1, \ x_2, \ \ldots, \ x_n  $$&lt;br /&gt;
&lt;br /&gt;
A more practical application could be:&lt;br /&gt;
&lt;br /&gt;
Question:&lt;br /&gt;
  &amp;quot;Add together all the numbers from 1 &amp;lt;math&amp;gt;\ldots&amp;lt;/math&amp;gt; 38.&lt;br /&gt;
  What is an elegant and simple solution to this problem?&lt;br /&gt;
  Can you create an algebraic function to explain this solution?&lt;br /&gt;
  Will your solution work for all numbers?&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Answer:&lt;br /&gt;
The question uses an even number to demonstrate a mathematical process and generate an algebraic formula.&lt;br /&gt;
&lt;br /&gt;
{| class = &amp;quot;nicetable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| Part 1:&lt;br /&gt;
| Part 2.&lt;br /&gt;
| Part 3.&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
&amp;lt;math&amp;gt;1. \ 1 \ + \ 38 \ = \ 39&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;2. \ 2 \ + \ 37 \ = \ 39&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;3. \ 3 \ + \ 36 \ = \ 39&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\ldots&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;19. 19 \ + \ 20 \ = \ 39 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\therefore x \ = \ 39 \ \times \ 19 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\therefore x \ = \ 741 &amp;lt;/math&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|An algebraic function might read something like:&lt;br /&gt;
&amp;lt;math&amp;gt;t = (1 + n) \times n/2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Where t = total and n = the last number.&lt;br /&gt;
&lt;br /&gt;
|The solution is that, using the largest and the smallest numbers, the numbers are added and then multiplied by the number of different combinations to produce the same result adding the first and last numbers.&lt;br /&gt;
The answer must depend on the number, &amp;lt;math&amp;gt;\frac{n}{2}&amp;lt;/math&amp;gt; being a whole number. Therefore, the solution will not work for an odd range of numbers, only an even range.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
* [[Using TeX Notation 2]]&lt;br /&gt;
* [[TeX notation filter]] To turn on the TeX Notation &lt;br /&gt;
* [[Advanced Maths Tools]] Moodle 2.x - The Next Generation of TeX Tools&lt;br /&gt;
* [[DragMath equation editor]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Mathematics]]&lt;br /&gt;
[[Category:Teacher]]&lt;br /&gt;
[[Category:Filter]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Tutorship_module&amp;diff=96342</id>
		<title>Tutorship module</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Tutorship_module&amp;diff=96342"/>
		<updated>2021-08-10T15:21:05Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Tutorship&#039;&#039;&#039; is a schedule tutoring sessions module for Moodle, where teachers and students can make appointments for tutoring interviews within a timetable view.&lt;br /&gt;
&lt;br /&gt;
It helps to administrate and schedule tutoring hours, it allows students to make appointments with teachers for tutoring interview sessions, from a configurable time slots timetable view. Teachers can design their module timetable in order to offer the students a tutorship timetable, so that they can see and make appointments by requesting any available timetable slot. &lt;br /&gt;
&lt;br /&gt;
It was first developed under Moodle version 2.0 in November 2010. It is contributed by [http://moodle.org/user/profile.php?id=1116685 Alejandro Michavila].&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Introduction ==&lt;br /&gt;
&lt;br /&gt;
There are three different views depending on user roll:&lt;br /&gt;
;Teachers: Can manage up to three different timetables, adjust the settings that will be applied for all timetables, and they can do it within any course the teacher is enrolled in.&lt;br /&gt;
;Students: Can request or cancell time slots from the teacher&#039;s timetable, where current week is show by default, but next week is also available for viewing.&lt;br /&gt;
;Administrators: Can adjust initial module settings before any teacher adds any instance to any course.&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
&lt;br /&gt;
=== General features ===&lt;br /&gt;
&lt;br /&gt;
* Email notifications.&lt;br /&gt;
&lt;br /&gt;
* Supported English and Spanish languages.&lt;br /&gt;
&lt;br /&gt;
* Help icons on the Tutorship&#039;s elements like header or name field.&lt;br /&gt;
&lt;br /&gt;
* Display error notifications to inform user, in case an error took place.&lt;br /&gt;
&lt;br /&gt;
* Records user activity to enable audit.&lt;br /&gt;
&lt;br /&gt;
* Compatibility from 2.0 upwards.&lt;br /&gt;
&lt;br /&gt;
=== Student features ===&lt;br /&gt;
&lt;br /&gt;
* Students can choose the teacher they want to see timetable from.&lt;br /&gt;
&lt;br /&gt;
* Students can click on the time slot they want to reserve, and they can cancell their requests.&lt;br /&gt;
&lt;br /&gt;
* Current week and next week time slots view from Tutorship timetable.&lt;br /&gt;
&lt;br /&gt;
* Can reserve slots from tomorrow to next week&#039;s friday, up to a maximum of 4 reserves (depends on teacher&#039;s timetable configuration).&lt;br /&gt;
&lt;br /&gt;
* Students will receive in their email box a confirmation or cancellation of their request, and they can also see confirmation from the timetable view.&lt;br /&gt;
&lt;br /&gt;
=== Teacher features ===&lt;br /&gt;
&lt;br /&gt;
* Current week and next week time slots view from Tutorship timetable.&lt;br /&gt;
&lt;br /&gt;
* Can confirm or cancell reservations from the timetable view.&lt;br /&gt;
&lt;br /&gt;
* Can edit the timetable and can save up to three timetables.&lt;br /&gt;
&lt;br /&gt;
* Can adjust settings to all timetables, like: enable/disable sending mail to teacher, send automatic confirmations to students requests, set the number of reservation request per student (up to 4 as maximum), enable or disable student requests (students will not have the reserve link).&lt;br /&gt;
&lt;br /&gt;
=== Administrator features ===&lt;br /&gt;
&lt;br /&gt;
* Global settings can be adjusted from the module settings page at Administration &amp;gt; Modules &amp;gt; Activities &amp;gt; Tutorship.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
Here is a basic outline of the installation process:&lt;br /&gt;
&lt;br /&gt;
# DO NOT PANIC!&lt;br /&gt;
# Unzip the archive and read this file.&lt;br /&gt;
# Move the files into your Moodle mod Web directory in moodle/mod.&lt;br /&gt;
# Visit Settings &amp;gt; Site Administration &amp;gt; Notifications, you should find the module&#039;s tables successfully created.&lt;br /&gt;
# Go to Site Administration &amp;gt; Modules &amp;gt; Activities &amp;gt; Manage activities, and you should find that the tutorship has been added to the list of installed modules.&lt;br /&gt;
# Make your global settings adjustments before adding any instance.&lt;br /&gt;
# You may now proceed to add a new instance of tutorship to a course.&lt;br /&gt;
&lt;br /&gt;
== Uninstallation ==&lt;br /&gt;
&lt;br /&gt;
Here is a basic outline of the uninstallation process:&lt;br /&gt;
&lt;br /&gt;
# DO YOU REALLY WANT TO UNINSTALL?&lt;br /&gt;
# Go to Site Administration &amp;gt; Modules &amp;gt; Activities &amp;gt; Manage activities, and delete your Activity module.&lt;br /&gt;
# You may now proceed to remove the module files from moodle/mod.&lt;br /&gt;
&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
&lt;br /&gt;
=== If you are a student ===&lt;br /&gt;
&lt;br /&gt;
*Go to a course and click on the instance name, could be some name like &amp;quot;Tutoring schedule timetable&amp;quot;, but if you are not sure, you can see the module logo at tutorship/pix/ path, see package structure for further details.&lt;br /&gt;
&lt;br /&gt;
*Select a teacher from the list and turing current week timetable will be shown.&lt;br /&gt;
&lt;br /&gt;
*You can choose to see current or next week available slots.&lt;br /&gt;
&lt;br /&gt;
*If teacher has enabled student tutorship session request, then you can request any available slot.&lt;br /&gt;
&lt;br /&gt;
*You can also cancell your reques&lt;br /&gt;
&lt;br /&gt;
=== If you are a teacher ===&lt;br /&gt;
&lt;br /&gt;
*Click on &amp;quot;Turn editing on&amp;quot; and select &amp;quot;Tutorship&amp;quot; from the &amp;quot;Add an activity&amp;quot; list. Type the name for your instance that will be shown to everybody or leave the &amp;quot;Tutoring schedule timetable&amp;quot; default name. Now it is ready to use.&lt;br /&gt;
&lt;br /&gt;
*Go to any course you are enrolled and click on the module instance name, you will see your tutoring timetable as students see it, or empty if no timetable has been created yet.&lt;br /&gt;
&lt;br /&gt;
* To create a timetable go to edit and select the period you want your timetable be related to.&lt;br /&gt;
&lt;br /&gt;
* You can have three different timetables, one per period.&lt;br /&gt;
&lt;br /&gt;
* You can enable or disable any time slot you want to offer as a tutoring session, it will be shown on your tutoring timetable.&lt;br /&gt;
&lt;br /&gt;
* You can adjust your settings common to all timetables.&lt;br /&gt;
&lt;br /&gt;
=== If you are an administrator ===&lt;br /&gt;
&lt;br /&gt;
*Click on Administration &amp;gt; Modules &amp;gt; Activities &amp;gt; Tutorship and edit the module global configuration, taking in mind not to have any instance added to any course. Global configuration should be edited before any module instance is added to any course, otherwise negative consecuences will take place.&lt;br /&gt;
&lt;br /&gt;
== Screanshots ==&lt;br /&gt;
&lt;br /&gt;
[[Image:Tutorship1.png|700px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:Tutorship2.png|700px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:Tutorship3.png|700px]]&lt;br /&gt;
&lt;br /&gt;
[[Image:Tutorship4.png|700px]]&lt;br /&gt;
&lt;br /&gt;
== Package structure ==&lt;br /&gt;
&lt;br /&gt;
  tutorship/&lt;br /&gt;
   |_ view.php           - Prints a general view of tutorship.&lt;br /&gt;
   |_ teacherview.php    - Prints a particular teacher view of tutorship.&lt;br /&gt;
   |_ studentview.php    - Prints a particular student view of tutorship.&lt;br /&gt;
   |_ locallib.php       - Internal library of functions for module tutorship.&lt;br /&gt;
   |_ lib.php            - Library of interface functions for tutorship.&lt;br /&gt;
   |_ index.php          - Prints all instances provided in a course.&lt;br /&gt;
   |_ version.php        - Defines the version of tutorship.&lt;br /&gt;
   |_ mod_form.php       - The instance configuration form.&lt;br /&gt;
   |_ settings.php       - The module configuration variables.&lt;br /&gt;
   |_ COPYING.txt        - A copy of the GNU General Public License.&lt;br /&gt;
   |_ README.txt         - This info text file.&lt;br /&gt;
   |_ lang/en/&lt;br /&gt;
   |    |_ tutorship.php - English strings for tutorship.&lt;br /&gt;
   |_ lang/es/&lt;br /&gt;
   |    |_ tutorship.php - Spanish strings for tutorship.&lt;br /&gt;
   |_ pix/&lt;br /&gt;
   |    |_ icon.gif      - An instance icon.&lt;br /&gt;
   |_ db/&lt;br /&gt;
        |_ upgrade.php   - The upgrade tacking file.&lt;br /&gt;
        |_ install.xml   - The data base schema definition file.&lt;br /&gt;
        |_ access.php    - The tutorship capabilities definition file.&lt;br /&gt;
        |_ log.php       - Defines log events.&lt;br /&gt;
        |_ uninstall.php - Executed after the uninstall process.&lt;br /&gt;
&lt;br /&gt;
== Database schema ==&lt;br /&gt;
&lt;br /&gt;
[[Image:Tutorship.png]]&lt;br /&gt;
&lt;br /&gt;
Here is the Dia file: [[Media:Tutorship.dia]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Table&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| tutorship&lt;br /&gt;
| The main instance table.&lt;br /&gt;
|-&lt;br /&gt;
| tutorship_timetables&lt;br /&gt;
| The teacher&#039;s timetable with their timeslots.&lt;br /&gt;
|-&lt;br /&gt;
| tutorship_reserves&lt;br /&gt;
| The student&#039;s reserved timeslots.&lt;br /&gt;
|-&lt;br /&gt;
| tutorship_configs&lt;br /&gt;
| The teacher&#039;s timetable configurations.&lt;br /&gt;
|-&lt;br /&gt;
| tutorship_periods&lt;br /&gt;
| The timetable&#039;s periods.&lt;br /&gt;
|-&lt;br /&gt;
| tutorship_timeslots&lt;br /&gt;
| All the possible timeslots within a week.&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Languages supported ==&lt;br /&gt;
&lt;br /&gt;
*English.&lt;br /&gt;
*Spanish.&lt;br /&gt;
&lt;br /&gt;
== Supported versions ==&lt;br /&gt;
&lt;br /&gt;
* 2.0.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
*[http://download.moodle.org/download.php/plugins/mod/tutorship.zip Download latest version]&lt;br /&gt;
*[http://moodle.org/mod/data/view.php?d=13&amp;amp;rid=4347 Modules and plugins database entry]&lt;br /&gt;
*[http://moodle.org/mod/forum/discuss.php?d=161889 Forum discussion]&lt;br /&gt;
*[http://cvs.moodle.org/contrib/plugins/mod/tutorship Browse through the code]&lt;br /&gt;
*[http://tracker.moodle.org/browse/CONTRIB/component/10763 Bugs and issues]&lt;br /&gt;
*[https://docs.moodle.org/en/Installing_contributed_modules_or_plugins Installing contributed modules or plugins]&lt;br /&gt;
&lt;br /&gt;
[[Category: Contributed code]]&lt;br /&gt;
[[es:Modulo_tutorship]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=TeX_Symbols_in_SEE&amp;diff=96341</id>
		<title>TeX Symbols in SEE</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=TeX_Symbols_in_SEE&amp;diff=96341"/>
		<updated>2021-08-10T15:21:04Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;p class=&amp;quot;note&amp;quot;&amp;gt;:NOTE Mauno Korpelainen&#039;s Super Equation Editor, SEE, is very much in its infancy. It is still in beta testing and should be for a while yet. Using SEE should be confined to test sites for now, later, it can also be used in production sites, but it has a way to go yet. &amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Caveat==&lt;br /&gt;
&amp;lt;p class=&amp;quot;note&amp;quot;&amp;gt;This page relates solely to Super Equation Editor, SEE. Most, if not all, of these commands are used in one release of TeX or another. Originally, the core macros came from an interest in using the [[TeX notation filter]] in Moodle. This was quickly followed by MikTeX and then LiveTeX. All these commands are found somewhere in LiveTeX or fonts and style packages dowloaded for use in LiveTeX. Most of these commands will work, but some may not depending on your configuration of SEE.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Supported LaTeX commands in SEE==&lt;br /&gt;
&lt;br /&gt;
SEE supports a very large range of TeX symbols.&lt;br /&gt;
&lt;br /&gt;
These symbols are divided, essentially, into two parts, the &amp;quot;macro&amp;quot;, the command itself, and, where needed, an extension&lt;br /&gt;
or an attribute that follows. These extensions are usually in braces.&lt;br /&gt;
&lt;br /&gt;
For example: &lt;br /&gt;
  \fontbf{This \ is \ a \ bold \ font} &lt;br /&gt;
Displays as &lt;br /&gt;
  &amp;lt;math&amp;gt;\textbf{This \ is \ a \ bold \ font}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For Moodle, it seems that the $$ still plays a role in the construction of TeX commands. What you may enter into SEE would be something like: &lt;br /&gt;
  \frac{16 \times \sqrt{36}}{12}&lt;br /&gt;
Which will then display in your editor screen as: &lt;br /&gt;
  $$ \frac{16 \times \sqrt{36}}{12} $$&lt;br /&gt;
When rendered looks like: &lt;br /&gt;
  &amp;lt;math&amp;gt;\frac{16 \times \sqrt{36}}{12}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Warning==&lt;br /&gt;
Not all of the commands and sequences included here have been tested in the Moodle environment. There may reason to check the file filter\lib.php for the array &#039;&#039;&#039;$tex_blacklist = array(,&#039;&#039;&#039; for any conflicts - e.g. line&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Command Sequences==&lt;br /&gt;
Most symbols are reserved characters.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;NOTE&#039;&#039;&#039;: This table has been garnished over a long period of time and from a lot of different sources. Some font packages have been identified some have not, yet. Most of this is also found in the [[Using TeX Notation]] pages.    &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
|&#039;&#039;&#039;Symbols&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039; #&#039;&#039;&#039;&lt;br /&gt;
|&amp;lt;math&amp;gt;\#&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;$&#039;&#039;&#039;&lt;br /&gt;
|&amp;lt;math&amp;gt;\$&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;%&#039;&#039;&#039;&lt;br /&gt;
|&amp;lt;math&amp;gt;\%&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;&amp;amp;amp;&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;^&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;,&#039;&#039;&#039;&lt;br /&gt;
|&amp;lt;math&amp;gt;\,&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;_&#039;&#039;&#039;&lt;br /&gt;
|&amp;lt;math&amp;gt;\_&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;{&#039;&#039;&#039;&lt;br /&gt;
|&amp;lt;math&amp;gt;\{&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;}&#039;&#039;&#039;&lt;br /&gt;
|&amp;lt;math&amp;gt;\}&amp;lt;/math&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;~&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039; &#039; &#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;\ &#039;&#039;&#039;  &lt;br /&gt;
| backslash-space&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;!&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;:&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;;&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;\&amp;amp;gt;&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;\&amp;amp;lt;&#039;&#039;&#039;&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;&#039;&amp;lt;nowiki&amp;gt;\|&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
|&amp;lt;math&amp;gt;\|&amp;lt;/math&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;A&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|\above&lt;br /&gt;
|-&lt;br /&gt;
|\abovewithdelims&lt;br /&gt;
|-&lt;br /&gt;
|\acute&lt;br /&gt;
|-&lt;br /&gt;
|\aleph&lt;br /&gt;
|-&lt;br /&gt;
|\alpha&lt;br /&gt;
|-&lt;br /&gt;
|\amalg&lt;br /&gt;
|-&lt;br /&gt;
|\And&lt;br /&gt;
|-&lt;br /&gt;
|\angle&lt;br /&gt;
|-&lt;br /&gt;
|\approx&lt;br /&gt;
|-&lt;br /&gt;
|\approxeq&lt;br /&gt;
|-&lt;br /&gt;
|\arccos&lt;br /&gt;
|-&lt;br /&gt;
|\arcsin&lt;br /&gt;
|-&lt;br /&gt;
|\arctan&lt;br /&gt;
|-&lt;br /&gt;
|\arg&lt;br /&gt;
|-&lt;br /&gt;
|\array&lt;br /&gt;
|-&lt;br /&gt;
|\Arrowvert&lt;br /&gt;
|-&lt;br /&gt;
|\arrowvert&lt;br /&gt;
|-&lt;br /&gt;
|\ast&lt;br /&gt;
|-&lt;br /&gt;
|\asymp&lt;br /&gt;
|-&lt;br /&gt;
|\atop&lt;br /&gt;
|-&lt;br /&gt;
|\atopwithdelims&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
| [[Image:spacer01.gif]]&lt;br /&gt;
| &#039;&#039;&#039;B&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| &#039;&#039;&#039;Macro&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Package&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| \backepsilon&lt;br /&gt;
|  AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \backprime&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \backsim&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \backsimeq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \backslash&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bar&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \barwedge&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \Bbb&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Bbbk&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \because&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \begin&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \beta&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \beth&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \between&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \bf&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Big&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \big&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigcap&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigcirc&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigcup&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Bigg&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigg&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Biggl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \biggl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Biggm&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \biggm&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Biggr&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \biggr&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Bigl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigl&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Bigm&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigm&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigodot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigoplus&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigotimes&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Bigr&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigr&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigsqcup&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigstar&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \bigtriangledown&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigtriangleup&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \biguplus&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigvee&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bigwedge&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \binom&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \blacklozenge&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \blacksquare&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \blacktriangle&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \blacktriangledown&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \blacktriangleleft&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \blacktriangleright&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \bmod&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \boldsymbol&lt;br /&gt;
| [boldsymbol]&lt;br /&gt;
|-&lt;br /&gt;
| \bot&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bowtie&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Box&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \boxdot&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \boxed&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \boxminus&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \boxplus&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \boxtimes&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \brace&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bracevert&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \brack&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \breve&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \buildrel&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \bullet&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \Bumpeq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \bumpeq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|}&lt;br /&gt;
| [[Image:spacer01.gif]]&lt;br /&gt;
| &#039;&#039;&#039;C&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \cal&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \cap&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \Cap&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \cases&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \cdot&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \cdotp&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \cdots&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \centerdot&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \cfrac&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \check&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \checkmark&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \chi&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \choose&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \circ&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \circeq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \circlearrowleft&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \circlearrowright&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \circledast&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \circledcirc&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \circleddash&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \circledR&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \circledS&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \class&lt;br /&gt;
| [HTML]  non-standard&lt;br /&gt;
|-&lt;br /&gt;
| \clubsuit&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \colon&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \color&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \complement&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \cong&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \coprod&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \cos&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \cosh&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \cot&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \coth&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \cr&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \csc&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \cssId&lt;br /&gt;
| [HTML] non-standard&lt;br /&gt;
|-&lt;br /&gt;
| \cup&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \Cup&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \curlyeqprec&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \curlyeqsucc&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \curlyvee&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \curlywedge&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \curvearrowleft&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \curvearrowright&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;D&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \dagger&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| \daleth&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \dashleftarrow&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \dashrightarrow&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \dashv&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \dbinom&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \ddagger&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \ddddot&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \dddot&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \ddot&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \ddots&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \DeclareMathOperator&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \def&lt;br /&gt;
| [newcommand]&lt;br /&gt;
|-&lt;br /&gt;
| \deg&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \Delta&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \delta&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \det&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \dfrac&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \diagdown&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \diagup&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \diamond&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \Diamond&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \diamondsuit&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \digamma&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \dim&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
| [[Image:spacer01.gif]]&lt;br /&gt;
| &#039;&#039;&#039;D contd.&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \displaylines&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \displaystyle&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \div&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \divideontimes&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \dot&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \doteq&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \Doteq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \doteqdot&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \dotplus&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \dots&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \dotsb&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \dotsc&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \dotsi&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \dotsm&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \dotso&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \doublebarwedge&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \doublecap&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \doublecup&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \Downarrow&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \downarrow&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \downdownarrows&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \downharpoonleft&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \downharpoonright&lt;br /&gt;
|  AMSsymbols&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;E&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \ell&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \emptyset&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \end&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \enspace&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \epsilon&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \eqalign&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \eqalignno&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \eqcirc&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \eqsim&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \eqslantgtr&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \eqslantless&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \equiv&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \eta&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \eth&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \exists&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \exp&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;F&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \fallingdotseq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \fbox&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \Finv&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \flat&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \forall&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \frac&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \frac&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \frak&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \frown&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;G&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \Game&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \Gamma&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \gamma&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \gcd&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \ge&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \genfrac&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \geq&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \geqq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \geqslant&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gets&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \gg&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \ggg&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gggtr&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gimel&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gnapprox&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gneq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gneqq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gnsim&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \grave&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
|- valign=&amp;quot;top&amp;quot;&lt;br /&gt;
| &#039;&#039;&#039;G contd.&#039;&#039;&#039; &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \gt&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \gt&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \gtrapprox&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gtrdot&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gtreqless&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gtreqqless&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gtrless&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gtrsim&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \gvertneqq&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;H&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \hat&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hbar&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hbox&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hdashline&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \heartsuit&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hline&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hom&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hookleftarrow&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hookrightarrow&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hphantom&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hskip&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \hslash&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \hspace&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \Huge&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \huge&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;I&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \idotsint&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \iff&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \iiiint&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \iiint&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \iint&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \Im&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \imath&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \impliedby&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \implies&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \in&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \inf&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \infty&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \injlim&lt;br /&gt;
| AMSmath&lt;br /&gt;
|-&lt;br /&gt;
| \int&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \intercal&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|-&lt;br /&gt;
| \intop&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \iota&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \it&lt;br /&gt;
| &lt;br /&gt;
|}&lt;br /&gt;
&#039;&#039;&#039;J&#039;&#039;&#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| \jmath&lt;br /&gt;
| &lt;br /&gt;
|-&lt;br /&gt;
| \Join&lt;br /&gt;
| AMSsymbols&lt;br /&gt;
|}&lt;br /&gt;
| [[Image:spacer01.gif]]&lt;br /&gt;
|&lt;br /&gt;
&#039;&#039;&#039;K&#039;&#039;&#039;&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| here&lt;br /&gt;
| is K&lt;br /&gt;
|}&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
* [[Advanced Maths Tools]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Regular_Expression_Short-Answer_question_type&amp;diff=96340</id>
		<title>Regular Expression Short-Answer question type</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Regular_Expression_Short-Answer_question_type&amp;diff=96340"/>
		<updated>2021-08-10T15:21:03Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;===The RegExp Short Answer Question===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;IMPORTANT NOTE&#039;&#039;&#039;&lt;br /&gt;
** The RegExp Short Answer question described in this documentation page is a 3rd-party plugin, which allows you to create questions for the &#039;&#039;&#039;&#039;&#039;Quiz&#039;&#039;&#039;&#039;&#039; activity. It is &#039;&#039;different&#039;&#039; from the &amp;quot;Use regular expressions&amp;quot; option in the &#039;&#039;&#039;&#039;&#039;Lesson&#039;&#039;&#039;&#039;&#039; module.&lt;br /&gt;
** The documentation for the &amp;quot;Use regular expressions&amp;quot; option in the &#039;&#039;&#039;&#039;&#039;Lesson&#039;&#039;&#039;&#039;&#039; module is to be found at: [https://docs.moodle.org/en/Short_answer_analysis Short answer analysis].&lt;br /&gt;
&lt;br /&gt;
Like the Short Answer question, the RegExp Short Answer question expects the respondent to answer an &amp;quot;open&amp;quot; question with a word or a short phrase. However, the RegExp system system gives you access to a more powerful system for &#039;&#039;analyzing the student&#039;s answers&#039;&#039; with the aim of &#039;&#039;providing more relevant immediate feedback&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
===Correct answer matching a regular expression pattern===&lt;br /&gt;
&lt;br /&gt;
It is not possible to give complete examples of the vast possibilities offered by this system, and the following are just some possibilities.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 1.&#039;&#039;&#039; Suppose your question was &amp;quot;What are the colors of the French flag?&amp;quot;. In the Answer 1 box you would type the &amp;quot;best&amp;quot; answer, e.g. &amp;quot;it&#039;s blue, white and red&amp;quot;. For more details, see [[#firstcorrect|First correct answer]] below.&lt;br /&gt;
&lt;br /&gt;
*In the Answer 2 box you would type this regular expression: &amp;quot;it’s blue, white(,| and) red&amp;quot; (quotes should not be typed, of course).&lt;br /&gt;
* If [[#casesensivity|Case sensivity]] is set to &amp;quot;No&amp;quot;, this will match any of those 4 responses:&lt;br /&gt;
** it&#039;s blue, white, red&lt;br /&gt;
** it&#039;s blue, white and red&lt;br /&gt;
** It&#039;s blue, white, red&lt;br /&gt;
** It&#039;s blue, white and red&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 2&#039;&#039;&#039;. Question: &amp;quot;What are blue, red and yellow?&amp;quot;. &lt;br /&gt;
* Answer 1: &amp;quot;they are colours&amp;quot;. &lt;br /&gt;
* Answer 2: &amp;quot;(|they(&#039;| a)re )colou?rs&amp;quot;. &lt;br /&gt;
* This will match any of those 6 responses:&lt;br /&gt;
** colours&lt;br /&gt;
** colors&lt;br /&gt;
** they&#039;re colours&lt;br /&gt;
** they&#039;re colors&lt;br /&gt;
** they are colours&lt;br /&gt;
** they are colors&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note&#039;&#039;&#039;&#039;&#039;.- The beginning of this regular expression &amp;quot;(|they(&#039;| a)re )&amp;quot; will match either nothing or &amp;quot;they&#039;re &amp;quot; or &amp;quot;they are &amp;quot;. In &amp;quot;colou?r&amp;quot;, the question-mark means: the preceding character (or parenthesized group of characters) zero or one time; it is used here to match British English as well as US spelling. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 3.&#039;&#039;&#039; Question: &amp;quot;Name an animal whose name consists of 3 letters and the middle letter is the vowel &#039;&#039;a&#039;&#039;&amp;quot;.&lt;br /&gt;
* Answer 1: &amp;quot;cat&amp;quot;&lt;br /&gt;
* Answer 2: &amp;quot;[bcr]at&amp;quot;. &lt;br /&gt;
* This will match: bat, cat or rat.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Note&#039;&#039;&#039;&#039;&#039;.- In Regular Expression syntax, the inclusion of characters between square brackets means than ANY of those characters can be used. So, in the above example, the regular expression &amp;quot;[bcr]at&amp;quot; is the exact equivalent of &amp;quot;(b|c|r)at&amp;quot;. Be careful NOT to include the pipe character as separator in your [...] regular expressions. For instance, &amp;quot;[b|c|r]at&amp;quot; will NOT WORK CORRECTLY.&lt;br /&gt;
&lt;br /&gt;
===Escaping metacharacters===&lt;br /&gt;
&lt;br /&gt;
====Definition====&lt;br /&gt;
In the Regular Expressions syntax, a number of special characters or &#039;&#039;meta characters&#039;&#039; have special functions; but it is possible to force these special characters to be interpreted as normal (or &#039;&#039;literal&#039;&#039;) characters by preceding them with a so-called &#039;&#039;escape&#039;&#039; character, the backslash &amp;quot;\&amp;quot;. &lt;br /&gt;
Below is a (partial) list of those &#039;&#039;meta characters&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;. ^ $ * ( ) [ ] + ? | { } \ /&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====In Accepted Answers====&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Accepted Answers&#039;&#039;&#039; are Answers which have a grade greater than zero, i.e. are &#039;&#039;totally&#039;&#039; (grade = 100%) or &#039;&#039;partially&#039;&#039; (grade &amp;gt; 0% &amp;lt; 100%) &#039;&#039;correct Answers&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
In those Answers, if you need to use one or more &#039;&#039;meta characters&#039;&#039; for their &#039;&#039;literal&#039;&#039; value, you &#039;&#039;&#039;must&#039;&#039;&#039; &#039;&#039;escape&#039;&#039; them (i.e. precede them with a backslash). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 1.-&#039;&#039;&#039; If you want to accept the answer &amp;quot;This computer costs 1000$ in the US.&amp;quot;, you must write the Answer as &amp;quot;This computer costs 1000\$ in the US\.&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 2.-&#039;&#039;&#039; If you want to accept the answer &amp;quot;Desktop computers are (usually) more powerful than laptops.&amp;quot;, you must write the Answer as &amp;quot;Desktop computers are \(usually\) more powerful than laptops\.&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
* You can mix metacharacters that have a special function with others that have a literal value, within one Answer.&lt;br /&gt;
&#039;&#039;&#039;Example 3.-&#039;&#039;&#039; If you want to accept both answers &amp;quot;Computers are (usually) cheaper than cars.&amp;quot; and &amp;quot;Computers are (usually) less expensive than cars.&amp;quot;, you must write the Answer as &amp;quot;&amp;quot;Computers are \(usually\) (cheaper|less expensive) than cars.&amp;quot;&amp;quot;. &lt;br /&gt;
* In the &#039;&#039;&#039;Accepted Answers&#039;&#039;&#039; boxes you can only enter regular expressions which can generate a finite number of sentences. That is why you will not be allowed to use some &#039;&#039;meta characters&#039;&#039; which match a potentially infinite number of sentences.&lt;br /&gt;
* List of &#039;&#039;meta characters&#039;&#039; which you &#039;&#039;&#039;can&#039;&#039;&#039; use for their RegExp functions:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;( ) [ ] ? |&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* List of &#039;&#039;meta characters&#039;&#039; which you &#039;&#039;&#039;cannot&#039;&#039;&#039; use for their RegExp functions, and can only be used for their &#039;&#039;literal&#039;&#039; value (and must be &#039;&#039;escaped&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;. ^ $ * + ? { } \ /&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====In Incorrect Answers====&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Incorrect Answers&#039;&#039;&#039; are Answers which have a grade equal to zero (or None).&lt;br /&gt;
When you write those Incorrect Answers, you can use the whole range of &#039;&#039;meta characters&#039;&#039; for their special function value:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;. ^ $ * ( ) [ ] + ? | { } \ /&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
For examples of use, see &#039;&#039;&#039;Detecting missing required words or character strings&#039;&#039;&#039; below.&lt;br /&gt;
&lt;br /&gt;
====Answers Validation====&lt;br /&gt;
&lt;br /&gt;
When you validate your Question, the question engine checks the validity of your expression, according to the features explained above. If an error is found, an ERROR message is displayed above the erroneous Answer(s) and you cannot save the Question until that error has been corrected.&lt;br /&gt;
&lt;br /&gt;
The validation system also checks that your parentheses and square brackets are correctly balanced.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note.-&#039;&#039;&#039; The Validation engine works better in the Moodle 2.1 version of the RegExp question type than in previous versions. The faulty Answer text is &amp;quot;underlined&amp;quot; with the list of errors, as shown below.&lt;br /&gt;
&lt;br /&gt;
[[Image:Errors_en.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Detecting missing required words or character strings===&lt;br /&gt;
&lt;br /&gt;
This is a powerful feature of the RegExp question type. It will analyse the student&#039;s answer for words that are required for the answer to be correct. There are 2 ways to do this.&lt;br /&gt;
* Use what is called &amp;quot;negative lookahead assertion&amp;quot; in regular expressions syntax: &#039;&#039;&#039;^(?!.*required.*)&#039;&#039;&#039;&lt;br /&gt;
* or use an &#039;&#039;ad hoc&#039;&#039; pseudo-syntax provided in RegExp (an initial double hyphen): &#039;&#039;&#039;--.*required.*&#039;&#039;&#039;.&lt;br /&gt;
In the examples below, we shall be using the &#039;ad hoc&#039; RegExp pseudo-syntax, and sometimes give the &amp;quot;negative lookahead assertion&amp;quot; equivalent for anyone interested.&lt;br /&gt;
&lt;br /&gt;
Any Teacher Answer which begins with a double hyphen will analyse the student’s response to find out whether the following string is present or absent. If present, the analysis continues to the next question; if absent, the analysis stops and the relevant feedback message is displayed.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 4. &#039;&#039;&#039; Question &amp;quot;What are the colors of the French flag?&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* Teacher Answer 2: --.*blue.*&lt;br /&gt;
* Sample student Response: &amp;quot;it&#039;s red and white&amp;quot;&lt;br /&gt;
* Feedback 2: The color of the sky is missing!&lt;br /&gt;
&lt;br /&gt;
Here, the . (dot) stands for “any character” and the * (asterisk) means “preceding special character repeated any number of times”. The Teacher Answer 2 regular expression above means: check whether the character string &amp;quot;blue&amp;quot;, preceded with anything and followed by anything is absent from the student&#039;s answer. Please note that the use of the asterisk is different in Moodle&#039;s &amp;quot;normal&amp;quot; Short Answer question type and in the RegExp question type.&lt;br /&gt;
&lt;br /&gt;
Actually, this syntax is not sufficient to track the absence of the word &amp;quot;blue&amp;quot; in a student&#039;s answer such as &amp;quot;it&#039;s blueish, white and red&amp;quot;. To make sure that we want to track the absence of &amp;quot;blue&amp;quot; as a word(and not just as part of a word), we must use the metacharacter \b which is an anchor which matches at a position that is called a &amp;quot;word boundary&amp;quot;. Hence the new version of our Example 4:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 4b. &#039;&#039;&#039; Question &amp;quot;What are the colors of the French flag?&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* Teacher Answer 2: --.*\bblue\b.*&lt;br /&gt;
* Sample student Response: &amp;quot;it&#039;s blueish, white and red&amp;quot;&lt;br /&gt;
* Feedback 2: The color of the sky is missing!&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note.-&#039;&#039;&#039;&lt;br /&gt;
Using the &amp;quot;negative lookahead assertion&amp;quot; syntax mentioned at the beginning of this section, Teacher Answer 2 would look like this:&lt;br /&gt;
* Teacher Answer 2: &#039;&#039;&#039;^(?!&#039;&#039;&#039;.*\blue\b.*&#039;&#039;&#039;)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 5.&#039;&#039;&#039; Question: &amp;quot;Name an animal whose name consists of 3 letters and the middle letter is the vowel &#039;&#039;a&#039;&#039;&amp;quot;. &lt;br /&gt;
* Teacher Answer: &amp;quot;--^[bcr]&amp;quot;. &#039;&#039;&#039;OR&#039;&#039;&#039; * Teacher Answer: &amp;quot;--^(b|c|r)&amp;quot;.&lt;br /&gt;
* Sample student Response: &amp;quot;dog&amp;quot;&lt;br /&gt;
* Feedback: &amp;quot;Your answer should start with one of these letters: b, c or r&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note.-&#039;&#039;&#039;&lt;br /&gt;
In regular expressions syntax, the caret ^ stands for &amp;quot;beginning of character string to be matched&amp;quot;, while the dollar sign $ stands for &amp;quot;end of character string&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 6.&#039;&#039;&#039; Question &amp;quot;What are the colors of the French flag?&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* Teacher Answer: &amp;quot;--.*(blue|red|white).*&amp;quot;&lt;br /&gt;
* Sample student Response #1: &amp;quot;It&#039;s black and orange.&amp;quot;&lt;br /&gt;
* Feedback: &amp;quot;You have not even found one of the colors of the French flag!&amp;quot;&lt;br /&gt;
* Sample student Response #2: &amp;quot;It&#039;s blue and orange.&amp;quot;&lt;br /&gt;
* Feedback: None, the analysis continues to the next Teacher Answer expression.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Explanation&#039;&#039;&#039;&#039;&#039;.- The regular expression looks for a missing word among those listed between brackets and separated by the | sign. As soon as one of those words is found, the &amp;quot;missing condition&amp;quot; is considered false, and the response analysis continues to the next Answer&#039;s regular expression.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note.-&#039;&#039;&#039;&lt;br /&gt;
Using the &amp;quot;negative lookahead assertion&amp;quot; syntax, Teacher Answer would look like this: &#039;&#039;&#039;^(?!.*(blue|red|white).*)&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Example 7.&#039;&#039;&#039; Question &amp;quot;What are the colors of the French flag?&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
* Teacher Answer: &amp;quot;--.*(&#039;&#039;&#039;&amp;amp;&amp;amp;&#039;&#039;&#039;blue&#039;&#039;&#039;&amp;amp;&amp;amp;&#039;&#039;&#039;red&#039;&#039;&#039;&amp;amp;&amp;amp;&#039;&#039;&#039;white).*&amp;quot;&lt;br /&gt;
* Sample student Response #1: &amp;quot;It&#039;s blue and orange.&amp;quot;&lt;br /&gt;
* Feedback: &amp;quot;You have not found all the colors of the French flag&amp;quot;.&lt;br /&gt;
* Sample student Response #2: &amp;quot;white blue red&amp;quot;.&lt;br /&gt;
* Feedback: None, the analysis continues to the next Teacher Answer expression.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Explanation&#039;&#039;&#039;&#039;&#039;.- The regular expression looks for a missing word among all of those listed between brackets and separated by the &amp;amp;&amp;amp; double character combination. Only if all of those words are present, will the &amp;quot;missing condition&amp;quot; be considered false, and the response analysis continue to the next Answer&#039;s regular expression. Please note that the list of parenthesized words must begin with the &amp;amp;&amp;amp; character sequence.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note.-&#039;&#039;&#039;&lt;br /&gt;
Using the &amp;quot;negative lookahead assertion&amp;quot; syntax, Teacher Answer would look like this: &#039;&#039;&#039;(^(?!.*(blue).*)|^(?!.*(white).*)|^(?!.*(red).*))&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
===Editing a regular expression question===&lt;br /&gt;
&lt;br /&gt;
[[Image:settings01.jpg]]&lt;br /&gt;
&lt;br /&gt;
====Help Button Mode====&lt;br /&gt;
&lt;br /&gt;
Selecting a mode other than &#039;&#039;None&#039;&#039; will display a button to enable the student to get the next letter or word (including the very first letter or word).&lt;br /&gt;
&lt;br /&gt;
In &#039;&#039;Adaptive mode&#039;&#039; the button displayed will say &amp;quot;Buy next letter&amp;quot; or &amp;quot;Buy next word&amp;quot; according to the mode selected by the teacher. For setting the &amp;quot;cost&amp;quot; of buying a letter or word, see the &#039;&#039;Penalty for incorrect tries and Buying a letter or word&#039;&#039; settings further down the Edit form.&lt;br /&gt;
&lt;br /&gt;
In &#039;&#039;Adaptive No penalty&#039;&#039; mode the button displayed will say &amp;quot;Get next letter&amp;quot; or &amp;quot;Get next word&amp;quot;&lt;br /&gt;
&lt;br /&gt;
By default the Help button mode value is set at &#039;&#039;&#039;None&#039;&#039;&#039;. The Help button will only be available to quizzes that have their &#039;&#039;&#039;Question behaviour&#039;&#039;&#039; mode set to &#039;&#039;Adaptive&#039;&#039; or &#039;&#039;Adaptive (no penalties)&#039;&#039; as it does not make sense to enable the Help button for non-adaptive tests.&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;casesensivity&amp;quot;&amp;gt;Case sensitivity&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
The editing form features a &#039;&#039;Case sensitivity&#039;&#039; setting, which is valid for &#039;&#039;all of the answers&#039;&#039; of the current question. You should not add an &#039;&#039;&#039;/i&#039;&#039;&#039; parameter at the end of your regular expressions. You may need to edit questions authored in 1.9 when you upgrade to 2.0 and remove any &#039;&#039;&#039;/i&#039;&#039;&#039; parameters from your regular expressions.&lt;br /&gt;
&lt;br /&gt;
====Show alternate answers to student====&lt;br /&gt;
Show all correct alternative answers to student when on review page? If there are a lot of automatically generated correct alternative answers, displaying them all can make the review page quite long. So, you may wish to &#039;&#039;not&#039;&#039; display all those alternative correct answers. The first correct answer will always be displayed, under the label &amp;quot;The best correct answer is:&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====&amp;lt;span id=&amp;quot;firstcorrect&amp;quot;&amp;gt;First correct answer&amp;lt;/span&amp;gt;====&lt;br /&gt;
&lt;br /&gt;
For Answer 1 you must enter an answer text which a) is the &amp;quot;best&amp;quot; possible answer; b) is &#039;&#039;&#039;not&#039;&#039;&#039; a regular expression or - more exactly - &#039;&#039;will not be interpreted as a regular expression&#039;&#039; but &amp;quot;as is&amp;quot; and c) has a Grade value of 100%. You will notice that when you create a new RegExp question the Grade value for Answer 1 is already automatically set at 100% and cannot be changed.&lt;br /&gt;
&lt;br /&gt;
Note.- There are two ways to enter an answer containing meta characters, according to whether this is Answer 1 or any of the subsequent Answers. Exemple question: how much did your computer cost?&lt;br /&gt;
&lt;br /&gt;
Answer 1: It cost $1,000.&lt;br /&gt;
&lt;br /&gt;
Answer 2: It cost ( me)?\$1,000\.&lt;br /&gt;
&lt;br /&gt;
In Anwer 1 you just type the expected answer &amp;quot;as is&amp;quot;. The text in Answer 2 will be interpreted as a regular expression, and thus you need to escape the two meta characters (the $ sign and the end-of-sentence full stop). Note that here I have added the optional pronoun &amp;quot;me&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
====Other answers====&lt;br /&gt;
&lt;br /&gt;
Any answers with a Grade higher than 0% must be entered as valid regular expressions &#039;&#039;which can yield acceptable alternative answers&#039;&#039; (regardless of the Grade being less than 100%).&lt;br /&gt;
&lt;br /&gt;
This means that some regular expressions, which are perfectly valid and would correctly analyse the student&#039;s (correct) answer are not recommended. The only case where they would work is a) if your question&#039;s &#039;&#039;&#039;Display Hint Button&#039;&#039;&#039; is set at No and b) your quiz &#039;&#039;&#039;Adaptative Mode&#039;&#039;&#039; is set at No. This means that you must &#039;&#039;not&#039;&#039; enter as an answer with a grade higher than 0% a regular expression beginning with a double hyphen &amp;quot;--&amp;quot;, used for detecting missing character strings.&lt;br /&gt;
&lt;br /&gt;
====Show/Hide alternate answers====&lt;br /&gt;
&lt;br /&gt;
When you are creating (or modifying) a RegExp question, you may want to make sure that all the alternative correct answers that you have created in the Answers fields will work. You can click the &#039;&#039;&#039;Show alternate answers&#039;&#039;&#039; button to calculate and display all the correct answers in the form you are editing. This may take quite some time on your server, depending on the number and complexity of the regular expressions you have entered in the Answer fields!&lt;br /&gt;
&lt;br /&gt;
On the other hand, it is the recommended way to check that your &amp;quot;correct answers&amp;quot; expressions are correctly written. Here is an example.&lt;br /&gt;
&lt;br /&gt;
Please remember that only Answers regular expressions with a score greater than zero will be used to calculate those alternative answers.&lt;br /&gt;
&lt;br /&gt;
Please note that clicking the &#039;&#039;&#039;Show alternate answers&#039;&#039;&#039; button will perform an analysis of all the regular expressions you entered in the Answers field. If a syntax error is detected at this stage, the alternative correct answers will &#039;&#039;not&#039;&#039; be displayed, and an &#039;&#039;ad hoc&#039;&#039; error message will displayed above the faulty regular expression.&lt;br /&gt;
&lt;br /&gt;
[[Image:showhidealternateanswers.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Previewing questions in popup window (teacher only)===&lt;br /&gt;
&lt;br /&gt;
When the teacher previews a question in the popup preview question window it is now possible to display all of the acceptable alternative answers. Those alternative answers are automatically generated from the regular expressions you have entered when creating the question which carry a grade higher than 0%. The very first acceptable answer is printed as is at the top of the list. This is followed by all the other alternative acceptable answers, consisting of a) the Grade attributed; b) a reminder of the regular expression you entered and c) a list of all alternative answers.&lt;br /&gt;
&lt;br /&gt;
[[Image:alternate_answers.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Automatic formatted extra feedback===&lt;br /&gt;
Please note that in Moodle 2.1 (and later versions) the RegExp question can be used in any &#039;&#039;&#039;Question behaviour&#039;&#039;&#039; mode. However, it is advised to create quizzes containing only RegExp questions or containing other types of questions, but &#039;&#039;preferably&#039;&#039; if the quiz&#039;s &#039;&#039;&#039;&#039;&#039;Question behaviour / How questions behave&#039;&#039;&#039;&#039;&#039; setting is set to &#039;&#039;Adaptive mode&#039;&#039; (with or without penalty).&lt;br /&gt;
&lt;br /&gt;
When a student (or teacher in Preview Question mode) submits a response to a RegExp question, 3 types of feedback messages are displayed (in Adaptive mode).&lt;br /&gt;
&lt;br /&gt;
* (line 3) The standard correct/incorrect Quiz message (plus the color associated with either state).&lt;br /&gt;
* (line 2) The Feedback message entered by the question creator for each Teacher Answer.&lt;br /&gt;
* (line 1) An extra feedback system is automatically provided, displaying the student&#039;s submitted response, with the following format codes:&lt;br /&gt;
** the beginning of the student&#039;s submitted response which best matches one of the Alternate Answers is displayed in blue;&lt;br /&gt;
** any words from the submitted response which are present in the potential Alternate Answers following the initial correct part submitted are colored in red;&lt;br /&gt;
** any words not present in the potential Alternate Answers following the initial correct part submitted are colored in red and formatted as strike-through.&lt;br /&gt;
The meaning of those colors etc. may need to be explained to the student before they take the quiz, especially the difference between &amp;quot;red&amp;quot; and &amp;quot;red plus strike-through&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[Image:regexp_colored_feedback_21.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Feedback given by the Help button===&lt;br /&gt;
&lt;br /&gt;
Each time a student clicks the &#039;&#039;&#039;Buy/Get next letter/word&#039;&#039;&#039; button to buy/get a letter/word, that letter or word is added to his response. The last line of the feedback zone shows the following information: added letter/word; penalty cost (if applicable); total penalties so far (if applicable). Note that if the total of penalties exceeds 1 (i.e. 100%), that total is displayed in red. &lt;br /&gt;
&lt;br /&gt;
When the teacher views the quiz results, on the &#039;&#039;&#039;&#039;Review Attempt&#039;&#039;&#039;&#039; pages, &#039;&#039;&#039;&#039;History of responses&#039;&#039;&#039;&#039; section, the response history shows &#039;&#039;Submit (with a request for help)&#039;&#039; with the response states before and after the letter/word was added.&lt;br /&gt;
&lt;br /&gt;
[[Image:21-addedletterhistory.jpg]]&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
[[Image:21-addedwordhistory.jpg]]&lt;br /&gt;
----&lt;br /&gt;
If the student clicked the &#039;&#039;&#039;Buy/Get next word&#039;&#039;&#039; button while his current submitted answer contained the beginning of a (correct) word, the full correct word is displayed in the Answer field, and the feedback message says &amp;quot;&#039;&#039;Completed&#039;&#039; word&amp;quot; rather than &amp;quot;&#039;&#039;Added&#039;&#039; word&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
[[Image:21-completedwordhistory.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Display right answers===&lt;br /&gt;
&lt;br /&gt;
If your Quiz settings &#039;&#039;Review options&#039;&#039; are set to display the Right answer (During the attempt or Immediately after the attempt etc.), and your question&#039;s &#039;&#039;Show alternate answers to student&#039;&#039; setting is set to &#039;&#039;&#039;Yes&#039;&#039;&#039;, when the student has submitted his attempt, and is reviewing his answers, all of the possible answers will be displayed, as shown in this screenshot. Correct responses with a grade &amp;lt; 100% are also listed, with their grade value.&lt;br /&gt;
&lt;br /&gt;
[[Image:21 correct responses.jpg]]&lt;br /&gt;
&lt;br /&gt;
===Inserting RegExp sub-questions in Cloze type questions===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Important notice&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
The RegExp question type is &#039;&#039;&#039;&#039;&#039;not&#039;&#039;&#039;&#039;&#039; recognized by the standard Moodle Cloze question type. If you want to use it you&#039;ll have to replace 2 files (&#039;&#039;renderer.php&#039;&#039; and &#039;&#039;questiontype.php&#039;&#039;) on your &#039;&#039;&amp;lt;yourmoodle&amp;gt;/question/type/multianswer&#039;&#039; with the hacked files available from the links below.&lt;br /&gt;
&lt;br /&gt;
https://raw.github.com/rezeau/moodle/multianswer_regexp-21/question/type/multianswer/questiontype.php&lt;br /&gt;
&lt;br /&gt;
https://raw.github.com/rezeau/moodle/multianswer_regexp-21/question/type/multianswer/renderer.php&lt;br /&gt;
&lt;br /&gt;
Note.- If you are interested in comparing the 2 &amp;quot;standard&amp;quot; Moodle 2.1 multianswer files with the &amp;quot;RegExp hacked&amp;quot; files, go to &lt;br /&gt;
&lt;br /&gt;
https://github.com/rezeau/moodle/compare/MOODLE_21_STABLE...multianswer_regexp-21&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Syntax for inserting RegExp sub-questions in Cloze type questions.&lt;br /&gt;
&lt;br /&gt;
Use &#039;&#039;&#039;REGEXP&#039;&#039;&#039; or shorter &#039;&#039;&#039;RX&#039;&#039;&#039; coding for questions which ignore case&lt;br /&gt;
&lt;br /&gt;
* The colors of the French flag are {:REGEXP:=blue, white and red.#Correct!}.&lt;br /&gt;
* The colors of the French flag are {:RX:=blue, white and red.#Correct!}.&lt;br /&gt;
&lt;br /&gt;
Will accept &amp;quot;blue, white and red&amp;quot; as a correct answer as well as &amp;quot;Blue, White and Red&amp;quot;&lt;br /&gt;
&lt;br /&gt;
use &#039;&#039;&#039;REGEXP_C&#039;&#039;&#039; or shorter &#039;&#039;&#039;RXC&#039;&#039;&#039; coding for questions in which case matters&lt;br /&gt;
* The colors of the French flag are {:REGEXP_C:=blue, white and red#Correct!}.&lt;br /&gt;
* The colors of the French flag are {:RXC:=blue, white and red#Correct!}.&lt;br /&gt;
&lt;br /&gt;
Will not accept &amp;quot;Blue, White and Red&amp;quot; as a correct answer (wrong capital letters).&lt;br /&gt;
&lt;br /&gt;
Please note that, as explained above, the very first answer &#039;&#039;must&#039;&#039; be Graded 100% (in Cloze type question syntax, all correct is either &#039;&#039;&#039;=&#039;&#039;&#039; or &#039;&#039;&#039;100%&#039;&#039;&#039;) and it must &#039;&#039;not&#039;&#039; be a regular expression.&lt;br /&gt;
&lt;br /&gt;
Please note that the syntax of the sub-questions inside a Cloze-type question must be followed exactly and that you must never ever copy and paste any question text from e.g. a word-processor into the Cloze-type question editing window. Quite often Cloze-type questions yield errors because extraneous blank spaces, new lines, or any odd formatting character has made its way into the question text.&lt;br /&gt;
&lt;br /&gt;
Note that the &#039;&#039;Hint&#039;&#039; button is not available for a RegExp question embedded in a Cloze-type question.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
====Downloads====&lt;br /&gt;
* Download [http://moodle.org/plugins/view.php?plugin=qtype_regexp the latest 2.1.2 version (with behaviours)] from the new Plugins repository.&lt;br /&gt;
* IMPORTANT : for the 2.1.2 version, if you want the Help feature, you must also download and install the following 2 &amp;quot;question behaviours&amp;quot; from the new Plugins repository: [http://moodle.org/plugins/view.php?plugin=qbehaviour_regexpadaptivewithhelp RegExp Adaptive mode with Help]  and [http://moodle.org/plugins/view.php?plugin=qbehaviour_regexpadaptivewithhelpnopenalty RegExp Adaptive mode with Help (no penalties)].&lt;br /&gt;
&lt;br /&gt;
====Installation====&lt;br /&gt;
-------------------------------&lt;br /&gt;
If you have downloaded the zip archive from the new moodle.org plugins page&lt;br /&gt;
&lt;br /&gt;
1.- Unzip the zip archive to your local computer.&lt;br /&gt;
&lt;br /&gt;
2.- This will give you a folder named &amp;quot;regexp&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
3.- GO TO STEP 4 below&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
If you have downloaded the zip archive from https://github.com/rezeau/moodle-qtype_regexp (&#039;&#039;&#039;for latest developments&#039;&#039;&#039;)&lt;br /&gt;
&lt;br /&gt;
1.- Unzip the zip archive to your local computer.&lt;br /&gt;
&lt;br /&gt;
2.- This will give you a folder named something like &amp;quot;rezeau-moodle_qtype_regexp-ff8c6a1&amp;quot;. The end of the name may vary.&lt;br /&gt;
&lt;br /&gt;
3.- ***Rename*** that folder to &amp;quot;regexp&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
---&lt;br /&gt;
&lt;br /&gt;
4.- Upload the regexp folder to &amp;lt;yourmoodle&amp;gt;/question/type/ folder.&lt;br /&gt;
&lt;br /&gt;
5.- Visit your Admin/Notifications page so that the new question type gets installed.&lt;br /&gt;
&lt;br /&gt;
====Learn more about regular expressions====&lt;br /&gt;
&lt;br /&gt;
*[http://www.regular-expressions.info/tutorial.html Regular Expressions Tutorial] A complete introduction to the topic.&lt;br /&gt;
*[http://www.regexplanet.com/simple/index.html Regular Expression Test Page] Test your regular expressions on a variety of &amp;quot;answers&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
====Other Moodle question types based on regular expressions====&lt;br /&gt;
[https://docs.moodle.org/dev/The_OU_PMatch_algorithm The OUP&#039;s PMatch]&lt;br /&gt;
&lt;br /&gt;
[https://docs.moodle.org/20/en/Preg_question_type Oleg Sychev&#039;s Preg question type]&lt;br /&gt;
&lt;br /&gt;
[[fr:question/type/regexp]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Quiz]]&lt;br /&gt;
[[Category:Questions]]&lt;br /&gt;
[[Category:Contributed code]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Performance_testing_moodle.org&amp;diff=96339</id>
		<title>Performance testing moodle.org</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Performance_testing_moodle.org&amp;diff=96339"/>
		<updated>2021-08-10T15:21:03Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Moodle.org hardware==&lt;br /&gt;
&lt;br /&gt;
The new servers for moodle.org consist of two machines directly linked by a 1Gb VLAN:&lt;br /&gt;
&lt;br /&gt;
===Web server===&lt;br /&gt;
* 2 x Quad Core Intel Xeon E5405 - 8 cores @ 2Ghz each&lt;br /&gt;
* 2 x 146GB 15k RPM SAS drives in RAID 1 via PERC 6/i controller&lt;br /&gt;
* 8Gb Registered ECC RAM&lt;br /&gt;
&lt;br /&gt;
===Database server===&lt;br /&gt;
* 1 x Quad Core Intel Xeon E5405 - 4 cores @ 2Ghz each&lt;br /&gt;
* 3 x 146GB 15K RPM SAS drives in RAID 5 via PERC 6/i controller&lt;br /&gt;
* 8Gb Registered ECC RAM&lt;br /&gt;
&lt;br /&gt;
==Server tests==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! !! Old Server !! colspan=&amp;quot;3&amp;quot; | New Servers &lt;br /&gt;
|-&lt;br /&gt;
! Test !! myisam !! myisam !! innodb !! postgres&lt;br /&gt;
|-&lt;br /&gt;
| slowqueries 1 || [[Image:old-moodle.org-slowtest1.png]] || [[Image:server10-slowtest1.png]] || [[Image:server10-slowtest-innodb.png]] [[Performance_testing_moodle.org_details|More details]] ||  (Needs different SQL)&lt;br /&gt;
|-&lt;br /&gt;
| perspective (all caching off) || &lt;br /&gt;
    * 1402000 function calls&lt;br /&gt;
    * 11500 16KB files read from disk (cache)&lt;br /&gt;
    * 7900 regular expression replaces over 1KB of text&lt;br /&gt;
    * 6000 16KB files written to disk (cache)&lt;br /&gt;
    * 4880 get_record calls on the course table&lt;br /&gt;
    * 1030 insert_record calls on the course table&lt;br /&gt;
    * 240 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
    * 1293000 function calls&lt;br /&gt;
    * 11400 16KB files read from disk (cache)&lt;br /&gt;
    * 8200 regular expression replaces over 1KB of text&lt;br /&gt;
    * 6000 16KB files written to disk (cache)&lt;br /&gt;
    * 5530 get_record calls on the course table&lt;br /&gt;
    * 1590 insert_record calls on the course table&lt;br /&gt;
    * 250 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
 ||&lt;br /&gt;
    * 2057000 function calls&lt;br /&gt;
    * 14800 16KB files read from disk (cache)&lt;br /&gt;
    * 16100 regular expression replaces over 1KB of text&lt;br /&gt;
    * 8500 16KB files written to disk (cache)&lt;br /&gt;
    * 2730 get_record calls on the course table&lt;br /&gt;
    * 2290 insert_record calls on the course table&lt;br /&gt;
    * 340 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
    * 2045000 function calls&lt;br /&gt;
    * 14800 16KB files read from disk (cache)&lt;br /&gt;
    * 16200 regular expression replaces over 1KB of text&lt;br /&gt;
    * 8700 16KB files written to disk (cache)&lt;br /&gt;
    * 2730 get_record calls on the course table&lt;br /&gt;
    * 1960 insert_record calls on the course table&lt;br /&gt;
    * 340 update_record calls on the course table&lt;br /&gt;
|| &lt;br /&gt;
    * 2083000 function calls&lt;br /&gt;
    * 14500 16KB files read from disk (cache)&lt;br /&gt;
    * 16100 regular expression replaces over 1KB of text&lt;br /&gt;
    * 9100 16KB files written to disk (cache)&lt;br /&gt;
    * 2790 get_record calls on the course table&lt;br /&gt;
    * 2010 insert_record calls on the course table&lt;br /&gt;
    * 330 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
    * 2063000 function calls&lt;br /&gt;
    * 14500 16KB files read from disk (cache)&lt;br /&gt;
    * 16100 regular expression replaces over 1KB of text&lt;br /&gt;
    * 9100 16KB files written to disk (cache)&lt;br /&gt;
    * 2790 get_record calls on the course table&lt;br /&gt;
    * 2090 insert_record calls on the course table&lt;br /&gt;
    * 330 update_record calls on the course table&lt;br /&gt;
 ||&lt;br /&gt;
    * 2071000 function calls&lt;br /&gt;
    * 13700 16KB files read from disk (cache)&lt;br /&gt;
    * 16000 regular expression replaces over 1KB of text&lt;br /&gt;
    * 9200 16KB files written to disk (cache)&lt;br /&gt;
    * 1610 get_record calls on the course table&lt;br /&gt;
    * 940 insert_record calls on the course table&lt;br /&gt;
    * 190 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
    * 2092000 function calls&lt;br /&gt;
    * 13700 16KB files read from disk (cache)&lt;br /&gt;
    * 16100 regular expression replaces over 1KB of text&lt;br /&gt;
    * 9200 16KB files written to disk (cache)&lt;br /&gt;
    * 1610 get_record calls on the course table&lt;br /&gt;
    * 940 insert_record calls on the course table&lt;br /&gt;
    * 190 update_record calls on the course table&lt;br /&gt;
|-&lt;br /&gt;
| perspective (all caching on) || &lt;br /&gt;
    * 1403000 function calls&lt;br /&gt;
    * 10000 16KB files read from disk (cache)&lt;br /&gt;
    * 8300 regular expression replaces over 1KB of text&lt;br /&gt;
    * 5200 16KB files written to disk (cache)&lt;br /&gt;
    * 5270 get_record calls on the course table&lt;br /&gt;
    * 1390 insert_record calls on the course table&lt;br /&gt;
    * 220 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
    * 1382000 function calls&lt;br /&gt;
    * 11000 16KB files read from disk (cache)&lt;br /&gt;
    * 8200 regular expression replaces over 1KB of text&lt;br /&gt;
    * 5800 16KB files written to disk (cache)&lt;br /&gt;
    * 5640 get_record calls on the course table&lt;br /&gt;
    * 2140 insert_record calls on the course table&lt;br /&gt;
    * 250 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
 ||&lt;br /&gt;
    * 1997000 function calls&lt;br /&gt;
    * 14700 16KB files read from disk (cache)&lt;br /&gt;
    * 16100 regular expression replaces over 1KB of text&lt;br /&gt;
    * 8800 16KB files written to disk (cache)&lt;br /&gt;
    * 19620 get_record calls on the course table&lt;br /&gt;
    * 2290 insert_record calls on the course table&lt;br /&gt;
    * 340 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
    * 2003000 function calls&lt;br /&gt;
    * 14700 16KB files read from disk (cache)&lt;br /&gt;
    * 16000 regular expression replaces over 1KB of text&lt;br /&gt;
    * 8800 16KB files written to disk (cache)&lt;br /&gt;
    * 19560 get_record calls on the course table&lt;br /&gt;
    * 1830 insert_record calls on the course table&lt;br /&gt;
    * 340 update_record calls on the course table&lt;br /&gt;
||  &lt;br /&gt;
    * 2098000 function calls&lt;br /&gt;
    * 14800 16KB files read from disk (cache)&lt;br /&gt;
    * 16100 regular expression replaces over 1KB of text&lt;br /&gt;
    * 8900 16KB files written to disk (cache)&lt;br /&gt;
    * 23170 get_record calls on the course table&lt;br /&gt;
    * 2030 insert_record calls on the course table&lt;br /&gt;
    * 330 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
    * 2132000 function calls&lt;br /&gt;
    * 14700 16KB files read from disk (cache)&lt;br /&gt;
    * 16000 regular expression replaces over 1KB of text&lt;br /&gt;
    * 8800 16KB files written to disk (cache)&lt;br /&gt;
    * 23270 get_record calls on the course table&lt;br /&gt;
    * 2040 insert_record calls on the course table&lt;br /&gt;
    * 330 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
||&lt;br /&gt;
    * 2112000 function calls&lt;br /&gt;
    * 14500 16KB files read from disk (cache)&lt;br /&gt;
    * 16100 regular expression replaces over 1KB of text&lt;br /&gt;
    * 9100 16KB files written to disk (cache)&lt;br /&gt;
    * 22760 get_record calls on the course table&lt;br /&gt;
    * 910 insert_record calls on the course table&lt;br /&gt;
    * 190 update_record calls on the course table&lt;br /&gt;
&lt;br /&gt;
    * 2115000 function calls&lt;br /&gt;
    * 14700 16KB files read from disk (cache)&lt;br /&gt;
    * 16100 regular expression replaces over 1KB of text&lt;br /&gt;
    * 9100 16KB files written to disk (cache)&lt;br /&gt;
    * 23360 get_record calls on the course table&lt;br /&gt;
    * 930 insert_record calls on the course table&lt;br /&gt;
    * 190 update_record calls on the course table&lt;br /&gt;
|-&lt;br /&gt;
| LoginView 300 (Jmeter with 300 users, 30 seconds ramp, 90% Line||  &lt;br /&gt;
NA&lt;br /&gt;
|| &lt;br /&gt;
NA&lt;br /&gt;
||&lt;br /&gt;
* 28.1 s / 29.5 s&lt;br /&gt;
* 0% error&lt;br /&gt;
||&lt;br /&gt;
* 27 s / 31.9 s&lt;br /&gt;
* 0% error&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| LoginPost 300 (Jmeter with 300 users, 30 seconds ramp, 90% Line) || &lt;br /&gt;
NA&lt;br /&gt;
|| &lt;br /&gt;
* 21.5 s &lt;br /&gt;
* 0.11% error&lt;br /&gt;
||&lt;br /&gt;
* 20.4 s / 27.1 s&lt;br /&gt;
* 0% error&lt;br /&gt;
||&lt;br /&gt;
* 30.6 s / 27.7 s (decreasing with each run)&lt;br /&gt;
* 0% error&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:Moodle.org]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Parent_role&amp;diff=96338</id>
		<title>Parent role</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Parent_role&amp;diff=96338"/>
		<updated>2021-08-10T15:21:02Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Roles}}&lt;br /&gt;
The role of &#039;&#039;&#039;Parent&#039;&#039;&#039; may be used to provide parents/mentors/tutors with permission to view certain information, such as activity reports, grades, blog entries and forum posts, about their children/mentees/tutees.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Note:&#039;&#039;&#039; In this page, the terms &amp;quot;Permissions&amp;quot; and &amp;quot;Capabilities&amp;quot; are used as interchangeable terms. Please bear in mind that they are in fact a pair. A capability is an editable behaviour and a permission is the value given that capability. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
| Things are arranged differently in Moodle 2, so read carefully and change all the correct permissions.&lt;br /&gt;
Take a note of all changes made and keep a record. This role may need to be re-created from time to time.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Using a Custom Role===&lt;br /&gt;
In the page [[Create_custom_roles|Create Custom Roles]], a generic Role was created and given the name of Parent. In this part, the Role is going to be linked to a Student Role, which is why the role was called &amp;quot;Parent&amp;quot;. (By now there should be two additional Users in the User Accounts, say, &amp;quot;Perant Test&amp;quot; and &amp;quot;Stedunt Test&amp;quot;.) Return to the Role list and see if the Role has been properly created, then click on it to start reviewing capabilities. ()&lt;br /&gt;
&lt;br /&gt;
[[Image:CustomRole04.png|frame|center|Returning to the Parent Role]]&lt;br /&gt;
&lt;br /&gt;
Next the capabilities of this Role need to be determined. What is different in this Role that required the Role be created in the first place? As the Role has already had a Context selected for it, User, it is that area of the Capabilities that need existing permissions altered. Turn editing on and scroll down to the section named &amp;quot;User&amp;quot;, look for the fields listed below and reset the values on these capabilities: &lt;br /&gt;
&lt;br /&gt;
[[Image:CustomRole05.png|frame|center|Viewing the structure of the Parent Role and turning editing on]] &lt;br /&gt;
&lt;br /&gt;
Under the heading of &#039;&#039;&#039;Course&#039;&#039;&#039;&lt;br /&gt;
#Change [[Capabilities/moodle/user:viewdetails|moodle/user:viewdetails]] to &#039;&#039;allow&#039;&#039; - to access the student&#039;s profile&lt;br /&gt;
Under the heading of &#039;&#039;&#039;Users&#039;&#039;&#039;&lt;br /&gt;
#Change [[Capabilities/moodle/user:viewdetails|moodle/user:viewalldetails]] to &#039;&#039;allow&#039;&#039; - to view all aspects of the student&#039;s profile&lt;br /&gt;
#Change any/all of the following capabilities to &#039;&#039;allow&#039;&#039;&lt;br /&gt;
#*[[Capabilities/moodle/user:readuserblogs|moodle/user:readuserblogs]] - to read the student&#039;s blog entries&lt;br /&gt;
#*[[Capabilities/moodle/user:readuserposts|moodle/user:readuserposts]] - to read the student&#039;s forum posts&lt;br /&gt;
#*[[Capabilities/moodle/user:viewuseractivitiesreport|moodle/user:viewuseractivitiesreport]] - to view the student&#039;s activity reports and grades&lt;br /&gt;
#*[[Capabilities/moodle/user:editprofile|moodle/user:editprofile]] - to edit the student&#039;s profile&lt;br /&gt;
&lt;br /&gt;
Some permissions may already be set to &amp;quot;Allow&amp;quot;, or the permissions granted here may not be the ones required for that Role. This set of Permissions mean that this Role allows anyone assigned to a Parent Role, then linked to the Student Role, to edit the profile or read the blogs of that Student - not everyone&#039;s profile or blogs. &lt;br /&gt;
&lt;br /&gt;
[[Image:CustomRole06.png|frame|center|Assigning permissions to the Parent Role]] &lt;br /&gt;
&lt;br /&gt;
Scroll to the bottom of the page and click on &amp;quot;Save changes&amp;quot;  &lt;br /&gt;
&lt;br /&gt;
[[Image:CustomRole07.png|frame|center|Saving Changes to the Parent Role]] &lt;br /&gt;
&lt;br /&gt;
When saved, Moodle automatically return to the List of all Roles page. &lt;br /&gt;
&lt;br /&gt;
This changes the capabilities of the Parent Role in Moodle 2, but the Role now has to be directly linked to a Student Role to allow it to be used as it was designed to be.&lt;br /&gt;
&lt;br /&gt;
===Linking to the Student Profile===&lt;br /&gt;
&lt;br /&gt;
*Access the child&#039;s profile page, via &#039;&#039;&#039;Site administration ► Users ► Accounts ► Browse list of users&#039;&#039;&#039; &lt;br /&gt;
[[Image:CustomRole08.png|frame|center|Selecting the Student&#039;s Role]]&lt;br /&gt;
and in &#039;Profile settings for [username]&#039; &amp;gt; &#039;Roles&#039; &amp;gt;&#039;Assign roles relative to this user&#039;&lt;br /&gt;
[[Image:CustomRole09.png|frame|center|Setting an assignment to that Student&#039;s Role]]&lt;br /&gt;
*Choose the role to assign i.e. Parent&lt;br /&gt;
[[Image:CustomRole10.png|frame|center|Setting an assignment to that Student&#039;s Role]]&lt;br /&gt;
*Select the parent in the potential users list, and use the Add button to add it to the existing users list. This should already be familiar so just select the parent you want to assign to that student and click the &amp;quot;Add&amp;quot; button.  &lt;br /&gt;
[[Image:CustomRole11.png|frame|center|Setting an assignment to that Student&#039;s Role]]&lt;br /&gt;
&lt;br /&gt;
At this point you can return to the &amp;quot;Assign roles in user:&amp;quot; page and you should see that the parent name is now in the &amp;quot;Users with Role&amp;quot; column.&lt;br /&gt;
&lt;br /&gt;
Make sure everything is saved where it needs to be and then return to the Front Page.&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;NOTE:&#039;&#039;&#039;The same parent may be assigned to several students, siblings or otherwise.&lt;br /&gt;
&lt;br /&gt;
===Adding multiple role assignments at once===&lt;br /&gt;
(if you are interested in assigning several parent roles &#039;&#039;en masse&#039;&#039; read the discussion at http://moodle.org/mod/forum/discuss.php?d=70539#p345127)&lt;br /&gt;
&lt;br /&gt;
===Adding the Mentee Block===&lt;br /&gt;
&lt;br /&gt;
When at the Front Page, turn editing on.&lt;br /&gt;
&lt;br /&gt;
[[Image:CustomRole12.png|frame|center|Turn editing on to access the Add Blocks block.]]&lt;br /&gt;
&lt;br /&gt;
Go to the &#039;&#039;&#039;Add Blocks&#039;&#039;&#039; block and select the [[Mentees block]] and when it appears, click on the Configuration icon.&lt;br /&gt;
 &lt;br /&gt;
[[Image:CustomRole13.png|frame|center|Configuring the Mentee block]]&lt;br /&gt;
&lt;br /&gt;
Edit the configuration settings to suit the needs of the site. When complete, save the changes and return to the Front Page.&lt;br /&gt;
&lt;br /&gt;
[[Image:CustomRole14.png|frame|center|Setting the configuration values]]&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;NOTE:&#039;&#039;&#039;Consider carefully what options really need be set. There may be a requirement to have more than one Mentee block, so giving each block an unambiguous title becomes important.&lt;br /&gt;
&lt;br /&gt;
Once saved the block should be titled Parent and if you have made the assignments properly, it will work.&lt;br /&gt;
&lt;br /&gt;
===Viewing activity reports===&lt;br /&gt;
&lt;br /&gt;
If the capability [[Capabilities/moodle/user:viewuseractivitiesreport|moodle/user:viewuseractivitiesreport]] is set to &#039;&#039;allow&#039;&#039; then a parent/mentee may view their student&#039;s activity reports and grades via the student&#039;s Profile.   &lt;br /&gt;
&lt;br /&gt;
On the main Profile page, there will be a list of courses.  Clicking on a course title will select that course.  Then, under the Activities tab, the various report and grades sub-tabs will display information relevant to the selected course.   You can easily change which course you are reviewing by selecting another one on the main Profile tab.&lt;br /&gt;
&lt;br /&gt;
One small hack that can make the course list a bit more readable, especially for long course lists, is to change the format to a vertical list:&lt;br /&gt;
&lt;br /&gt;
* Edit the moodle/user/view.php file and look for these lines (around line 305 in my 2.1 installation):&lt;br /&gt;
&amp;lt;code php&amp;gt;. format_string($mycourse-&amp;gt;fullname) . &amp;quot;&amp;lt;/a&amp;gt;, &amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
else {&lt;br /&gt;
$courselisting .= format_string($mycourse-&amp;gt;fullname) . &amp;quot;, &amp;quot;;&amp;lt;/code&amp;gt;&lt;br /&gt;
* and change that to :&lt;br /&gt;
&amp;lt;code php&amp;gt;. format_string($mycourse-&amp;gt;fullname) . &amp;quot;&amp;lt;/a&amp;gt;,&amp;lt;br /&amp;gt;&amp;quot;;&lt;br /&gt;
}&lt;br /&gt;
else {&lt;br /&gt;
$courselisting .= format_string($mycourse-&amp;gt;fullname) . &amp;quot;&amp;lt;br /&amp;gt;&amp;quot;;;&amp;lt;/code&amp;gt;&lt;br /&gt;
* Then save&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*[http://www.youtube.com/watch?v=Gk_TRi_N00o The Parent role in Moodle 2.0 video]&lt;br /&gt;
*[[Create_custom_roles|Create a custom role]]&lt;br /&gt;
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=57812 Create a Parent of a student role] forum discussion &lt;br /&gt;
&lt;br /&gt;
[[eu:Guraso_rola]]&lt;br /&gt;
[[fr:Rôle Parent]]&lt;br /&gt;
[[ja:親ロール]]&lt;br /&gt;
[[de:Eltern-Rolle]]&lt;br /&gt;
[[nl:Ouder Rol]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Outcomes&amp;diff=96337</id>
		<title>Outcomes</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Outcomes&amp;diff=96337"/>
		<updated>2021-08-10T15:21:02Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Grades}}&lt;br /&gt;
Outcomes are specific descriptions of what a student has demonstrated and understood at the completion of an activity or course. Each outcome is rated by some sort of [[Scales|scale]]. Other terms for outcomes are &#039;&#039;Competencies&#039;&#039; and &#039;&#039;Goals&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
In simple terms outcomes are similar to sub components of a grade.  A grade is an assessment of overall performance that may include tests, participation, attendance and projects. Outcomes assess specific levels of knowledge through a series of statements, that maybe coded with numbers or letters.   Thus an overall grade can be given for a course, along with statements about specific competencies in the form of outcomes.  &lt;br /&gt;
&lt;br /&gt;
==Enabling outcomes==&lt;br /&gt;
# Go to &#039;&#039;Site administration &amp;gt; Advanced features&#039;&#039; and ensure that &#039;&#039;Enable outcomes&#039;&#039; is checked (by default, it isn&#039;t).&lt;br /&gt;
&lt;br /&gt;
==Using outcomes==&lt;br /&gt;
&lt;br /&gt;
# Choose or define some outcomes for your course (see below).&lt;br /&gt;
# For each activity, choose which of these outcomes apply using the tickbox in the activity&#039;s settings page.&lt;br /&gt;
# When grading that activity, grade each student using the Outcome scales. Note: You can also edit the grades in the [[Grader report]] (useful for modules that don&#039;t feature inbuilt grading).&lt;br /&gt;
# Use the outcomes as part of the assessment for students, or look at the Outcomes report for some useful feedback on how students in the class in general are performing.&lt;br /&gt;
&lt;br /&gt;
==Outcomes report==&lt;br /&gt;
&lt;br /&gt;
The outcomes report in &#039;&#039;Settings &amp;gt; Course administration &amp;gt; Grades &amp;gt; Outcomes report&#039;&#039; helps teachers monitor their students&#039; progress using outcomes.  It lists site-wide outcomes and custom outcomes used in the current course, their overall average (each outcome can be measured through many [[Grade items|grade items]]).  It will show the name, course and site wide average, the activity, the average values and the number of &amp;quot;grades&amp;quot; given.&lt;br /&gt;
&lt;br /&gt;
The outcomes report is a table with 6 columns:&lt;br /&gt;
&lt;br /&gt;
*Short name - the short name of the outcome used in this course.&lt;br /&gt;
*Course average -shows two values representing the average scores given to students for each outcome used in this course.&lt;br /&gt;
*Site-wide - Whether the outcome is a site-wide outcome or not.&lt;br /&gt;
*Activities - This lists the activities that use this outcome in this course. A new row is created for each activity, and the activity name is linked to the activity&#039;s page.&lt;br /&gt;
*Average - the average score for each activity using the outcome in this course.&lt;br /&gt;
*Number of Grades - The number of grades given to students for each activity using the outcome.&lt;br /&gt;
&lt;br /&gt;
==Outcomes used in course==&lt;br /&gt;
&lt;br /&gt;
Outcomes may be set at site and/or course level. To choose outcomes for use in your course:&lt;br /&gt;
&lt;br /&gt;
# View available standard outcomes in &#039;&#039;Settings &amp;gt; Course administration &amp;gt; Outcomes&#039;&#039; or via the gradebook Outcomes tab&lt;br /&gt;
# Add outcomes from the standard available list (right side), and use the left-facing arrow button to add them to outcomes used list (left side). Multiple outcomes may be selected by holding down the Apple or Ctrl key whilst clicking on the individual outcomes.&lt;br /&gt;
&lt;br /&gt;
==Adding course-level outcomes==&lt;br /&gt;
&lt;br /&gt;
[[Image:Adding an outcome.png|thumb|Adding an outcome]]To add a course-level outcome:&lt;br /&gt;
&lt;br /&gt;
# Click the &#039;Edit outcomes&#039; link in &#039;&#039;Settings &amp;gt; Course administration &amp;gt; Outcomes&#039;&#039;&lt;br /&gt;
# Click the &#039;Add a new outcome&#039; button.&lt;br /&gt;
# Complete the form then click the &#039;Save changes&#039; button. &lt;br /&gt;
&lt;br /&gt;
==Adding standard outcomes==&lt;br /&gt;
&lt;br /&gt;
An administrator can add standard outcomes, which are available site-wide, in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Grades &amp;gt; Outcomes&#039;&#039;. Multiple standard outcomes can be added using the import outcomes functionality (see below).&lt;br /&gt;
&lt;br /&gt;
==Exporting outcomes==&lt;br /&gt;
&lt;br /&gt;
Outcomes (and their associated scales) can be exported by clicking the &amp;quot;Export all outcomes&amp;quot; button.  This will send a file (in .csv format) that can be read by Excel, OpenOffice.org or by any text editor.&lt;br /&gt;
&lt;br /&gt;
==Importing outcomes==&lt;br /&gt;
&lt;br /&gt;
Outcomes (and associated scales) may be imported by submitting a csv file. The format should be as follows:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Field name&lt;br /&gt;
! Description&lt;br /&gt;
! Required&lt;br /&gt;
! Format&lt;br /&gt;
|-&lt;br /&gt;
| outcome_name&lt;br /&gt;
| The full name of the outcome&lt;br /&gt;
| Yes&lt;br /&gt;
| String&lt;br /&gt;
|-&lt;br /&gt;
| outcome_shortname&lt;br /&gt;
| The short name of the outcome&lt;br /&gt;
| Yes&lt;br /&gt;
| String&lt;br /&gt;
|-&lt;br /&gt;
| outcome_description&lt;br /&gt;
| The description of the outcome&lt;br /&gt;
| No&lt;br /&gt;
| String&lt;br /&gt;
|-&lt;br /&gt;
| scale_name&lt;br /&gt;
| The name of the scale used&lt;br /&gt;
| Yes&lt;br /&gt;
| String&lt;br /&gt;
|-&lt;br /&gt;
| scale_items&lt;br /&gt;
| A comma-separated list of scale items&lt;br /&gt;
| Yes&lt;br /&gt;
| String&lt;br /&gt;
|-&lt;br /&gt;
| scale_description&lt;br /&gt;
| The description of the scale&lt;br /&gt;
| No&lt;br /&gt;
| String&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here is an example:&lt;br /&gt;
&lt;br /&gt;
outcome_name;outcome_shortname;outcome_description;scale_name;scale_items;scale_description&lt;br /&gt;
Participation;participation;;Participation scale;&amp;quot;Little or no participation, Satisfactory participation, Full participation&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
To import outcomes:&lt;br /&gt;
&lt;br /&gt;
# Click the &#039;Import outcomes&#039; link in &#039;&#039;Settings &amp;gt; Course administration &amp;gt; Outcomes&#039;&#039;&lt;br /&gt;
# Choose &#039;Import as custom outcomes (only this course)&#039; or &#039;Import as standard outcomes&#039; as required&lt;br /&gt;
# Upload the csv file&lt;br /&gt;
&lt;br /&gt;
Note that while importing: &lt;br /&gt;
*Existing outcomes and scale will be used if available (no overwriting is done by the script)&lt;br /&gt;
*The script will stop if it detects that the file contains invalid data&lt;br /&gt;
&lt;br /&gt;
==Removing selected outcomes for activities==&lt;br /&gt;
&lt;br /&gt;
Previously selected outcomes are greyed out on the update activity page, however they can be removed via the gradebook on the categories and items page. They will appear in the list either below or above the activity they have been enabled in and will have the same icon as that activity. Note that if you have renamed the outcome since you assigned it to the activity, the orginal name will be displayed. Deleting the outcomes from this list will result in the outcomes being deselected on the update activity page.&lt;br /&gt;
&lt;br /&gt;
==Outcomes capabilities==&lt;br /&gt;
&lt;br /&gt;
* [[Capabilities/gradereport/outcomes:view|View the outcomes report]]&lt;br /&gt;
* [[Capabilities/moodle/grade:manageoutcomes|Manage grade outcomes]]&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
	&lt;br /&gt;
*[http://www.slideshare.net/mariamoodle/outcomes-2724350 Moodle 1.9 Outcomes] External link to slide show demonstration&lt;br /&gt;
*[[Outcome examples]] - An example use of Outcomes&lt;br /&gt;
*[http://www.youtube.com/watch?v=PmkEGfvjj9U Video on how to use outcomes in Moodle]&lt;br /&gt;
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=78074 Outcomes in 1.9] forum discussion&lt;br /&gt;
&lt;br /&gt;
[[Category:Report]]&lt;br /&gt;
&lt;br /&gt;
[[es:Resultados]]&lt;br /&gt;
[[fr:Objectifs]]&lt;br /&gt;
[[ja:アウトカム]]&lt;br /&gt;
[[de:Lernziele]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=My_Moodle&amp;diff=96336</id>
		<title>My Moodle</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=My_Moodle&amp;diff=96336"/>
		<updated>2021-08-10T15:21:02Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Site appearance}}&lt;br /&gt;
==My home==&lt;br /&gt;
&lt;br /&gt;
My Moodle or My home is a customisable &amp;quot;dashboard&amp;quot; page for providing users with links to their courses and activities within them, such as unread forum posts and upcoming assignments. (The name &#039;My Moodle&#039; was used in the admin menu in earlier versions of Moodle.)&lt;br /&gt;
&lt;br /&gt;
The navigation block includes a My home link directly above or below the Site home link.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
My Home in Moodle 2.0 video:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;mediaplayer&amp;gt;http://www.youtube.com/watch?v=un_pBYkeXXI&amp;lt;/mediaplayer&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Site administration settings==&lt;br /&gt;
&lt;br /&gt;
===Default home page===&lt;br /&gt;
&lt;br /&gt;
An administrator can set My home as the default home page for all logged-in users by selecting &#039;My Moodle&#039; as default home page in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Appearance &amp;gt; Navigation&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
If &#039;User preference&#039; is selected as default home page, each user needs to navigate to either the &#039;Home Page&#039; or the &#039;My home&#039; page then via the &#039;&#039;Settings &amp;gt; My profile settings&#039;&#039; click the &amp;quot;Make this my default home page&amp;quot; link. Note that this option only appears on the page that is not their current default home page.  Once selected, Moodle will remember which page to present them each time they log on.&lt;br /&gt;
&lt;br /&gt;
Note: Users with the Site administrator role cannot set My Moodle as their default home page.&lt;br /&gt;
&lt;br /&gt;
===Setting the default My Moodle page===&lt;br /&gt;
&lt;br /&gt;
An administrator or manager (or other user with the capability [[Capabilities/moodle/my:configsyspages|moodle/my:configsyspages]]) can set which content (course overview, calendar, blocks) appears on the My Moodle page for all users as follows:&lt;br /&gt;
&lt;br /&gt;
# Access &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Appearance &amp;gt; Default My Moodle page&#039;&#039;.&lt;br /&gt;
# Select the required blocks from the &amp;quot;Add a block&amp;quot; drop-down menu. [[Block settings|Configure]] each block as desired.&lt;br /&gt;
# Reposition blocks using the arrow icons in the block headers.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:myMoodle02.png|thumb|250px|center|Accessing My Moodle page]]&lt;br /&gt;
|[[Image:myMoodle03.png|thumb|250px|center|Editing My Moodle page]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Managing blocks===&lt;br /&gt;
&lt;br /&gt;
By default, users are allowed to add blocks to their My Moodle page. This can be prevented by editing the [[Authenticated user|authenticated user]] role and changing the [[Capabilities/moodle/my:manageblocks|moodle/my:manageblocks]] capability from allow to not set.&lt;br /&gt;
&lt;br /&gt;
==My Moodle capabilities==&lt;br /&gt;
&lt;br /&gt;
* [[Capabilities/moodle/my:manageblocks|Manage My Moodle page blocks]] (see above)&lt;br /&gt;
* [[Capabilities/moodle/my:configsyspages|Configure system templates for My Moodle pages]]&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/view.php?id=7309 My Moodle forum]&lt;br /&gt;
&lt;br /&gt;
Using Moodle forum discussions:&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=168292 Latest news on My Moodle]&lt;br /&gt;
&lt;br /&gt;
[[eu:Nire_Moodle]]&lt;br /&gt;
[[fr:Mon Moodle]]&lt;br /&gt;
[[de:MyMoodle]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Moodletxt_capabilities&amp;diff=96335</id>
		<title>Moodletxt capabilities</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Moodletxt_capabilities&amp;diff=96335"/>
		<updated>2021-08-10T15:21:01Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== List of all capabilities installed by MoodleTxt ==&lt;br /&gt;
&lt;br /&gt;
This page is an administrator&#039;s reference for the user capabilities that will be installed into your Moodle installation by MoodleTxt. You can use these to grant or deny access to the various sections of MoodleTxt using these capabilities in the standard Moodle control panel.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Capability Name&lt;br /&gt;
! Default Assignment&lt;br /&gt;
! Description&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:addressbooks&lt;br /&gt;
| Teachers and admins&lt;br /&gt;
| Granting this permission allows a user to create addressbooks within MoodleTxt&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:adminsettings&lt;br /&gt;
| Admins only&lt;br /&gt;
| Allows a user to use the MoodleTxt control panel and see error messages intended for administrators.&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:adminusers&lt;br /&gt;
| Admins only&lt;br /&gt;
| Allows a user to admin user information within MoodleTxt, such as editing a user&#039;s message filters, or viewing their message history.&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:defaultinbox&lt;br /&gt;
| Teachers and admins&lt;br /&gt;
| If a user has this capability assigned to them at system level, then they can be selected as the &amp;quot;default inbox&amp;quot; when creating message filters. (A default inbox is where any unfiltered messages for a given account are deposited.)&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:globaladdressbooks&lt;br /&gt;
| Teachers and admins&lt;br /&gt;
| If this user can create address books within MoodleTxt, they can create global address books that can be viewed and used by all users within the system.&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:personalsettings&lt;br /&gt;
| Teachers and admins&lt;br /&gt;
| Having this capability assigned to a user allows them to edit their own messaging preferences. This includes message templates and signatures, as well as options related to message display.&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:receivemessages&lt;br /&gt;
| Teachers and admins&lt;br /&gt;
| Any user that has this capability assigned can receive inbound messages within the block.&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:sendmessages&lt;br /&gt;
| Teachers and admins&lt;br /&gt;
| Any user that has this capability assigned can send messages out from the block.&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:viewstats&lt;br /&gt;
| Teachers and admins&lt;br /&gt;
| Any user that has this capability assigned can view user/message statistics. (Coming in 3.1)&lt;br /&gt;
|-&lt;br /&gt;
| block/moodletxt:viewmoodletxtpluslogs&lt;br /&gt;
| Admins only&lt;br /&gt;
| Allows the user to view the logs of event-based messaging. (Largely redundant, may be removed in 3.1. Users that have the :adminusers permission can use the sent page, which was upgraded since 3.0 beta 2, to view these logs already.)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[Category:MoodleTxt|Capabilities]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Mindmap_module&amp;diff=96334</id>
		<title>Mindmap module</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Mindmap_module&amp;diff=96334"/>
		<updated>2021-08-10T15:21:01Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{stub}}&lt;br /&gt;
This contributed code activity module can add, create and share mindmaps within Moodle.&lt;br /&gt;
&lt;br /&gt;
==Features==&lt;br /&gt;
* Create and share mindmaps online.&lt;br /&gt;
* Make mindmaps public or share them with groups or make them public.&lt;br /&gt;
* Export maps to XML, PDF, image or Freemind-files.&lt;br /&gt;
* Edit mindmaps offline via Gears or Adobe AIR&lt;br /&gt;
&lt;br /&gt;
Most important commands and functions&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Function&lt;br /&gt;
! Command&lt;br /&gt;
|-&lt;br /&gt;
|add node &lt;br /&gt;
|&lt;br /&gt;
*Doubleclick on any place or click the green plus-icon &lt;br /&gt;
*ENTER adds a node to the same layer &lt;br /&gt;
*INSERT adds a childnode&lt;br /&gt;
|-&lt;br /&gt;
| delete nodes &lt;br /&gt;
| &lt;br /&gt;
* CTRL + click on the node, &lt;br /&gt;
* press DELETE &lt;br /&gt;
* click the red minus-sign&lt;br /&gt;
|-&lt;br /&gt;
|deletes a node and all of his child-nodes&lt;br /&gt;
|CTRL + D&lt;br /&gt;
|-&lt;br /&gt;
|Undo and Redo &lt;br /&gt;
|&lt;br /&gt;
*CTRL + Z and CTRL + Y or &lt;br /&gt;
*use the icons|&lt;br /&gt;
|-&lt;br /&gt;
|Autocomplete-Node &lt;br /&gt;
|press END &lt;br /&gt;
|-&lt;br /&gt;
|move node&lt;br /&gt;
|&lt;br /&gt;
#position a node over new parent, &lt;br /&gt;
#release mouse, &lt;br /&gt;
#reposition node&lt;br /&gt;
|}&lt;br /&gt;
For Mac User: There is no INSERT key!  To add a childnode on Mac, first highlight the mother node. Then while pressing command key, double tab at the new position for the childnode.  Or if you are using the mouse position your cursor at the new childnode place, then double click left mouse at the same time pressing the command key.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*[http://moodle.org/mod/data/view.php?d=13&amp;amp;rid=1628  Mindmap] is a Modules and plugins database page for downloads and more information.&lt;br /&gt;
*Discussions: please create or find a discussion topic in the [http://moodle.org/mod/forum/view.php?id=44  Contributed Code forum]&lt;br /&gt;
*[[FreeMind filter]] contributed code&lt;br /&gt;
&lt;br /&gt;
* Register here to find out more about: http://ekpenso.com/&lt;br /&gt;
[[Category:Contributed code]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Metacourse&amp;diff=96333</id>
		<title>Metacourse</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Metacourse&amp;diff=96333"/>
		<updated>2021-08-10T15:21:01Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==What is a metacourse?==&lt;br /&gt;
&lt;br /&gt;
A &#039;&#039;&#039;meta course&#039;&#039;&#039; is a course that is &amp;quot;with&amp;quot; or linked to one or more courses for its student [[Enrolment|enrolment]] (enrollment to some). Adding or subtracting participants in a metacourse can only be done from the courses it is linked to. The linked courses push enrolment information to the metacourse(s) every time [[Cron|cron]] is run. There are [[Metacourse examples of use|many uses for a metacourse]].&lt;br /&gt;
&lt;br /&gt;
The course meta link option must be turned on by the site adminstrator.&lt;br /&gt;
&#039;&#039;Settings &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Enrolments &amp;gt; Manage enrol plugins &amp;gt; Course meta link&#039;&#039;.  The standard package default is to hide this feature.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Concept note:&#039;&#039; When using a meta course, Moodle calls the courses it is linked to &#039;&#039;&#039;child&#039;&#039;&#039; courses. Some people like to think of them as parent courses.  In any case a meta course has a kinship with one or more non-meta courses when it comes to enrolment.&lt;br /&gt;
&lt;br /&gt;
In the simplest form, a linked course only needs to contain just the Students who are to be enrolled in a meta course. There do not need to be resources,  assignments,  or wikis, etc., just the Students in the linked course.  In the simplest form, a meta course &#039;&#039;&#039;cannot&#039;&#039;&#039; enroll Students, but will have resources and activities for students in the linked courses. &lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
![[Image:simplemetacourse0.png|thumb|left|200px|Created - a child course and a meta course.]] &lt;br /&gt;
![[Image:simplemetacourse1.png|thumb|left|200px|Associating one child course and one meta course.]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Examples: one &amp;quot;child&amp;quot; course (a course linked to a meta course) can be associated with many meta courses. Or one meta course can have many child courses associated with it. Both the child courses (non-meta courses) and the meta courses are independent and can be recycled many times, that is, each can be associated with many of the other. {| class=&amp;quot;wikitable&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
![[Image:simplemetacourse2.png|thumb|left|200px|2 child courses and a meta course.]] &lt;br /&gt;
![[Image:simplemetacourse3.png|thumb|left|200px|1 child course and 2 meta courses.]]&lt;br /&gt;
![[Image:simplemetacourse4a.png|thumb|left|200px|3 child courses and 2 meta courses.]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Creating a meta course==&lt;br /&gt;
For information on how to create a metacourse, see [[https://docs.moodle.org/20/en/admin/setting/enrolsettingsmeta Course meta link plugin]] and see this screencast [http://www.youtube.com/watch?v=hA5QcTb13no&amp;amp;feature=player_embedded| How to make a metacourse in Moodle 2.0]&lt;br /&gt;
&lt;br /&gt;
==Tips and Tricks==&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
=== Example Procedure for Experimenting with Metacourses ===&lt;br /&gt;
In this example, there are 2 sections of students in the &amp;quot;Parent&amp;quot; course: &amp;quot;Section 001&amp;quot; and &amp;quot;Section 002&amp;quot;.  Students are enrolled in the section courses.&lt;br /&gt;
&lt;br /&gt;
# Turn Metacourses on by going to Site administration -&amp;gt; Plugins -&amp;gt; Enrolments -&amp;gt; Manage enrol plugins and enabled Course meta link.&lt;br /&gt;
# Created the following courses:&lt;br /&gt;
## Parent&lt;br /&gt;
## Section 001&lt;br /&gt;
## Section 002&lt;br /&gt;
# Enroll users into Section 001 and Section 002. Leave Parent enrollment empty.&lt;br /&gt;
# Go to Parent course. Go to Settings -&amp;gt; Course admin -&amp;gt; Users -&amp;gt; Enrolment methods. On that screen, add method &amp;quot;Course Meta link&amp;quot; and choose Section 001. Repeat steps for Section 002. If you look at participants for the parent course, you will see the users from Section 001 and 002.&lt;br /&gt;
# If you log-in as a student from section 001, you will see section 001 and parent in your course listings. If you want only students to see the parent course, then go to:&lt;br /&gt;
## Site Administration -&amp;gt; Courses -&amp;gt; Add/edit courses. Choose the category for the section 001 course. Find the course section 001. Click the eye icon to hide the course.&lt;br /&gt;
## &#039;&#039;&#039;OR&#039;&#039;&#039; search for the course from the home page logged in as site admin. Click the eye icon to hide the appropriate courses.&lt;br /&gt;
# Repeat above for section 002. If you log in as a student, you can&#039;t see/search for section 001. However, an admin can still see/search for these now hidden child courses. The will be grayed out to indicate that they are hidden.&lt;br /&gt;
&lt;br /&gt;
===Draw a map of your courses===&lt;br /&gt;
Get an oversized piece of paper (A3 or 11&amp;quot;x17&#039;), draw boxes for courses and give them names. Add lines to connect the boxes to show relationships. Label the meta courses (alternatively, color the meta course boxes). Add arrows to the lines so you will know where enrolments come from.   This is a great tip from the Business Uses forum.&lt;br /&gt;
&lt;br /&gt;
===Groups do not transfer===&lt;br /&gt;
Meta course enrolments do not transfer groups from the and enrolment does not happen immediately, but occurs next time the [[Cron|cronjob]] runs.&lt;br /&gt;
&lt;br /&gt;
===Transfer of roles===&lt;br /&gt;
By default all role assignments from child courses are synchronised to meta courses. However, the &amp;quot;Roles that are not synchronised to metacourses&amp;quot; setting in &#039;&#039;Site administration &amp;gt; Plugins &amp;gt; Enrolments &amp;gt; Manage enrol plugins &amp;gt; Course meta link &amp;gt; Settings&#039;&#039; enables administrators to exclude particular roles.&lt;br /&gt;
&lt;br /&gt;
===Restoring a meta course=== &lt;br /&gt;
When restoring a meta course with the option &amp;quot;deleting the course first&amp;quot;, you will notice that the enrolments that were used by the course previously are now gone.  In order to re-link the course, navigate to the new course and select the link &amp;quot;Child Courses&amp;quot; from the &amp;quot;Administration&amp;quot; block on the main course page and re-link the course to its parent.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*[[Metacourse examples of use]] -  Why use a metacourse? here are many examples&lt;br /&gt;
*[[Related courses block]] - contributed code that shows meta or child course relationships&lt;br /&gt;
&lt;br /&gt;
Using Moodle forum discussions:&lt;br /&gt;
*[http://moodle.org/mod/forum/discuss.php?d=48901 Metacourses?]  Forum discussion&lt;br /&gt;
*[http://moodle.org/mod/forum/discuss.php?d=39438 Best reference for describing a metacourse] Forum discussion&lt;br /&gt;
*[http://moodle.org/mod/forum/discuss.php?d=89741 Assign student in course] Forum discussion&lt;br /&gt;
*[http://moodle.org/mod/forum/discuss.php?d=156900#p686857 Confusion over meta-courses] Forum discussion&lt;br /&gt;
&lt;br /&gt;
[[cs:Metakurzy]]&lt;br /&gt;
[[de:Metakurs]]&lt;br /&gt;
[[es:Metacourses]]&lt;br /&gt;
[[fr:Méta-cours]]&lt;br /&gt;
[[ja:メタコース]]&lt;br /&gt;
[[ru:Метакурсы]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=MRBS_block/import&amp;diff=96332</id>
		<title>MRBS block/import</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=MRBS_block/import&amp;diff=96332"/>
		<updated>2021-08-10T15:21:01Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This feature works in a similar way to flatfile enrolement; it is enabled by configuring a file location in the module settings. Once there is a location set, that location will be checked every time cron runs and if a file is found it will be processed.&lt;br /&gt;
&lt;br /&gt;
All existing imported bookings will be deleted from the database before the new import is processed- this is done so that a timetable can be imported regularly, ensuring that mrbs is kept up to date. Any imported bookings that have been edited will not be deleted and will not be re-imported, however any deleted bookings will be re-imported.&lt;br /&gt;
&lt;br /&gt;
The file should be a csv file, without a header row, containing the following fields:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!Start time&lt;br /&gt;
!End time&lt;br /&gt;
!Date of first session&lt;br /&gt;
!Weekpattern&lt;br /&gt;
!Room name&lt;br /&gt;
!Username&lt;br /&gt;
!Name&lt;br /&gt;
!Description&lt;br /&gt;
|-&lt;br /&gt;
|hh:mm format, if periods are used then see the section below&lt;br /&gt;
|hh:mm format, if periods are used then see the section below&lt;br /&gt;
|YYYY/MM/DD format&lt;br /&gt;
|This field enables a session to be repeated weekly, missing out weeks for holidays etc. To make a single booking just put 1 in this field, otherwise enter a string of 1s and spaces (each 1 representing a booking, each space representing a week without a booking). This string can be as long as required.&lt;br /&gt;
|must be the same as that held in the mrbs_room table&lt;br /&gt;
|this field is used to link the booking to a moodle user. It is not case sensitive and will not cause an error if no matching user is found (however if this is the case then only mrbs admins will be able to edit the booking)&lt;br /&gt;
|the name for the booking to have. If you want to take advantage of some other features then you should set this to the shortname of the course the booking is for (if there is a moodle course for it)&lt;br /&gt;
|a description for the booking&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Times when periods are enabled====&lt;br /&gt;
MRBS stores period times as minutes past midnight, 00:00 is the time period1 starts, 00:01 is the time period1 ends and period 2 starts etc.&lt;br /&gt;
&lt;br /&gt;
== Other pages about MRBS block ==&lt;br /&gt;
* [[MRBS block|Main page]]&lt;br /&gt;
* [[MRBS_block/forcebook|Force booking]]&lt;br /&gt;
* [[MRBS_block/usertt|User timetables]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Installing_MSSQL_for_PHP&amp;diff=96331</id>
		<title>Installing MSSQL for PHP</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Installing_MSSQL_for_PHP&amp;diff=96331"/>
		<updated>2021-08-10T15:21:00Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Introduction ==&lt;br /&gt;
&lt;br /&gt;
This short manual is suitable if you are trying to run Moodle using the SQL*Server (MSSQL) RDBMS. Steps detailed below must be performed &#039;&#039;&#039;before&#039;&#039;&#039; installing Moodle itself.&lt;br /&gt;
&lt;br /&gt;
Some of this may also apply if you wish to access an MSSQL server for external db authentication/enrollment. &lt;br /&gt;
&lt;br /&gt;
First of all, minimum required version of MSSQL has been stabilised to MSSQL 2005 (v.9), although it &#039;&#039;&#039;might work with MSSQL 2000 (v.8) or newer&#039;&#039;&#039;. All the development process has been performed using MSSQL 2005 and there could be some &#039;&#039;&#039;unknown problems&#039;&#039;&#039; with previous releases.&lt;br /&gt;
&lt;br /&gt;
While PHP comes with one, more or less, standard extension (mssql) that provides access to MSSQL databases, early we found some hard limits on it. Basically such default extension has some limits that prevent us to use it at all (you can find more info about these problems [[Development:XMLDB problems#MSSQL, PHP, UTF-8 and UCS-2|here]]).&lt;br /&gt;
&lt;br /&gt;
So, in order to allow PHP (i.e. Moodle) to access to MSSQL DBs properly we have to install a &#039;&#039;&#039;mssql extension alternative&#039;&#039;&#039; to save us from the problems related above. See the sections below for details about the various options.&lt;br /&gt;
&lt;br /&gt;
== Installation overview ==&lt;br /&gt;
&lt;br /&gt;
1. Get MSSQL Server installed and running. ([http://www.microsoft.com/sql/editions/express/default.mspx A free limited version, SQL Server Express Edition] is available for testing.)&lt;br /&gt;
:Make sure that you choose mixed authentication (Windows and local accounts) to keep things simpler later.  You&#039;ll be asked to define the  &amp;quot;sa&amp;quot; account password (it&#039;s the default System Administrator account which has full access to all databases by default).&lt;br /&gt;
&lt;br /&gt;
2. Make sure MS SQL Server can accept incoming TCP/IP connections on port 1433 (the standard one).&lt;br /&gt;
:You might need to explicitly allow this in your Windows firewall (see the Control Panel).  You may also need to edit options in the :&#039;&#039;&#039;SQL Server Configuration Manager&#039;&#039;&#039; -&amp;gt; &#039;&#039;&#039;Network Configuration&#039;&#039;&#039; -&amp;gt; &#039;&#039;&#039;Protocols&#039;&#039;&#039; -&amp;gt; &#039;&#039;&#039;TCP/IP enabled&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
3. Open the &amp;quot;SQL Server Management Studio&amp;quot; and create a new empty database.  If you are using the &amp;quot;sa&amp;quot; account then you don&#039;t need to do anything else here.&lt;br /&gt;
&lt;br /&gt;
4. Configure these settings in your created (and still empty) database:&lt;br /&gt;
&lt;br /&gt;
:* ANSI NULLS Enabled = true (Toggle to true in DB Properties &amp;gt; Options or run ALTER DATABASE xxxx SET ANSI_NULLS ON)&lt;br /&gt;
:* Quoted Identifiers Enabled = true (Toggle to true in DB Properties &amp;gt; Options or run ALTER DATABASE xxxx SET QUOTED_IDENTIFIER ON)&lt;br /&gt;
:* (Moodle 2.x only) Row Versioning Enabled (ALTER DATABASE xxxx SET READ_COMMITTED_SNAPSHOT ON)&lt;br /&gt;
:** This is not settable via the DB properties. To set READ_COMMITTED_SNAPSHOT, there must be no active connections to the database except for the connection executing the ALTER command. If you are viewing the DB in the Server Management Studio, disconnect from any servers in the &amp;quot;Object Explorer&amp;quot; (right-click &amp;gt; Disconnect), then create a &amp;quot;New Query&amp;quot; and run the ALTER command. See http://msdn.microsoft.com/en-us/library/bb522682.aspx for details.&lt;br /&gt;
&lt;br /&gt;
5. Get PHP installed with a web server.   Unless you want to do it under IIS or some other way, the packages on the [http://download.moodle.org Moodle download page] are a good solution.&lt;br /&gt;
&lt;br /&gt;
6. Choose one of the following specific sections for your server to install the &#039;&#039;&#039;mssql extension alternative&#039;&#039;&#039; installed and running properly on your PHP box.&lt;br /&gt;
&lt;br /&gt;
7. Set the following settings in your php.ini file&lt;br /&gt;
:* mssql.textlimit = 20971520&lt;br /&gt;
:* mssql.textsize = 20971520&lt;br /&gt;
&lt;br /&gt;
8. With all this properly configured, you can continue with a [[Installing Moodle|standard Moodle installation]].&lt;br /&gt;
&lt;br /&gt;
== Using the SQL Server 2005 Driver for PHP from Microsoft on Windows ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p class=&amp;quot;note&amp;quot;&amp;gt;&#039;&#039;&#039;WARNING: This driver has known problems and is therefore not suitable for any Moodle production servers.&#039;&#039;&#039;&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In July 2008 Microsoft [http://social.msdn.microsoft.com/forums/en-US/sqldriverforphp/thread/a10e5202-9e41-4ff8-a33e-fbcc7b951be2/ released] a new SQL Server 2005 Driver for PHP. This is a PHP extension that allows PHP scripts to read and write data on Microsoft SQL Server databases and it overcomes the problems with the native SQL Server extension that was previously bundled with PHP.&lt;br /&gt;
&lt;br /&gt;
This Microsoft driver is the standard database layer for running Moodle 2 under Microsoft SQL Server databases. See [[Using the Microsoft SQL Server Driver for PHP]] the installation and configuration details.&lt;br /&gt;
&lt;br /&gt;
This driver is only supported in Moodle 2.0 and up. You should use [https://docs.moodle.org/en/Installing_MSSQL_for_PHP#Using_FreeTDS_on_Windows FreeTDS] if you are installing an older version of Moodle.&lt;br /&gt;
&lt;br /&gt;
See MDL-16497 and MDL-15093 for more background information.&lt;br /&gt;
&lt;br /&gt;
== Using FreeTDS on Windows ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p class=&amp;quot;note&amp;quot;&amp;gt;&#039;&#039;&#039;Important Note 1:&#039;&#039;&#039; Due to some previous bugs it&#039;s highly recommendable to use PHP &amp;gt;= 5.2.6 and FreeTDS 0.82 + post-release patches ([http://tracker.moodle.org/browse/MDL-14725 more info]).&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your web server is on Windows, use &#039;&#039;&#039;php_dblib.dll&#039;&#039;&#039;. Despite the name, it&#039;s FreeTDS compiled for Windows. (Go to this page for information on [https://docs.moodle.org/en/FreeTDS Using FreeTDS for Unix].) &lt;br /&gt;
&lt;br /&gt;
Originally we were using the DLLs available at [http://kromann.info/article.php?Id=11062598797760000 Frank Kromann&#039;s site], but they are outdated (using old versions of FreeTDS) and that has caused [http://tracker.moodle.org/browse/MDL-14725 some problems] in the past.&lt;br /&gt;
&lt;br /&gt;
So, right now, the recommended way to use FreeTDS under Windows is to use PHP 5.2.x following the following instructions:&lt;br /&gt;
&lt;br /&gt;
1. Download the appropriate copy of php_dblib.dll from the list below, and save it into your /PHP/ext directory.&lt;br /&gt;
&lt;br /&gt;
{| border=&amp;quot;1&amp;quot; align=&amp;quot;center&amp;quot; cellpadding=&amp;quot;5&amp;quot; style=&amp;quot;text-align: center;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! PHP version !! [http://www.iis-aid.com/articles/my_word/difference_between_php_thread_safe_and_non_thread_safe_binaries Thread Safe]  !! FreeTDS version !! Download URL&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | PHP 5.2.x (vc6) || Yes || 0.82 + 20090302 patches || [http://download.moodle.org/download.php/dblib/php52/DBLIB_TS.zip Download!]&lt;br /&gt;
|-&lt;br /&gt;
| No || 0.82 + 20090302 patches || [http://download.moodle.org/download.php/dblib/php52/DBLIB_NOTS.zip Download!]&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; | PHP 5.3.x (vc9) || Yes || 0.82 + 20090904 patches || [http://download.moodle.org/download.php/dblib/php53/DBLIB_TS.zip Download!]&lt;br /&gt;
|-&lt;br /&gt;
| No || 0.82 + 20090904 patches || [http://download.moodle.org/download.php/dblib/php53/DBLIB_NOTS.zip Download!]&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot; |  Thanks to [http://remote-learner.net/ Remote-Learner]] (Moodle [http://moodle.com/partners/ Partner]) and specially to Bryan Williams, donating one Visual C++ 6.0 Pro license to Moodle. Thanks to Trevor Johnson and his builds of the dblib extensions. Thanks to Daniele, Doug, Luis, Sean and many others by their collaboration in MDL-14725. Thanks to Frediano Ziglio and James K. Lowden from [http://freetds.org freetds.org] by their support. Thanks to Alastair Hole by providing the PHP 5.3 builds of the libraries. Thanks!&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
(alternatively here you can find some [[Development:Compiling FreeTDS under Windows|instructions to build those freetds extensions under win32]] yourself)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2. FreeTDS requires the .NET Framework v1.1 to be installed.  You can [http://www.microsoft.com/downloads/details.aspx?FamilyID=262d25e3-f589-4842-8157-034d1e7cf3a3&amp;amp;DisplayLang=en download it from the Microsoft website] along with its [http://www.microsoft.com/downloads/details.aspx?FamilyID=a8f5654f-088e-40b2-bbdb-a83353618b38&amp;amp;DisplayLang=en service pack].  Alternatively, if you do not wish to install this framework, you can [http://kromann.info/ms-libs/msvcr71.dll download the required DLL] from Frank&#039;s site, and save it into your /PHP root directory.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3. Edit your /PHP/php.ini file and add this line:&lt;br /&gt;
&lt;br /&gt;
  extension=php_dblib.dll &lt;br /&gt;
&lt;br /&gt;
Make sure that any lines referring to the php_mssql.dll extension are DISABLED (commented out).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4. When the PHP engine loads the FreeTDS extension it needs to be passed certain infiormation in order to be able to connect to your Moodle database. To retrieve this information FreeTDS looks for a file called &#039;&#039;&#039;freetds.conf&#039;&#039;&#039; in the root folder of the server that PHP installed on (e.g. C:\).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;freetds.conf&#039;&#039;&#039; should have the following structure:&lt;br /&gt;
&lt;br /&gt;
  [global]&lt;br /&gt;
      host = xxx.xxx.xxx.xxx (host name or ip of the MSSQL server)&lt;br /&gt;
      port = 1433&lt;br /&gt;
      client charset = UTF-8&lt;br /&gt;
      tds version = 8.0&lt;br /&gt;
      text size = 20971520&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If you want to connect to a particular [http://msdn.microsoft.com/en-us/library/aa174516(SQL.80).aspx instance] of MSSQL you should specify the instance name:&lt;br /&gt;
&lt;br /&gt;
  [global]&lt;br /&gt;
      host = xxx.xxx.xxx.xxx (host name or ip of the MSSQL server)&lt;br /&gt;
      instance = xxx (instance name, e.g. INST2)&lt;br /&gt;
      port = 1433&lt;br /&gt;
      client charset = UTF-8&lt;br /&gt;
      tds version = 8.0&lt;br /&gt;
      text size = 20971520&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes:&#039;&#039;&#039;&lt;br /&gt;
*You can configure FreeTDS to look for the freetds.conf file in any directory that you want - you don&#039;t have to use C:\. To do this create a SYSTEM environment variable called &#039;&#039;&#039;FREETDS&#039;&#039;&#039; and point it to the directory where you have installed the freetds.conf file. If you do not set this environment variable FreeTDS will look for the freetds.conf file in the C:\ folder, which is the default. One possible benefit of setting the FREETDS environment variable and using a different installation directory for freetds.conf is that C:\ is very predictable to a hacker that knows anything about FreeTDS and that is the first place that he would look if he wanted to compromise your system. So, using a different installation directory would just make your system stronger. See the FreeTDS [http://www.freetds.org/userguide/envvar.htm Setting the environment variables] documentation for more information about this FREETDS environment variable.&lt;br /&gt;
&lt;br /&gt;
*Alternatively, you can [[Development:Compiling FreeTDS under Windows|recompile]] the FreeTDS extension yourself and change the default location to your preferred location at compile time. Then it is not necessary to create any environment variable. You must just ensure that freetds.conf is in the same folder that you specify when you compile php_dblib.dll.&lt;br /&gt;
&lt;br /&gt;
*MSSQL is usually installed with port 1433 as the default. However, if the port was changed on your server when you installed MSSQL then you need to specify the correct port number.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
5. Your Moodle &#039;&#039;&#039;config.php&#039;&#039;&#039; should include lines like these:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
$CFG-&amp;gt;dbtype    = &#039;mssql_n&#039;;        // Required&lt;br /&gt;
$CFG-&amp;gt;dbhost    = &#039;localhost&#039;;      // assuming MS SQL is on the same server, otherwise use an IP&lt;br /&gt;
$CFG-&amp;gt;dbname    = &#039;moodle&#039;;         // or whatever you called the database you created&lt;br /&gt;
$CFG-&amp;gt;dbuser    = &#039;yourusername&#039;;   // I usually use the &#039;sa&#039; account (dbowner perms are enough)&lt;br /&gt;
$CFG-&amp;gt;dbpass    = &#039;yourpassword&#039;;&lt;br /&gt;
$CFG-&amp;gt;dbpersist =  false;&lt;br /&gt;
$CFG-&amp;gt;prefix    = &#039;mdl_&#039;;            //Prefix, you can change it, but NEVER leave it blank.&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you don&#039;t have a config.php file yet, it can be generated as normal from the Moodle installer. Alternatively you can use the config-dist.php file that comes with the Moodle package to create your own config.php file.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
6. Restart or start your web server.  If Moodle still cannot communicate with the database server, please turn display_startup_errors to &amp;quot;On&amp;quot; in your /PHP/php.ini file, then restart the web server and check for any errors that may indicate incorrect DLL versions or missing dependencies.  These error reports, turned off by default in PHP, can be vital in locating a problem with new extension installations.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
7. Database conection test, try this PHP script, just put in a text file called test.php change (&#039;localhost&#039;, &#039;db_user&#039;, &#039;db_password&#039;) to suite your setup, and load from local host (http://localhost/test.php)...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
&amp;lt;?php&lt;br /&gt;
	$link = mssql_connect(&#039;localhost&#039;, &#039;db_user&#039;, &#039;db_password&#039;);&lt;br /&gt;
	if(!$link) {&lt;br /&gt;
		echo&#039;Could not connect&#039;;&lt;br /&gt;
		die(&#039;Could not connect: &#039; . mssql_error());&lt;br /&gt;
	}&lt;br /&gt;
	echo&#039;Successful connection&#039;;&lt;br /&gt;
	mssql_close($link);&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
8. Install Moodle as usual.  Good luck!&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
If you encounter some problems you can try:&lt;br /&gt;
*check that you have DotNet framework 1.1 installed (later version are installed on Vista, but you could need this specific one)&amp;lt;br /&amp;gt;&lt;br /&gt;
*enable TCP/IP for MSSQL: SQL Server 2005 Network Configuration -&amp;gt; Protocols for MSSQLSERVER -&amp;gt; TCP/IP (Enable) -&amp;gt; Properties -&amp;gt; Ip Addresses -&amp;gt; 127.0.0.1 (Active+Enable)&amp;lt;br /&amp;gt;&lt;br /&gt;
*make sure the SQL Server Browser service is running SQL Server 2005 Network Configuration -&amp;gt; SQL Server Services&amp;lt;br /&amp;gt;&lt;br /&gt;
*if you are using SQL Server 2005 and you have the error &#039;&#039;4004: Unicode data in a Unicode-only collation or ntext data cannot be sent to clients using DB-Library (such as ISQL) or ODBC version 3.7 or earlier&#039;&#039;, try the ODBTP method (next chapter). The SQL Server complaining that it doesn&#039;t support pure Unicode via TDS or older versions of ODBC. Microsoft has deprecated DB-Library a long ago, in favor of ODBC, OLE DB, or SQL Native Client. Many new features of SQL 2005 aren&#039;t accessible via DB-Library so if you need them, you could have to switch away from tools based on TDS and DB-Library :(&lt;br /&gt;
&lt;br /&gt;
== FreeTDS on Linux (on Ubuntu by compiling an mssql.so extension) ==&lt;br /&gt;
This is a good read to [http://www.robert-gonzalez.com/2009/02/18/building-the-php-ms-sql-server-extension-from-source-on-ubuntu-810/ building a FreeTDS based mssql extension for apache on Ubuntu]. Do note that [http://www.freetds.org/news.html freeTDS] 0.91 was recently released, you can find latest versions [http://freetds.sourceforge.net/ here]. &lt;br /&gt;
&lt;br /&gt;
Note: the freetds.conf file you use should have &amp;quot;text size = 20971520&amp;quot; as mentioned in the FreeTDS on Windows section otherwise you might see sessions logging out or worse apache segmentation faults. Also see [[FreeTDS]].&lt;br /&gt;
&lt;br /&gt;
== Using FreeTDS on Debian Lenny ==&lt;br /&gt;
I found the following solution using:&lt;br /&gt;
* PHP Version 5.2.6-1+lenny9&lt;br /&gt;
* Microsoft SQL Server Enterprise Edition, version: 9.00.4053.00&lt;br /&gt;
&amp;lt;pre&amp;gt;apt-get install libsybdb5 freetds-common php5-sybase&lt;br /&gt;
/etc/init.d/apache2 restart&amp;lt;/pre&amp;gt;&lt;br /&gt;
At the end of the process, if all goes fine, you will find in the mssql section of phpinfo();&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! MSSQL Support&lt;br /&gt;
! enabled&lt;br /&gt;
|-&lt;br /&gt;
| Library version &lt;br /&gt;
| FreeTDS &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Once FreeTDS is correctly installed, don not forget to set it up following explanations in https://docs.moodle.org/en/FreeTDS&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
* FreeTDS for Windows is obsolete and too slow as of 2011. See: [http://moodle.org/mod/forum/discuss.php?d=183987 Hardware and Performance Forum]&lt;br /&gt;
* [[Installing Moodle]]&lt;br /&gt;
* [[Errors FAQ]]&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/view.php?id=28 Installation problems forum]&lt;br /&gt;
* [[Beginning Administration FAQ]]&lt;br /&gt;
* [[Installing Postgres for PHP]]&lt;br /&gt;
* [[Using the Microsoft SQL Server Driver for PHP]]&lt;br /&gt;
* [[Installing Oracle for PHP]]&lt;br /&gt;
&lt;br /&gt;
[[Category:FAQ]]&lt;br /&gt;
[[Category:Installation]]&lt;br /&gt;
[[Category:Developer]]&lt;br /&gt;
[[Category:XMLDB]]&lt;br /&gt;
[[Category:DB]]&lt;br /&gt;
[[Category:SQL databases]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Group_Choice&amp;diff=96330</id>
		<title>Group Choice</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Group_Choice&amp;diff=96330"/>
		<updated>2021-08-10T15:21:00Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
This block has been developed originally for the teachers of the university Polytechnic of Montreal (as a summer internship).&lt;br /&gt;
The needs that the teachers had is to let the students being able to form their groups, with groups already created by the teachers the standard way.&lt;br /&gt;
&lt;br /&gt;
== Social Student Group Formation == &lt;br /&gt;
Since the students are the ones that form the groups, it means that there is a social interaction that has to be considered.&lt;br /&gt;
&lt;br /&gt;
There are two ways to join a group:&lt;br /&gt;
# A Student sends an invitation to a group&#039;s &amp;lt;del&amp;gt;teamleader&amp;lt;/del&amp;gt; &#039;&#039;&#039;teamcreator&#039;&#039;&#039;.&lt;br /&gt;
# A TeamCreator sends an invitation to a student to join its group.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;There are some more few things that are important to know for the teamcreator:&#039;&#039;&lt;br /&gt;
* if the group is originally empty, the first student that try to send an invitation become the teamcreator.&lt;br /&gt;
* the teamCreator of a group is defined by the timestamp of the mdl_groups_members &amp;quot;timeadded&amp;quot; field.&lt;br /&gt;
** If a teamCreator quits the group, the next student that has the min(timeadded timestamp) become the next teamCreator (or the group is empty).&lt;br /&gt;
&lt;br /&gt;
== Why There is a TeamCreator? ==&lt;br /&gt;
The reason why we added the concept of a teamleader is because we were at the problem where if a student has sent an invitation to a group&#039;s members:&lt;br /&gt;
* All the members should accept the student&#039;s invitation for him/her to join the group (which increase the complexity!)&lt;br /&gt;
* It is not fun for the students if they &#039;&#039;&#039;HAVE&#039;&#039;&#039; to login to send an invitation to a group in which they know they will be part.&lt;br /&gt;
   In fact this is the major reason why a teamcreator has been used has a main concept for the block. &lt;br /&gt;
   Because how the groups are formed is normally someone in the group that write the names of the other students of the group and give the paper to the teacher for the group formation.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; invitation will be changed for request in the future.&lt;br /&gt;
&lt;br /&gt;
= Use Cases =&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! title&lt;br /&gt;
| &#039;&#039;&#039;&#039;&#039;The teacher sets the block&#039;s preferences&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
! Scenario&lt;br /&gt;
| The system display the page &amp;quot;Preferences&amp;quot;. The teacher sets the data he/she wants the block to have, then click &amp;quot;Save changes&amp;quot;. The system checks if the input received is valid and save in the DB the new preferences of the block&#039;s instance for the course.&lt;br /&gt;
|-&lt;br /&gt;
! Alternative&lt;br /&gt;
| &#039;&#039;&#039;1. The input is not valid:&#039;&#039;&#039;&lt;br /&gt;
The page show a box indicating that the data has not been saved.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! title&lt;br /&gt;
| &#039;&#039;&#039;&#039;&#039;The teacher checks the course&#039;s groups and groupings&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
! Scenario&lt;br /&gt;
| The System shows the page &amp;quot;Group List&amp;quot;. The Teacher can see the groups and groupings used for the course&#039;s. The Teacher can also see which student is alone and is not part of a group (todo: by groupings too).&lt;br /&gt;
|-&lt;br /&gt;
! Alternative&lt;br /&gt;
| N/A&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! title&lt;br /&gt;
| &#039;&#039;&#039;&#039;&#039;The teacher export the course&#039;s groups&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
! Scenario&lt;br /&gt;
| The System shows the page &amp;quot;Export Groups&amp;quot;. The Teacher choose the data that the export file should contains, choose the format of the file and append the email address of the people that should receive the file. Then clicks on &amp;quot;Export&amp;quot;. The System create the file with the input&#039;s data and sends it to the emails written.&lt;br /&gt;
|-&lt;br /&gt;
! Alternative&lt;br /&gt;
| &#039;&#039;&#039;1. No email has been written:&#039;&#039;&#039;&lt;br /&gt;
The System create the file with the input&#039;s data and force the download to the local machine.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2. Try to uncheck the student&#039;s Email option:&#039;&#039;&#039;&lt;br /&gt;
The system show a message indicating that indicates that this data must be present in the file.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! title&lt;br /&gt;
| &#039;&#039;&#039;&#039;&#039;the student visuzalize his/her groups&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
! Scenario&lt;br /&gt;
| The System show the page &amp;quot;Summary&amp;quot;. The Student can now vizualize the groups and groupings in which he/she is part of.&lt;br /&gt;
|-&lt;br /&gt;
! Alternative&lt;br /&gt;
| &#039;&#039;&#039;The student is not part of any group:&#039;&#039;&#039;&lt;br /&gt;
The system show a message indicating that the student is not part of any group.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! title&lt;br /&gt;
| &#039;&#039;&#039;&#039;&#039;the student sends a resquest to a group&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
! Scenario&lt;br /&gt;
| The System show the page &amp;quot;Join a Group&amp;quot;. The Student click the checkbox of the group he/she wants to join, then clicks on &amp;quot;Join Group&amp;quot;. The System appends the student&#039;s request in the DB. Then show a message indicating that the request has been sent.&lt;br /&gt;
|-&lt;br /&gt;
! Alternative&lt;br /&gt;
| &#039;&#039;&#039;1. The student is already part of the group/grouping:&#039;&#039;&#039;&lt;br /&gt;
A green tick replaced the checkbox.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2. The Student can&#039;t join a group/grouping:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A red mark replaced the checkbox.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;3. A request between the student and the group is present in the DB:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A clock replaced the checkbox meaning the request is in pending.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! title&lt;br /&gt;
| &#039;&#039;&#039;&#039;&#039;the teamcreator sends a request to a student&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
! Scenario&lt;br /&gt;
| The System show the page &amp;quot;Add Student to Group&amp;quot; and select the first group found for the teamcreator. The teamcreator clicks on the group he/she wants to modify. The System refresh the list of the student that can be selected by the teamcreator. The teamcreator checks the checkbox on the row of the student he want to invite into his/her group, then clicks &amp;quot;Add To My Group&amp;quot;. The System add the Request into the DB.&lt;br /&gt;
|-&lt;br /&gt;
! Alternative&lt;br /&gt;
| &#039;&#039;&#039;1. The user is not a teamcreator:&#039;&#039;&#039;&lt;br /&gt;
The system show a message indicating that the user is not a teamcreator for any group.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;2. a request for a student (for the teamcreator&#039;s group selected) is already existing in the DB:&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
A clock replaced the checkbox indicating the request is pending in the DB.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! title&lt;br /&gt;
| &#039;&#039;&#039;&#039;&#039;The student quits one of its groups&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
! Scenario&lt;br /&gt;
| use-case(the student visuzalize his/her groups) --&amp;gt; The student clicks on the link &amp;quot;Leave this group&amp;quot; on the same row representing the group. The System remove the student from the group in the DB, then refresh the page &amp;quot;Summary&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
! Alternative&lt;br /&gt;
| N/A&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! title&lt;br /&gt;
| &#039;&#039;&#039;&#039;&#039;Accept/Refuse an invitation&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
! Scenario&lt;br /&gt;
| The System show the page &amp;quot;Summary&amp;quot;. The student/teamcreator can see the requests for joinning a group. The student clicks on &amp;quot;Accept&amp;quot; on one request. The System append the student in the group into the DB. The Student clicks &amp;quot;Refuse&amp;quot; on another request. The System removes the request from the DB.&lt;br /&gt;
|-&lt;br /&gt;
! Alternative&lt;br /&gt;
| N/A&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Understand the &amp;lt;del&amp;gt;invitation&amp;lt;/del&amp;gt; &#039;&#039;&#039;Request&#039;&#039;&#039; system =&lt;br /&gt;
The most complex part of the block, is the request system between the students&lt;br /&gt;
to join a specified group.&lt;br /&gt;
&lt;br /&gt;
== little icones signification ==&lt;br /&gt;
The student/teamcreator can encounter 4 type of relation with the group.&lt;br /&gt;
# [[Image:tick.png|tick]]: meaning you&#039;re already part of the group.&lt;br /&gt;
# [[Image:cross.png|cross]]: meaning you can join the group.&lt;br /&gt;
## You are already part of the group that has this icone.&lt;br /&gt;
## You are part of another group that has the same grouping that the group having this icone.&lt;br /&gt;
# [[Image:clock.png|clock]]: meaning the request is in pending.&lt;br /&gt;
## The student has sent a request to the teamcreator of the group and wait to be accepted.&lt;br /&gt;
## The teamcreator has sent the request to the student and wait for him to accept it.&lt;br /&gt;
# checkbox: you can select the group to send a request to join. (all clear to send the request)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== student sends a request to the teamcreator ==&lt;br /&gt;
In this context, the student is seeking for a group that he/she wants to join. When the student is in the &amp;quot;join a group&amp;quot; tab, he can see the different groups he can send a request to join.&lt;br /&gt;
&lt;br /&gt;
== teamcreator sends a request to a student to join his group ==&lt;br /&gt;
The teamcreator has to select the group in which he wants to add student(s).&amp;lt;br /&amp;gt;&lt;br /&gt;
A Green Dot indicates the current group that will send the request(s) to the student(s).&amp;lt;br /&amp;gt;&lt;br /&gt;
A Red Dot indicates that the group is not currently selected to send requests.&lt;br /&gt;
&lt;br /&gt;
== DataBase model for the request system ==&lt;br /&gt;
The information that is kept in the DB for the request system is composed of 4 important elements.&amp;lt;br /&amp;gt;&lt;br /&gt;
# &#039;&#039;&#039;group_id&#039;&#039;&#039;: the id of the group to join.&lt;br /&gt;
# &#039;&#039;&#039;user_id&#039;&#039;&#039;: the id of the user that will be added to the group.&lt;br /&gt;
# &#039;&#039;&#039;course_id&#039;&#039;&#039;: the id of the course in which the group formation takes place.&lt;br /&gt;
# &#039;&#039;&#039;action_from&#039;&#039;&#039;: from who the request has been sent? (student or teamleader)&lt;br /&gt;
&lt;br /&gt;
with those informations, and equipped of the course_id, when a student or a teamcreator accepts a request. &lt;br /&gt;
the mapping can be done between the member and the group.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
= TODO list =&lt;br /&gt;
Here is the todo list of things that would improve the block. &lt;br /&gt;
&#039;&#039;&#039;&amp;lt;info gathering&amp;gt;&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; This page is under construction &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[Category:Contributed code]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Gradebook_help_files&amp;diff=96329</id>
		<title>Gradebook help files</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Gradebook_help_files&amp;diff=96329"/>
		<updated>2021-08-10T15:20:59Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;An index of help files for the Moodle 1.9 gradebook.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Aggregate only non-empty grades==&lt;br /&gt;
&lt;br /&gt;
Nonexistent grades are either treated as minimal grades or not included in aggregation.&lt;br /&gt;
&lt;br /&gt;
==Include outcomes in aggregation==&lt;br /&gt;
&lt;br /&gt;
Including outcomes in aggregation may not lead to the desired overall grade, so you have the option to include or leave them out.&lt;br /&gt;
&lt;br /&gt;
==Aggregate including subcategories==&lt;br /&gt;
&lt;br /&gt;
The aggregation is usually done only with immediate children, it is also possible to aggregate grades in all subcategories excluding other aggregated grades.&lt;br /&gt;
&lt;br /&gt;
==Category aggregation==&lt;br /&gt;
&lt;br /&gt;
This menu lets you choose the aggregation strategy that will be used to calculate each participant&#039;s overall grade for this category. The different options are explained below.&lt;br /&gt;
&lt;br /&gt;
The grades are first converted to percentage values (interval from 0 to 1, this is called normalisation), then aggregated using one of the functions below and finally converted to the associated category item&#039;s range (between Minimum grade and Maximum grade).&lt;br /&gt;
&lt;br /&gt;
Important: An empty grade is simply a missing gradebook entry, and could mean different things. For example, it could be a participant who hasn&#039;t yet submitted an assignment, an assignment submission not yet graded by the teacher, or a grade that has been manually deleted by the gradebook administrator. Caution in interpreting these &amp;quot;empty grades&amp;quot; is thus advised.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mean of grades&#039;&#039;&#039;&lt;br /&gt;
:The sum of all grades divided by the total number of grades.&lt;br /&gt;
 A1 70/100, A2 20/80, A3 10/10, category max 100:&lt;br /&gt;
 (0.7 + 0.25 + 1.0)/3 = 0.65 --&amp;gt; 65/100&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Weighted mean&#039;&#039;&#039;&lt;br /&gt;
:Each grade item can be given a weight, which is then used in the arithmetic mean aggregation to influence the importance of each item in the overall mean.&lt;br /&gt;
 A1 70/100 weight 10, A2 20/80 weight 5, A3 10/10 weight 3, category max 100:&lt;br /&gt;
 (0.7*10 + 0.25*5 + 1.0*3)/18 = 0.625 --&amp;gt; 62.5/100&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Simple weighted mean&#039;&#039;&#039;&lt;br /&gt;
:The difference from Weighted mean is that weight is calculated as Maximum grade - Minimum grade for each item. 100 point assignment has weight 100, 10 point assignment has weight 10.&lt;br /&gt;
 A1 70/100, A2 20/80, A3 10/10, category max 100:&lt;br /&gt;
 (0.7*100 + 0.25*80 + 1.0*10)/190 = 0.526 --&amp;gt; 52.6/100&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mean of grades (with extra credits)&#039;&#039;&#039;&lt;br /&gt;
:Arithmetic mean with a twist. An old, now unsupported aggregation strategy provided here only for backward compatibility with old activities.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Median of grades&#039;&#039;&#039;&lt;br /&gt;
:The middle grade (or the mean of the two middle grades) when grades are arranged in order of size. The advantage over the mean is that it is not affected by outliers (grades which are uncommonly far from the mean).&lt;br /&gt;
 A1 70/100, A2 20/80, A3 10/10, category max 100:&lt;br /&gt;
 median(0.7 ; 0.25 ; 1.0) = 0.7 --&amp;gt; 70/100&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Smallest grade&#039;&#039;&#039;&lt;br /&gt;
:The result is the smallest grade after normalisation. It is usually used in combination with Aggregate only non-empty grades.&lt;br /&gt;
 A1 70/100, A2 20/80, A3 10/10, category max 100:&lt;br /&gt;
 min(0.7 ; 0.25 ; 1.0) = 0.25 --&amp;gt; 25/100&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Highest grade&#039;&#039;&#039;&lt;br /&gt;
:The result is the highest grade after normalisation.&lt;br /&gt;
 A1 70/100, A2 20/80, A3 10/10, category max 100:&lt;br /&gt;
 max(0.7 ; 0.25 ; 1.0) = 1.0 --&amp;gt; 100/100&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mode of grades&#039;&#039;&#039;&lt;br /&gt;
:The mode is the grade that occurs the most frequently. It is more often used for non-numerical grades. The advantage over the mean is that it is not affected by outliers (grades which are uncommonly far from the mean). However it loses its meaning once there is more than one most frequently occurring grade (only one is kept), or when all the grades are different from each other.&lt;br /&gt;
 A1 70/100, A2 35/50, A3 20/80, A4 10/10, A5 7/10 category max 100:&lt;br /&gt;
 mode(0.7 ; 0.7 ; 0.25 ; 1.0 ; 0.7) = 0.7 --&amp;gt; 70/100&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Sum of grades&#039;&#039;&#039;&lt;br /&gt;
:The sum of all grade values. Scale grades are ignored. This is the only type that does not convert the grades to percentages internally (normalisation). The Maximum grade of associated category item is calculated automatically as a sum of maximums from all aggregated items.&lt;br /&gt;
 A1 70/100, A2 20/80, A3 10/10:&lt;br /&gt;
 70 + 20 + 10 = 100/190 &lt;br /&gt;
&lt;br /&gt;
==Extra credit coefficient==&lt;br /&gt;
&lt;br /&gt;
A value greater than 0 treats this grade item&#039;s grades as Extra credit during aggregation. The number is a factor by which the grade value will be multiplied before it is added to the sum of all grades, but the item itself will not be counted in the division. For example:&lt;br /&gt;
&lt;br /&gt;
* Item 1 is graded 0-100 and its &amp;quot;Extra credit&amp;quot; value is set to 2&lt;br /&gt;
* Item 2 is graded 0-100 and its &amp;quot;Extra credit&amp;quot; value is left at 0.0000&lt;br /&gt;
* Item 3 is graded 0-100 and its &amp;quot;Extra credit&amp;quot; value is left at 0.0000&lt;br /&gt;
* All 3 items belong to Category 1, which has &amp;quot;Mean of grades (with extra credits)&amp;quot; as its aggregation strategy&lt;br /&gt;
* A student gets graded 20 on Item 1, 40 on Item 2 and 70 on Item 3&lt;br /&gt;
* The student&#039;s total for Category 1 will be 95/100 since 20*2 + (40 + 70)/2 = 95&lt;br /&gt;
&lt;br /&gt;
==Act as extra credit==&lt;br /&gt;
&lt;br /&gt;
When the &amp;quot;Sum of grades&amp;quot; aggregation strategy is used, a grade item can act as Extra credit for the category. This means that the grade item&#039;s maximum grade will not be added to the category total&#039;s maximum grade, but the item&#039;s grade will. Following is an example:&lt;br /&gt;
&lt;br /&gt;
* Item 1 is graded 0-100&lt;br /&gt;
* Item 2 is graded 0-75&lt;br /&gt;
* Item 1 has the &amp;quot;Act as extra credit&amp;quot; checkbox ticked, Item 2 doesn&#039;t.&lt;br /&gt;
* Both items belong to Category 1, which has &amp;quot;Sum of grades&amp;quot; as its aggregation strategy&lt;br /&gt;
* Category 1&#039;s total will be graded 0-75&lt;br /&gt;
* A student gets graded 20 on Item 1 and 70 on Item 2&lt;br /&gt;
* The student&#039;s total for Category 1 will be 75/75 (20+70 = 90 but Item 1 only acts as extra credit, so it brings the total to its maximum)&lt;br /&gt;
&lt;br /&gt;
==Item weight==&lt;br /&gt;
&lt;br /&gt;
Weight applied to all grades in this grade item during aggregation with other grade items.&lt;br /&gt;
&lt;br /&gt;
==Aggregation position==&lt;br /&gt;
&lt;br /&gt;
Defines the position of the aggregation total column in the report related to the grades being aggregated.&lt;br /&gt;
&lt;br /&gt;
==Aggregation view==&lt;br /&gt;
&lt;br /&gt;
Each category can be displayed in three ways: Full mode (aggregated column and grade item columns), the aggregated column only, or the grade items alone.&lt;br /&gt;
&lt;br /&gt;
==Decimals in column averages==&lt;br /&gt;
&lt;br /&gt;
Specifies the number of decimal points to display for each column mean. If Inherit is selected, the display type for each column is used.&lt;br /&gt;
&lt;br /&gt;
==Column averages display type==&lt;br /&gt;
&lt;br /&gt;
Specifies how to display the mean for each column. If Inherit is selected, the display type for each column is used.&lt;br /&gt;
&lt;br /&gt;
==Calculations==&lt;br /&gt;
&lt;br /&gt;
Calculations for the gradebook follow the pattern of formulas/functions in popular spreadsheet programs. They start with an equal (=) sign, and use common mathematical operators and functions to produce a single numerical output. This output is then used as the computed value for the grade item you are editing.&lt;br /&gt;
&lt;br /&gt;
Following is a list of the functions supported by the calculation. The comma (,) character is used to separate arguments within function brackets.&lt;br /&gt;
&lt;br /&gt;
    &amp;lt;nowiki&amp;gt;* average([[item1]], [[item2]]...): Returns the average of a sample&lt;br /&gt;
   * max([[item1]], [[item2]]...): Returns the maximum value in a list of arguments&lt;br /&gt;
   * min([[item1]], [[item2]]...): Returns the minimum value in a list of arguments&lt;br /&gt;
   * mod(dividend, divisor): Calculates the remainder of a division&lt;br /&gt;
   * pi(): Returns the value of the number Pi&lt;br /&gt;
   * power(base, power): Raises a number to the power of another&lt;br /&gt;
   * round(number, count): Rounds a number to a predefined accuracy&lt;br /&gt;
   * sum([[item1]], [[item2]]...): Returns the sum of all arguments&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A number of mathematical functions is also supported:&lt;br /&gt;
&lt;br /&gt;
    * sin&lt;br /&gt;
    * sinh&lt;br /&gt;
    * arcsin&lt;br /&gt;
    * asin&lt;br /&gt;
    * arcsinh&lt;br /&gt;
    * asinh&lt;br /&gt;
    * cos&lt;br /&gt;
    * cosh&lt;br /&gt;
    * arccos&lt;br /&gt;
    * acos&lt;br /&gt;
    * arccosh&lt;br /&gt;
    * acosh&lt;br /&gt;
    * tan&lt;br /&gt;
    * tanh&lt;br /&gt;
    * arctan&lt;br /&gt;
    * atan&lt;br /&gt;
    * arctanh&lt;br /&gt;
    * atanh&lt;br /&gt;
    * sqrt&lt;br /&gt;
    * abs&lt;br /&gt;
    * ln&lt;br /&gt;
    * log&lt;br /&gt;
    * exp&lt;br /&gt;
&lt;br /&gt;
You can include the values of other grade items by using their idnumber as references in your formulas. The idnumber is surrounded by two matching pairs of angle brackets, to avoid confusing the calculation parser when the idnumber contains uncommon characters. For example, if you have a grade item with Quiz.3 as idnumber, you will refer to this item as [[Quiz.3]] in your calculation.&lt;br /&gt;
&lt;br /&gt;
Below the calculation field is an arborescence of your course with its grade categories and grade items. Next to each item or category&#039;s total is displayed the idnumber you can use in your calculation (already surrounded with angle brackets). However, since the idnumber is optional, some items may not yet have one. These items without an idnumber have instead a form field which lets you enter the idnumber directly, so that you can use it in your calculation without having to leave the page. This form doesn&#039;t let you edit existing idnumbers though, you will have to go and edit the grade item directly if you want to do that.&lt;br /&gt;
&lt;br /&gt;
As soon as you have assigned the idnumbers you need, you can press &amp;quot;add idnumbers&amp;quot;, and the page will reload and show you the same arborescence with the idnumbers you have just assigned. You are then free to use these references in your calculation.&lt;br /&gt;
&lt;br /&gt;
Here is a list of practical examples of calculations you may use in your gradebook:&lt;br /&gt;
&lt;br /&gt;
   &amp;lt;nowiki&amp;gt;* =average([[Quiz.1]], [[Quiz.4]], [[Assignment.1]])&lt;br /&gt;
  * =average(max([[Quiz.1]], [[Quiz.4]], [[Assignment.1]]), min([[Quiz.1]], [[Quiz.4]], [[Assignment.1]]))&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Overall decimal points==&lt;br /&gt;
&lt;br /&gt;
Specifies the number of decimal points to display for each grade. This setting has no effect on grade calculations, which are made with an accuracy of 5 decimal places.&lt;br /&gt;
&lt;br /&gt;
==Drop the lowest==&lt;br /&gt;
&lt;br /&gt;
If set, this option will drop the X lowest grades, X being the selected value for this option.&lt;br /&gt;
&lt;br /&gt;
==Excluded grades==&lt;br /&gt;
&lt;br /&gt;
If -excluded- is switched on, this grade will be excluded from any aggregation performed by any parent grade item or category.&lt;br /&gt;
&lt;br /&gt;
==Export decimal points==&lt;br /&gt;
&lt;br /&gt;
The number of decimal points to display for export. This can be overridden during export.&lt;br /&gt;
&lt;br /&gt;
==Feedback==&lt;br /&gt;
&lt;br /&gt;
Notes added to the grade by the teacher. They can be extensive, personalised feedback or a simple code that refers to an internal system of feedback.&lt;br /&gt;
&lt;br /&gt;
==Final grade==&lt;br /&gt;
&lt;br /&gt;
The final grade (cached) after all calculations are performed.&lt;br /&gt;
&lt;br /&gt;
==Grade boundary==&lt;br /&gt;
&lt;br /&gt;
A percentage boundary over which grades will be assigned a grade letter (if the Letter grade display type is used). &lt;br /&gt;
&lt;br /&gt;
==Grade display type==&lt;br /&gt;
&lt;br /&gt;
Specifies how to display grades in the grader and user reports. Grades may be shown as actual grades, as percentages (in reference to the minimum and maximum grades) or as letters.&lt;br /&gt;
&lt;br /&gt;
==Grade export display type==&lt;br /&gt;
&lt;br /&gt;
Grades can be shown as real grades, as percentages (in reference to the minimum and maximum grades) or as letters (A, B, C etc..) during export. This can be overridden during export.&lt;br /&gt;
&lt;br /&gt;
==Grade letters==&lt;br /&gt;
&lt;br /&gt;
A letter or other symbol used to represent a range of grades.&lt;br /&gt;
&lt;br /&gt;
==Maximum Grade==&lt;br /&gt;
&lt;br /&gt;
When using the value grade type, a maximum grade can be set. The maximum grade for an activity-based grade item is set on the update activity page.&lt;br /&gt;
&lt;br /&gt;
==Minimum Grade==&lt;br /&gt;
&lt;br /&gt;
When using the value grade type, a minimum grade can be set.&lt;br /&gt;
&lt;br /&gt;
==Grade to pass==&lt;br /&gt;
&lt;br /&gt;
If an item has a grade that users must equal or exceed to pass that item, you can set that here.&lt;br /&gt;
&lt;br /&gt;
==Grade type==&lt;br /&gt;
&lt;br /&gt;
Specifies the type of grade used: none (no grading possible), value (enables the maximum and minimum grade settings), scale (enables the scale setting) or text (feedback only). Only value and scale grade types may be aggregated. The grade type for an activity-based grade item is set on the update activity page.&lt;br /&gt;
&lt;br /&gt;
==Hidden==&lt;br /&gt;
&lt;br /&gt;
Whether or not the grades are hidden to participants. Usually after the end of the activity and of the grading process.. A typical sequence of events would be:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!Event&lt;br /&gt;
!Locked&lt;br /&gt;
!Hidden&lt;br /&gt;
|-&lt;br /&gt;
|Start of activity and participant submissions||No||Yes&lt;br /&gt;
|-&lt;br /&gt;
|End of activity and beginning of grading/feedback||Yes||Yes&lt;br /&gt;
|-&lt;br /&gt;
|End of grading/feedback, and release of grades||Yes||No&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Hidden until==&lt;br /&gt;
&lt;br /&gt;
Date until which the grades will be hidden to participants. Usually after the end of the activity and of the grading process.. A typical sequence of events would be: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!Event&lt;br /&gt;
!Locked&lt;br /&gt;
!Hidden&lt;br /&gt;
|-&lt;br /&gt;
|Start of activity and participant submissions||No||Yes&lt;br /&gt;
|-&lt;br /&gt;
|End of activity and beginning of grading/feedback||Yes||Yes&lt;br /&gt;
|-&lt;br /&gt;
|End of grading/feedback, and release of grades||Yes||No&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Id numbers==&lt;br /&gt;
&lt;br /&gt;
Setting an ID number provides a way of identifying the activity for grade calculation purposes. If the activity is not included in any grade calculation then the ID number field can be left blank. The ID number for an activity-based grade item may be set on the update activity page.&lt;br /&gt;
&lt;br /&gt;
==Import outcomes==&lt;br /&gt;
&lt;br /&gt;
You can import outcomes in the form of .csv files. The format must be as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!Field name&lt;br /&gt;
!Description&lt;br /&gt;
!Required&lt;br /&gt;
!Format&lt;br /&gt;
|-&lt;br /&gt;
|outcome_name||The full name of the outcome||Yes||String&lt;br /&gt;
|-&lt;br /&gt;
|outcome_shortname||The short name of the outcome||Yes||String&lt;br /&gt;
|-&lt;br /&gt;
|outcome_description||The description of the outcome||No||String&lt;br /&gt;
|-&lt;br /&gt;
|scale_name||The name of the scale used||Yes|String&lt;br /&gt;
|-&lt;br /&gt;
|scale_items||A comma-separated list of scale items||Yes|String&lt;br /&gt;
|-&lt;br /&gt;
|scale_description||The description of the scale||No|String&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Here is an example:&lt;br /&gt;
&lt;br /&gt;
 outcome_name;outcome_shortname;outcome_description;scale_name;scale_items;scale_description&lt;br /&gt;
 Participation;participation;;Participation scale;&amp;quot;Little or no participation, Satisfactory participation, Full participation&amp;quot;;&lt;br /&gt;
&lt;br /&gt;
==Item info==&lt;br /&gt;
&lt;br /&gt;
A space for entering information about the item. Text entered does not appear anywhere else.&lt;br /&gt;
&lt;br /&gt;
==Keep the highest==&lt;br /&gt;
&lt;br /&gt;
If set, this option will only keep the X highest grades, X being the selected value for this option.&lt;br /&gt;
&lt;br /&gt;
==Letter scale==&lt;br /&gt;
&lt;br /&gt;
You can set your grade letter scale here. Initially a &amp;quot;suggested&amp;quot; scale is presented and all that needs to be done to use this scale is to click &amp;quot;Save Changes&amp;quot;. If however you do not like this scale, just change any entries you want and then click &amp;quot;Save Changes&amp;quot;. After this initial setting you will see your current selected scale. Leave an entry blank to not include it or delete it from the grade scale.&lt;br /&gt;
Errors you may see in the gradebook:&lt;br /&gt;
&lt;br /&gt;
* No Grades Set: This means that the initial grade scale has not been set. All you need to do (if you like the suggested scale) is to click &amp;quot;save changes&amp;quot;&lt;br /&gt;
* No Grade Letter For X: Indicates that there is no appropriate grade letter for X.&lt;br /&gt;
&lt;br /&gt;
==Linked activity==&lt;br /&gt;
&lt;br /&gt;
Specifies an optional activity to which this outcome item is linked. This is used to measure student performance on criteria not assessed by the activity grade.&lt;br /&gt;
&lt;br /&gt;
==Locked==&lt;br /&gt;
&lt;br /&gt;
Whether or not the grades accept automatic updates from the activity they are linked to. Usually this is switched on (locked) as soon as the activity is finished and submissions are no longer accepted. A typical sequence of events would be: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!Event&lt;br /&gt;
!Locked&lt;br /&gt;
!Hidden&lt;br /&gt;
|-&lt;br /&gt;
|Start of activity and participant submissions||No||Yes&lt;br /&gt;
|-&lt;br /&gt;
|End of activity and beginning of grading/feedback||Yes||Yes&lt;br /&gt;
|-&lt;br /&gt;
|End of grading/feedback, and release of grades||Yes||No&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Locked after==&lt;br /&gt;
&lt;br /&gt;
Date after which the grades will be locked. Usually this date is set to the end of the activity, and the beginning of the grading process.. A typical sequence of events would be: &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
!Event&lt;br /&gt;
!Locked&lt;br /&gt;
!Hidden&lt;br /&gt;
|-&lt;br /&gt;
|Start of activity and participant submissions||No||Yes&lt;br /&gt;
|-&lt;br /&gt;
|End of activity and beginning of grading/feedback||Yes||Yes&lt;br /&gt;
|-&lt;br /&gt;
|End of grading/feedback, and release of grades||Yes||No&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Grades selected for column averages==&lt;br /&gt;
&lt;br /&gt;
Whether cells with no grade should be included when calculating the mean for each column.&lt;br /&gt;
&lt;br /&gt;
==Multiplicator==&lt;br /&gt;
&lt;br /&gt;
Factor by which all grades for this grade item will be multiplied, with a maximum value of the maximum grade.&lt;br /&gt;
&lt;br /&gt;
==Outcome==&lt;br /&gt;
&lt;br /&gt;
Specifies the Outcome which this grade item will represent in the gradebook. Only outcomes associated with this course and site-wide outcomes are available.&lt;br /&gt;
&lt;br /&gt;
==Standard outcomes==&lt;br /&gt;
&lt;br /&gt;
A Standard outcome is available site-wide, for all courses.&lt;br /&gt;
&lt;br /&gt;
==Overridden==&lt;br /&gt;
&lt;br /&gt;
When on, the overridden flag prevents any future attempts to automatically adjust the value of the grade. This flag is often set internally by the gradebook, but can be switched on and off manually using this form element.&lt;br /&gt;
&lt;br /&gt;
==Override site defaults==&lt;br /&gt;
&lt;br /&gt;
Tick this checkbox to enable the overriding of the site defaults for the display of grades in the gradebook. This activates form elements allowing you to define the grade letters and boundaries of your choice.&lt;br /&gt;
&lt;br /&gt;
==Offset==&lt;br /&gt;
&lt;br /&gt;
Number that will be added to every grade for this grade item, after the Multiplicator is applied.&lt;br /&gt;
&lt;br /&gt;
==Quick grading==&lt;br /&gt;
&lt;br /&gt;
Quick Grading adds a text input element in each grade cell on the grader report, allowing you to edit many grades at once. You can then click the Update button to perform all these changes at once, instead of one at a time.&lt;br /&gt;
&lt;br /&gt;
==Decimals shown in ranges==&lt;br /&gt;
&lt;br /&gt;
Specifies the number of decimal points to display for each range. This setting may be overridden per grading item.&lt;br /&gt;
&lt;br /&gt;
==Range display type==&lt;br /&gt;
&lt;br /&gt;
Specifies how to display ranges. If Inherit is selected, the display type for each column is used.&lt;br /&gt;
&lt;br /&gt;
==Scale==&lt;br /&gt;
&lt;br /&gt;
When using the scale grade type, a scale can be selected. The scale for an activity-based grade item is selected on the update activity page.&lt;br /&gt;
&lt;br /&gt;
==Standard scales==&lt;br /&gt;
&lt;br /&gt;
A standard scale is one that is available site-wide, for all courses.&lt;br /&gt;
&lt;br /&gt;
==Show activity icons==&lt;br /&gt;
&lt;br /&gt;
Whether to show activity icons next to activity names.&lt;br /&gt;
&lt;br /&gt;
==Show averages==&lt;br /&gt;
&lt;br /&gt;
Whether to show the mean for each column.&lt;br /&gt;
&lt;br /&gt;
==Show calculations==&lt;br /&gt;
&lt;br /&gt;
Whether to show calculator icons near each grade item and category, tooltips over calculated items and a visual indicator that a column is calculated.&lt;br /&gt;
&lt;br /&gt;
==Show show/hide icons==&lt;br /&gt;
&lt;br /&gt;
Whether to show a show/hide icon near each grade (controlling its visibility to the user).&lt;br /&gt;
&lt;br /&gt;
==Show feedback==&lt;br /&gt;
&lt;br /&gt;
Whether to show a feedback icon (for adding/editing) near each grade.&lt;br /&gt;
&lt;br /&gt;
==Show groups==&lt;br /&gt;
&lt;br /&gt;
Whether to show the mean for each group.&lt;br /&gt;
&lt;br /&gt;
==Show hidden items==&lt;br /&gt;
&lt;br /&gt;
Specifies how hidden grade items are shown. If Hide is selected, they are hidden completely. If Show is selected, the hidden grade item row is shown in grey with the grade hidden completely. If &amp;quot;Only hidden until&amp;quot; is selected, grade items with a &amp;quot;hide until&amp;quot; date set are shown in grey with the grades hidden completely until the set date, after which the whole item is shown.&lt;br /&gt;
&lt;br /&gt;
==Show locks==&lt;br /&gt;
&lt;br /&gt;
Whether to show a lock/unlock icon near each grade.&lt;br /&gt;
&lt;br /&gt;
==Show number of grades==&lt;br /&gt;
&lt;br /&gt;
Whether to show the number of grades used when calculating the mean in brackets after each average, for example 45 (34).&lt;br /&gt;
&lt;br /&gt;
==Show percentage==&lt;br /&gt;
&lt;br /&gt;
Whether to show the percentage value of each grade item.&lt;br /&gt;
&lt;br /&gt;
==Show quick feedback==&lt;br /&gt;
&lt;br /&gt;
Quick feedback adds a text input element in each grade cell on the grader report, allowing you to edit the feedback for many grades at once. You can then click the Update button to perform all these changes at once, instead of one at a time.&lt;br /&gt;
&lt;br /&gt;
==Show ranges==&lt;br /&gt;
&lt;br /&gt;
Whether to show the range of grades for each column in an additional row.&lt;br /&gt;
&lt;br /&gt;
==Show rank==&lt;br /&gt;
&lt;br /&gt;
Whether to show the position of the user in relation to the rest of the class, for each grade item.&lt;br /&gt;
&lt;br /&gt;
==Show user id numbers==&lt;br /&gt;
&lt;br /&gt;
Whether to show user id numbers in an additional column.&lt;br /&gt;
&lt;br /&gt;
==Students per page==&lt;br /&gt;
&lt;br /&gt;
The number of students to display per page in the grader report.&lt;br /&gt;
&lt;br /&gt;
==Synchronise legacy grades==&lt;br /&gt;
&lt;br /&gt;
The term &#039;legacy grades&#039; refers to grades from versions of Moodle prior to 1.9. When upgrading, all legacy grades should be included in the Moodle 1.9 gradebook. The &#039;Synchronise legacy grades&#039; button checks whether this is the case, and if necessary adds any missing legacy grades to the Moodle 1.9 gradebook.&lt;br /&gt;
&lt;br /&gt;
==User key==&lt;br /&gt;
&lt;br /&gt;
Grade publishing is a way of exporting grades via a URL without being logged in to Moodle. A user key is a randomly generated series of characters which is appended to the URL for security purposes.&lt;br /&gt;
&lt;br /&gt;
To publish grades, select &amp;quot;Create a new user key&amp;quot;. When the form is submitted, a new user key is created. Alternatively, a key which was created previously may be selected.&lt;br /&gt;
&lt;br /&gt;
[[Category:Grades]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Front_page_settings&amp;diff=96328</id>
		<title>Front page settings</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Front_page_settings&amp;diff=96328"/>
		<updated>2021-08-10T15:20:59Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Front page}}The site&#039;s [[Front page]] is similar to a course page. The front page settings, roles, filters, backup, restore and questions are currently duplicated in &#039;&#039;Settings &amp;gt; Front page settings&#039;&#039; AND &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Front page&#039;&#039; (reported as MDL-26012).&lt;br /&gt;
&lt;br /&gt;
==Front page settings==&lt;br /&gt;
&lt;br /&gt;
The following settings may be changed by a site administrator in &#039;&#039;Settings &amp;gt; Front page settings &amp;gt; Edit settings&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Full site name===&lt;br /&gt;
This name appears at the top of every page above the navigation bar.&lt;br /&gt;
[[Image:demositefrontpage01.png|frame|center|Front page full site name]]&lt;br /&gt;
&lt;br /&gt;
===Short name for site===&lt;br /&gt;
The short name appears at the beginning of the navigation bar as a link back to your site front page.&lt;br /&gt;
&lt;br /&gt;
===Front page description===&lt;br /&gt;
An optional setting enabling you to add short message to your users in a block on the front page.&lt;br /&gt;
&lt;br /&gt;
===Front page and front page items when logged in===&lt;br /&gt;
The centre of the front page can display any combination of the following: news items, a list of courses, a list of course categories, a list of categories and courses or none.  The order is determined by a combination box. &lt;br /&gt;
&lt;br /&gt;
It is possible to create one setting for anyone who gets to the front page without logging in to the Moodle site, and another look for only those who have logged into the Moodle site.  There are two combination boxes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!colspan=&amp;quot;3&amp;quot;|Combination boxes&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:FrontPage settings frontpage pd.png|thumb|left|frontpage showing pulldown]]&lt;br /&gt;
| The image on the left shows the first Front Page settings dialog - what visitors will see before they log in.&lt;br /&gt;
&lt;br /&gt;
The image on the right shows a second front Page settings dialog - what Authenticated Users will see when logged in. &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
:An alternative option for logged-in users is [[My Moodle]].&lt;br /&gt;
|[[Image:FrontPage_settings_frontpageloggedin.png|thumb|right|frontpage for login user box]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Maximum Category Depth===&lt;br /&gt;
Determines how many sub categories will be displayed on the front page for each category.&lt;br /&gt;
&lt;br /&gt;
===Include a topic section===&lt;br /&gt;
This adds a topic section to the centre-top of the front page. When editing is turned on, resources and/or activities can be added to the topic section using the dropdown menus, in the same way as on a course page.&lt;br /&gt;
&lt;br /&gt;
:Note: The label resource can be used to add text and/or an image to the centre-top of the front page.&lt;br /&gt;
&lt;br /&gt;
===News items to show===&lt;br /&gt;
This setting only applies if the front page is set to display news items or if you are using the [[Latest News block]].&lt;br /&gt;
&lt;br /&gt;
===Comments per page===&lt;br /&gt;
Each course may include a [[Comments block]] which allows the display of user comments. The number of comments displayed at any time is set here.&lt;br /&gt;
&lt;br /&gt;
===Courses per page===&lt;br /&gt;
Limits the number of courses which will display on a page.&lt;br /&gt;
&lt;br /&gt;
===Allow visible courses in hidden categories===&lt;br /&gt;
Do you want to display courses which are not hidden but placed in a category that is hidden?&lt;br /&gt;
&lt;br /&gt;
===Default front page role===&lt;br /&gt;
To enable logged-in users to participate in front page activities, a default front page role can be set. In Moodle 2, there is an Authenticated User on Front Page Role to which specific permissions can be granted for specific purposes. Alternatively, more than one  [[Create_custom_roles|Custom Role]] can be created to offer a number of different options for Admins to use in a variety of combinations that provide a great deal more flexibility on the Front Page. &lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;Note:&#039;&#039;&#039; The default Front Page role should &#039;&#039;never&#039;&#039; be set to [[Guest]]. Ostensibly, this implies that as few courses will allow Guest access, a user will try to log in, but as a Guest they cannot actually see courses.&lt;br /&gt;
&lt;br /&gt;
==Front Page roles==&lt;br /&gt;
As in a course, you can assign users [[Roles|roles]] just in the [[Context|context]] of this page.  Note this is different than the default Authenticated User on Front Page role found in front page settings. As a security issue, usually only admins can modify the front page, other users do not.&lt;br /&gt;
&lt;br /&gt;
==Front Page backup==&lt;br /&gt;
You can backup the front page, similar to a [[Course backup]].&lt;br /&gt;
&lt;br /&gt;
==Front Page restore==&lt;br /&gt;
As in a course, you can [[Restore]] a backed up version of the front page.&lt;br /&gt;
However, there are currently issues with front page restore, as outlined in MDL-31500 and MDL-30808&lt;br /&gt;
&lt;br /&gt;
==Front Page questions==&lt;br /&gt;
The [[Question bank]] is accessible from the Front Page. For example, if &amp;quot;topic&amp;quot; is checked in the front page settings, you can add a [[Quiz module]] activity.&lt;br /&gt;
&lt;br /&gt;
==Tips and Tricks==&lt;br /&gt;
&lt;br /&gt;
A Moodle site&#039;s front page can be reconfigured from the default standard to give it a different look and or change how it functions.  Depending upon the changes, this can be a simple or a more complex process. Of course a custom theme may have it&#039;s own unique front page format.   Here are some examples using the formal white standard theme:  &lt;br /&gt;
&lt;br /&gt;
====Visual examples====&lt;br /&gt;
&amp;lt;gallery caption=&amp;quot;Guest view, same Theme- click on any to enlarge&amp;quot; widths=&amp;quot;150px&amp;quot; heights=&amp;quot;100px&amp;quot; perrow=&amp;quot;3&amp;quot;&amp;gt;&lt;br /&gt;
Image:fp013col.png|3 column Front Page, topic checked&lt;br /&gt;
Image:fp032colright.png|2 column Front Page, blocks right &lt;br /&gt;
Image:fp022colleft.png|2 column Front Page,  blocks left&lt;br /&gt;
Image:fp043coluser.png|3 column Front Page, Categories and courses&lt;br /&gt;
Image:fp052colright.png|2 column Front Page, Categories only&lt;br /&gt;
Image:fp021col.png|Clean look, topic checked, no blocks&lt;br /&gt;
&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Central area, Courses or Categories?====&lt;br /&gt;
This is a major decision, what is it you want in the centre of your front page? You can have a list of categories, a list of categories and courses, or neither, a label with a table full of images works just as well. The issue is always the same, actually, what looks good.&lt;br /&gt;
&lt;br /&gt;
====Clean look, topic checked, no blocks====&lt;br /&gt;
The standard Moodle page format of [[Block]]s on the left and blocks on the right is not always appropriate or considered pretty. The [[Administrator|site administrator]] can change this basic format by simply deleting or hiding blocks that can be seen by users. Navigation can be placed on the dock.&lt;br /&gt;
&lt;br /&gt;
====The two column format====&lt;br /&gt;
The Administrator decides which blocks should appear on the front page and moves all of them to the left or right side. This format allows you to decide what you want in the centre, and where you want the blocks, left or right.  &lt;br /&gt;
:Tip: It is possible to force a block column to assume a specific width.  For example, placing an image of 400 px in a block will force that column to 400 px.&lt;br /&gt;
&lt;br /&gt;
====The clean look example====&lt;br /&gt;
Some sites want an uncluttered look. A site administrator or designer wants to start with the most basic look and then add features.&lt;br /&gt;
&lt;br /&gt;
# The site administrator will turn on editing and hide or delete all blocks that can be see by teachers or students on the front page.&lt;br /&gt;
# Then go to the Site administration block► Front Page ► Front Page settings and:&lt;br /&gt;
## Set the &amp;quot;Front page&amp;quot; list to None, None, None, None &lt;br /&gt;
## Set &amp;quot;Front page items when logged in&amp;quot; list to the same &lt;br /&gt;
## Check the box for &amp;quot;Include Topic section&amp;quot;&lt;br /&gt;
## Save &lt;br /&gt;
&lt;br /&gt;
All the above was done with 1 theme, and a simple front page.&lt;br /&gt;
&lt;br /&gt;
==Block settings==&lt;br /&gt;
[[Image:Editconfigblock.png|thumb|200px|right|Editing block settings]]&lt;br /&gt;
Each block has a number of configuration settings that you can change. See [[Managing blocks]] for more details.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*[[Front Page FAQ]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Site administration]]&lt;br /&gt;
&lt;br /&gt;
[[de:Einstellungen_f%C3%BCr_die_Startseite]]&lt;br /&gt;
[[eu:Hasiera-orriaren_ezarpenak]]&lt;br /&gt;
[[fr:Réglages page d&#039;accueil]]&lt;br /&gt;
[[pl:Ustawienia strony głównej]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=File_upload_size&amp;diff=96327</id>
		<title>File upload size</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=File_upload_size&amp;diff=96327"/>
		<updated>2021-08-10T15:20:58Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Probably the most frequently asked question in the Moodle.org Using Moodle forums is &amp;quot;How do I increase the upload file size limit?&amp;quot; The changes that need be made are the same in all versions of Moodle, just in different OS&#039; they need be made in different places. Upload file sizes are restricted in a number of ways and each one in this list restricts the following ones:&lt;br /&gt;
&lt;br /&gt;
 Server level&lt;br /&gt;
 Moodle site level&lt;br /&gt;
 Course level&lt;br /&gt;
 Activity level&lt;br /&gt;
&lt;br /&gt;
This is a contentious issue, mainly because you might think that it should be set inside the Moodle. Unfortunately, this is not so, these are environment issues that need to be set in the server and PHP folders, Moodle cannot work outside itself. &lt;br /&gt;
&lt;br /&gt;
==Physical access to Server==&lt;br /&gt;
These instructions assume you have full physical and administrative access to your server. If you are using a hosted server then you will probably need to look into other ways to increase your file upload size. &lt;br /&gt;
&lt;br /&gt;
There are positives and negatives to both methods below. If you modify the php.ini file then the changes will effect all php applications on your server. Since PHP5 you can only have one php.ini file on your server. The php.ini method will work with all web servers though. The .htaccess method will only effect the folder and all subfolders that it is placed in, but you must have certain settings enabled in Apache.&lt;br /&gt;
&lt;br /&gt;
==Restricting the File size - how it works==&lt;br /&gt;
The Host may set a limit on the maximum file upload size in the Server environment, which you may override if the Host allows you to. PHP has a setting that it uses to limit the size of the file that it handles in upload. The Host has set that figure in the php.ini based on their particular perceptions and their clientele need. This size appears in Moodle in the &#039;&#039;&#039;Administration &amp;gt; Security &amp;gt; Site Policies &amp;gt; Maximum uploaded file size&#039;&#039;&#039; drop-down combo box. You can change this at any time to suit your site need. In the Course Settings page, there is also a further restriction that can be made. At no time can the Course setting over-ride the Site setting, nor can the Site setting over-ride the php.ini setting, which cannot over-ride the Server setting. The only exception to this rule is that you can manipulate both the Server and the PHP settings, and how to do that is described below.&lt;br /&gt;
&lt;br /&gt;
==Modifying the php.ini file==&lt;br /&gt;
These instructions show you how to change the file upload size by editing your php.ini file.&lt;br /&gt;
====Ubuntu Linux Instructions====&lt;br /&gt;
&lt;br /&gt;
These instructions assume that you have installed the standard Moodle package, PHP 5 and Apache 2 via apt-get and left it all as a default install. If you have compiled yourself I presume that you will know where your php.ini files are!&lt;br /&gt;
&lt;br /&gt;
You need to edit the following three settings in your php.ini file located at: /etc/php5/apache2/&lt;br /&gt;
&lt;br /&gt;
*Type &amp;quot;sudo nano /etc/php5/apache2/php.ini&amp;quot;&lt;br /&gt;
*Press Ctrl and W and type &amp;quot;post_max_size&amp;quot; &lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl and W and type &amp;quot;upload_max_filesize&amp;quot; &lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl and W and type &amp;quot;max_execution_time&amp;quot; &lt;br /&gt;
*Change the value to 600&lt;br /&gt;
*Press Ctrl and O&lt;br /&gt;
*Press Ctrl and X&lt;br /&gt;
*Type sudo /etc/init.d/apache2 restart&lt;br /&gt;
&lt;br /&gt;
Your new file size limit should now appear in Administration &amp;gt; Security &amp;gt; Site Policies &amp;gt; Maximum uploaded file size&lt;br /&gt;
&lt;br /&gt;
====Windows XP and Server 2003 Instructions====&lt;br /&gt;
&lt;br /&gt;
These instructions presume that you have downloaded the latest PHP 5.3.x Windows zip package and extracted it to C:\PHP. If you have installed PHP to another location then change all references to &amp;quot;C:\PHP&amp;quot; to the location you installed PHP too.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
|Download and install any text editor that can save the file in a UTF-8 format, [http://www.crimsoneditor.com Crimson Editor] is one such, NotePad++ is another, use that instead of either Wordpad or Notepad! The issue is that WordPad or Notepad will include hidden characters that may not be compatible with the requirements of PHP.   &lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
*Open C:\PHP&lt;br /&gt;
*Right Click the &#039;&#039;&#039;php.ini&#039;&#039;&#039; file in this folder and choose &amp;quot;Open with...&amp;quot; selecting your editor of choice. &lt;br /&gt;
*Press Ctrl + F and type &amp;quot;post_max_size&amp;quot; (click Find...&amp;quot;, where needed) &lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl + F and type &amp;quot;upload_max_filesize&amp;quot; (click Find...&amp;quot;, where needed)&lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl + F and type &amp;quot;max_execution_time&amp;quot; (click Find...&amp;quot;, where needed)&lt;br /&gt;
*Change the value to 600&lt;br /&gt;
*Press Ctrl and S or the save button. &lt;br /&gt;
*Exit your editor. &lt;br /&gt;
*Restart your webserver to reload PHP with the edited changes. &lt;br /&gt;
**&#039;&#039;&#039;For IIS&#039;&#039;&#039;&lt;br /&gt;
**Open the Start Menu on your server and select &amp;quot;Run&amp;quot;&lt;br /&gt;
**Type &amp;quot;iisreset /RESTART&amp;quot;&lt;br /&gt;
**For &#039;&#039;&#039;Apache 2 and Windows XP&#039;&#039;&#039;&lt;br /&gt;
**Go to Start &amp;gt; All Programs &amp;gt; Apache &amp;gt; Restart&lt;br /&gt;
**&#039;&#039;&#039;For Apache 2 and Windows Server&#039;&#039;&#039;&lt;br /&gt;
**The following command will work as long as you have installed Apache 2 as a service on your Windows Server&lt;br /&gt;
**Open your Start Menu on your server and select &amp;quot;Run&amp;quot;&lt;br /&gt;
**Type &amp;quot;httpd -k restart&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Your new file size limit should now appear in Administration &amp;gt; Security &amp;gt; Site Policies &amp;gt; Maximum uploaded file size&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; These instructions also cover the Xampp Windows installer. Just replace C:\PHP with C:\Moodle\server\php and to restart your Moodle with a normal stop-start.&lt;br /&gt;
&lt;br /&gt;
==Modifying the apache config file==&lt;br /&gt;
====Ubuntu Linux Instructions====&lt;br /&gt;
You may also need to edit the config.php file in the moodle directory:&lt;br /&gt;
*Type &amp;quot;gksudo nautilus&amp;quot; to get root permissions&lt;br /&gt;
*Navigate to /etc/moodle&lt;br /&gt;
*Open apache.conf&lt;br /&gt;
*Go to the &amp;quot;&amp;lt;IfModule mod_php5.c&amp;gt;&amp;quot; section&lt;br /&gt;
*Change &amp;quot;php_value upload_max_filesize = 2M&amp;quot; to a higher value&lt;br /&gt;
*Change &amp;quot;php_value post_max_size = 2M&amp;quot; to a higher value&lt;br /&gt;
*Go to the &amp;quot;&amp;lt;IfModule mod_php4.c&amp;gt;&amp;quot; section&lt;br /&gt;
*Change &amp;quot;php_value upload_max_filesize = 2M&amp;quot; to a higher value&lt;br /&gt;
*Change &amp;quot;php_value post_max_size = 2M&amp;quot; to a higher value&lt;br /&gt;
*Save file&lt;br /&gt;
*Type sudo /etc/init.d/apache2 restart&lt;br /&gt;
&lt;br /&gt;
===Modifying the .htaccess file===&lt;br /&gt;
&lt;br /&gt;
The following instructions will only work on an Apache web server, and also the Apache server must have Overrides allowed. Traditionally, you could only use .htaccess files when PHP was run as a module of Apache, but with Apache 2.2, this appears to no longer be the case. You can now use the .htaccess file in either module or cgi forms. As well, allowing the use of .htaccess files will cause a performance hit on the server, not a desirable outcome either - so check with your Host. &lt;br /&gt;
&lt;br /&gt;
The .htaccess file is a distributed configuration file, that is, it can be used on a per-folder basis to configure each user&#039;s folder and sub-folders. You cannot alter the &amp;quot;AllowOverrides&amp;quot; directive in the Apache configuration file with a .htaccess file, only the Host can set that manually. Usually the Host will place a .htaccess file into your site Root if they do allow you to override the server settings. You can edit it the same as below, and the overrides you set will work. Alternatively, you may create your own .htaccess file in your text editor. It may also be called something else, like .config. If you have any file that starts with a ., you might want to open it in your text editor, just out of curiosity. &lt;br /&gt;
&lt;br /&gt;
Create a file called .htaccess in Moodle&#039;s main directory (where &#039;index.php&#039; is located, not the &#039;moodledata&#039; directory) that contains the following information:&lt;br /&gt;
&lt;br /&gt;
 php_value upload_max_filesize 20971520&lt;br /&gt;
 php_value post_max_size 20971520&lt;br /&gt;
 php_value max_execution_time 600&lt;br /&gt;
&lt;br /&gt;
20971520 is the integer value for 20Mb. You can use the following site to [http://www.onlineconversion.com/computer_base2.htm convert MegaBytes to Bytes].&lt;br /&gt;
&lt;br /&gt;
For a more complete description of how to edit the .htacess file, look at this page, [http://httpd.apache.org/docs/current/howto/htaccess.html Apache Tutorial: .htaccess files]&lt;br /&gt;
&lt;br /&gt;
===Modifying the IIS 7.0/7.5 configuration (Windows Server 2008, Windows Server 2008 R2)===&lt;br /&gt;
First increase activity and request time outs (allows large files to succeed on slow connections)&lt;br /&gt;
 FastCGI Settings &amp;gt; Edit (Right-click on PHP application)&lt;br /&gt;
 Set Process Model &amp;gt; Activity Timeout to &#039;3600&#039; (one hour)&lt;br /&gt;
 Set Process Model &amp;gt; Request Timeout to &#039;3600&#039; (one hour)&lt;br /&gt;
Next set &#039;Maximum allowed content length&#039;&lt;br /&gt;
 Request Filtering &amp;gt; Edit Feature Settings:&lt;br /&gt;
 Set &#039;Maximum allowed content length&#039; to your desired file size (in bytes) e.g. &#039;536870912&#039; for 512MB (default is approximately 28.6MB)&lt;br /&gt;
&lt;br /&gt;
==Hosted Server==&lt;br /&gt;
Things can be a little different with a hosted server for uploaded and downloaded file size.  You are probably going to  to be told to create or change a .htaccess file, or to modify a php.ini file.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
|It might be a good idea to talk to with your service provider before you attempt anything.  They probably have instructions on &amp;quot;how to&amp;quot; and may have their own limits for uploaded file size. Some hosts measure the file size in gigabytes and others in megabytes.  If you are unhappy with their limits, then check your contract and consider changing your provider to one that has a limit and price that you like.&lt;br /&gt;
|}   &lt;br /&gt;
&lt;br /&gt;
===.htaccess with hosted server===&lt;br /&gt;
The one purpose of an .htaccess file is to override the the current limitations of both the server and the php.ini file.  Your hosted server should inform you where that file needs be placed in your Moodle, but generally in the root is sufficient. They may already have a standard file you can use, if so, use it - but perhaps not.  &lt;br /&gt;
&lt;br /&gt;
To the .htaccess file add the lines:&lt;br /&gt;
  php_value upload_max_filesize 128M&lt;br /&gt;
  php_value post_max_size 128M&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
This will limit uploads to 128MB, but you can make it any size you agree with your provider. The wording may vary slightly, according to the demands of the server.&lt;br /&gt;
&lt;br /&gt;
===php.ini with hosted server===&lt;br /&gt;
Some servers will not allow you to change the moodle root .htaccess file and tell you to use a php.ini file for php directives.  Here you can use the instruction located in the section above called [[File_upload_size#Modifying_the_php.ini_file|Modifying the php.ini file]].&lt;br /&gt;
&lt;br /&gt;
Find the php.ini file in your moodle subfolder on your hosted server. You might want to copy the file as a backup just in case.  Edit php.ini, find &amp;quot;upload_max_filesize&amp;quot; and post_max_size in the code.  After the = change the number.  Here the max filesize is 20 megabytes.  &lt;br /&gt;
&lt;br /&gt;
 upload_max_filesize = 20M&lt;br /&gt;
 post_max_size = 20M&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
|Still not changed? Some hosts using cpanel have a php config program under services/software. Use the &amp;quot;Single php.ini&amp;quot; option and make sure you note the location of the php.ini file to modify. This changes the .htaccess file in the same area and thus the server limit for all programs using php.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
*[[Administration_FAQ#How_do_the_limits_on_uploaded_files_work.3F|Administration FAQ Doc page]]&lt;br /&gt;
*[[Site_policies#Maximum_uploaded_file_size|Site Policies Doc page]]&lt;br /&gt;
*[[Installing_Moodle/Creating_custom_php.ini_files|Creating custom php.ini files Doc Page]]&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=39625 Detailed instructions to increase the maximum allowed size for uploaded files] forum discussion&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=97907 Instructions to increase maximum allowed size on hosted servers] forum discussion&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=124441 Help on changing the maximum upload size when installing Moodle via apt-get] forum discussion&lt;br /&gt;
&lt;br /&gt;
[[Category:Administrator|File]][[Category:FAQ|File]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Emoticon_images&amp;diff=96326</id>
		<title>Emoticon images</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Emoticon_images&amp;diff=96326"/>
		<updated>2021-08-10T15:20:58Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The list of images that will be used to replace the emoticon text can be defined by a site administrator in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Appearence &amp;gt; HTML settings&#039;&#039;. The images defined here are used by [[Display emoticons as images]] filter and TinyMCE HTML editor&#039;s Insert emoticon popup menu.&lt;br /&gt;
[[Image:emoticon-setting.png|thumb|Emoticon setting page]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Form table fields ==&lt;br /&gt;
&lt;br /&gt;
The form table maps the emoticon characters like &amp;lt;code&amp;gt;:-)&amp;lt;/code&amp;gt; to an image that will be used to display that emoticon. Images can be provided either by the Moodle core itself or by any other installed plugin (like an activity module, block, theme or your plocal plugin). For accessibility reasons, alternative texts for these images should be defined, too.&lt;br /&gt;
&lt;br /&gt;
=== Emoticon text ===&lt;br /&gt;
&lt;br /&gt;
Into the first column, insert the text representation of the emoticon. The emoticon filter converts these texts into images. The text must pass the following constraints:&lt;br /&gt;
&lt;br /&gt;
* It must be at least two characters long&lt;br /&gt;
* It can not contain &amp;lt;code&amp;gt;:/&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;//&amp;lt;/code&amp;gt; substring to avoid accidental breaking of URL addresses&lt;br /&gt;
* It must contain some non-alphanumeric character to prevent from breaking HTML tags in the text&lt;br /&gt;
&lt;br /&gt;
=== Image name and component ===&lt;br /&gt;
&lt;br /&gt;
The default set of emoticons are provided by Moodle core itself. In that case, the image component is set to &#039;&#039;core&#039;&#039;. The image name is a relative path to a file without the trailing slash and without the file extension. The image must be located in the &amp;lt;code&amp;gt;/pix&amp;lt;/code&amp;gt; folder of the given component.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Example:&#039;&#039; if the image name is set to &amp;lt;code&amp;gt;s/smiley&amp;lt;/code&amp;gt; and the image component is set to &amp;lt;code&amp;gt;core&amp;lt;/code&amp;gt;, the image file &amp;lt;code&amp;gt;{dirroot}/pix/s/smiley.gif&amp;lt;/code&amp;gt; from your Moodle installation folder is used to display that emoticon.&lt;br /&gt;
&lt;br /&gt;
=== Alternative text ===&lt;br /&gt;
&lt;br /&gt;
Alternative texts are taken from [[Translation|language packs]] that can be again provided by either the core or a plugin. The first field value is the string identifier and the second field value is the name of the component providing that string (see the language packs documentation for details).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Example:&#039;&#039; if the emoticon has the alternative text set to &amp;lt;code&amp;gt;smiley&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;core_pix&amp;lt;/code&amp;gt;, then the localized text will be obtained from the file &amp;lt;code&amp;gt;{dataroot}/lang/XX/pix.php&amp;lt;/code&amp;gt; where XX is the current language code. If that translation is available, the value from the English pack &amp;lt;code&amp;gt;{dirroot}/lang/en/pix.php&amp;lt;/code&amp;gt; will be used.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Technical note:&#039;&#039; these two values are passed as the parameters to the &amp;lt;code&amp;gt;get_string()&amp;lt;/code&amp;gt; function to obtain the alternative text&lt;br /&gt;
&lt;br /&gt;
== Custom emoticons ==&lt;br /&gt;
&lt;br /&gt;
To support your own emoticons, just add another row into the form table. However, if the images and their alternative texts are not available in the Moodle yet, you will have to add them in a form of an installed plugin, typically together with a theme or via your local plugin. The following section illustrates some options how to register emoticons provided by various types of plugins.&lt;br /&gt;
&lt;br /&gt;
=== Emoticon provided by activity module ===&lt;br /&gt;
&lt;br /&gt;
Let us say we want to use the emoticons system to display [[Workshop module]] icon instead of &amp;lt;code&amp;gt;(workshopicon)&amp;lt;/code&amp;gt; text. As you can see, the icon is located in &amp;lt;code&amp;gt;{dirroot}/mod/workshop/pix/icon.gif&amp;lt;/code&amp;gt;. Just add the following row into the emoticons form table:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Text&lt;br /&gt;
! Image name&lt;br /&gt;
! Image component&lt;br /&gt;
! colspan=&amp;quot;2&amp;quot; | Alternative text&lt;br /&gt;
|-&lt;br /&gt;
| (workshopicon)&lt;br /&gt;
| icon&lt;br /&gt;
| mod_workshop&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Save changes in the form and the icon should appear at the end of the row. If you have the emoticon filter enabled, whenever you or your users type &amp;lt;code&amp;gt;(workshopicon)&amp;lt;/code&amp;gt; in the text, it will be replaced with the image.&lt;br /&gt;
&lt;br /&gt;
You may want to use the localized term for the Workshop module as the alternative text for that image. Because the Workshop module already contains a string that we can use, just add the following values into the last two columns of the table and save the changes again:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Text&lt;br /&gt;
! Image name&lt;br /&gt;
! Image component&lt;br /&gt;
! colspan=&amp;quot;2&amp;quot; | Alternative text&lt;br /&gt;
|-&lt;br /&gt;
| (workshopicon)&lt;br /&gt;
| icon&lt;br /&gt;
| mod_workshop&lt;br /&gt;
| modulename&lt;br /&gt;
| mod_workshop&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Emoticon provided by installed theme ===&lt;br /&gt;
&lt;br /&gt;
[[Development:Themes 2.0|Themes in Moodle 2.0]] are able to override any standard image provided by the Moodle core by default. So if a file &amp;lt;code&amp;gt;{themedir}/pix_core/s/biggrin.*&amp;lt;/code&amp;gt; exists it is automatically used instead of standard &amp;lt;code&amp;gt;{dirroot}/pix/s/biggrin.*&amp;lt;/code&amp;gt;. Themes like any other plugins are also able to extend the standard emoticon set or change the file names or their directories.&lt;br /&gt;
&lt;br /&gt;
Let us say you have installed a theme named &amp;lt;code&amp;gt;mychool&amp;lt;/code&amp;gt; that comes with its own set of standard emoticons. Those emoticons must be located in the &amp;lt;code&amp;gt;/pix&amp;lt;/code&amp;gt; subfolder of that theme, for example in &amp;lt;code&amp;gt;{themedir}/pix/smilies/happy.png&amp;lt;/code&amp;gt;. Now you want to use the emoticons provided by this theme instead of the default Moodle emoticon set. Just replace the relevant rows in the table with the new values:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Text&lt;br /&gt;
! Image name&lt;br /&gt;
! Image component&lt;br /&gt;
! colspan=&amp;quot;2&amp;quot; | Alternative text&lt;br /&gt;
|-&lt;br /&gt;
| :-)&lt;br /&gt;
| smilies/happy&lt;br /&gt;
| theme_myschool&lt;br /&gt;
| smiley&lt;br /&gt;
| core_pix&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Note that we replaced just the image name and component. So the alternative text will be taken from the core language pack which is probably already localized into many languages.&lt;br /&gt;
&lt;br /&gt;
=== Preparing own set of emoticons ===&lt;br /&gt;
&lt;br /&gt;
If you have a set of images you would like to use as emoticons at your site, we recommend you to prepare a local plugin that will just provided these emoticons, without any other functionality. Even though this way involves a bit more work at the beginning, it is preferable over direct modification of the standard Moodle files. By encapsulating your emoticon with a local plugin, you can safely upgrade your site without the risk of overwriting your modifications, deploy the local plugin at multiple servers and share your work easily with the others.&lt;br /&gt;
&lt;br /&gt;
Writing a local plugin that provides a set of emoticons is not hard even if you are not experienced PHP developers. You can use a [http://github.com/mudrd8mz/moodle-local_aliens published example] as a scaffold for your own work.&lt;br /&gt;
&lt;br /&gt;
[[Category:Site administration]]&lt;br /&gt;
[[Category:Filter]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=DragMath_equation_editor&amp;diff=96325</id>
		<title>DragMath equation editor</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=DragMath_equation_editor&amp;diff=96325"/>
		<updated>2021-08-10T15:20:57Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== WARNING ===&lt;br /&gt;
&amp;lt;p class=&amp;quot;note&amp;quot;&amp;gt;As of Moodle 2.x DragMath is now in Moodle core (you need not install the code if you are running Moodle 2.x.) To use DragMath, you are required to activate the TeX filter and ensure that you have Java installed.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
You may want to look in the Math Forum for the latest discussion of SEE (Super Equation Editor, an initial nickname for this effort though the product has far outgrown just an equation editor). SEE is a comprehensive set of Math Plugins Mauno Korpelainen has been developing and are discussed here [[Advanced Maths Tools]] - an &amp;quot;alpha&amp;quot; version of docs for installation and use. If these tools are to your liking they will largely eliminate your need to wrestle with TeX (unless you wish so to do.) And, if you want a full distro of TeX, consider doing a local install of TexLive and cobbling your code to eliminate the need for convert.&lt;br /&gt;
&lt;br /&gt;
===Introduction===&lt;br /&gt;
To quote the W3C [http://www.w3.org/Math/Software/mathml_software_cat_editors.html]:&lt;br /&gt;
 This is an open-source drag and drop equation editor written in Java.&lt;br /&gt;
 Once an expression is created the user can convert it into a variety &lt;br /&gt;
 of different linear syntax for mathematics, including MathML, LaTeX,&lt;br /&gt;
 Maple, Maxima or any user defined style.&lt;br /&gt;
Created by Christoper Sangwin and Alexander Billingsley at the University of Birmingham as part of the [http://www.stack.bham.ac.uk STACK project],  DragMath allows students to build mathematical expressions using a graphical drag-and-drop interface similar in appearance to that available in a number of office productivity suites. &lt;br /&gt;
&lt;br /&gt;
Initially integrated with Moodle to be used with Moodle&#039;s Tex filter,  the export feature available with DragMath has now allowed an integration that supports the creation of LaTex text expressions with and without the doubledollar signs used to signal parsing by the filter as well as AsciiMathML text expressions.&lt;br /&gt;
&lt;br /&gt;
To use DragMath, users must have the Java Runtime Environment (JRE) version 1.5 or higher installed on their desktop computers.  Most systems come with the JRE as standard equipment, so you may not have to do anything. If you need to install the JRE manually, you can download it from [http://java.com/en/download/index.jsp here].  Note that the JRE is variously known as Java software for your computer, Java Runtime Environment, the Java Runtime, Runtime Environment, Runtime, Java Virtual Machine, Virtual Machine, Java VM, JVM, VM, or Java download.  &lt;br /&gt;
 &lt;br /&gt;
You can see a demo of the DragMath editor [http://www.dragmath.bham.ac.uk/ here].  The DragMath interface is highly intuitive and anyone can be using it productively after a few minutes of trial-and-error.  If you have questions about the editor, there is a short manual [http://www.dragmath.bham.ac.uk/doc/index.html here].&lt;br /&gt;
&lt;br /&gt;
===Using DragMath===&lt;br /&gt;
DragMath is based on the simple idea that the User who does not know a lot of TeX (pronounced Tech) can still create mathematical formula for publishing. In this case, Moodle is the dispaly agent so the TeX formulae are then rendered to a Moodle screen. This essentially means that with little experience, any Junior High Maths teacher can generate all the formulae they need for most aspects of Maths in Moodle.&lt;br /&gt;
&lt;br /&gt;
===Creating simple expressions===&lt;br /&gt;
&lt;br /&gt;
To begin, click on the DragMath insertion button. This opens The DragMath interface. &lt;br /&gt;
&lt;br /&gt;
[[Image:dragmath02.png|thumb|200px|center|Opening Dragmath]] &lt;br /&gt;
&lt;br /&gt;
The toolbar is different than you may expect, we are used to nice neat rows of buttons, but Dragmath has to use tabs. Each tab is tab is a collection of &amp;quot;templates&amp;quot;, that is each symbol is a &amp;quot;template&amp;quot; and can be dragged and dropped onto the work space.&lt;br /&gt;
&lt;br /&gt;
[[Image:dragmath01.png|thumb|200px|center|The DragMath Interface]] &lt;br /&gt;
&lt;br /&gt;
To end editing and insert the script into the Moodle page, click the Insert button. This simple, but not simplistic, interface is a strength of DragMath. It make it easy for even novices to create complex formulae.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot;|&#039;&#039;&#039;A sequence for DragMath - click an image to enlarge&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:dragmath04f.png|thumb|150px|Select the Tab with the symbols required]]&lt;br /&gt;
|[[Image:dragmath03.png|thumb|150px|Click, hold then drag&#039;n&#039;drop a symbol]]&lt;br /&gt;
|[[Image:dragmath04.png|thumb|150px|Enter the values, select an operation symbol]]&lt;br /&gt;
|[[Image:dragmath04a.png|thumb|150px|Select another symbol and drag&#039;n&#039;drop]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:dragmath04b.png|thumb|150px|Add an equal (or other) sign]]&lt;br /&gt;
|[[Image:dragmath04c.png|thumb|150px|Add in a variable, (chi in this case) ]]&lt;br /&gt;
|[[Image:dragmath04d.png|thumb|150px|Click Insert]]&lt;br /&gt;
|[[Image:dragmath04e.png|thumb|150px|See the encoded result in the editing dialog.]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
This same sequence of operations apply equally for all formulae, all insertions, no matter how complex they become. &lt;br /&gt;
&lt;br /&gt;
You can insert a template from the toolbar by drag and drop or by a click on the template in the tab, then clicking in the workspace.&lt;br /&gt;
&lt;br /&gt;
===Creating more complex expressions===&lt;br /&gt;
&lt;br /&gt;
More complex expressions are pretty much more of the same as above. Creating a simple multiplication table matrix, for example, seems complex,but in DragNath, it is actually simple:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot;|&#039;&#039;&#039;A sequence for a simple Multiplication Matrice in DragMath - click an image to enlarge&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:dragmath05.png|thumb|150px|Select the Tab and add in the multiplier]]&lt;br /&gt;
|[[Image:dragmath05a.png|thumb|150px|Click, hold then drag&#039;n&#039;drop the Matrix symbol]]&lt;br /&gt;
|[[Image:dragmath05b.png|thumb|150px|Enter the values, select a equal symbol]]&lt;br /&gt;
|[[Image:dragmath05c.png|thumb|150px|Add in the rows required]]&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:dragmath05d.png|thumb|150px|Add in the columns required]]&lt;br /&gt;
|[[Image:dragmath05e.png|thumb|150px|Edit the Matrice ]]&lt;br /&gt;
|[[Image:dragmath05f.png|thumb|150px|Add the equal symbol]]&lt;br /&gt;
|[[Image:dragmath05g.png|thumb|150px|Add and edit in the second Matrice.]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Locally saving and restoring a DragMath expression===&lt;br /&gt;
When you press the Insert button, DragMath inserts the export string into your text and the DragMath window closes. &#039;&#039;The exported string can no longer be manipulated using DragMath.&#039;&#039;  If you decide to change the string, you have two options:&lt;br /&gt;
*delete the string (including the dollar signs or other token) and completely recreate it using DragMath&lt;br /&gt;
*edit the expression by hand&lt;br /&gt;
You can not tell DragMath to re-read the expression and show it again in two dimensions.  This is a theoretical limitation, not a limitation of DragMath.&lt;br /&gt;
&lt;br /&gt;
But suppose the expression is very complicated.  It would be impractical to start over just to make a simple change.  Before you Insert the expression, you can save a copy of the expression (a .drgm file) to your local disk using the Save button (see screenshot).  Later, if you need to make a change, you open the saved .drgm file.&lt;br /&gt;
&lt;br /&gt;
[[Image:Dragmath_save_and_restore.png|DragMath instructions]]&lt;br /&gt;
&lt;br /&gt;
A .drgm file contains three-dimensional representation of your mathematical expression.  It is a binary file that can only be opened by DragMath.&lt;br /&gt;
===Additional Editing===&lt;br /&gt;
&lt;br /&gt;
There are times when &#039;&#039;&#039;DragMath&#039;&#039;&#039; is not going to have a symbol or something you might want. Or perhaps you left something out of the DragMath constuctor, so you want to include it manually. Most likely, for something like the matrix created earlier, I want to go to 15, which means I have to change the structure of the matrix, and edit in some numbers. This is easily done with a little forethought. Copy and paste and delete or edit what you want and do not want.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot;|&#039;&#039;&#039;Manually editing a DragMath construction  - click an image to enlarge&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:dragmath06a.png|thumb|150px|Select, copy and paste the original matrix]]&lt;br /&gt;
|[[Image:dragmath06b.png|thumb|150px|Edit to what is actually required]]&lt;br /&gt;
|[[Image:dragmath06c.png|thumb|150px|Delete the original matrix]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Sometimes however, you just want to include something you forgot, or rather, add something that was not there in the first place. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; align=&amp;quot;center&amp;quot;&lt;br /&gt;
|- &lt;br /&gt;
| colspan=&amp;quot;4&amp;quot;|&#039;&#039;&#039;Accurately editing a DragMath construction manually  - click an image to enlarge&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:dragmath06d.png|thumb|150px|Construct the original equation]]&lt;br /&gt;
|[[Image:dragmath06e.png|thumb|150px|Copy, then edit to what is actually required]]&lt;br /&gt;
|[[Image:dragmath06f.png|thumb|150px|Return to the edited page]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===See Also===&lt;br /&gt;
* [[Advanced Maths Tools]] For an explanation of the SEE tools&lt;br /&gt;
* [[Using TeX Notation]] Some ideas and syntax&lt;br /&gt;
* [[TeX notation filter]] Turning TeX on&lt;br /&gt;
* [http://www.youtube.com/watch?v=mfc7umQ2xLA| A simple YouTube video] Constructing a simple equation. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Discussion of the transition of DragMath to Moodle core: http://moodle.org/mod/forum/discuss.php?d=125977&amp;amp;parent=551794&lt;br /&gt;
&lt;br /&gt;
[[ca:DragMath_editor_d%27equacions]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Dock&amp;diff=96324</id>
		<title>Dock</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Dock&amp;diff=96324"/>
		<updated>2021-08-10T15:20:57Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Blocks}}&lt;br /&gt;
&lt;br /&gt;
The dock is an area where blocks can be moved to and from this area with the block to dock [[Image:Block_to_dock.png]] and dock to block [[Image:Dock_to_block.png]] icons. &lt;br /&gt;
&lt;br /&gt;
==Dock area and dock tool==&lt;br /&gt;
[[Image:Dock area.png|thumb|475px|center|The dock area with 5 docked blocks and a block with the dock tool]]&lt;br /&gt;
The &amp;quot;docked&amp;quot; blocks appear as horizontal tabs along the left margin attached to the page.&lt;br /&gt;
&lt;br /&gt;
[[Image:Dock area expanded block menu.png|thumb||center|Expanded navigation block, showing dock tool]]&lt;br /&gt;
The docked block can expand into a menu with a click on the tab in the dock area. Clicking on the dock icon when a block is in the docked position, will move the block back to its original position.&lt;br /&gt;
&lt;br /&gt;
==Effect of using dock==&lt;br /&gt;
It allows users an option of changing the look of a page on their screen.   For example, a student could move all blocks to the dock, creating a 1 column effect.&lt;br /&gt;
 {| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[File:Dock all blocks docked.png|thumb|300px|center]]&lt;br /&gt;
| [[File:Dock no blocks docked.png|thumb|300px|center]]&lt;br /&gt;
|-&lt;br /&gt;
| A student moves all blocks to the dock area - view had 1 column&lt;br /&gt;
| A student un-docks all blocks - now view has 3 columns &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Another docking example==&lt;br /&gt;
Moodle 2 introduced a dock for managing blocks. The dock is on the left and can be accessible to anyone any time on any block including navigation to an HTML block.&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:docking01.png|thumb|200px|center]]&lt;br /&gt;
| [[Image:docking02.png|thumb|200px|center]]&lt;br /&gt;
| [[Image:docking03.png|thumb|200px|center]]&lt;br /&gt;
|-&lt;br /&gt;
| To place a block on the dock, click the docking option&lt;br /&gt;
| The block automatically moves to the dock&lt;br /&gt;
| To access the block, use the mouse-over. &lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Course_contents_block&amp;diff=96323</id>
		<title>Course contents block</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Course_contents_block&amp;diff=96323"/>
		<updated>2021-08-10T15:20:57Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Course contents block&#039;&#039;&#039; produces a table of contents for the course - ie a list of all visible topics/weeks in your course. Clicking at one of these links will display that particular section (topic or week).&lt;br /&gt;
&lt;br /&gt;
If the section has its name defined, the block uses it as the title for that section.&lt;br /&gt;
&lt;br /&gt;
If the section name is not defined but there is the section summary (description) available, the block automatically extracts a suitable title from that summary. If you start summary with a heading (H1, H2, H3, etc), it will use such heading text. If your summary starts with a bold text, it will be used as a section title. If the summary consists of several paragraphs, the first one will be used.  Technically spoken, the plain text content of the first non-empty HTML DOM node from the section summary is used as the summary title.&lt;br /&gt;
&lt;br /&gt;
If the summary is empty, a customizable text &amp;quot;Unit X&amp;quot; (where X is the number) is displayed.&lt;br /&gt;
&lt;br /&gt;
You can combine this feature with the multi-language filter to generate course contents in the user&#039;s language.&lt;br /&gt;
&lt;br /&gt;
The block was written and is currently maintained by [[User:David Mudrak|David Mudrak]]&lt;br /&gt;
&lt;br /&gt;
[[Image:course-contents-block-screenshot.png|thumb|The topic title is automatically extracted from the section summary|400px|left]]&lt;br /&gt;
&amp;lt;br clear=&amp;quot;both&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Installation==&lt;br /&gt;
&lt;br /&gt;
There is a public source code repository for the block at [https://github.com/mudrd8mz/moodle-block_course_contents github.com]. You can either clone that repository or just download the latest package there. Follow the instructions provided by Github or see [[Git for Administrators]] for details. This may be what you want:&lt;br /&gt;
&lt;br /&gt;
 # cd /var/www/moodlesite/htdocs/blocks&lt;br /&gt;
 # git clone git://github.com/mudrd8mz/moodle-block_course_contents.git course_contents&lt;br /&gt;
 # cd course_contents&lt;br /&gt;
 # git checkout -b local_21_STABLE origin/MOODLE_21_STABLE&lt;br /&gt;
&lt;br /&gt;
If your Moodle dirroot is git checkout too, you may want to add the block directory into the list of ignored files:&lt;br /&gt;
&lt;br /&gt;
 # cd /var/www/moodlesite/htdocs&lt;br /&gt;
 # echo /blocks/course_contents/ &amp;gt;&amp;gt; .git/info/exclude&lt;br /&gt;
&lt;br /&gt;
To download the block in ZIP or TAR.GZ packages, follow [https://github.com/mudrd8mz/moodle-block_course_contents/tags this page]&lt;br /&gt;
&lt;br /&gt;
==Examples==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! &amp;lt;center&amp;gt;Start of the section summary HTML&amp;lt;/center&amp;gt;&lt;br /&gt;
! &amp;lt;center&amp;gt;Automatic course contents line&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;Welcome!&amp;lt;br /&amp;gt;In this course, you will ...&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| Welcome!&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;&amp;lt;h1&amp;gt;Introduction&amp;lt;/h1&amp;gt;&amp;lt;p&amp;gt;In this course ...&amp;lt;/p&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| Introduction&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;nowiki&amp;gt;&amp;lt;h1&amp;gt;&amp;lt;span&amp;gt;Lesson 1&amp;lt;/span&amp;gt;: Introduction&amp;lt;/h1&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
| Lesson 1&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://moodle.org/plugins/pluginversions.php?plugin=block_course_contents Plugins database record]&lt;br /&gt;
&lt;br /&gt;
[[Category:Block]]&lt;br /&gt;
[[Category:Contributed code]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=CentOS_Linux_installation&amp;diff=96322</id>
		<title>CentOS Linux installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=CentOS_Linux_installation&amp;diff=96322"/>
		<updated>2021-08-10T15:20:56Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Installing Moodle 2.0 on stock version of CentOS 5.5 is not that straightforward due to a limitations imposed by the software available in the default repositories.&lt;br /&gt;
&lt;br /&gt;
So let us go step by step in configuring and installing Moodle 2.0 on CentOS 5.5. &lt;br /&gt;
&lt;br /&gt;
== Asumptions == &lt;br /&gt;
* We have just a minimal OS installation&lt;br /&gt;
* PHP is not installed&lt;br /&gt;
* No RDBMS is installed&lt;br /&gt;
* Apache is not installed&lt;br /&gt;
* We plan on using MySQL as Moodle RDBMS&lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
As you may or may not know Moodle 2.0 requires following versions of software:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Element&lt;br /&gt;
! Version&lt;br /&gt;
|-&lt;br /&gt;
| PHP&lt;br /&gt;
| 5.2.8 (5.3.3 or more recent recommended)&lt;br /&gt;
|-&lt;br /&gt;
| MySQL&lt;br /&gt;
| 5.0.25 (5.5.x recommended)&lt;br /&gt;
|-&lt;br /&gt;
| Apache&lt;br /&gt;
| 2.2.x (CentOS ships with 2.2.3)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== PHP ===&lt;br /&gt;
&lt;br /&gt;
By default CentOS 5.5 ships with PHP 5.1.6. It is very old version and unsupported by Moodle 2. To avoid recompiling PHP I recommend use of certified PHP build -[http://www.zend.com/en/products/server-ce/downloads Zend Server 5.x Community Edition] .&lt;br /&gt;
&lt;br /&gt;
==== Installation ====&lt;br /&gt;
Before being able to download it you will need to register and login on the site which is free of charge. Site offers several options for installing the product and the one I recommend is the RPM installer.&lt;br /&gt;
&lt;br /&gt;
You can find detailed description of this process [http://files-source.zend.com/help/Zend-Server-Community-Edition/zend-server-community-edition.htm#rpm_installation.htm here]. Make sure to install PHP 5.3 for the best results.&lt;br /&gt;
&lt;br /&gt;
Execute this in command line&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
sh install_zs.sh 5.3 ce&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
and after all the installation process add this package:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
yum -y install php-5.3-xmlrpc-zend-server&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally start the zend server:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
service zend-server start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Configuration ====&lt;br /&gt;
Zend Server can be configured using nice web frontend that can be accessed through &amp;lt;code&amp;gt;http://&amp;lt;server url&amp;gt;:10082/ZendServer/&amp;lt;/code&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
We will not go into details of how to use it but instead I will just list the PHP options and their recommended values that you should set.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
date.timezone=&amp;lt;Your server timezone&amp;gt;&lt;br /&gt;
display_errors=Off&lt;br /&gt;
expose_php=Off&lt;br /&gt;
max_execution_time=80&lt;br /&gt;
memory_limit=256M&lt;br /&gt;
realpath_cache_size=200K&lt;br /&gt;
realpath_cache_ttl=200&lt;br /&gt;
zend_optimizerplus.memory_consumption=80&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Also disable all extensions that Moodle does not use to speed things up.&lt;br /&gt;
&lt;br /&gt;
=== MySQL ===&lt;br /&gt;
&lt;br /&gt;
MySQL is a good choice for Moodle RDBMS but it requires a bit more tackling to get adequate power. CentOS repositories ship with older version of MySQL (5.0.77 at the time of writing). It is highly recommended to install and use MySQL 5.5 using Oracle&#039;s official rpm packages. &lt;br /&gt;
&lt;br /&gt;
==== Getting the packages ====&lt;br /&gt;
To do that go to [http://dev.mysql.com/downloads/mysql/5.5.html#downloads MySQL 5.5. GA download page].&lt;br /&gt;
Download the client utilities ( MySQL-client-5.5.x-x.rhel5.xxxx.rpm ) and MySQL Server (MySQL-server-5.5.x-x.rhel5.xxxx.rpm) package. &lt;br /&gt;
&lt;br /&gt;
==== Installation ====&lt;br /&gt;
After that install the downloaded packages by executing this from command line:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt; rpm -ivh MySQL-* &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Configuration ====&lt;br /&gt;
MySQL 5.5 does not install any configuration file by default so we need to create one. You can use one of the existing configuration files as starting points for your personalized configuration. They are located here:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
/usr/share/mysql/my-huge.cnf&lt;br /&gt;
/usr/share/mysql/my-innodb-heavy-4G.cnf&lt;br /&gt;
/usr/share/mysql/my-large.cnf&lt;br /&gt;
/usr/share/mysql/my-medium.cnf&lt;br /&gt;
/usr/share/mysql/my-small.cnf&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To use any of these just copy them to the /etc/my.cnf. For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
cp /usr/share/mysql/my-medium.cnf /etc/my.cnf&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For the purporse of installing Moodle 2.0 this is the configuration that I recommend as a starting point for a small Moodle instance:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
[client]&lt;br /&gt;
port            = 3306&lt;br /&gt;
socket          = /var/lib/mysql/mysql.sock&lt;br /&gt;
&lt;br /&gt;
[mysqld]&lt;br /&gt;
port            = 3306&lt;br /&gt;
socket          = /var/lib/mysql/mysql.sock&lt;br /&gt;
&lt;br /&gt;
character-set-server=utf8&lt;br /&gt;
collation-server=utf8_bin&lt;br /&gt;
&lt;br /&gt;
innodb_buffer_pool_size=400M&lt;br /&gt;
innodb_additional_mem_pool_size=40M&lt;br /&gt;
innodb_log_file_size=100M&lt;br /&gt;
innodb_log_buffer_size=4M&lt;br /&gt;
innodb_flush_method=O_DIRECT&lt;br /&gt;
transaction_isolation=READ-COMMITTED&lt;br /&gt;
&lt;br /&gt;
#You can disable the TCP/IP protocol support &lt;br /&gt;
#and all of the communication will be done through UNIX sockets&lt;br /&gt;
skip-networking&lt;br /&gt;
&lt;br /&gt;
#If you use additional web applications or other programs &lt;br /&gt;
#that do not support connections through UNIX Sockets, &lt;br /&gt;
#do not disable TCP/IP. Just force the&lt;br /&gt;
#server to accept connections only from localhost&lt;br /&gt;
#bind-address=127.0.0.1&lt;br /&gt;
&lt;br /&gt;
#Disable symbolic links&lt;br /&gt;
symbolic-links=0&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you plan on having heavy duty Moodle instance with a lot of users you should increase &amp;lt;code&amp;gt;innodb_buffer_pool_size&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;innodb_log_file_size&amp;lt;/code&amp;gt;, and of course add more RAM.&lt;br /&gt;
&lt;br /&gt;
Do not forget to start the server. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;service mysql start&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Database ====&lt;br /&gt;
Now it is time to create database for the Moodle. This is the recommended command:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
create database &amp;lt;dbname&amp;gt; character set=utf8 collate=utf8_bin;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The reason for specifying collation as utf8_bin is that it is the only collation that offers proper treatment of special and accented characters in sorting and comparison. For more details on this see this [http://moodle.org/mod/forum/discuss.php?d=163766 forum thread].&lt;br /&gt;
&lt;br /&gt;
=== Apache ===&lt;br /&gt;
Apache will be installed autoimaticly by the zend-server installation script. The only thing we should do is to slightly optimize the default configuration. To do that we should modify the &amp;lt;code&amp;gt;/etc/httpd/conf/httpd.conf&amp;lt;/code&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
These are the recommended settings that should be added or modified:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
#Display only web server name without any additional info&lt;br /&gt;
ServerTokens Prod&lt;br /&gt;
&lt;br /&gt;
#....&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/var/www/html&amp;quot;&amp;gt;&lt;br /&gt;
# ....&lt;br /&gt;
    Options -Indexes FollowSymLinks&lt;br /&gt;
    AllowOverride None&lt;br /&gt;
#...&lt;br /&gt;
#add this to activate compressing and caching of the pages&lt;br /&gt;
        AddOutputFilterByType DEFLATE text/plain&lt;br /&gt;
        AddOutputFilterByType DEFLATE text/xml&lt;br /&gt;
        AddOutputFilterByType DEFLATE application/xhtml+xml&lt;br /&gt;
        AddOutputFilterByType DEFLATE text/css&lt;br /&gt;
        AddOutputFilterByType DEFLATE application/xml&lt;br /&gt;
        AddOutputFilterByType DEFLATE image/svg+xml&lt;br /&gt;
        AddOutputFilterByType DEFLATE application/rss+xml&lt;br /&gt;
        AddOutputFilterByType DEFLATE application/atom_xml&lt;br /&gt;
        AddOutputFilterByType DEFLATE application/x-javascript&lt;br /&gt;
        AddOutputFilterByType DEFLATE application/x-httpd-php&lt;br /&gt;
        AddOutputFilterByType DEFLATE application/x-httpd-fastphp&lt;br /&gt;
        AddOutputFilterByType DEFLATE application/x-httpd-eruby&lt;br /&gt;
        AddOutputFilterByType DEFLATE text/html&lt;br /&gt;
        AddOutputFilterByType DEFLATE application/x-javascript&lt;br /&gt;
        AddOutputFilterByType DEFLATE text/javascript&lt;br /&gt;
        AddOutputFilterByType DEFLATE text/ecmascript&lt;br /&gt;
        AddOutputFilterByType DEFLATE text/js&lt;br /&gt;
        BrowserMatch ^Mozilla/4 gzip-only-text/html&lt;br /&gt;
        BrowserMatch ^Mozilla/4\.0[678] no-gzip&lt;br /&gt;
        BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html&lt;br /&gt;
        Header append Vary User-Agent env=!dont-vary&lt;br /&gt;
        ExpiresActive On&lt;br /&gt;
        ExpiresByType image/gif A2592000&lt;br /&gt;
        ExpiresByType image/png A2592000&lt;br /&gt;
        ExpiresByType image/x-icon A2592000&lt;br /&gt;
        ExpiresByType image/jpeg A2592000&lt;br /&gt;
        ExpiresByType image/pjpeg A2592000&lt;br /&gt;
        ExpiresDefault &amp;quot;access plus 1 day&amp;quot;&lt;br /&gt;
        FileETag none&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#...&lt;br /&gt;
#Disable any additional server info on error pages&lt;br /&gt;
ServerSignature Off&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Moodle ===&lt;br /&gt;
We need now to obtain and deploy Moodle files. We will use the simplest deployment scenario that involves minimal ammount of work and offers at the same time appropriate level of security.&lt;br /&gt;
&lt;br /&gt;
==== Getting Moodle ====&lt;br /&gt;
Download from moodle.org latest stable release of Moodle 2 and unpack it into &amp;lt;code&amp;gt;/var/www/html&amp;lt;/code&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
cd /tmp/&lt;br /&gt;
wget http://download.moodle.org/download.php/direct/stable20/moodle-latest-20.tgz&lt;br /&gt;
tar xzpf moodle-latest-20.tgz -C /var/www/html/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Configuring file structure ====&lt;br /&gt;
Now that we have moodle files deployed in &amp;lt;code&amp;gt;/var/www/html/moodle/&amp;lt;/code&amp;gt; we need to add a directory for moodledata.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
mkdir /var/www/moodledata&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And now to apply appropriate file permissions for both directgories.&lt;br /&gt;
&lt;br /&gt;
First moodle directory:&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
chown -R root:apache /var/www/html/moodle/&lt;br /&gt;
chmod -R u=rwX,g=rX,o= /var/www/html/moodle/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And than moodledata directory:&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
chown -R root:apache /var/www/moodledata/&lt;br /&gt;
chmod -R ug=rwX,o= /var/www/moodledata/&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Installation ====&lt;br /&gt;
Start the installation in a usual manner. Make sure to enter the valid name of the database you just created, choose mysqlnd/mysqli as database driver and &#039;&#039;&#039;make sure to select &amp;quot;Unix socket&amp;quot; option for best performance&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
[[Image:db_connection.png]]&lt;br /&gt;
&lt;br /&gt;
Because of the way we applied file permissions to the &amp;lt;code&amp;gt;/var/www/html/moodle/&amp;lt;/code&amp;gt; directory installation will not be able to save &amp;lt;code&amp;gt;config.php&amp;lt;/code&amp;gt;. Just copy the content of the file from the browser and manually add it to the directory.&lt;br /&gt;
&lt;br /&gt;
==== CRON ====&lt;br /&gt;
To reflect the changes in Moodle 2.0 and use of Zend Server procedure for activating cron is following:&lt;br /&gt;
&lt;br /&gt;
Copy the following content and save it into &amp;lt;code&amp;gt;/etc/cron.hourly/moodle2.cron&amp;lt;/code&amp;gt; .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
/usr/bin/sudo -u apache /usr/local/zend/bin/php-cli /var/www/html/moodle/admin/cli/cron.php&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then mark the file as executable:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
chmod u=rwx,go= /etc/cron.hourly/moodle2.cron&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/21/en/index.php?title=Beginning_Moodle_2.0_Administration&amp;diff=96321</id>
		<title>Beginning Moodle 2.0 Administration</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/21/en/index.php?title=Beginning_Moodle_2.0_Administration&amp;diff=96321"/>
		<updated>2021-08-10T15:20:55Z</updated>

		<summary type="html">&lt;p&gt;Moodlebot: Text replacement - &amp;quot;class=&amp;quot;nicetable&amp;quot;&amp;quot; to &amp;quot;class=&amp;quot;wikitable&amp;quot;&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The pages began life with the [https://docs.moodle.org/19/en/Beginning_Administration_FAQ Beginning v1.9 Administration FAQ] pages but are aimed specifically at Moodle 2.0. Many of the solutions to problems will work in both versions of Moodle so if you do not find something here, then you may find it in the other pages.  &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===I am being told that I need the &#039;&#039;&#039;intl php plugin&#039;&#039;&#039; to continue to install Moodle 2.0===&lt;br /&gt;
The intl.dll from Zend is part of the PHP 5.2.8 release and later. It is aimed at improving the internationalization of php pages and Moodle 2.0 uses it as part of this process. If your install is on a local machine or network, then you can download the latest version of PHP and update your PHP. You then have to uncomment all the required dynamic extensions you need, including the php_intl.dll extension. The problem is then solved. If the install is on a host server, then you need to contact your host and ask them to do the same, As an alternative, you can unzip/untar the download file, copy and paste the intl.dll file to your php/ext folder and include the line:&lt;br /&gt;
  extension=php_intl.dll&lt;br /&gt;
in the Dynamic Extensions section of your php.ini file.&lt;br /&gt;
&lt;br /&gt;
You can also set the error level using:&lt;br /&gt;
  intl.error_level = E_WARNING &lt;br /&gt;
but this is not essential&lt;br /&gt;
&lt;br /&gt;
If you are using a Linux install, use your system package manager or specify compilation flag.&lt;br /&gt;
    * Debian 5.0 (&amp;amp; Ubuntu) use: apt-get install php-intl or apt-get install php5-intl &lt;br /&gt;
    * CentOS 5.5 (&amp;amp; RedHat) you should (probably) be using php 5.3 from remi and then use: yum install php-intl&lt;br /&gt;
&lt;br /&gt;
This technique can be applied to any updated dynamic extension from Zend. You may want to use later dll files in your php/ext folder, you can do so by doing the same as above, but be careful, your version may not be able to take full advantage of the extension, or some very new extensions may cause an unexpected instability. The best option is still to update on a regular basis, perhaps once a year or so for the PHP.&lt;br /&gt;
&lt;br /&gt;
===What Dynamic Extensions do I really need uncommented in my php.ini file? What else do I need to change?===&lt;br /&gt;
This assumes you have complete control over the installation and running of your server, if your Moodle is hosted, you need to do something different, which is also discussed below. In the php.ini you need to delete the semi-colon, the ;, from the start of any line to uncomment it. For Moodle, you really should only need to change some values, and make sure the extensions you require are available. These are:&lt;br /&gt;
&lt;br /&gt;
Resource Limits&lt;br /&gt;
  memory_limit = 128M     //This is the maximum it requires and on a shared server you may get much less. &lt;br /&gt;
&lt;br /&gt;
Data Handling &lt;br /&gt;
  post_max_size = 512M    //This allows postings of up to 512MB, but set it to suit yourself and your circumstances&lt;br /&gt;
&lt;br /&gt;
Paths and Directories&lt;br /&gt;
  doc_root =&amp;quot;driveletter:\path\to\server\active\web\directory&amp;quot;  (e.g. d:\Apache\htdocs or e:\iis\wwwroot )&lt;br /&gt;
  and&lt;br /&gt;
  extension_dir = &amp;quot;driveletter:\path\to\php\ext&amp;quot; (e.g. d:\php\ext or e:\iis\php\ext)&lt;br /&gt;
&lt;br /&gt;
File Uploads&lt;br /&gt;
  upload_max_filesize = 512M    (This is different from the post_max_size this is for file uploads.)&lt;br /&gt;
&lt;br /&gt;
Dynamic Extensions&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! PHP 5.2.x (Moodle 1.9 with additions) &lt;br /&gt;
! PHP 5.3.x&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
  extension=php_curl.dll&lt;br /&gt;
  extension=php_exif.dll&lt;br /&gt;
  extension=php_gd2.dll&lt;br /&gt;
  extension=php_gettext.dll&lt;br /&gt;
  extension=php_imap.dll&lt;br /&gt;
  extension=php_ldap.dll&lt;br /&gt;
  extension=php_mbstring.dll&lt;br /&gt;
  extension=php_mcrypt.dll&lt;br /&gt;
  extension=php_mssql.dll&lt;br /&gt;
  extension=php_mysql.dll&lt;br /&gt;
  extension=php_mysqli.dll&lt;br /&gt;
  extension=php_openssl.dll&lt;br /&gt;
  extension=php_soap.dll&lt;br /&gt;
  extension=php_sockets.dll&lt;br /&gt;
  extension=php_sqlite.dll&lt;br /&gt;
  extension=php_xmlrpc.dll&lt;br /&gt;
  &#039;&#039;&#039;extension=php_intl.dll&#039;&#039;&#039;&lt;br /&gt;
  &#039;&#039;&#039;extension=php_zip.dll&#039;&#039;&#039;  ; Added Extensions&lt;br /&gt;
|&lt;br /&gt;
  extension=php_curl.dll&lt;br /&gt;
  extension=php_gd2.dll&lt;br /&gt;
  extension=php_gettext.dll&lt;br /&gt;
  extension=php_intl.dll&lt;br /&gt;
  extension=php_imap.dll&lt;br /&gt;
  extension=php_ldap.dll&lt;br /&gt;
  extension=php_mbstring.dll&lt;br /&gt;
  extension=php_exif.dll      ; Must be after mbstring as it depends on it&lt;br /&gt;
  extension=php_mysql.dll&lt;br /&gt;
  extension=php_mysqli.dll&lt;br /&gt;
  extension=php_openssl.dll&lt;br /&gt;
  extension=php_pdo_mssql.dll&lt;br /&gt;
  extension=php_pdo_mysql.dll&lt;br /&gt;
  extension=php_soap.dll&lt;br /&gt;
  extension=php_sockets.dll&lt;br /&gt;
  extension=php_sqlite.dll&lt;br /&gt;
  extension=php_xmlrpc.dll&lt;br /&gt;
  extension=php_zip.dll&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;NOTE:&#039;&#039;&#039; If you are using a PHP version earlier than v5.2.8, then for Moodle 2.0.x please add the Dynamic extensions of intl.dll and zip.dll as outlined above. Be aware this structure does &#039;&#039;&#039;not&#039;&#039;&#039; work in Moodle 2.1. &lt;br /&gt;
&lt;br /&gt;
These edits and Dynamic extensions cover a range of options here, there are a number of other possibilities, but these listed are the most common ones. Unless you have a specific need, there may not be any reason to deviate from these settings, but if you do, make sure you know what is going to happen. These extensions will also allow you to successfully install and run many other PHP applications. &lt;br /&gt;
&lt;br /&gt;
One example is the Oracle extensions are not shown here, but Oracle can be used for the Moodle database. Another area people often get themselves into trouble is using &amp;quot;Magic quotes&amp;quot;. Magic quotes really should be set to off, they were only introduced early in the use of PHP to allow for some inexperienced scripting practices, (read poor, shoddy or dodgy here). If someone is still writing poor scripts, then they deserve to draw attention to themselves and their scripts deleted.&lt;br /&gt;
&lt;br /&gt;
===My Host took my Moodle 2 down from the server due to an overload of the database.===&lt;br /&gt;
This happens far too often on shared servers. The additional memory requirements of Moodle 2+ for installation and the additional database storage required is going to make it worse. The best bet is to find a dedicated server, that is the optimum, but reality is that costs do play a large part in making decisions about where a Moodle will be stored. A dedicated server will give you the entire disc space and all the memory on that server to use as you need. A virtual dedicated server means you are sharing with a few other users on a server, possibly as many as 10, but more likely 5 or 6. A shared server mean you are sharing one box with as many of the Host&#039;s clientele that can be put onto one server. This means sharing all resources and Moodle&#039;s demands get higher as the number of Users increases which affects all other Clients of the Host. There are any number of Moodle Partners who may be willing to host your Moodle, and the Internet also means you are not restricted by national or natural boundaries or currency transactions - politics, oceans and banks have no impact on where you host your Moodle.&lt;br /&gt;
&lt;br /&gt;
===Why am I having trouble restoring my existing Moodle 1.9.x courses into Moodle 2.0?===&lt;br /&gt;
Simply put, the changes in coding between Moodle 1.9.x and Moodle 2.0 are large. Additional security has forced changes to the backup processes. In just looking at the databases there are an additional 60 or more tables, so that creates a number of restoring issues alone. To bring Moodle 1.9.x courses into Moodle 2.0 is a monumental challenge, and full credit to those who are trying it. There is, currently, one commercial Windows based solution but it is not fully successful in its restoration of courses. &lt;br /&gt;
 &lt;br /&gt;
: &#039;&#039;&#039;NOTE:&#039;&#039;&#039; Moodle 2.0 can backup and restore courses from within itself perfectly, the issue appears to be centred on v1.x.x courses.&lt;br /&gt;
&lt;br /&gt;
: &#039;&#039;&#039;UPDATE:&#039;&#039;&#039; Moodle 2.1 was released on July 1, 2011 and can now restore course files from backups made in v1.9.x. Student file restorations are not yet available but are expected to be included in v2.2 to be released November, 2011.&lt;br /&gt;
&lt;br /&gt;
===How do I look up the error logs in Moodle 2.0?===&lt;br /&gt;
First, turn the error logs on, go to&lt;br /&gt;
&lt;br /&gt;
  Site administration ► Development ► Debugging&lt;br /&gt;
&lt;br /&gt;
and set error messages to DEVELOPER: .... Then go to&lt;br /&gt;
&lt;br /&gt;
  Site administration ► Reports ► Logs&lt;br /&gt;
&lt;br /&gt;
set your report options to Home 2.0(Site), All Participants, All Activities or Site Errors, View, Display on Page and then click, &amp;quot;Get these logs&amp;quot;. The report should give you something, and you may be able to develop an appropriate response from there.&lt;br /&gt;
&lt;br /&gt;
===Do I try to upgrade to Moodle 2.0 or just create a new install?=== &lt;br /&gt;
There is always debate around these issues, but simply put, Moodle 2.0 is a complete re-write of a tried and tested tool. This presents its own challenges, obviously, and those challenges need be met in the best way we can. It is a temptation to go all in and jump to the new tool, but this can be a dangerous practice when dealing with a lot of people who are resistant to change, and the change from Moodle 1.9.x to 2.0 is massive.&lt;br /&gt;
  Upgrading to Moodle 2.0 has always been an option, but make sure your environment will meet the newer specifications. &lt;br /&gt;
Consider your own circumstances. Are you starting out on the Moodle journey or have you just been dropped into it? Perhaps you are starting out, and you have no resources or courses and you are building for the next few months when you want it to become a part of your learning centre and a showpiece for your institute. A complete new Moodle 2.x.x install and starting from scratch is most appropriate in this circumstance. All major features work in it and some of the tools are a lot more interesting than for Moodle 1.9.x. &lt;br /&gt;
  Don&#039;t worry about Moodle 1.9.x, just use the new Moodle 2.x.x and learn it if you are starting from scratch.&lt;br /&gt;
If you have been dropped into it, and have a lot of courses, and you need to administer your Moodle 1.9.x as well as look at updating, then the next best option is to install a new Moodle and open it just for your Administrators and Staff. Let them get used to the new interface, develop training courses around the new Moodle, not just for staff but for Users as well. Aim at your staff first, let them learn it then they can be more confident in using the new Moodle when they come to teaching their Users/Students. &lt;br /&gt;
  In short, best advice is NOT to install a Moodle 2.0 as a production site without thoroughly testing and training first. &lt;br /&gt;
To install and run more than one Moodle successfully is actually simple. Install your Moodle 2.0 and then go to &#039;&#039;&#039;&#039;&#039;Site administration &amp;gt; Server &amp;gt; Session handling&#039;&#039;&#039;&#039;&#039;. Look for the Cookie prefix dialogue and add a value to it. Repeat the exercise in every other Moodle you have on your server, it should all work as it is supposed to - as long as the cookie prefixes are different for every Moodle, of course. &lt;br /&gt;
&lt;br /&gt;
[[Image:cookieprefix.png|frame|center|Cookie prefix for Moodle 2.0]]&lt;br /&gt;
&lt;br /&gt;
Essentially, take your time and not be in too much of a rush if you have to convert your Staff and Learners to a new tool. Let the Staff get used to it first, then you can make the swap any time.&lt;br /&gt;
&lt;br /&gt;
If you do update your v1.9.x to v 2.0, and experience some problems, you may want to consider putting the issues and any error messages into a [http://tracker.moodle.org/secure/Dashboard.jspa Moodle Tracker item]. If you do, you may be providing information to resolve a number of updating issues for a lot of people.&lt;br /&gt;
&lt;br /&gt;
===Well, we want to try and upgrade to test our systems.===&lt;br /&gt;
Try, by all means. However, there are a couple of issues you may need be aware of. &lt;br /&gt;
&lt;br /&gt;
A rough guide and checklist: &lt;br /&gt;
#Plugins that work in Moodle 1.9.x may not be updated to Moodle 2.0. Check your plugins. Are you using any non-core plugins? &lt;br /&gt;
#Can you remove any non-core plugins? &lt;br /&gt;
#Have you backed up your database?&lt;br /&gt;
#Have you backed up your moodledata folder? &lt;br /&gt;
#Have you allocated additional time make the update, as a contingency?&lt;br /&gt;
&lt;br /&gt;
You may not necessarily have to remove the non-core plugins from the Moodle, or, they may still be present in the database even if you have deleted them from your Moodle Mod folder. The issue arising is that some plugins appear to be causing update errors as there is no matching core plugin from Moodle 2.0, or the plugin APIs are different and cannot accommodate the older plugins, or the older plugins that have not been properly maintained, cannot handle the newer environment. &lt;br /&gt;
&lt;br /&gt;
: &#039;&#039;&#039;NOTE:&#039;&#039;&#039;This is not meant to be an exhaustive checklist or to scare people off trying to upgrade their v1.9.x to v2.0.x, just be aware that Moodle 2.0 is still a work in progress, as is this checklist.&lt;br /&gt;
&lt;br /&gt;
===We have extensively used the Book for parts of our previous Moodle, can we do so for Moodle 2.0?===&lt;br /&gt;
The really good news is that Petr Skoda (Skodak) has the Maintainer role for the [http://moodle.org/mod/data/view.php?d=13&amp;amp;rid=319&amp;amp;filter=1 Book plugin/module]. Petr announced some time back that when his major coding tasks for Moodle 2.0 had been done, he was taking a short break then he would begin work on updating the Book for Moodle 2.0. &lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;&#039;UPDATE&#039;&#039;&#039;: Petr&#039;s updating of the Book module is now complete, and is available at the above link. Initial testing shows it installs easily and seems to run faster than the original. Seems the code has been better optimized by Petr, who deserves a hearty congratulations!!!&lt;br /&gt;
&lt;br /&gt;
===That is OK for the Book, but what about other plugins and blocks?===&lt;br /&gt;
As a general rule-of-thumb, if a plugin or block has not been maintained through Moodle 1.9.x then it is extremely unlikely it will make it to Moodle 2.0.x. This means the developer has not kept it current and may feel it is too much of a distraction from their current projects to keep active. This does not mean that you, or someone else, may not take it on, as long as you ensure that what you are working with is creative commons, open source or other non-proprietal software and you are not infringing either copyright or intellectual property rights. If you are not sure, try to contact the developer or last maintainer, they may be different - if required, get permission from them to continue development. Of course, you may also seek to develop an entirely new plugin, or block, but it is clear that it is actually duplicating something that already exists or was used in earlier versions of Moodle, but is no longer current. As long as you can prove the provenance of such a plugin or block, and do not use any code from anywhere else that is not original or acknowledged where the code came from, then you should be OK. For ideas and guidelines around developing or updating a plugin, look at this page from [https://docs.moodle.org/dev/Developer_documentation Developer Documentation].  You can also join a [http://dev.moodle.org/ class of developers] and learn how it can be done.&lt;br /&gt;
&lt;br /&gt;
===I am getting error messages about plugins and the installation stops when upgrading. What do I do?===&lt;br /&gt;
Quite frequently, not a lot at all, you can just continue on. Many of these messages are just that, messages, they are not supposed to stop or break the installation, they are just warnings that not all is working as you may be used to in an install. Usually they relate to plugins that are not part of Moodle 2.0 yet. Moodle is designed to display a message, but continue on. Or, you can consider that, given the above, upgrading is not really viable and just do a fresh install. If those messages continue, then you have another problem. If there were database errors, or code errors, then it is different, you really do need to stop and investigate.&lt;br /&gt;
&lt;br /&gt;
===We are installing Moodle and getting error messages about not using the unicode or UTF-8 charset===&lt;br /&gt;
In recent times, this has become an issue with CPanel and Fantastico installers on some Linux servers. Apparently the default charset for these tools is a latin_swedish_ci charset. Moodle requires the UTF-8 charset. This is a relatively simple fix, if you have the right tools. Install phpMyAdmin and check it is working, if you do not already have it. You can then go to the SQL page and enter the following code:&lt;br /&gt;
  ALTER DATABASE `moodle` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;&lt;br /&gt;
There have been, in the past, reports of tables that do not change using this SQL code, so try:  &lt;br /&gt;
  ALTER TABLE `mdl_tablename` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; &lt;br /&gt;
There have been no reasons as to why some tables are missed, but you can alter individual tables by using the code above. The code should look something like: &lt;br /&gt;
&lt;br /&gt;
[[Image:altertablesqlm202.png|frame|center|Changing the charset in Moodle 2.0]]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;This also works in Moodle 1.9.x IF you use the utf8_general_ci charset.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; This SQL is supposed to work across the database, but recent reports suggest that the ALTER DATABASE seems to have a number of issues stemming from problems with the GRANT command. GRANT &amp;lt;nowiki&amp;gt;[permissiontype]&amp;lt;/nowiki&amp;gt; is supposed to allow a user to access the entire database, but it no longer appears to be the case. The ALTER TABLE SQL has not been affected by this issue.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;FURTHER NOTE:&#039;&#039;&#039; When using the ALTER DATABASE SQL, it appears to be diverted to altering the &#039;&#039;db.opt&#039;&#039; file, but is not continued into the tables of the database. So whether this is a deliberate security feature of more recent editions of MySQL or not is, at this stage, unknown. How this affects Postgres, or Oracle databases is also unknown.&lt;br /&gt;
&lt;br /&gt;
===OK, but how can we tell what tables are not converted?===&lt;br /&gt;
Using phpMyAdmin, you can find out almost anything you like about your database, as long as you know where to look. There is some real documentation about using phpMyAdmin that is linked both in the left and right panels. Go to the Database tab and then select the database you want to look at.&lt;br /&gt;
&lt;br /&gt;
[[Image:selectdatabasetab.png|thumb|150px|frame|center|Selecting the database tab in Moodle 2.0]]&lt;br /&gt;
&lt;br /&gt;
Once selected, you will see what the charset is of each table. Any table that does not comply you can change using the table SQL code above. &lt;br /&gt;
&lt;br /&gt;
[[Image:phpmyadmintablelisting.png|frame|center|Checking the table listings in phpMyAdmin]]&lt;br /&gt;
&lt;br /&gt;
===How do I get and install phpMyAdmin?===&lt;br /&gt;
phpMyAdmin is another very useful plugin. In Moodle 2.0 the plugin has been updated and is now located in a different place than it was in earlier versions. Go to the [http://moodle.org/mod/data/view.php?d=13&amp;amp;rid=448&amp;amp;filter=1 phpMyAdmin page in Modules and Plugins] and download the Moodle 2.0 version. Unzip it to the &#039;&#039;&#039;moodle/local&#039;&#039;&#039; folder and then go to &#039;&#039;&#039;Notifications&#039;&#039;&#039;. Moodle will then tell you it has been successfully installed. If you look in Administration &amp;gt; Server you will now find a line &amp;quot;phpMyAdmin&amp;quot;. To access your database, click the link. &lt;br /&gt;
&lt;br /&gt;
===When I update over a 1.9 install, I get an error message about an incompatible plugin and it all stops. What can I do?===&lt;br /&gt;
&lt;br /&gt;
One piece of advice is that you just do not do that!&lt;br /&gt;
&lt;br /&gt;
Sometimes, a file/folder will be removed from the code between one version of Moodle and the next. If you upgrade Moodle by copying the new Moodle code over the top of the old code, then the older files not duplicated or no longer existent, or just disused and dropped, will remain, and can break things.&lt;br /&gt;
&lt;br /&gt;
The correct way to upgrade is (assuming your Moodle code is in a folder called &amp;lt;tt&amp;gt;moodle&amp;lt;/tt&amp;gt; on the server:&lt;br /&gt;
# Upload the new code onto the server into a folder with a temporary name, like &amp;lt;tt&amp;gt;moodle_new&amp;lt;/tt&amp;gt;.&lt;br /&gt;
# Copy the &amp;lt;tt&amp;gt;config.php&amp;lt;/tt&amp;gt; file from the moodle folder to the &amp;lt;tt&amp;gt;moodle_new&amp;lt;/tt&amp;gt; folder.&lt;br /&gt;
# For any third-party plugins you have installed, copy the code for them into &amp;lt;tt&amp;gt;moodle_new&amp;lt;/tt&amp;gt;. (Make sure the plugin is compatible with the version of Moodle you are upgrading to.)&lt;br /&gt;
# Then rename the &amp;lt;tt&amp;gt;moodle&amp;lt;/tt&amp;gt; folder to &amp;lt;tt&amp;gt;moodle_old&amp;lt;/tt&amp;gt;, and then rename &amp;lt;tt&amp;gt;moodle_new&amp;lt;/tt&amp;gt; to &amp;lt;tt&amp;gt;moodle&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
If you insist though, then you can expect to be getting all sorts of error messages. Given the fundamental changes to the database and the manner in which plugins are structured, and employed, in Moodle 2.0.x this is a very time consuming and, ultimately, futile (I would suggest) approach. You can, of course, remove all non-core plugins, and their corresponding tables from the database, and then you give yourself a chance at getting through it somewhat less scathed, but I doubt it.&lt;br /&gt;
&lt;br /&gt;
===What is happening to my uploaded files? I cannot see them in the moodledata folder!===&lt;br /&gt;
To improve security, Moodle has change how files are stored in the moodledata folder. There are there, but no longer obvious. When a file is uploaded it is given a storage name, an encrypted name, and it is placed into a specific folder within the moodledata folder. That folder&#039;s name is directly related to the file storage name. So we have a file with an encrypted name, inside a folder with a related name, inside the moodledata folder. Now comes the nifty part, these encrypted names are used as connections to the database. The database stores those encrypted names as aliases for the files and uses them to link the files to the courses. You see them, but you do not see them, well they are not obvious. Unfortunately, you cannot edit them in place, like you could files in Moodle 1.9.x you have to edit them, delete the older file and upload the new ones.&lt;br /&gt;
&lt;br /&gt;
===How do I create a repository?===&lt;br /&gt;
To setup and use a repository in Moodle 2.0, is not complex, just detailed. What follows will set up a site wide repository, that is the contents of this repository will be available to the entire site - so make sure this is really what you want. This is for the kind of resources you may want to use across a number of courses. &lt;br /&gt;
&lt;br /&gt;
1. In the moodledata folder there is a folder called Repository. Create whatever folders you want in there, but it is suggested you use a consistent naming convention, so everyone knows what type of materials reside there, e.g. CalculusPDFs, EnglishCivilWarDocs, and so on. You can copy the required materials into each folder as you create them or add to it at any time thereafter. &lt;br /&gt;
&lt;br /&gt;
2. In your Moodle 2.0 there are a couple of things you need to do, but first you have to activate the user repository system by going to &#039;&#039;&#039;Site Administration &amp;gt; Plugins &amp;gt;Repositories &amp;gt; Manage Repositories&#039;&#039;&#039; and you will see in the list contained in the right-hand panel an item named &amp;quot;File System&amp;quot;. Select the dropdown list box and change the value to &amp;quot;Enabled and visible&amp;quot;&lt;br /&gt;
[[Image:repository01.png|frame|center|Setting the File System Repository in Moodle 2.0]]&lt;br /&gt;
&lt;br /&gt;
3. Click the &amp;quot;Settings&amp;quot; link and that will take you to the &amp;quot;Setup repository on file system&amp;quot; page. Click the &amp;quot;Create a Repository Instance&amp;quot; button and this will take you to the next page. On that page you have two text boxes and two buttons. Add the name of the repository you created in the Repository folder and click &amp;quot;Save&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
[[Image:repository02.png|frame|center|Saving the new Repository in Moodle 2.0]]&lt;br /&gt;
&lt;br /&gt;
When you return to the &amp;quot;Setup repository on file system&amp;quot; page, you will now see that a list of repositories is available. When you access any course file or image picker, the repository will be available to you under the name you have given it. Any file inside the repository will be available for uploading to your course.&lt;br /&gt;
&lt;br /&gt;
===How do I set up a course repository?===&lt;br /&gt;
Setting up the Course repository is almost exactly the same, but the major difference is that is should only be accessible to that one course. &lt;br /&gt;
&lt;br /&gt;
Create a folder in your moodledata/Repository folder, naming it whatever is relevant. Add the files you want in that repository as you create the folder, or you can add them later. &lt;br /&gt;
&lt;br /&gt;
In the Course Administration menu, click the Repository item which takes you to the &amp;quot;Course Repositories&amp;quot; page. You will see a list of all available Repositories so you can access one of them if you chose, or you can select the Create A Repository Instance, Create a &amp;quot;FileSystem&amp;quot;  instance link. This takes you to the same page as shown above.  &lt;br /&gt;
&lt;br /&gt;
[[Image:repository03.png|frame|center|Creating a new Course Repository in Moodle 2.0]]&lt;br /&gt;
&lt;br /&gt;
Create your repository instance in the same manner as described above and when you return to the Course Repositories page, you will see your repository listed there. &lt;br /&gt;
&lt;br /&gt;
When you are adding a file to your course from the repository, you can access the stored file from the image or file picker via your repository. The repository is not available outside the course you create it  for.&lt;br /&gt;
&lt;br /&gt;
===How do I set the maximum upload file size limit?===&lt;br /&gt;
This is probably the most frequently asked question, and the answer is not that straightforward. The changes that need be made are the same in all versions of Moodle, just in different OS&#039; they need be made in different places. Upload file sizes are restricted in a number of ways and each one in this list restricts the following ones: &lt;br /&gt;
  Server level&lt;br /&gt;
  Moodle site level&lt;br /&gt;
  Course level&lt;br /&gt;
  Activity level&lt;br /&gt;
&lt;br /&gt;
Perhaps the best place to find this information is at [[File_upload_size|File upload size]] There is a full explanation for a number of different OSs but there are a few missing. &lt;br /&gt;
&lt;br /&gt;
This is a contentious issue, mainly because you might think that it should be set inside the Moodle. Unfortunately, this is not so, these are environment issues that need to be set in the server and PHP folders, Moodle cannot work outside itself.&lt;br /&gt;
&lt;br /&gt;
===The previous answer is OK if you control the server, but I am hosted, what can I do to override limitations set by my Host?===&lt;br /&gt;
Before doing this, consult with your host, they may have very different ideas about what your Moodle should be permitted - try not to tread on their toes - they may get annoyed at you breaching your user conditions. In an Apache server, you can create a file called &#039;&#039;&#039;.htaccess&#039;&#039;&#039; which can allow you to override some of the limitations set by PHP on your Moodle. Be aware that this file only applies to your Moodle, and nothing else. Your host will often place a .htaccess file into your root folder which will usually read something like: &lt;br /&gt;
  deny from all&lt;br /&gt;
  AllowOverride None&lt;br /&gt;
These are security related, so there is no need to delete them or otherwise edit them. To overwrite set values in the hosts php.ini file, you may want to use:&lt;br /&gt;
  php_value upload_max_filesize 512M&lt;br /&gt;
  php_value post_max_size 512M &lt;br /&gt;
  php_value memory_limit 128M&lt;br /&gt;
To overwrite boolean or logical settings use: &lt;br /&gt;
  php_flag register_globals off&lt;br /&gt;
or&lt;br /&gt;
  php_flag register_globals 0&lt;br /&gt;
&lt;br /&gt;
Something similar can be done in IIS, but it is a lot more complex. &lt;br /&gt;
&lt;br /&gt;
Thanks Muano&lt;br /&gt;
&lt;br /&gt;
===Can I still use the TeX Notation filter in Moodle 2 like I did in Moodle 1.9?===&lt;br /&gt;
Yes, you can. In fact there is very little that has changed in the changing version. Not that the TeX filter has not be changed, it certainly has, but it does not affect how you will   [[Using_TeX_Notation|use TeX Notation]]. It is supposed to be easier to add a third party plugin for TeX, but the relationship between Moodle and such tools as MathJax or Geogebra, or similar tools, is still to be determined.&lt;br /&gt;
&lt;br /&gt;
:UPDATE: Mauno Korpelainen has successfully integrated a number of Maths tools onto Moodle. These tools include Geogebra, JSXGraph, Math, MathML, MathTran, tex, DragMath, Geonext, JSQuery, MathJax and if that were not enough, Mauno had also included a version of TinyMCE that has, as native, a Maths editing toolbar. Further information can be found on the Moodle 2 [[Advanced Maths Tools]] page.&lt;br /&gt;
&lt;br /&gt;
===I want to change our logo and some other images but there seems no clear way of doing it.===&lt;br /&gt;
Moodle 2 has done things very differently here. Logos and other images are all controlled by the theme. Each theme folder is constructed the same way so it makes it easy to edit. Native Moodle themes use the moodle/pix folder to store common images. Look in there to find the logo for any native theme and that can be replaced by a new logo. Third party themes often use the moodle/theme/pix folder to store images, including logos.    &lt;br /&gt;
&lt;br /&gt;
Go and look at the theme folder and in it you will find the name of the theme you are using. In it you will also find the sub-folders for different elements and you should find your layout folder contains most of the instructions for controlling the layout, the Styles folder controls the appearance and so on. Images used in the theme can all be located there as well, in the pix folder.    &lt;br /&gt;
&lt;br /&gt;
If you want to use a theme that does not have an image or a logo, just the default icons, then you are talking a serious revamp. For that, you need to look at the [https://docs.moodle.org/dev/Themes_2.0| Themes 2.0] page.&lt;br /&gt;
&lt;br /&gt;
===What about other elements of the Front Page?===&lt;br /&gt;
In some ways, Moodle 2 has made it easier to setup a front page the way you want it. Different themes will use different defaults, many moving away from the traditional three collumn, blocks, categories/courses, blocks, structure that pervaded Moodle 1.9. The Moodle 2 documentation has a more complete look at the [[Front page settings]] than can be viewed here. Also, for a better overview of how this can all be done at a site level, look at the [[Customising appearance]] pages.&lt;br /&gt;
&lt;br /&gt;
===My Password is not being accepted as valid. How can I login as an Admin?===&lt;br /&gt;
There are a couple of causes for this problem, but the main one seems to be we forget the jumble of passwords we are required to remember. There are also a number of ways of getting around it, as well. &lt;br /&gt;
&lt;br /&gt;
[http://moodle.org/mod/forum/discuss.php?d=18103 This discussion] covers just about all of them. There are a couple of scripts so be careful and use the right one if you need to. &lt;br /&gt;
&lt;br /&gt;
If you do not wish to use a script, then you can try this: &lt;br /&gt;
Using phpMyAdmin, enter the database and look for the mdl_users table. The first line of that table&#039;s data should be the Guest, and the password for Guest is &amp;quot;guest&amp;quot;, without the quote marks. Copy that password and then look for your identity. Paste the &amp;quot;guest&amp;quot; password over the top of yours when you locate it. You should then be able to get into your Moodle then, as an Admin.&lt;br /&gt;
It has been reported this does not work in every circumstance, but most. To get around that problem you might want to try commenting out the line &lt;br /&gt;
  $CFG-&amp;gt;passwordsaltmain =&lt;br /&gt;
That should then work.&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
&lt;br /&gt;
*[[:Category:Administrator | Index of all Administrator-related pages]]&lt;br /&gt;
&lt;br /&gt;
[[Category:FAQ]]&lt;/div&gt;</summary>
		<author><name>Moodlebot</name></author>
	</entry>
</feed>