<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.moodle.org/501/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mits</id>
	<title>MoodleDocs - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.moodle.org/501/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mits"/>
	<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/Special:Contributions/Mits"/>
	<updated>2026-04-08T06:03:14Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Cron_with_Unix_or_Linux&amp;diff=150590</id>
		<title>Cron with Unix or Linux</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Cron_with_Unix_or_Linux&amp;diff=150590"/>
		<updated>2024-12-15T13:14:49Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Installing Moodle}}&lt;br /&gt;
On Unix and Linux use the built in &#039;&#039;cron&#039;&#039; program which is standard on nearly all systems. You are required to add a command to the &#039;crontab&#039; (the table that holds cron commands) for the web server user. &lt;br /&gt;
&lt;br /&gt;
There are two different methods that can be used to invoke the Moodle cron process:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; The commands shown need to be added to the crontab to function (described in a moment). However, you can - and should - run them on the command line to check they work first. &lt;br /&gt;
&lt;br /&gt;
== Method 1: The command line (cli) cron ==&lt;br /&gt;
&lt;br /&gt;
If you have a choice, this is normally the best way to run Moodle cron. &lt;br /&gt;
&lt;br /&gt;
PHP is also capable of running programs directly from the command line. Your system needs to be set up to do this; specifically you need the &#039;CLI&#039; version of PHP to be installed. Most systems with PHP installed will have this by default. If you have the PHP CLI version installed then this is the recommended method of invoking cron. The correct command will be something like...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/bin/php /path/to/moodle/admin/cli/cron.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(substitute the correct path to moodle and for php as required)&lt;br /&gt;
&lt;br /&gt;
You can simply type this on the command line this to see if it works. If you are not sure about the path to PHP you can type &amp;quot;&amp;lt;code&amp;gt;which php&amp;lt;/code&amp;gt;&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Tip:&#039;&#039;&#039;: If you have problems, see the [[PHP]] page. In particular, suspect an alternate php.ini for the CLI PHP command which may not have suitable settings.&lt;br /&gt;
&lt;br /&gt;
== Method 2: Web based cron ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; In order to use the web based cron script you must first check [[Cron settings]] to make sure this method is permitted. &lt;br /&gt;
&lt;br /&gt;
The idea is to call the following web page (you can try this from your browser):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
http://url.of.your/moodle/admin/cron.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A command line (text based) browser is needed to run this on the server. Possibilities are as follows (OSX, for example, only ships with curl)...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/bin/wget -q -O /dev/null/ http://url.of.your/moodle/admin/cron.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(no output is displayed - remove the &#039;&#039;-O /dev/null/&#039;&#039; to test)&lt;br /&gt;
&lt;br /&gt;
...OR...&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/bin/curl http://url.of.your/moodle/admin/cron.php -o /dev/null/ -silent&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(no output is displayed - remove the &#039;&#039;-o /dev/null/ -silent&#039;&#039; to test)&lt;br /&gt;
&lt;br /&gt;
==Using the crontab program on Unix/Linux==&lt;br /&gt;
&lt;br /&gt;
Once you have selected (and tested!) an appropriate command to invoke the Moodle cron it must be added to the web users &#039;crontab&#039; to schedule it to run regularly. &#039;Crontab&#039; is both a file containing the user&#039;s cron commands and is also the name of the (command line) program used to edit it. Use the following command (as root) substituting the correct user in place of &#039;www-data&#039; (e.g. &#039;apache&#039; for CentOS, &#039;www-data&#039; for Debian/Ubuntu, &#039;_www&#039; for macOS—Google will know!)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# crontab -u www-data -e&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
This will bring up an editor window (the first time it may ask you which editor to use). Add the command onto the end of the file in this way (it may be empty or it may have some instructional comments):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 * * * * * /usr/bin/php  /path/to/moodle/admin/cli/cron.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The first five * entries specify the times, followed by the command, to run. This says to run the command as often as possible, i.e. every minute.&lt;br /&gt;
&lt;br /&gt;
See https://en.wikipedia.org/wiki/Cron#CRON_expression for details on cron expressions.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [http://linuxweblog.com/node/24 A basic crontab tutorial] &lt;br /&gt;
* [http://www.freebsd.org/cgi/man.cgi?query=crontab&amp;amp;apropos=0&amp;amp;sektion=5&amp;amp;manpath=FreeBSD+6.0-RELEASE+and+Ports&amp;amp;format=html Online version of the man page]&lt;br /&gt;
&lt;br /&gt;
[[es:Cron con Unix o Linux]]&lt;br /&gt;
[[ja:UnixまたはLinuxでのCron]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Backpacks&amp;diff=147690</id>
		<title>Backpacks</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Backpacks&amp;diff=147690"/>
		<updated>2024-01-14T15:04:25Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Badges}}&lt;br /&gt;
Enabling users to connect to an external backpack means they can add badges from their Moodle site to their backpack and also display badges from other sites in their Moodle profile.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;! NOTE: There is a currently known problem with displaying badges from other sites - see https://tracker.moodle.org/browse/MDL-79302&#039;&#039;&#039;&lt;br /&gt;
[[File:ManageBackPacks.png|thumb|Manage backpacks]]&lt;br /&gt;
==Site administration settings==&lt;br /&gt;
The backpack badgr.io is provided by default. Admins can add additional backpacks, for users with an account on eu.badgr.io, ca.badgr.io or au.badgr.io.&lt;br /&gt;
&lt;br /&gt;
For example, to add the eu.badgr.io follow the steps:&lt;br /&gt;
# Go to Site administration / Badges / Manage backpacks.&lt;br /&gt;
# Click the button &#039;Add a new backpack&#039;.&lt;br /&gt;
# Create this backpack with the following details:&lt;br /&gt;
#* Backpack API URL - https://api.eu.badgr.io/v2 &lt;br /&gt;
#* Backpack URL - https://eu.badgr.io&lt;br /&gt;
#* API version - Open Badges v2.0&lt;br /&gt;
#* (Leave &#039;Include authentication details with the backpack&#039; unticked.)&lt;br /&gt;
Follow the same process for ca.badgr.io and au.badgr.io changing only the region letters (the &#039;&#039;eu&#039;&#039; in the above URLs to &#039;&#039;ca&#039;&#039; or &#039;&#039;au&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
Note the admin can set the order in which backpacks are listed for users.&lt;br /&gt;
==Individual user settings==&lt;br /&gt;
You can connect to your backpack as follows:&lt;br /&gt;
# In the user menu (top right), select Preferences, then &#039;Backpack settings&#039; under Badges.&lt;br /&gt;
# If necessary, select your backpack provider.&lt;br /&gt;
# Enter your Badgr user account email and password.&lt;br /&gt;
# Look in your mailbox for a verification email and copy and paste the link to verify your connection to the backpack.&lt;br /&gt;
After the backpack connection is successfully established, badges from your backpack can be displayed on your badges page and your profile page. Go to Manage badges (via Preferences / Badges) and click the icon to add your badge to your backpack.&lt;br /&gt;
&lt;br /&gt;
You can also select collections of badges from your backpack that you would like to display in your profile.&lt;br /&gt;
==Open Badges v 2.1==&lt;br /&gt;
Moodle is Open Badges v 2.1 compliant and a new [[OAuth 2 Open Badges service]] enables users to connect to their OB v 2.1 compliant backpack without having to enter their credentials into Moodle.&lt;br /&gt;
&lt;br /&gt;
To connect to an OB v 2.1 compliant backpack such as badgr.com&lt;br /&gt;
# Go to Site administration / Badges / Manage backpacks.&lt;br /&gt;
# Click the button &#039;Add a new backpack&#039;.&lt;br /&gt;
# Create this backpack with the following details:&lt;br /&gt;
#* API version - Open Badges v2.1&lt;br /&gt;
#* Backpack URL - https://badgr.com&lt;br /&gt;
When you connect to an OB v 2.1 compliant backpack, a Badges service in [[OAuth 2 services]] is created automatically.&lt;br /&gt;
[[https://docs.moodle.org/es/Mochilas]]&lt;br /&gt;
[[https://docs.moodle.org/de/Backpacks]]&lt;br /&gt;
&lt;br /&gt;
[[es:Mochilas]]&lt;br /&gt;
[[ja:バックパック]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Backpacks&amp;diff=147689</id>
		<title>Backpacks</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Backpacks&amp;diff=147689"/>
		<updated>2024-01-14T15:03:51Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Badges}}&lt;br /&gt;
Enabling users to connect to an external backpack means they can add badges from their Moodle site to their backpack and also display badges from other sites in their Moodle profile.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;! NOTE: There is a currently known problem with displaying badges from other sites - see https://tracker.moodle.org/browse/MDL-79302&#039;&#039;&#039;&lt;br /&gt;
[[File:ManageBackPacks.png|thumb|Manage backpacks]]&lt;br /&gt;
==Site administration settings==&lt;br /&gt;
The backpack badgr.io is provided by default. Admins can add additional backpacks, for users with an account on eu.badgr.io, ca.badgr.io or au.badgr.io.&lt;br /&gt;
&lt;br /&gt;
For example, to add the eu.badgr.io follow the steps:&lt;br /&gt;
# Go to Site administration / Badges / Manage backpacks.&lt;br /&gt;
# Click the button &#039;Add a new backpack&#039;.&lt;br /&gt;
# Create this backpack with the following details:&lt;br /&gt;
#* Backpack API URL - https://api.eu.badgr.io/v2 &lt;br /&gt;
#* Backpack URL - https://eu.badgr.io&lt;br /&gt;
#* API version - Open Badges v2.0&lt;br /&gt;
#* (Leave &#039;Include authentication details with the backpack&#039; unticked.)&lt;br /&gt;
Follow the same process for ca.badgr.io and au.badgr.io changing only the region letters (the &#039;&#039;eu&#039;&#039; in the above URLs to &#039;&#039;ca&#039;&#039; or &#039;&#039;au&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
Note the admin can set the order in which backpacks are listed for users.&lt;br /&gt;
==Individual user settings==&lt;br /&gt;
You can connect to your backpack as follows:&lt;br /&gt;
# In the user menu (top right), select Preferences, then &#039;Backpack settings&#039; under Badges.&lt;br /&gt;
# If necessary, select your backpack provider.&lt;br /&gt;
# Enter your Badgr user account email and password.&lt;br /&gt;
# Look in your mailbox for a verification email and copy and paste the link to verify your connection to the backpack.&lt;br /&gt;
After the backpack connection is successfully established, badges from your backpack can be displayed on your badges page and your profile page. Go to Manage badges (via Preferences / Badges) and click the icon to add your badge to your backpack.&lt;br /&gt;
&lt;br /&gt;
You can also select collections of badges from your backpack that you would like to display in your profile.&lt;br /&gt;
==Open Badges v 2.1==&lt;br /&gt;
Moodle is Open Badges v 2.1 compliant and a new [[OAuth 2 Open Badges service]] enables users to connect to their OB v 2.1 compliant backpack without having to enter their credentials into Moodle.&lt;br /&gt;
&lt;br /&gt;
To connect to an OB v 2.1 compliant backpack such as badgr.com&lt;br /&gt;
# Go to Site administration / Badges / Manage backpacks.&lt;br /&gt;
# Click the button &#039;Add a new backpack&#039;.&lt;br /&gt;
# Create this backpack with the following details:&lt;br /&gt;
#* API version - Open Badges v2.1&lt;br /&gt;
#* Backpack URL - https://badgr.com&lt;br /&gt;
When you connect to an OB v 2.1 compliant backpack, a Badges service in [[OAuth 2 services]] is created automatically.&lt;br /&gt;
[[https://docs.moodle.org/es/Mochilas]]&lt;br /&gt;
[[https://docs.moodle.org/de/Backpacks]]&lt;br /&gt;
&lt;br /&gt;
[[es:Mochilas]]&lt;br /&gt;
[[ja:バッジ]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=OAuth_2_Troubleshooting&amp;diff=147575</id>
		<title>OAuth 2 Troubleshooting</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=OAuth_2_Troubleshooting&amp;diff=147575"/>
		<updated>2023-12-22T13:44:17Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Troubleshooting==&lt;br /&gt;
===On the &#039;OAuth 2 services&#039; page, there is a red cross for &#039;Allow login&#039;===&lt;br /&gt;
To get a green tick for Allow login, edit the OAuth 2 service and make sure that the setting &#039;Show on login page&#039; is ticked.&lt;br /&gt;
===I obtain a coding error after enabling OAuth 2 authentication===&lt;br /&gt;
Have you any OAuth 2 plugins for earlier versions installed on your site? If so, you will need to [[Installing plugins|uninstall them]] in order to use the standard OAuth 2 authentication.&lt;br /&gt;
===I obtain an error message when attempting to log in using Facebook===&lt;br /&gt;
The error message &#039;The user information returned did not contain a username and email address. The OAuth 2 service may be configured incorrectly.&#039; is most likely because the user&#039;s Facebook account was created using a mobile number.&lt;br /&gt;
&lt;br /&gt;
The solution is for the user to first log in to Facebook and add a username and email address there.&lt;br /&gt;
===I see a &amp;quot;required paramenter (code) was missing&amp;quot; error after logging into the OAuth 2 service===&lt;br /&gt;
The error message &#039;A required parameter (code) was missing&#039; can be caused by a mis-configured webserver. OAuth 2 relies on long tokens passed as url parameters, and some webserver configurations will prevent this from working. See http://www.php.net/manual/en/reserved.variables.get.php#101469 for one possible solution.&lt;br /&gt;
===I have all green checkmarks on my /admin/tool/oauth2/issuers.php page for Google &amp;amp; Facebook but no buttons show on my servers login page===&lt;br /&gt;
It was discovered that in a fresh install of Moodle 3.4 (probably for security reasons) that the plugin configuration for OAuth2 was in a disabled state. Go to your page for Site Administration - Plugins - Authentication - Manage authentication (/admin/settings.php?section=manageauths), and enable the record for OAuth2, then optionally tweak your settings for that record.&lt;br /&gt;
&lt;br /&gt;
[[ja:OAuth 2トラブルシューティング]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=OAuth_2_authentication&amp;diff=147478</id>
		<title>OAuth 2 authentication</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=OAuth_2_authentication&amp;diff=147478"/>
		<updated>2023-12-03T09:31:48Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Authentication}}&lt;br /&gt;
== Overview ==&lt;br /&gt;
OAuth 2.0 is the de facto industry standard protocol for user authorisation. OAuth 2 authentication enables users to access Moodle via buttons on the login page using their credentials from popular service providers, such as Google, Microsoft, Facebook, and LinkedIn.&lt;br /&gt;
[[File:OAuth Login.png|border|center|frameless|600x600px]]&lt;br /&gt;
The following high-level interaction process illustrates how OAuth 2 authentication works in a Moodle context: &lt;br /&gt;
[[File:OAuth - Service Provider Authentication.png|border|center|frameless|600x600px]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
An OAuth service provider is an external system (“in the cloud”) that provides identity (via the authorisation server) and API access (via the resource server) by issuing OAuth access tokens to a client (Moodle). Let’s go through the interactions from top to bottom:&lt;br /&gt;
# A user sends an authorisation request; that is, a user logs in to the service provider via the client. This step is initiated via the service provider buttons on the Moodle login screen.&lt;br /&gt;
# The authorisation server issues an authorisation code if the entered credentials are valid. Once this has taken place, the user is authenticated with Moodle. If account creation is enabled (the Prevent account creation when authenticating setting), a new account will be created. Otherwise, the user will be prompted to link the authorisation to an existing account with the same email address. An entry can be found in the [[Linked logins]] section in the user’s preferences.&lt;br /&gt;
# An access token will be issued when the user logs in using the stored authorisation code. A scheduled task exists to regularly update the OAuth 2 tokens (\core\oauth2\refresh_ system_tokens_task).&lt;br /&gt;
# Moodle uses this access token for any internal services that require a resource from the service provider, for instance, a link to files in a repository. Some internal services require a system account to be connected.&lt;br /&gt;
==Setting up OAuth 2 authentication==&lt;br /&gt;
To use OAuth 2 authentication, an administrator must follow the following steps:&lt;br /&gt;
# Configure OAuth 2 services: Go to &#039;&#039;&#039;Site administration &amp;gt; Server &amp;gt; OAuth 2 services&#039;&#039;&#039;, and following the instructions on the [[OAuth 2 services]] page.&lt;br /&gt;
# Enable OAuth 2: Go to &#039;&#039;&#039;Site administration &amp;gt; Plugins &amp;gt; Authentication&#039;&#039;&#039;, enable &#039;&#039;&#039;OAuth 2&#039;&#039;&#039;.&lt;br /&gt;
# Configure OAuth 2 lock user fields: To control if and how certain user data fields are being populated, click on the &#039;&#039;&#039;Settings&#039;&#039;&#039; link and configure your &#039;&#039;&#039;Lock user fields&#039;&#039;&#039;.&lt;br /&gt;
# Prevent account creation: By default, account creation is enabled. If you wish to prevent account creation, go to &#039;&#039;&#039;Site administration &amp;gt; Plugins &amp;gt; Authentication&#039;&#039;&#039; and enable the setting &amp;quot;authpreventaccountcreation&amp;quot;.&lt;br /&gt;
# Testing, testing, testing: To verify that your OAuth 2 configuration is working, go to &#039;&#039;&#039;Site administration &amp;gt; Plugins &amp;gt; Authentication&#039;&#039;&#039; and click on the &#039;&#039;&#039;Test settings&#039;&#039;&#039; link in the &#039;&#039;&#039;OAuth 2&#039;&#039;&#039; row. Here, you can select a service and test its connection.&lt;br /&gt;
OAuth 2 authentication is supported by the following Moodle features:&lt;br /&gt;
* Repositories: [[Dropbox repository]], [[Google Drive repository]], Microsoft [[OneDrive repository]], and [[Nextcloud repository]]&lt;br /&gt;
* Portfolios: [[Google Drive portfolio]]&lt;br /&gt;
* Badges: [[Backpacks|Open Badges 2.1]]&lt;br /&gt;
* Mail: Incoming and outgoing [[Mail configuration|mail configuration]]&lt;br /&gt;
* Document converters: [[Google Drive converter]]&lt;br /&gt;
==See also==&lt;br /&gt;
* [[OAuth 2 Troubleshooting|OAuth 2 troubleshooting]]&lt;br /&gt;
[[Category:OAuth 2]]&lt;br /&gt;
[[es:Autenticación OAuth 2]]&lt;br /&gt;
[[de:OAuth2 Authentifizierung]]&lt;br /&gt;
[[ja: OAuth 2認証]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=OAuth_2_Open_Badges_service&amp;diff=145462</id>
		<title>OAuth 2 Open Badges service</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=OAuth_2_Open_Badges_service&amp;diff=145462"/>
		<updated>2023-01-16T10:43:01Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{OAuth2}}&lt;br /&gt;
&lt;br /&gt;
You need to set up an OAuth 2 Open Badges service in order to enable users to connect to their Open Badges v 2.1 compliant backpack without having to enter their credentials into Moodle.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Please add instructions here...&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* The section &#039;Open Badge Connect API&#039; in the dev doc [[:dev:OAuth 2 API|OAuth 2 API]]&lt;br /&gt;
&lt;br /&gt;
[[Category: Badges]]&lt;br /&gt;
&lt;br /&gt;
[[es:Servicio OAuth2 Open Badges]]&lt;br /&gt;
[[de:OAuth2 Open Badges Service]]&lt;br /&gt;
[[ja:OAuth 2 Open Badgesサービス]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Portfolio_Plugin_for_Evernote&amp;diff=145412</id>
		<title>Portfolio Plugin for Evernote</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Portfolio_Plugin_for_Evernote&amp;diff=145412"/>
		<updated>2023-01-11T15:04:34Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Portfolios}}&lt;br /&gt;
== Introduction ==&lt;br /&gt;
Evernote is used by a large number of people to store their daily files and activities. Especially, in the field of education, many educators and students use Evernote to share their notes with others. With this plugin, the users are able to sync their Moodle and Evernote activities in a better way. This plugin enables the users to export the desired Moodle content to their Evernote accounts in a clean and simple way.&lt;br /&gt;
&lt;br /&gt;
== Installation Steps ==&lt;br /&gt;
* If you don&#039;t have an Evernote API key beforehand, go through the following steps:&lt;br /&gt;
** Go to [http://dev.evernote.com/doc/ Evernote Developer&#039;s page].&lt;br /&gt;
** Click on &#039;Get an API Key button&#039;&lt;br /&gt;
** In the API Permissions block, click on &#039;Full Access&#039;. Then fill up the other details and submit the form.&lt;br /&gt;
** Register your API key as a public key from Evernote.&lt;br /&gt;
* Now having the Evernote key, you need to request Evernote for activating the key. This will ensure that the key works on the Evernote production servers (The key which is not activated, runs only for [https://sandbox.evernote.com Evernote Sandbox Accounts]). If you don&#039;t have an activated key yet, follow the following steps:&lt;br /&gt;
** Go to [http://dev.evernote.com/support/ Evernote Support].&lt;br /&gt;
** Click on the button &#039;Activate an API Key&lt;br /&gt;
** Fill in the correct details and submit the form.&lt;br /&gt;
** Please note that it might take a few days for Evernote to activate the API Key.&lt;br /&gt;
* Download the Evernote Portfolio plugin from [https://github.com/thatsvishalhere/moodle-portfolio_evernote/archive/master.zip Github].&lt;br /&gt;
* Extract the zip file in your Moodle directory (Moodle_folder)/portfolio.&lt;br /&gt;
* Rename the folder of the plugin to &#039;evernote&#039;.&lt;br /&gt;
* Log in to Moodle as administrator and install the Evernote Portfolio.&lt;br /&gt;
* Ensure that Portfolios are enabled on the site on Site Administration-&amp;gt;Advanced Features.&lt;br /&gt;
* Enable the Evernote plugin from Site Administration-&amp;gt;Plugins-&amp;gt;Portfolios-&amp;gt;Manage Portfolios &lt;br /&gt;
* In the form that appears, select &#039;No&#039; for Using Testing Server if the Evernote Key has been activated. Else, select &#039;Yes&#039;. Note that while using testing server, you&#039;ll be using the Evernote Key for the [https://sandbox.evernote.com Evernote Sandbox Accounts]. This is a testing platform provided by Evernote to test out the plugin before use. You&#039;ll need to have a separate Sandbox account to test the plugin on your account. The Sandbox account is independent of the main Evernote account.&lt;br /&gt;
* Enter the API Key and the Secret Key you registered at Evernote and click on Save.&lt;br /&gt;
* You have now activated the plugin for Evernote.&lt;br /&gt;
&lt;br /&gt;
== Moodle Versions Supported ==&lt;br /&gt;
Currently the plugin supports Moodle versions from 2.3 and upwards.&lt;br /&gt;
&lt;br /&gt;
== Items which may be exported to portfolio ==&lt;br /&gt;
Export of all the items which are supported by default in Moodle Portfolio are supported. They are listed below:&lt;br /&gt;
* Assignment submissions - single and multiple file uploads&lt;br /&gt;
* Chat sessions&lt;br /&gt;
* Database activity module entries&lt;br /&gt;
* Database activities&lt;br /&gt;
* Forum posts&lt;br /&gt;
* Glossary entries&lt;br /&gt;
&lt;br /&gt;
== Sending the Data to your Evernote Accounts ==&lt;br /&gt;
* Click on Export to Portfolio link on any forum post/chat sessions/database entries and activities/assignment/glossary entries you want to send to your Evernote Account.&lt;br /&gt;
* Select &#039;Evernote&#039; and click &#039;Next&#039;.&lt;br /&gt;
* Fill out the necessary details and click &#039;Next&#039;.&lt;br /&gt;
* Here you get the summary of the details you had entered in the previous form. Click &#039;Next&#039; to finalize the export.&lt;br /&gt;
&lt;br /&gt;
[[ja:Evernote用ポートフォリオプラグイン]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/course:configuredownloadcontent&amp;diff=145275</id>
		<title>Capabilities/moodle/course:configuredownloadcontent</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/course:configuredownloadcontent&amp;diff=145275"/>
		<updated>2022-12-13T15:01:30Z</updated>

		<summary type="html">&lt;p&gt;Mits: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
&lt;br /&gt;
*This allows a user to configure the [[Download course content]] feature.&lt;br /&gt;
*This capability is allowed for the default roles of manager and teacher.&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities]]&lt;br /&gt;
&lt;br /&gt;
[[es:Capabilities/moodle/course:configuredownloadcontent]]&lt;br /&gt;
[[de:Capabilities/moodle/course:configuredownloadcontent]]&lt;br /&gt;
[[ja:ケイパビリティ/moodle/course:configuredownloadcontent]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/webservice/amf:use&amp;diff=136952</id>
		<title>Capabilities/webservice/amf:use</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/webservice/amf:use&amp;diff=136952"/>
		<updated>2020-04-29T15:02:14Z</updated>

		<summary type="html">&lt;p&gt;Mits: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
*This allows a user to use the AMF protocol for [[Web services]].&lt;br /&gt;
*This capability is not set for any of the default roles.&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities|Webservice]]&lt;br /&gt;
[[Category:Web Services]]&lt;br /&gt;
&lt;br /&gt;
[[eu:Capabilities/webservice/amf:use]]&lt;br /&gt;
[[es:Capabilities/webservice/amf:use]]&lt;br /&gt;
[[de:Capabilities/webservice/amf:use]]&lt;br /&gt;
[[ja:ケイパビリティ/webservice/amf:use]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/webservice/amf:use&amp;diff=136951</id>
		<title>Capabilities/webservice/amf:use</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/webservice/amf:use&amp;diff=136951"/>
		<updated>2020-04-29T15:01:56Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
*This allows a user to use the AMF protocol for [[Web services]].&lt;br /&gt;
*This capability is not set for any of the default roles.&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities|Webservice]]&lt;br /&gt;
[[Category:Web Services]]&lt;br /&gt;
&lt;br /&gt;
[[eu:Capabilities/webservice/amf:use]]&lt;br /&gt;
[[es:Capabilities/webservice/amf:use]]&lt;br /&gt;
[[de:Capabilities/webservice/amf:use]]&lt;br /&gt;
[[]ja:ケイパビリティ/webservice/amf:use]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/webservice/soap:use&amp;diff=136940</id>
		<title>Capabilities/webservice/soap:use</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/webservice/soap:use&amp;diff=136940"/>
		<updated>2020-04-27T14:01:44Z</updated>

		<summary type="html">&lt;p&gt;Mits: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
*This allows a user to use the SOAP protocol for [[Web Services]].&lt;br /&gt;
*This capability is not set for any of the default roles.&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities|Webservice]]&lt;br /&gt;
[[Category:Web Services]]&lt;br /&gt;
&lt;br /&gt;
[[eu:Capabilities/webservice/soap:use]]&lt;br /&gt;
[[es:Capabilities/webservice/soap:use]]&lt;br /&gt;
[[de:Capabilities/webservice/soap:use]]&lt;br /&gt;
[[ja:ケイパビリティ/webservice/soap:use]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/webservice/soap:use&amp;diff=136939</id>
		<title>Capabilities/webservice/soap:use</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/webservice/soap:use&amp;diff=136939"/>
		<updated>2020-04-27T14:01:25Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
*This allows a user to use the SOAP protocol for [[Web Services]].&lt;br /&gt;
*This capability is not set for any of the default roles.&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities|Webservice]]&lt;br /&gt;
[[Category:Web Services]]&lt;br /&gt;
&lt;br /&gt;
[[eu:Capabilities/webservice/soap:use]]&lt;br /&gt;
[[es:Capabilities/webservice/soap:use]]&lt;br /&gt;
[[de:Capabilities/webservice/soap:use]]&lt;br /&gt;
[[]ja:ケイパビリティ/webservice/soap:use]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Using_web_services&amp;diff=136935</id>
		<title>Using web services</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Using_web_services&amp;diff=136935"/>
		<updated>2020-04-25T13:49:38Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Web services}}&lt;br /&gt;
This document explains how an administrator can set up a web service for users to access a service. Each user will have a specific and unique security key (also known as a &amp;quot;token&amp;quot;) to access the service.&lt;br /&gt;
&lt;br /&gt;
== Enabling web services==&lt;br /&gt;
[[Image:Enable_web_service.jpg|thumb|Enabling web services]]&lt;br /&gt;
# Access &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Advanced features&#039;&#039;&lt;br /&gt;
# Check &#039;Enable web services&#039; then click &#039;Save Changes&#039;&lt;br /&gt;
&lt;br /&gt;
Note: For security reasons, web services should only be enabled if you intend to make use of it.&lt;br /&gt;
&lt;br /&gt;
== Enabling protocols ==&lt;br /&gt;
[[Image:Enable_protocol.jpg|thumb|left|Enabling protocols]]&lt;br /&gt;
Usually external applications that users wish to use dictate which protocols should be enabled. &lt;br /&gt;
&lt;br /&gt;
# Access &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Web services &amp;gt; Manage protocols&#039;&#039;&lt;br /&gt;
# Enable the protocols (SOAP, REST, XMLRPC, AMF, ...) as required&lt;br /&gt;
&lt;br /&gt;
== Enabling web service function documentation ==&lt;br /&gt;
[[Image:Security keys and documentation.jpg|thumb|Security keys page with documentation link]]&lt;br /&gt;
Enabling web service function documentation (also on the Manage protocols page) results in user-specific web service documentation being available for each user on their [[Security keys]] page. This option is mainly useful to web service client developers. If nobody is creating a web service client, there is no need to enable this feature.&lt;br /&gt;
&lt;br /&gt;
== Creating a service ==&lt;br /&gt;
If none of the pre-build web services match your needs, you can create a custom service i.e. select which of the standard web service functions are available via that service.&lt;br /&gt;
&lt;br /&gt;
You can enable only the specific functions that you need to expose, so not compromising on security.&lt;br /&gt;
[[Image:Create a service.jpg|thumb|Creating a service|left]]&lt;br /&gt;
# Access &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Web services &amp;gt; External services&#039;&#039;&lt;br /&gt;
# Click Add new custom service&lt;br /&gt;
#* &#039;Authorised users only&#039; - If enabled, you will need to select the authorised users manually. Otherwise all users with appropriate permissions are allowed&lt;br /&gt;
#* &#039;Required capability&#039; - If enabled, any user accessing the web service will be checked against this selected capability. (This is just an additional optional security layer.)&lt;br /&gt;
# Enter a name and check Enabled&lt;br /&gt;
# Click the button &#039;Add service&#039;&lt;br /&gt;
&lt;br /&gt;
==Adding functions to the service==&lt;br /&gt;
[[Image:Select a web service function.jpg|thumb|Adding functions to the service]]Your service is currently empty and doesn&#039;t do anything. Web service functions need to be added. Your choice will be dictated by what you allow the external application to do. For this example, select &#039;Create group&#039;.&lt;br /&gt;
&lt;br /&gt;
# Click &#039;Add functions&#039; link&lt;br /&gt;
# Select &#039;create group&#039; function and click the &#039;Add functions&#039; button&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note that deprecated functions can not be added to services although the ones that are already part of a service can remain there until they are removed from Moodle codebase.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You should be back to the service functions list. &#039;Required capabilities&#039; are indicated for each function. Users need the required capabilities to run a function. The function descriptions in the API Documentation can also give you more information about the required capabilities (&#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Web services &amp;gt; API Documentation&#039;&#039;).&lt;br /&gt;
&lt;br /&gt;
==Enabling capabilities==&lt;br /&gt;
&lt;br /&gt;
The final step is to grant appropriate permissions. The following capabilities should be allowed:&lt;br /&gt;
&lt;br /&gt;
* [[Capabilities/moodle/webservice:createtoken|moodle/webservice:createtoken]] - for allowing users to generate a security key&lt;br /&gt;
* [[Capabilities/webservice/rest:use | webservice/rest:use]], [[Capabilities/webservice/soap:use | webservice/soap:use]], [[Capabilities/webservice/xmlrpc:use | webservice/xmlrpc:use]], [[Capabilities/webservice/amf:use | webservice/amf:use]] which match the enabled protocols.&lt;br /&gt;
* The service &#039;&#039;Required capability&#039;&#039; if set (&#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Web services &amp;gt; Manage services &amp;gt;&#039;&#039;&#039;Edit&#039;&#039;&#039; link&#039;&#039;).&lt;br /&gt;
* The required capabilities for the web service functions. These required capabilities are listed when you add a function to the service. For more information about roles and capabilities, read the [[Manage roles]] documentation.&lt;br /&gt;
&lt;br /&gt;
Once done, the web service should be set up. Users should be able to [[Security keys|obtain a personal security key]].&lt;br /&gt;
&lt;br /&gt;
= Alternative settings = &lt;br /&gt;
&lt;br /&gt;
== Authorise only specific users==&lt;br /&gt;
[[Image:Authorised users link.jpg|thumb]] [[Image:Authorised user selection page.jpg|thumb]]&lt;br /&gt;
# &#039;&#039;Administration &amp;gt; Site Administration &amp;gt; Plugins &amp;gt; Web services &amp;gt; External Services&#039;&#039;&lt;br /&gt;
# Select &#039;&#039;&#039;Authorised users&#039;&#039;&#039; link (the service must have been set as &#039;&#039;&#039;Authorised users only&#039;&#039;&#039; in the &#039;&#039;&#039;Edit&#039;&#039;&#039; link)&lt;br /&gt;
# Select some users and click &#039;&#039;&#039;Add&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Moodle indicates if some capabilities need to be assigned to an authorised user. Moreover if you click on the authorised user fullname, you can set up some specific options: &#039;&#039;IP restriction&#039;&#039; and &#039;&#039;Valid until&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
== Create a token  ==&lt;br /&gt;
[[Image:Create_token.jpg|thumb]]&lt;br /&gt;
This feature allows you to create a token for specific user. It can be useful if a user doesn&#039;t have the moodle/create:token capability. This is also the only way to create a token for an administrator. For security reason, tokens are not automatically generated in the administrator security  keys page.&lt;br /&gt;
&lt;br /&gt;
# &#039;&#039;Administration &amp;gt; Site Administration &amp;gt; Plugins &amp;gt; Web services &amp;gt; Manage tokens&#039;&#039;&lt;br /&gt;
# Click on &#039;&#039;&#039;Add&#039;&#039;&#039;&lt;br /&gt;
# Select the created user and service&lt;br /&gt;
# Click on &#039;&#039;&#039;Saves changes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
As you created a token for this user, you do not need to assign &amp;quot;&#039;&#039;moodle/webservice:createtoken&#039;&#039;&amp;quot; to him/her.&lt;br /&gt;
Finally, note that, as for authorised users, you can also set &#039;&#039;IP restriction&#039;&#039; and &#039;&#039;Valid until&#039;&#039; on a token.&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
 		&lt;br /&gt;
*[http://www.joomdle.com/wiki/Preparing_Moodle_20#Setting_up_Moodle_Web_services Joomdle documentation about setting Moodle web services]&lt;br /&gt;
&lt;br /&gt;
[[de:Webservices nutzen]]&lt;br /&gt;
[[fr:Utilisation des services Web]]&lt;br /&gt;
[[ja:ウェブサービスを使用する]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Caching&amp;diff=136848</id>
		<title>Caching</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Caching&amp;diff=136848"/>
		<updated>2020-04-11T15:07:18Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Performance}}&lt;br /&gt;
A cache is a collection of processed data that is kept on hand and re-used in order to avoid costly repeated database queries.&lt;br /&gt;
&lt;br /&gt;
Moodle 2.4 saw the implementation of MUC, the Moodle Universal Cache. This new system allows certain functions of Moodle (eg string fetching) take advantage of different installed cache services (eg files, ram, memcached).&lt;br /&gt;
&lt;br /&gt;
In future versions of Moodle we will continue expanding the number of Moodle functions that use MUC, which will continue improving performance, but you can already start using it to improve your site.&lt;br /&gt;
&lt;br /&gt;
==General approach to performance testing==&lt;br /&gt;
&lt;br /&gt;
Here is the general strategy you should be taking:&lt;br /&gt;
&lt;br /&gt;
# Build a test environment that is as close to your real production instance as possible (eg hardware, software, networking, etc)&lt;br /&gt;
# Make sure to remove as many uncontrolled variables as you can from this environment (eg other services)&lt;br /&gt;
# Use a tool to place a realistic, but simulated and repeatable load upon you server. (eg jmeter or selenium).&lt;br /&gt;
# Decide on a way to measure performance of the server by capturing data (ram, load, time taken, etc)&lt;br /&gt;
# Run your load and measure a baseline performance result.&lt;br /&gt;
# Change one variable at a time, and re-run the load to see if performance gets better or worse.  Repeat as necessary.&lt;br /&gt;
# When you discover settings that result in a consistent performance improvement, apply to your production site.&lt;br /&gt;
&lt;br /&gt;
==Cache configuration in Moodle==&lt;br /&gt;
&lt;br /&gt;
Since Moodle 2.4, Moodle has provided a caching plugin framework to give administrators the ability to control where Moodle stores cached data. For most Moodle sites the default configuration should be sufficient and it is not necessary to change the configuration. For larger Moodle sites with multiple servers, administrators may wish to use memcached, mongodb or other systems to store cache data. The cache plugin screen provides administrators with the ability to configure what cache data is stored where.&amp;lt;br /&amp;gt;&lt;br /&gt;
Caching in Moodle is controlled by what is known as the Moodle Universal Cache. Commonly referred to as MUC.&lt;br /&gt;
&lt;br /&gt;
This document explains briefly what MUC is before proceeding into detail about the concepts and configuration options it offers.&lt;br /&gt;
&lt;br /&gt;
==The basic cache concepts in Moodle==&lt;br /&gt;
Caching in Moodle isn&#039;t as complex as it first appears. A little background knowledge will go a long way in understanding how cache configuration works.&lt;br /&gt;
&lt;br /&gt;
===Cache types===&lt;br /&gt;
Let&#039;s start with cache types (sometimes referred to as mode). There are three basic types of caches in Moodle.&lt;br /&gt;
&lt;br /&gt;
The first is the application cache. This is by far the most commonly used cache type in code. Its information is shared by all users and its data persists between requests. Information stored here is usually cached for one of two reasons, either it is required information for the majority of requests and saves us a one of more database interactions or it is information that is accessed less frequently but is resource intensive to generate.&amp;lt;br /&amp;gt;&lt;br /&gt;
By default this information is stored in an organised structure within your Moodle data directory.&lt;br /&gt;
&lt;br /&gt;
The second cache type is the session cache. This is just like the PHP session that you will already be familiar with, in fact it uses the PHP session by default. You may be wondering why we have this cache type at all, but the answer is simple. MUC provides a managed means of storing, and removing information that is required between requests. It offers developers a framework to use rather than having to re-invent the wheel and ensures that we have access to a controlled means of managing the cache as required.&amp;lt;br /&amp;gt;&lt;br /&gt;
Its important to note that this isn&#039;t a frequently used cache type as by default session cache data is stored in the PHP session and the PHP session is stored in the database. Uses of the session cache type are limited to small datasets as we don&#039;t want to bloat sessions and thus put strain on the database.&lt;br /&gt;
&lt;br /&gt;
The third and final type is the request cache. Data stored in this cache type only persists for the lifetime of the request. If you&#039;re a PHP developer think of it like a managed static variable.&amp;lt;br /&amp;gt;&lt;br /&gt;
This is by far the least used of the three cache types, uses are often limited to information that will be accessed several times within the same request, usually by more than an area of code.&lt;br /&gt;
Cached information is stored in memory by default.&lt;br /&gt;
&lt;br /&gt;
==== Cache types and multiple-server systems ====&lt;br /&gt;
&lt;br /&gt;
If you have a system with multiple front-end web servers, the application cache must be shared between the servers. In other words, you cannot use fast local storage for the application cache, but must use shared storage or some other form of shared cache such as a shared memcached.&lt;br /&gt;
&lt;br /&gt;
The same applies to session cache, unless you use a &#039;sticky sessions&#039; mechanism to ensure that within a session, users always access the same front-end server.&lt;br /&gt;
&lt;br /&gt;
===Cache backends===&lt;br /&gt;
Cache backends are where data actually gets stored. These include things like the file system, php session, Memcached, and memory.&amp;lt;br /&amp;gt;&lt;br /&gt;
By default just file system, php session, and memory are used within Moodle.&amp;lt;br /&amp;gt;&lt;br /&gt;
We don&#039;t require that a site has access to any other systems such a Memcached. Instead that is something you are responsible for installing and configuring yourself.&amp;lt;br /&amp;gt;&lt;br /&gt;
When cache backends are mentioned think of systems outside of Moodle that can be used to store data. The MongoDB server, the Memcached server and similiar &amp;quot;server&amp;quot; applications.&lt;br /&gt;
&lt;br /&gt;
===Cache stores===&lt;br /&gt;
&lt;br /&gt;
Cache stores are a plugin type within Moodle. They facilitate connecting Moodle to the cache backends discussed above. The standard Moodle has the three defaults mentioned above as well as Memcached, MongoDB, [[APC user cache (APCu)|APC user cache (APCu)]] and [[Redis cache store|Redis]].&lt;br /&gt;
&lt;br /&gt;
You can find other cache store plugins in the [https://moodle.org/plugins/browse.php?list=category&amp;amp;id=48 plugins database].&lt;br /&gt;
&lt;br /&gt;
The code for these is located within cache/stores in your Moodle directory root.&lt;br /&gt;
&lt;br /&gt;
Within Moodle you can configure as many cache stores as your architecture requires. If you have several Memcached servers, for instance, you can create a cache store instance for each. Moodle by default contains three cache store instances that get used when you&#039;ve made no other configuration.&lt;br /&gt;
* A file store instance is created which gets used for all application caches. It stores its data in your moodledata directory.&lt;br /&gt;
* A session store instance is created which gets used for all session caches. It stores its data in the PHP session, which by default is stored in your database.&lt;br /&gt;
* A static memory store instance is created which gets used for all request cache types. Data exists in memory for just the lifetime of a request.&lt;br /&gt;
&lt;br /&gt;
===Caches: what happens in code===&lt;br /&gt;
Caches are created in code and are used by the developer to store data they see a need to cache.&amp;lt;br /&amp;gt;&lt;br /&gt;
Let&#039;s keep this section nice and short because perhaps you are not a developer. There is one very important point you must know about.&amp;lt;br /&amp;gt;&lt;br /&gt;
The developer does not get any say in where the data gets cached. They must specify the following information when creating a cache to use.&lt;br /&gt;
# The type of cache they require.&lt;br /&gt;
# The area of code this cache will belong to (the API if you will).&lt;br /&gt;
# The name of the cache, something they make up to describe in one word what the cache stores.&lt;br /&gt;
&lt;br /&gt;
There are several optional requirements and settings they can specify as well, but don&#039;t worry about that at this point.&amp;lt;br /&amp;gt;&lt;br /&gt;
The important point is that they can&#039;t choose which cache backend to use, they can only choose the type of cache they want from the three detailed above.&lt;br /&gt;
&lt;br /&gt;
===How it ties together===&lt;br /&gt;
&lt;br /&gt;
This is best described in relation to roles played in an organisation.&lt;br /&gt;
&lt;br /&gt;
# The system administrator installs the cache backends you wish to use. Memcached, XCache, APC and so on.&amp;lt;br /&amp;gt;Moodle doesn&#039;t know about these, they are outside of Moodle&#039;s scope and purely the responsibility of your system administrator.&lt;br /&gt;
# The Moodle administrator creates a cache store instance in Moodle for each backend the site will make use of.&amp;lt;br /&amp;gt;There can be one or more cache stores instances for each backend. Some backends like Memcached have settings to create separated spaces within one backend.&lt;br /&gt;
# The developer has created caches in code and is using them to store data.&amp;lt;br /&amp;gt;He doesn&#039;t know anything about how you will use your caches, he just creates a &amp;quot;cache&amp;quot; and tells Moodle what type it is best for it.&lt;br /&gt;
# The Moodle administrator creates a mapping between a cache store instance and a cache.&amp;lt;br /&amp;gt;That mapping tells Moodle to use the backend you specify to store the data the developer wants cached.&lt;br /&gt;
&lt;br /&gt;
In addition to that, you can take things further still.&lt;br /&gt;
* You can map many caches to a single cache store instance.&lt;br /&gt;
* You can map multiple cache store instances to a single cache with priority (primary ... final)&lt;br /&gt;
* You can map a cache store instance to be the default store used for all caches of a specific type that don&#039;t otherwise have specific mappings.&lt;br /&gt;
&lt;br /&gt;
If this is the first time you are reading about the Moodle Universal Cache this probably sounds pretty complex but don&#039;t worry it will be discussed in better detail as we work through how to configure the caching in Moodle.&lt;br /&gt;
&lt;br /&gt;
==Advanced concepts==&lt;br /&gt;
These concepts are things that most sites will not need to know or concern themselves about.&lt;br /&gt;
&lt;br /&gt;
You should only start looking here if you are looking to maximise performance on large sites running over clustered services with shared cache backends, or on multi-site architecture again where information is being shared between sites.&lt;br /&gt;
&lt;br /&gt;
===Locking===&lt;br /&gt;
&lt;br /&gt;
The idea of locking is nothing new, it is the process of controlling access in order to avoid concurrency issues.&lt;br /&gt;
&lt;br /&gt;
MUC has a second type of plugin, a cache lock plugin that gets used when caches require it. To date no caches have required it. A cache by nature is volatile and any information that is absolutely mission critical should be a more permanent data store likely the database.&lt;br /&gt;
&lt;br /&gt;
Nonetheless there is a locking system that cache definitions can require within their options and that will be applied when interacting with a cache store instance.&lt;br /&gt;
&lt;br /&gt;
===Sharing===&lt;br /&gt;
&lt;br /&gt;
Every bit of data that gets stored within a cache has a calculated unique key associated with it.&amp;lt;br /&amp;gt;&lt;br /&gt;
By default part of that key is the site identifier making any content stored in the cache specific to the site that stored it. For most sites this is exactly what you want.&amp;lt;br /&amp;gt;&lt;br /&gt;
However, in some situations, it&#039;s beneficial to allow multiple sites, or somehow linked sites to share cached data.&amp;lt;br /&amp;gt;&lt;br /&gt;
Of course, not all caches can be shared, however some certainly can and by sharing you can further reduce load and increase performance by maximising resource use.&lt;br /&gt;
&lt;br /&gt;
This is an advanced feature, if you choose to configure sharing please do so carefully.&lt;br /&gt;
&lt;br /&gt;
To make use of sharing you need to first configure identical cache store instances in the sites you want to share information, and then on each site set the sharing for the cache to the same value.&lt;br /&gt;
&lt;br /&gt;
; Sites with the same site ID: This is the default, it allows for sites with the same site ID to share cached information. It is the most restrictive but is going to work for all caches. All other options carry an element of risk in that you have to ensure the information in the cache is applicable to all sites that will be accessing it.&lt;br /&gt;
; Sites running the same version: All sites accessing the backend that have the same Moodle version can share the information this cache has stored in the cache store.&lt;br /&gt;
; Custom key: For this, you manually enter a key to use for sharing. You must then enter the exact same key into the other sites you want to share information.&lt;br /&gt;
; Everyone: The cached data is accessible to all other sites accessing the data. This option puts the ball entirely in the Moodle administrators court.&lt;br /&gt;
&lt;br /&gt;
As an example if you had several Moodle sites all the same version running on a server with APC installed you could decide to map the language cache to the APC store and configure sharing for all sites running the same version.&amp;lt;br /&amp;gt;&lt;br /&gt;
The language cache for sites on the same version is safe to share in many situations, it is used on practically every page, and APC is extremely fast. These three points may result in a nice wee performance boost for your sites.&amp;lt;br /&amp;gt;&lt;br /&gt;
It is important to consider with the language cache that by sharing it between sites any language customisations will also be shared.&lt;br /&gt;
&lt;br /&gt;
==The cache configuration screen==&lt;br /&gt;
&lt;br /&gt;
The cache configuration screen is your one stop shop for configuring caching in Moodle.&amp;lt;br /&amp;gt;&lt;br /&gt;
It gives you an overview of how caching is currently configured for your site and it provides links to all of the actions you can perform to configure caching to your specific needs.&lt;br /&gt;
&lt;br /&gt;
===Accessing the cache configuration screen===&lt;br /&gt;
&lt;br /&gt;
[[Image:cacheadmin29.png|thumb|500px|The cache configuration screen]]&lt;br /&gt;
&lt;br /&gt;
The cache configuration screen can only be accessed by users with the &#039;&#039;moodle/site:config&#039;&#039; capability. By default this is only admins.&amp;lt;br /&amp;gt;&lt;br /&gt;
Once logged in the configuration screen can be found in  &#039;&#039;&#039;Site Administration &amp;gt; Plugins &amp;gt; Caching &amp;gt; Configuration&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
===Installed cache stores===&lt;br /&gt;
&lt;br /&gt;
[[Image:ist29.png|thumb|500px|Installed cache stores screenshot]]&lt;br /&gt;
&lt;br /&gt;
This is showing you a list of cache store plugins that you have installed.&amp;lt;br /&amp;gt;&lt;br /&gt;
For each plugin you can quickly see whether it is ready to be used (any PHP requirements have been met), how many store instances already exist on this site, the cache types that this store can be used for, what features it supports (advanced) and any actions you can perform relating to this store.&lt;br /&gt;
&lt;br /&gt;
Often the only action available is to create a new store instance.&amp;lt;br /&amp;gt;&lt;br /&gt;
Most stores support having multiple instances, however not all as you will see that that the session cache and static request cache do not. For those two stores, it does not make sense to have multiple instances.&lt;br /&gt;
&lt;br /&gt;
===Configured store instances===&lt;br /&gt;
&lt;br /&gt;
[[Image:csi29.png|thumb|500px|Configured store instances screenshot]]&lt;br /&gt;
&lt;br /&gt;
Here you get a list of the cache store instances on this site.&lt;br /&gt;
&lt;br /&gt;
; &#039;&#039;&#039;Store name&#039;&#039;&#039;: The name given to this cache store instance when it is created so that you can recognise it. It can be anything you want and is only used so that you can identify the store instance.&lt;br /&gt;
; &#039;&#039;&#039;Plugin&#039;&#039;&#039;: The cache store plugin of which this is an instance of.&lt;br /&gt;
; &#039;&#039;&#039;Ready &#039;&#039;&#039;: A tick gets shown when all PHP requirements have been met as well as any connection or set-up requirements have been verified.&lt;br /&gt;
; &#039;&#039;&#039;Store mappings&#039;&#039;&#039;: The number of caches this store instance has been mapped to explicitly. Does not include any uses through default mappings (discussed below).&lt;br /&gt;
; &#039;&#039;&#039;Modes&#039;&#039;&#039;: The modes that this cache store instance can serve.&lt;br /&gt;
; &#039;&#039;&#039;Supports&#039;&#039;&#039;: The features supported by this cache store instance.&lt;br /&gt;
; &#039;&#039;&#039;Locking &#039;&#039;&#039;: Locking is a mechanism that restricts access to cached data to one process at a time to prevent the data from being overwritten. The locking method determines how the lock is acquired and checked.&lt;br /&gt;
; &#039;&#039;&#039;Actions&#039;&#039;&#039;: Any actions that can be performed against this cache store instance.&lt;br /&gt;
&lt;br /&gt;
===Known cache definitions===&lt;br /&gt;
&lt;br /&gt;
[[Image:caching-27-04-known-cache-definitions.png|thumb|500px|Known cache definitions screenshot]]&lt;br /&gt;
&lt;br /&gt;
The idea of a cache definition hasn&#039;t been discussed here yet. It is something controlled by the developer. When they create a cache they can do so in two ways, the first is by creating a cache definition. This is essentially telling Moodle about the cache they&#039;ve created. The second way is to create an Adhoc cache. Developers are always encouraged to use the first method. Only caches with a definition can be mapped and further configured by the admin. Adhoc caches will make use of default settings only.&amp;lt;br /&amp;gt;&lt;br /&gt;
Typically Adhoc caches are only permitted in situations where the cache is small and configuring it beyond defaults would provide no benefit to administrators. Really it&#039;s like saying you the administrator doesn&#039;t need to concern yourself with it.&lt;br /&gt;
&lt;br /&gt;
For each cache shown here you get the following information:&lt;br /&gt;
&lt;br /&gt;
; &#039;&#039;&#039;Definition&#039;&#039;&#039; : A concise description of this cache.&lt;br /&gt;
; &#039;&#039;&#039;Mode&#039;&#039;&#039;: The cache type this cache is designed for.&lt;br /&gt;
; &#039;&#039;&#039;Component &#039;&#039;&#039;: The code component the cache is associated with.&lt;br /&gt;
; &#039;&#039;&#039;Area&#039;&#039;&#039;: The area of code this cache is serving within the component.&lt;br /&gt;
; &#039;&#039;&#039;Store mappings&#039;&#039;&#039;: The store or stores that will be used for this cache.&lt;br /&gt;
; &#039;&#039;&#039;Sharing&#039;&#039;&#039;: How is sharing configured for this site.&lt;br /&gt;
; &#039;&#039;&#039;Actions&#039;&#039;&#039;: Any actions that can be performed on the cache. Typically you can edit the cache store instance mappings, edit sharing, and purge the cache.&lt;br /&gt;
&lt;br /&gt;
You&#039;ll also find at the bottom of this table a link title &amp;quot;Rescan definitions&amp;quot;. Clicking this link will cause Moodle to go off an check all core components, and installed plugins looking for changes in the cache definitions.&amp;lt;br /&amp;gt;&lt;br /&gt;
This happens by default during an upgrade, and if a new cache definition is encountered. However, should you find yourself looking for a cache that isn&#039;t there this may be worth a try.&amp;lt;br /&amp;gt;&lt;br /&gt;
It is also handy for developers as it allows them to quickly apply changes when working with caches. It is useful when tweaking cache definitions to find what works best.&lt;br /&gt;
&lt;br /&gt;
Information on specific cache definitions can be found on the [[Cache definitions]] page.&lt;br /&gt;
&lt;br /&gt;
===Summary of cache lock instances===&lt;br /&gt;
&lt;br /&gt;
[[Image:caching-27-05-summary-of-cache-lock-instances.png|thumb|500px|Summary of cache lock instances screenshot]]&lt;br /&gt;
&lt;br /&gt;
As mentioned above cache locking is an advanced concept in MUC.&amp;lt;br /&amp;gt;&lt;br /&gt;
The table here shows information on the configured locking mechanisms available to MUC. By default, just a single locking mechanism is available, file locking.&lt;br /&gt;
At present, there are no caches that make use of this and as such I won&#039;t discuss it further here.&lt;br /&gt;
&lt;br /&gt;
===Stores used when no mapping is present===&lt;br /&gt;
&lt;br /&gt;
[[Image:caching-27-06-stores-used-when-no-mapping-is-present.png|thumb|500px|Mapping of default stores screenshot]]&lt;br /&gt;
&lt;br /&gt;
This table quickly shows which cache store instances are going to be used for cache types if there are no specific mappings in place.&amp;lt;br /&amp;gt;&lt;br /&gt;
To simplify that, this shows the default cache stores for each type.&lt;br /&gt;
&lt;br /&gt;
At the bottom, you will notice there is a link &amp;quot;Edit mappings&amp;quot; that takes you to a page where you can configure this.&lt;br /&gt;
&lt;br /&gt;
==Adding cache store instances==&lt;br /&gt;
&lt;br /&gt;
The default configuration is going to work for all sites, however, you may be able to improve the performance of your sites by making use of various caching backends and techniques. The first thing you are going to want to do is to add cache store instances configured to connect to/use the cache backends you&#039;ve set up.&lt;br /&gt;
&lt;br /&gt;
===File cache===&lt;br /&gt;
&lt;br /&gt;
[[Image:caching-27-07-add-file-cache-store.png|thumb|300px|Adding a file cache store screenshot]]&lt;br /&gt;
&lt;br /&gt;
When on the cache configuration screen within the &#039;&#039;Installed cache stores&#039;&#039; table you should be able to see the File cache plugin, click &#039;&#039;`Add instance`&#039;&#039; to start the process of adding a file cache store instance.&lt;br /&gt;
&lt;br /&gt;
When creating a file cache there is in fact only one required param, the store name. The store name is used to identify the file store instance in the configuration interface and must be unique to the site.&lt;br /&gt;
It can be anything you want, but we would advice making it something that describes your intended use of the file store.&lt;br /&gt;
&lt;br /&gt;
The following properties can also be specified, customising where the file cache will be located, and how it operates.&lt;br /&gt;
&lt;br /&gt;
; &#039;&#039;&#039;Cache path&#039;&#039;&#039;: Allows you to specify a directory to use when storing cache data on the file system. Of course the user the web server is running as must have read/write access to this directory. By default (blank) the Moodledata directory will be used.&lt;br /&gt;
; &#039;&#039;&#039;Auto create directory&#039;&#039;&#039;: If enabled when the cache is initialised if the specified directory does not exist Moodle will create it. If this is specified and the directory does not exist the cache will be deemed not ready and will not be used.&lt;br /&gt;
; &#039;&#039;&#039;Single directory store&#039;&#039;&#039;: By default, the file store will create a subdirectory structure to store data in. The first 3 characters of the data key will be used as a directory. This is useful in avoiding file system limits it the file system has a maximum number of files per directory. By enabling this option the file cache will not use subdirectories for storage of data. This leads to a flat structure but one that is more likely to hit file system limits. Use with care.&lt;br /&gt;
; &#039;&#039;&#039;Prescan directory&#039;&#039;&#039;: One of the features the file cache provides is to prescan the storage directory when the cache is first used. This leads to faster checks of files at the expense of an in-depth read.&lt;br /&gt;
&lt;br /&gt;
The file cache store is the default store used for application caches and by default, the moodledata directory gets used for the cache.&lt;br /&gt;
File access can be a taxing resource in times of increased load and the following are some ideas about configuring alternative file stores in order to improve performance.&lt;br /&gt;
&lt;br /&gt;
First up is there a faster file system available for use on your server.&amp;lt;br /&amp;gt;&lt;br /&gt;
Perhaps you have an SSD installed but are not using it for your moodledata directory because space is a premium.&amp;lt;br /&amp;gt;&lt;br /&gt;
You should consider creating a directory or small partition on your SSD and creating a file store to use that instead of your Moodle data directory.&lt;br /&gt;
&lt;br /&gt;
Next, you&#039;ve not got a faster drive available for use, but you do have plenty of free space.&amp;lt;br /&amp;gt;&lt;br /&gt;
Something that may be worth giving a shot would be to create a small partition on the drive you&#039;ve got installed that uses a performance orientated file system.&amp;lt;br /&amp;gt;&lt;br /&gt;
Many Linux installations these days, for example, use EXT4, a nice file system but one that has overheads due to the likes of journalling.&amp;lt;br /&amp;gt;&lt;br /&gt;
Creating a partition and using a file system that has been optimised for performance may give you that little boost you are looking for. Remember caches are designed to be volatile and choosing a file system for a cache is a different decision to choosing a file system for your server.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally, if you&#039;re ready to go to lengths and have an abundance of memory on your server you could consider creating a ramdisk/tmpfs and pointing a file store at that.&lt;br /&gt;
Purely based in memory, it is volatile exactly like the cache is, and file system performance just isn&#039;t going to get much better than this.&amp;lt;br /&amp;gt;&lt;br /&gt;
Of course, you will be limited in space and you are essentially taking that resource away from your server.&lt;br /&gt;
&lt;br /&gt;
Please remember with all of these ideas that they are just ideas.&amp;lt;br /&amp;gt;&lt;br /&gt;
Whatever you choose - test, test, test, be sure of the decision you make.&lt;br /&gt;
&lt;br /&gt;
===Memcached===&lt;br /&gt;
&lt;br /&gt;
[[Image:caching-27-09-add-memcached-store.png|thumb|300px|Add Memcached store screenshot]]&lt;br /&gt;
&lt;br /&gt;
You must first have a [https://docs.moodle.org/501/en/Performance_recommendations#MemCached Memcached server] you can access and have the [https://docs.moodle.org/501/en/Performance_recommendations#MemCached Memcached PHP extension] installed and enabled on your server.&lt;br /&gt;
&lt;br /&gt;
There are two required parameters in configuring a Memcached store.&lt;br /&gt;
&lt;br /&gt;
; &#039;&#039;&#039;Store name&#039;&#039;&#039;: It is used to identify the store instance in the configuration interface and must be unique to the site.&lt;br /&gt;
; &#039;&#039;&#039;Servers&#039;&#039;&#039;: The servers you wish this cache store use. See below for details.&lt;br /&gt;
&lt;br /&gt;
Servers should be added one per line and each line can contain 1 to 3 properties separated by colons.&lt;br /&gt;
# The URL or IP address of the server (required)&lt;br /&gt;
# The port the server is listening on (optional)&lt;br /&gt;
# The weight to give this server (optional)&lt;br /&gt;
&lt;br /&gt;
For example, if you had two Memcached instances running on your server, one configured for the default port, and one configured for 11212 you would use the following:&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
127.0.0.1&lt;br /&gt;
127.0.0.1:11212&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
There are also several optional parameters you can set when creating a Memcached store.&lt;br /&gt;
&lt;br /&gt;
; &#039;&#039;&#039;Use compression&#039;&#039;&#039;: Defaults to true, but can be disabled if you wish.&lt;br /&gt;
; &#039;&#039;&#039;Use serialiser&#039;&#039;&#039;: Allows you to select which serialiser gets used when communicating with the Memcached server. By default the Memcached extension and PHP only provide one serialised, however, there is a couple of others available for installation if you go looking for them. One, for example, is the igbinary found at https://github.com/igbinary/igbinary.&lt;br /&gt;
; &#039;&#039;&#039;Prefix key&#039;&#039;&#039;: Allows you to set some characters that will be prefixed to all keys before interacting with the server.&lt;br /&gt;
; &#039;&#039;&#039;Hash method&#039;&#039;&#039;: The hash method provided by the Memcached extension is used by default here. However, you can select to use an alternative if you wish. http://www.php.net/manual/en/memcached.constants.php provides little information on the options available. Please note if you wish to you can also override the default hash function PHP uses within your php.ini.&lt;br /&gt;
; &#039;&#039;&#039;Buffer writes &#039;&#039;&#039;: Disabled by default, and for good reason. Turning on buffered writes will minimise interaction with the Memcached server by buffering io operations. The downside to this is that on a system with any concurrency there is a good chance multiple requests will end up generating the data because no one had pushed it to the Memcached server when they first requested it. Enabling this can be advantageous for caches that are only accessed in capability controlled areas for example where multiple interactions are taking a toll on network resources or such. But that is definitely on the extreme tweaking end of the scale.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Important implementation notes&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* The Memcached extension does not provide a means of deleting a set or entries. Either a single entry is deleted, or all entries are deleted.&amp;lt;br /&amp;gt;&lt;br /&gt;
Because of this, it is important to note that when you purge a Memcached store within Moodle it deletes ALL entries in the Memcached server. Not just those relating to Moodle.&amp;lt;br /&amp;gt;&lt;br /&gt;
For that reason, it is highly recommended to use dedicated Memcached servers and to &#039;&#039;&#039;NOT&#039;&#039;&#039; configure any other software to use the same servers. Doing so may lead to performance depreciation and adverse effects.&lt;br /&gt;
* Likewise if you want to use Memcached for caching and for sessions in Moodle it is essential to use two Memcached servers. One for sessions, and one for caching. Otherwise, a cache purge in Moodle will purge your sessions!&lt;br /&gt;
&lt;br /&gt;
===MongoDB===&lt;br /&gt;
&lt;br /&gt;
[[Image:caching-27-10-add-mongodb-store.png|thumb|300px|Add MongoDB store screenshot]]&lt;br /&gt;
&lt;br /&gt;
MongoDB is an open source document orientated NoSQL database. Check out their website www.mongodb.org for more information.&lt;br /&gt;
&lt;br /&gt;
; &#039;&#039;&#039;Store name&#039;&#039;&#039;: Used to identify the store instance in the configuration interface and must be unique to the site.&lt;br /&gt;
; &#039;&#039;&#039;Server &#039;&#039;&#039;: This is the connection string for the server you want to use. Multiple servers can be specified using a comma-separated list.&lt;br /&gt;
; &#039;&#039;&#039;Database &#039;&#039;&#039;: The name of the database to make use of.&lt;br /&gt;
; &#039;&#039;&#039;Username&#039;&#039;&#039;: The username to use when making a connection.&lt;br /&gt;
; &#039;&#039;&#039;Password &#039;&#039;&#039;: The password of the user being used for the connection.&lt;br /&gt;
; &#039;&#039;&#039;Replica set &#039;&#039;&#039;: The name of the replica set to connect to. If this is given the master will be determined by using the ismaster database command on the seeds, so the driver may end up connecting to a server that was not even listed.&lt;br /&gt;
; &#039;&#039;&#039;Use&#039;&#039;&#039;: If enabled the usesafe option will be used during insert, get, and remove operations. If you&#039;ve specified a replica set this will be forced on anyway.&lt;br /&gt;
; &#039;&#039;&#039;Use safe value&#039;&#039;&#039;: You can choose to provide a specific value for use safe. This will determine the number of servers that operations must be completed on before they are deemed to have been completed.&lt;br /&gt;
; &#039;&#039;&#039;Use extended keys&#039;&#039;&#039;: If enabled full key sets will be used when working with the plugin. This isn&#039;t used internally yet but would allow you to easily search and investigate the MongoDB plugin manually if you so choose. Turning this on will add a small overhead so should only be done if you require it.&lt;br /&gt;
&lt;br /&gt;
==Mapping a cache to a store instance==&lt;br /&gt;
&lt;br /&gt;
[[Image:caching-27-11-store-mapping.png|thumb|300px|Cache definition store mapping screenshot]]&lt;br /&gt;
&lt;br /&gt;
Mapping a store instance to a cache tells Moodle to use that store instance when the cache is interacted with. This allows the Moodle administrator to control where information gets stored and, most importantly, optimise the performance of your site by making the most of the resources available to your site.&lt;br /&gt;
&lt;br /&gt;
To set a mapping first browse to the cache configuration screen.&amp;lt;br /&amp;gt;&lt;br /&gt;
Proceed to find the &#039;&#039;Known cache definitions&#039;&#039; table and within it find the cache you&#039;d like to map.&lt;br /&gt;
In the actions column select the link for &#039;&#039;&#039;Edit mappings&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The screen you are presented allows you to map one or more cache store instances to be used by this cache.&amp;lt;br /&amp;gt;&lt;br /&gt;
You are presented with several drop-downs that allow you to map one or more cached. All mapped caches get interacted with. The &amp;quot;Primary&amp;quot; store is the store that will be used first when interacting with the cache.&lt;br /&gt;
The &amp;quot;Final&amp;quot; mapped store will be the last cache store interacted with.&amp;lt;br /&amp;gt;&lt;br /&gt;
How this interaction occurs is documented below.&lt;br /&gt;
&lt;br /&gt;
If no stores are mapped for the cache then the default stores are used. Have a look at the section below for information on changing the default stores.&lt;br /&gt;
&lt;br /&gt;
If a single store instance is mapped to the cache the following occurs:&lt;br /&gt;
; &#039;&#039;Getting data from the cache&#039;&#039;: Moodle asks the cache to get the data. The cache attempts to get it from the store. If the store has it, it gives it to the cache, and the cache gives it to Moodle so that it can use the data. If the store doesn&#039;t have it, then fail is returned and Moodle will have to generate the data and will most likely then send it to the cache.&lt;br /&gt;
; &#039;&#039;Storing data in the cache&#039;&#039;: Moodle will ask the cache to store some data, and the cache will give it to the cache store.&lt;br /&gt;
&lt;br /&gt;
If multiple store instances are mapped to the cache the following occurs:&lt;br /&gt;
; &#039;&#039;Getting data from a store&#039;&#039;: Moodle asks the cache to get the data. The cache attempts to get it from the first store. If the first store has it then it returns the data to the cache and the cache returns it to Moodle. If the first store doesn&#039;t have the data then it attempts to get the data from the second store. If the second store has it it returns it to the first store that then stores it itself before returning it to the cache. If it doesn&#039;t then the next store is used. This continues until either the data is found or there are no more stores to check.&lt;br /&gt;
; &#039;&#039;Storing data in the cache&#039;&#039;: Moodle will ask the cache to store some data, the cache will give it to every mapped cache store for storage.&lt;br /&gt;
&lt;br /&gt;
The main advantage of assigning multiple stores is that you can introduce cache redundancy. Of course, this introduces an overhead so it should only be used when actually required.&lt;br /&gt;
The following is an example of when mapping multiple stores can provide an advantage:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Scenario:&lt;br /&gt;
You have a web server that has a Moodle site as well as other sites.&lt;br /&gt;
You also have a Memcached server that is used by several sites including Moodle.&lt;br /&gt;
&lt;br /&gt;
Memcached has a limited size cache, that when full and requested to store more information frees space by dropping the least used cache entries.&lt;br /&gt;
&lt;br /&gt;
You want to use Memcached for your Moodle site because it is fast, however, you are aware that it may introduce more cache misses because it is a heavily used Memcached server.&lt;br /&gt;
&lt;br /&gt;
Solution:&lt;br /&gt;
To get around this you map two stores to caches you wish to use Memcached.&lt;br /&gt;
You make Memcached the primary store, and you make the default file store the final cache store.&lt;br /&gt;
&lt;br /&gt;
Explanation:&lt;br /&gt;
By doing this you&#039;ve created redundancy; when something is requested, Moodle first tries to get it from Memcached (the fastest store) and if it is not there it proceeds to check the file cache.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Just a couple more points of interest:&lt;br /&gt;
&lt;br /&gt;
* Mapping multiple caches will introduce overhead, the more caches mapped the more overhead.&lt;br /&gt;
* Consider the cache stores you are mapping to, if data remains there once set then there is no point mapping any further stores after it. This technique is primarily valuable in situations where data is not guaranteed to remain after being set.&lt;br /&gt;
* Always test your configuration. Enable the display of performance information and then watch which stores get used when interacting with Moodle in such a way as to trigger the cache.&lt;br /&gt;
&lt;br /&gt;
==Setting the stores that get used when no mapping is present==&lt;br /&gt;
&lt;br /&gt;
[[Image:caching-27-12-default-store-mapping.png|thumb|300px|Setting which stores get used when no mapping is present screenshot]]&lt;br /&gt;
&lt;br /&gt;
This is really setting the default stores that get used for a cache type when there is not a specific mapping that has been made for it.&lt;br /&gt;
&lt;br /&gt;
To set a mapping first browse to the cache configuration screen.&amp;lt;br /&amp;gt;&lt;br /&gt;
Proceed to find the &#039;&#039;Stores used when no mapping is present&#039;&#039; table.&amp;lt;br /&amp;gt;&lt;br /&gt;
After the table you will find a link &#039;&#039;&#039;Edit mappings&#039;&#039;&#039;, click this.&lt;br /&gt;
&lt;br /&gt;
On the screen you are presented with you can select one store for each cache type to use when a cache of the corresponding type gets initialised and there is not an explicit mapping for it.&lt;br /&gt;
&lt;br /&gt;
Note that on this interface the drop downs only contain store instances that are suitable for mapping to the type.&lt;br /&gt;
Not all instances will necessarily be shown. If you have a store instance you don&#039;t see then it is not suitable for &#039;&#039;&#039;ALL&#039;&#039;&#039; the cache definitions that exist.&amp;lt;br /&amp;gt;&lt;br /&gt;
You will not be able to make that store instance the default, you will instead need to map it explicitly to each cache you want/can use it for.&lt;br /&gt;
&lt;br /&gt;
==Configuring caching for your site==&lt;br /&gt;
&lt;br /&gt;
This is where it really gets tricky, and unfortunately, there is no step-by-step guide to this.&lt;br /&gt;
&lt;br /&gt;
How caching can be best configured for a site comes down entirely to the site in question and the resources available to it.&lt;br /&gt;
&lt;br /&gt;
What can be offered are some tips and tricks to get you thinking about things and to perhaps introduce ideas that will help you along the way.&lt;br /&gt;
&lt;br /&gt;
If you are reading this document and you&#039;ve learnt a thing or two about configuring caching on your site share your learnings by adding to the points here.&lt;br /&gt;
&lt;br /&gt;
* Plan it. It&#039;s a complex thing. Understand your site, understand your system, and really think how users will be using it all.&lt;br /&gt;
* If you&#039;ve got a small site the gains aren&#039;t likely to be significant, if you&#039;ve got a large site getting this right can lead to a substantial boost in performance.&lt;br /&gt;
* When looking at cache backends really research the advantages and disadvantages of each. Keep your site in mind when thinking about them. Depending upon your site you may find that no one cache backend is going to meet the entire needs of your site and that you will benefit from having a couple of backends at your disposal.&lt;br /&gt;
* Things aren&#039;t usually as simple as installing a cache backend and then using it. Pay attention to configuration and try to optimise it for your system. Test it separately and have an understanding of its performance before telling Moodle about it. The cache allows you to shift load off the database and reduce page request processing.&amp;lt;br /&amp;gt;If for instance you have Memcached installed but your connection has not been optimised for it you may well find yourself in a losing situation before you even tell Moodle about the Memcached server.&lt;br /&gt;
* When considering your default store instances keep in mind that they must operate with data sets of varying sizes and frequency. For a large site really your best bet is to look at each cache definition and map it to a store that is best suited for the data it includes and the frequency of access.&amp;lt;br /&amp;gt;Cache definitions have been documented [[Cache definitions]].&lt;br /&gt;
* Again when mapping store instances to caches really think about the cache you are mapping and make a decision based upon what you understand of your site and what you know about the cache.&amp;lt;br /&amp;gt;Cache definitions have been documented [[Cache definitions]].&lt;br /&gt;
* Test your configuration. If you can stress test it even better! If you turn on performance information Moodle will also print cache access information at the bottom of the screen. You can use this to visually check the cache is being used as you expect, and it will give you an indication of where misses etc are occurring.&lt;br /&gt;
* Keep an eye on your backend. Moodle doesn&#039;t provide a means of monitoring a cache backend and that is certainly something you should keep an eye on. Memcached for instance drops least used data when full to make room for new entries. APC, on the other hand, stops accepting data when full. Both will impact your performance if full and you&#039;re going to encounter misses. However APC when full is horrible, but it is much faster.&lt;br /&gt;
&lt;br /&gt;
===More on performance testing===&lt;br /&gt;
&lt;br /&gt;
Two links that might be useful to anyone considering testing performance on their own servers:&lt;br /&gt;
&lt;br /&gt;
* [http://www.iteachwithmoodle.com/2012/10/12/moodle-performance-testing-how-much-more-horsepower-do-each-new-versions-of-moodle-require/ Moodle performance testing: how much more horsepower do each new versions of Moodle require?]&lt;br /&gt;
* [http://www.iteachwithmoodle.com/2012/10/11/how-to-stress-test-your-moodle-server-using-loadstorm/ How to load test your Moodle server using Loadstorm]&lt;br /&gt;
&lt;br /&gt;
===Performance advice for load-balanced web servers===&lt;br /&gt;
&lt;br /&gt;
# In Moodle 2.4 onwards with load-balanced web servers, don&#039;t use the default caching option that stores the data in moodledata on a shared network drive.   Use memcached instead.   See Tim Hunt&#039;s article on http://tjhunt.blogspot.de/2013/05/performance-testing-moodle.html&lt;br /&gt;
# In Moodle 2.6 onwards make sure you set $CFG-&amp;gt;localcachedir to some local directory in config.php (for each node).  This will speed up some of the disk caching that happens outside of MUC, such as themes, javascript, libraries etc.&lt;br /&gt;
&lt;br /&gt;
==Troubleshooting==&lt;br /&gt;
&lt;br /&gt;
Have you encountered a problem, or found yourself in a conundrum? Perhaps the answer is in this section. If not when you find an answer, how about you share it here.&lt;br /&gt;
&lt;br /&gt;
==More information==&lt;br /&gt;
* [[Cache definitions]] Information on the cache definitions found within Moodle.&lt;br /&gt;
* [[:dev:Cache API|Cache API]] Details of the Cache API.&lt;br /&gt;
* [[:dev:Cache API - Quick reference|Cache API - Quick reference]] A short, code focused page of on the Cache API.&lt;br /&gt;
* [[:dev:The Moodle Universal Cache (MUC)|The Moodle Universal Cache (MUC)]] The original cache specification.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Cache related forum discussions that may help in understanding MUC:&lt;br /&gt;
* [https://moodle.org/mod/forum/discuss.php?d=217195 MUC is here, now what?] &lt;br /&gt;
* [https://moodle.org/mod/forum/discuss.php?d=226123 Status of MUC?]&lt;br /&gt;
* [https://moodle.org/mod/forum/discuss.php?d=222250 Putting cachedir on local disks in cluster]&lt;br /&gt;
* [https://moodle.org/mod/forum/discuss.php?d=232122 moodle cachestore_file]&lt;br /&gt;
* [https://moodle.org/mod/forum/discuss.php?d=378416#p1526130 Why using a not-completely-shared application cache will fail]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Other:&lt;br /&gt;
* [http://jfilip.ca/2013/08/20/moodle-2-4-5-vs-2-5-1-performance-and-muc-apc-cache-store/ Moodle 2.4.5 vs. 2.5.1 performance and MUC APC cache store] blog post by Justin Filip&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [[MUC FAQ]]&lt;br /&gt;
&lt;br /&gt;
[[de:Caching]]&lt;br /&gt;
[[es:Cacheando]]&lt;br /&gt;
[[fr:Mettre en cache]]&lt;br /&gt;
[[ja:キャッシング]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=MUC_FAQ&amp;diff=136776</id>
		<title>MUC FAQ</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=MUC_FAQ&amp;diff=136776"/>
		<updated>2020-03-19T15:01:33Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Performance}}&lt;br /&gt;
The Moodle Unified Cache (MUC) on initial inspection can appear to be a complex off-putting beast and this can lead to it either being ignored or, as is often the case, poorly configured.&lt;br /&gt;
&lt;br /&gt;
Here is what you need to know (so you can ignore [[Caching| the rest]]).&lt;br /&gt;
&lt;br /&gt;
==What is the MUC?==&lt;br /&gt;
&lt;br /&gt;
The MUC is a cache, a cache is a store of data which is easier/faster to retrieve than if it came from it&#039;s source. It saves (computing) effort and makes Moodle faster.&lt;br /&gt;
&lt;br /&gt;
==Should I be using the MUC?==&lt;br /&gt;
&lt;br /&gt;
Yes, and sites running Moodle 2.4 or above are already using the MUC.&lt;br /&gt;
&lt;br /&gt;
If a site is already running fine then consider &#039;&#039;&#039;not changing anything&#039;&#039;&#039; as &amp;quot;[https://en.wikipedia.org/wiki/Program_optimization#When_to_optimize premature optimization is the root of all evil]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
By default MUC uses the file system to store it&#039;s cached objects, this already speeds thing up greatly compared to using no MUC at all. By further configuring the MUC we are just trying to make it faster.&lt;br /&gt;
&lt;br /&gt;
==What is wrong with the default file-system MUC?==&lt;br /&gt;
&lt;br /&gt;
Not much at all, but the MUCs performance is dependant on the read/write speed of its storage medium. &lt;br /&gt;
&lt;br /&gt;
Typically disks are slow but safe (persistent) storage. MUC data does not need to kept safe as it can always be regenerated and so can afford to be kept somewhere fast yet volatile, like RAM.&lt;br /&gt;
&lt;br /&gt;
==How can I make MUC faster?==&lt;br /&gt;
&lt;br /&gt;
Using a RAM based cache is the best way to make the MUC fast and there a few tools we can use to do this, such as, tmpfs, Memcached, APC, Redis and overtime probably more... A good place to start if unsure of any specific requirements is Memcached as it is common, well tested, fast and easy to deploy.&lt;br /&gt;
&lt;br /&gt;
==How do I deploy Memcached==&lt;br /&gt;
&lt;br /&gt;
This is by no means exhaustive, and will vary depending on the OS etc. But for simplicities sake...&lt;br /&gt;
&lt;br /&gt;
* Install Memcached and it&#039;s PHP support in a way compatible with the operating system e.g. in Debian/Ubuntu&lt;br /&gt;
  apt-get install memcached php5-memcached&lt;br /&gt;
* Confiure Memcached, or at least become aware of it&#039;s default setup, e.g.&lt;br /&gt;
** 64MB of RAM allocation&lt;br /&gt;
** Runs on port 11211&lt;br /&gt;
* In Moodle go to&lt;br /&gt;
**&#039;Site administration &amp;gt; Plugins &amp;gt; Caching &amp;gt; Configuration&#039;&lt;br /&gt;
**Under &#039;&#039;&#039;Installed cache stores&#039;&#039;&#039; look for Memcached and click the &#039;&#039;&#039;Add instance&#039;&#039;&#039; action.&lt;br /&gt;
**Give the store a name, like &#039;Memcached_MUC&#039;&lt;br /&gt;
**In &#039;&#039;&#039;server&#039;&#039;&#039;, assuming the basic config above,  type &#039;localhost&#039;. &#039;&#039;&#039;Save Changes&#039;&#039;&#039;.&lt;br /&gt;
**Scroll to the bottom of the &#039;&#039;&#039;Cache administration&#039;&#039;&#039; page.&lt;br /&gt;
**Under &#039;&#039;&#039;Stores used when no mapping is present&#039;&#039;&#039; click &#039;&#039;&#039;Edit Mappings&#039;&#039;&#039;.&lt;br /&gt;
**In the &#039;&#039;&#039;Application&#039;&#039;&#039; drop down select the caches name. &#039;&#039;&#039;Save Changes&#039;&#039;&#039;.&lt;br /&gt;
* Profit&lt;br /&gt;
&lt;br /&gt;
See [[Caching]] for more details.&lt;br /&gt;
&lt;br /&gt;
==How much memory should I allocate to MUC?==&lt;br /&gt;
&lt;br /&gt;
The default on most Memcached deployments is 64MB and this is probably &#039;&#039;&#039;more&#039;&#039;&#039; than enough for a standard Moodle install. As a real world example, checking a live site with ~6000 individual user logins over the last 24 hours, was Memcached MUC usage was ~11MB (Moodle 2.8 with 26 additional plugins).&lt;br /&gt;
&lt;br /&gt;
Most importantly when implementing an in memory cache such as Memcached is to monitor and understand its use in &#039;&#039;&#039;your own&#039;&#039;&#039; deployment as requirements can vary wildly.&lt;br /&gt;
&lt;br /&gt;
==I&#039;m already using Memcached for sessions, can I just reuse that?==&lt;br /&gt;
&lt;br /&gt;
Nope, afraid not. If the MUC purges so will sessions, all users will be logged out. Two Memcached instances are required in this scenario, one for sessions and one MUC. An example of how to do this can be found [https://moopi.uk/course/view.php?id=4#section-5 here].&lt;br /&gt;
&lt;br /&gt;
==How can I tell what Cache store I am really using==&lt;br /&gt;
[[File:perf.png|thumb|300px]]&lt;br /&gt;
Temporarily switch on performance debugging at,&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Site administration  Development &amp;gt; Debugging &amp;gt; Performance info&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
This adds some useful information to the the footer of all pages (if your theme supports it) including MUC objects and the cachestore they came from .&lt;br /&gt;
&lt;br /&gt;
==I have a cluster of servers, &amp;lt;further question here&amp;gt;?==&lt;br /&gt;
&lt;br /&gt;
You are probably beyond the target audience of this FAQ in terms of your system administration foo. &lt;br /&gt;
&lt;br /&gt;
==What is that little grey triangle?==&lt;br /&gt;
[[File:muc-triangle.png|thumb|300px]]&lt;br /&gt;
This appears under &#039;&#039;&#039;Stores used when no mapping is present&#039;&#039;&#039; when the default Application Cache store mapping does not support a requirement of one or more of the cache definitions. &lt;br /&gt;
&lt;br /&gt;
For example, of the default application caches, &#039;&#039;&#039;Event Invalidation&#039;&#039;&#039; is not supported by Memcached. This is because Event Invalidation requires &#039;&#039;&#039;Data Guarantee&#039;&#039;&#039; which ensures data exists in the cache once it is put there. It is never cleaned up to free space or because it has not been recently used. Because Memcached evicts objects from it&#039;s cache it cannot be used for Event Invalidation.&lt;br /&gt;
&lt;br /&gt;
This is not a problem as Event Invalidation will simply use the file-system cache, or if specified a compatible secondary application cache, or one allocated directly to the Event Invalidation definition.&lt;br /&gt;
&lt;br /&gt;
==Where can I find more documentation on setting up the MUC?==&lt;br /&gt;
&lt;br /&gt;
See [[Caching]].&lt;br /&gt;
&lt;br /&gt;
If you are further interested in the nuts and bolts of the caching system, e.g. cache features (ttl, data guarantee, etc) the [https://github.com/moodle/moodle/blob/master/cache/README.md developers api] is a good place to look.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [https://moodle.org/mod/forum/discuss.php?d=323628 MUC and localcache] forum discussion&lt;br /&gt;
&lt;br /&gt;
[[de:MUC FAQ]]&lt;br /&gt;
[[es:MUC FAQ]]&lt;br /&gt;
[[fr:FAQ sur Moodle Unified Cache]]&lt;br /&gt;
[[ja:MUC_FAQ]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Cache_definitions&amp;diff=136686</id>
		<title>Cache definitions</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Cache_definitions&amp;diff=136686"/>
		<updated>2020-02-26T15:02:38Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Performance}}&lt;br /&gt;
This page contains information on the cache definitions within core. This information will likely be of most use to those administrators who are really trying to get the most out the caching system in Moodle. The information about each cache should help in deciding which backends to use for which definitions.&lt;br /&gt;
&lt;br /&gt;
For small sites, or those running on a single server likely adopting a single backend such as memcache is going to give you an immediate performance boost.&amp;lt;br /&amp;gt;&lt;br /&gt;
However with a bit of planning and some careful mapping likely you can improve things further.&lt;br /&gt;
&lt;br /&gt;
==What you will find in this document==&lt;br /&gt;
Each cache definition found within core will be under its own heading and will include a description of the cache.&amp;lt;br /&amp;gt;&lt;br /&gt;
As well as the name and description the following information will also be details:&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; When this cache definition was first introduced into Moodle.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; The code component this cache belongs to and the area (unique simple name) given to it.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; Will state if this cache is expected to be of fixed size, or can be expected to grow as the site data grows. Perhaps some information on how the cache will grow.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; Which users can expect to benefit from the cache.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; An indication of the anticipated cache use on a site. A value between 1 and 5. If the cache is of fixed size and is accessed expected to be utilised on every page it will be given a 5 for priority as it can be expected that assigning that cache to the fastest backend available would be the good idea. In contrast a priority of 1 would be given to a cache that is expected to grow quickly, is only accessed on specific pages, and only applies to some users (e.g. teachers, or the admin). This cache should be the least of your concerns when deciding upon how to implement caching on your site.&lt;br /&gt;
&lt;br /&gt;
==A note about cache configuration on large sites==&lt;br /&gt;
Each different cache can be configured independently, allowing admins to &amp;quot;tune&amp;quot; their setup for particular systems.&amp;lt;br /&amp;gt;&lt;br /&gt;
By default these caches are all set to use the file system, which is usually fine on a small one-server system.&lt;br /&gt;
&lt;br /&gt;
On a cluster, however, these defaults can cause problems because shared filesystems are slow, so in these cases we recommend you use a faster shared caching backend like memcached instead. Note that most of these caches operating under the assumption that they are shared.&amp;lt;br /&amp;gt;&lt;br /&gt;
In some cases you can choose to use a non-shared cache like the local filesystem however in these instances you be careful to purge caches MANUALLY as part of system administration.&lt;br /&gt;
&lt;br /&gt;
==Application caches==&lt;br /&gt;
Application caches are shared caches.&lt;br /&gt;
&lt;br /&gt;
Why &#039;&#039;&#039;must&#039;&#039;&#039; they be be shared? See the [https://moodle.org/mod/forum/discuss.php?d=378416#p1526130 Can Redis Shared Application cache run on local nodes?] discussion in the Using Moodle forum.&lt;br /&gt;
&lt;br /&gt;
===Accumulated information about modules and sections for each course===&lt;br /&gt;
&lt;br /&gt;
Accumulated information about course modules, and sections used to print the course page as well as in calls to &#039;&#039;get_fast_modinfo()&#039;&#039;.&amp;lt;br /&amp;gt;&lt;br /&gt;
This cache gets forcefully reset within &#039;&#039;rebuild_course_cache()&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
This is an excellent cache to optimise caching for on a production site.&amp;lt;br /&amp;gt;&lt;br /&gt;
It is accessed primarily for the course view page, and very frequently hit and often expensive page and it is utilised within &#039;&#039;get_fast_modinot()&#039;&#039; a function that is called often in Moodle when querying or displaying information on a course, section or activity.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.6&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, coursemodinfo&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; exponential, the number of courses, sections within those courses, and activities within each section will determine the size of this cache.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone. This cache isn&#039;t accessed on every page, however as its associated with courses you can expect its accces to still be high.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 4&lt;br /&gt;
&lt;br /&gt;
===Calendar subscriptions===&lt;br /&gt;
&lt;br /&gt;
Caches calendar subscriptions.&amp;lt;br /&amp;gt;&lt;br /&gt;
This is a very simple cache that stores the calendar subscription records from the database for quick, specific access.&lt;br /&gt;
&lt;br /&gt;
This should be considered a low priority cache unless your users are likely to be creating many calendar subscriptions.&amp;lt;br /&amp;gt;&lt;br /&gt;
The actual data being stored is going to be very small, should you have lots of calendar subscriptions mapping this cache definition to a fast, but small backend would be ideal.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039;  core, calendar_subscriptions&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; determined by the number of calendar subscriptsion created by users. Entirely dependent on your users.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone who has a calendar subscript, on calendar pages, or pages where the calendar block is being displayed.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 1&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* What is cached:- Record entries from &#039;event_subscriptions&#039; table, representing various calendar subscriptions.&lt;br /&gt;
* When the cache is updated:- When a calendar subscription is updated or deleted.&lt;br /&gt;
* How often it is hit:- Everytime a calendar subscription detail is fetched.&lt;br /&gt;
* When should the cache be purged completely:- This should not be needed.&lt;br /&gt;
&lt;br /&gt;
===Concept linking [mod_glossary]===&lt;br /&gt;
&lt;br /&gt;
Caches concepts for the glossary filter.&lt;br /&gt;
&lt;br /&gt;
Concepts are cached in relation to either the site or a course. The course ID is used as the key if they are for a course, 0 is used as the key for site concepts.&amp;lt;br /&amp;gt;&lt;br /&gt;
Each entry in the cache is an array consisting of two items, the first is an array of glossaries, the second an array of concepts.&amp;lt;br /&amp;gt;&lt;br /&gt;
The actual data being stored is minimal, even on a large site the storage requirement for this cache should be relatively small.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Important&#039;&#039;&#039; This cache CANNOT be a local cache, it must be shared.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.7 (MDL-44366)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; mod_glossary, concepts&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; exponential, the number of glossaries, and the number of terms within those glossaries will determine the size of this cache.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone when the glossary filter is enabled.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 3&lt;br /&gt;
&lt;br /&gt;
===Config settings===&lt;br /&gt;
&lt;br /&gt;
Caches the configuration for the site. This is the administration settings in both core and all plugins.&lt;br /&gt;
&lt;br /&gt;
This cache is going to be accessed on every single page within Moodle, regradless of the users state or what is being done.&amp;lt;br /&amp;gt;&lt;br /&gt;
You should map this cache to the fastest backend you&#039;ve got available.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.4&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, config&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixed, the number of items is the number of settings in core and all installed plugins. This will only increase as settings are introduced or removed.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone, on every page, without fail.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 5&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
* This cache is hit quite often for getting config settings.&lt;br /&gt;
&lt;br /&gt;
===Course categories tree===&lt;br /&gt;
&lt;br /&gt;
This cache stores the full course categories tree.&lt;br /&gt;
&lt;br /&gt;
It is often used when navigating the course category structure and you can expect it to be hit in situations where either the full tree, or part of the tree is displayed.&amp;lt;br /&amp;gt;&lt;br /&gt;
This includes some elements that can be configured to display on the front page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Its use will be determinent on how you have configured Moodle and what is set to be displayed.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5 (MDL-38147)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, coursecattree&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixed, will be limited to the number of course categories on your site. During course creation this site will obviously grow, but in day to day use it should remain static.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 3&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
* Gets invalidated when changesincoursecat event is triggered.&lt;br /&gt;
&lt;br /&gt;
===Course group information===&lt;br /&gt;
&lt;br /&gt;
Caches grouping information for courses.&lt;br /&gt;
&lt;br /&gt;
Information is cached in relation to a course and is very simple. It is only used in situations where a course has defined groups and those groups are being used.&amp;lt;br /&amp;gt;&lt;br /&gt;
This cache can be expected to save 1 - 2 queries per page.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5 (MDL-34398)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, groupdata&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixed, the number of courses and groups within those courses determines the size of this cache.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; all users accessing a course in which groups are used.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 2&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Gets updated when groups data is fetched for a course.&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
===Database meta information===&lt;br /&gt;
&lt;br /&gt;
Caches meta information on database tables including information about columns.&lt;br /&gt;
&lt;br /&gt;
This cache is a priority cache, it is accessed on nearly every page within Moodle and its operation can be expensive.&amp;lt;br /&amp;gt;&lt;br /&gt;
Each entry uses the table name as the key and the cached data is the structure of the database table.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.4 (MDL-25290)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, databasemeta&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixed, the number of database tables determines the size of this cache and may only change during upgrade and installation/deletion of plugins.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 5&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
* Requires shared cache&lt;br /&gt;
* If not shared, caches need to be invalidated after any DB structure change including creation of temporary tables.&lt;br /&gt;
&lt;br /&gt;
===Event invalidation===&lt;br /&gt;
&lt;br /&gt;
This cache is used to manage event invalidation for the MUC API. This is an internal API and has no relation what so ever to the Event API introduced in 2.7.&lt;br /&gt;
&lt;br /&gt;
This is not often used within Moodle and when it is used occurs when editing happens and multiple caches need to purged, not all of which may be shared and some which may be cleared when the user next touches the cache.&lt;br /&gt;
The overall cache size should be relatively small, and as checking often occurs for these caches on page access it is recommended to map this cache to a fast backend.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.4 (MDL-25290)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, eventinvalidation&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixed, events are subscribed to by definitinos and will only change during upgrade and the installation and deletion of plugins.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone, events get triggered by action and in disconnected caches this be not be reflected until the user next hits the page.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 4&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
* Whenever something is invalidated, it is purged immediately and an event record is created with the timestamp.&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
===Event observers===&lt;br /&gt;
&lt;br /&gt;
This cache is used for storing list of event observers.&lt;br /&gt;
&lt;br /&gt;
It is updated on install/update while initialising list of event observers.&amp;lt;br /&amp;gt;&lt;br /&gt;
This cache is accessed, when event is trigged.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.6 (MDL-39846)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, observers&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; ?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
===External badges for particular user===&lt;br /&gt;
&lt;br /&gt;
Used to store external badges.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5.2, 2.6 (MDL-40924)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, externalbadges&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; ?&lt;br /&gt;
&lt;br /&gt;
===Grade items cached for evaluating conditional availability [availability_grade, items]===&lt;br /&gt;
&lt;br /&gt;
Used to cache course grade items for conditional availability purposes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This cache sets a TTL (Time To Live) of 3600 (1 hour).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.7 (MDL-44070)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; availability_grade, items&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; ?&lt;br /&gt;
&lt;br /&gt;
===HTML Purifier - cleaned content===&lt;br /&gt;
&lt;br /&gt;
This is a cache of texts (forum posts, resources, intros etc etc) from all parts of Moodle, after it has been cleaned of possible malicious data.&lt;br /&gt;
&lt;br /&gt;
Caches cleaned text in relation to user + context of the text being cleaned.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Tip:&#039;&#039;&#039; This data may be safetly stored in local caches on clusted nodes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.4.2, 2.5 (MDL-36297)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, htmlpurifier&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; exponential, cleaned content is usually stored once for each user + context combination.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 3&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
In Moodle 2.5,&lt;br /&gt;
* This expects a shared cache&lt;br /&gt;
* If not shared, must be manually purged after every upgrade or change of $CFG-&amp;gt;allowobjectembed setting&lt;br /&gt;
&lt;br /&gt;
In Moodle 2.6 and later,&lt;br /&gt;
* This works fine with local or shared node caches, you don&#039;t have to do anything special.&lt;br /&gt;
&lt;br /&gt;
===Language string cache===&lt;br /&gt;
&lt;br /&gt;
The language string cache is one of the most essential caches within Moodle, it caches each and every language file used within Moodle.&amp;lt;br /&amp;gt;&lt;br /&gt;
Its of fixed size as there are a finite number of languages and language files and as it is accessed one pretty much every page within Moodle.&amp;lt;br /&amp;gt;&lt;br /&gt;
This is a prime cache to configure, map it to the fastest backend you&#039;ve got available.&lt;br /&gt;
&lt;br /&gt;
The string cache uses the a hash of the revision, language, and component of a language file as the key, and the array found within the corrosponding file is the data.&amp;lt;br /&amp;gt;&lt;br /&gt;
Static acceleration is used on this cache to speed up subsequent request for a string within a given language file. This is essential as string are usually requested one by one and often only from a handful of language files.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Tip:&#039;&#039;&#039; Cache usage differs greatly between Admins + managers and teacher + students. Admins and managers being able to complete more actions and often across difference components and plugins often require that many more language files be accessed for a page than a user such as a teacher or student require.&amp;lt;br /&amp;gt;&lt;br /&gt;
When testing your cache configuration ensure you test as a student.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.4 (MDL-25290)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, string&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixed size, each language string file is cached here, its size will be fixed but will be determined by the number of languages available on your site.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone, on every browsable page within Moodle.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 5&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* If shared between sites please be aware that any language customisations will also be shared.&lt;br /&gt;
&lt;br /&gt;
In Moodle 2.4 and Moodle 2.6:&lt;br /&gt;
* Expects shared cache.&lt;br /&gt;
* If not shared it must be manually purged after any language string change such as editing of local lang packs, updating of lang packs during upgrade, installation or uninstallation of languages. &lt;br /&gt;
&lt;br /&gt;
In Moodle 2.6 and later:&lt;br /&gt;
* Works fine with local or shared node caches, you don&#039;t have to do anything special.&lt;br /&gt;
&lt;br /&gt;
===List of available languages===&lt;br /&gt;
&lt;br /&gt;
Caches a list of available languages.&lt;br /&gt;
&lt;br /&gt;
This list of languages is used every time the list of languages is requested in a page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Because of this the cache will be hit by on many pages within Moodle on any site with more than one language installed.&lt;br /&gt;
As its a small, fixed size cache on a site with multiple languages installed its a good idea to map this to the fastest backend you&#039;ve got available.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.6 (MDL-41019)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, langmenu&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixed, determined by the number of languages installed on the site.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 4&lt;br /&gt;
&lt;br /&gt;
===List of course contacts===&lt;br /&gt;
&lt;br /&gt;
Used to cache course contacts.&lt;br /&gt;
&lt;br /&gt;
Course contacts are displayed in several places throughout Moodle, they are in most situations considered public information (like course names) and can be seeing by all users.&amp;lt;br /&amp;gt;&lt;br /&gt;
The process of listing these course contacts can be expensive, however the course contacts are shown only on select pages.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5 (MDL-38596)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, coursecontacts&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; the number of courses and the number of users with course contact roles determines this size of this cache.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone, course contacts are public information and may be displayed in several places throughout Moodle that can be accessed by anyone.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 3&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* This is accessed while rendering/searching course&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
===Plugin info manager===&lt;br /&gt;
&lt;br /&gt;
Caches information on installed plugins, enabled plugins, and present plugins.&lt;br /&gt;
&lt;br /&gt;
This cache is heavily used when managing plugins for site through the admin interfaces.&amp;lt;br /&amp;gt;&lt;br /&gt;
Primarily people accessing this page benefit from the existence of this cache.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This must be a shared cache.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5 (MDL-34401)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, plugin_manager&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixed, the number of plugins determines the size of this cache.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; Administrators primarily.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 2&lt;br /&gt;
&lt;br /&gt;
====Plugin info - base====&lt;br /&gt;
* This cache is used by plugininfo_base class and stores plugin information.&lt;br /&gt;
* This is accessed while loading/checking plugin versions from disk.&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
====Plugin info - activity modules====&lt;br /&gt;
* This cache is used by plugininfo_mod class and provide access to records in modules table.&lt;br /&gt;
* This is accessed while loading/checking modules.&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
====Plugin info - blocks====&lt;br /&gt;
* This cache is used by plugininfo_block class and provide access to records in block table.&lt;br /&gt;
* This is accessed while loading/checking blocks.&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
====Plugin info - filters====&lt;br /&gt;
* This cache is used by plugininfo_filter class and stores names of all filters installed.&lt;br /&gt;
* This is accessed while loading/checking installed filters.&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
====Plugin info - repositories====&lt;br /&gt;
* This cache is used by plugininfo_repositories class and provide access to records in repository table.&lt;br /&gt;
* This is accessed while loading enabled repositories.&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
====Plugin info - portfolios====&lt;br /&gt;
* This cache is used by plugininfo_portfolio class and stores list of enabled portfolio plugins.&lt;br /&gt;
* This is accessed while checking if portfolio is enabled.&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
===Question definitions===&lt;br /&gt;
&lt;br /&gt;
Caches question definitions. This is used by the question bank class.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.4 (MDL-34399)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, questiondata&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; ?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
* This gets updated when question is loaded or edited.&lt;br /&gt;
* Doesn&#039;t require data guarantee.&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
===User grades cached for evaluating conditional availability===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; &lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, gradecondition&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; &lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; &lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
===User grades cached for evaluating conditional availability [availability_grade, scores]===&lt;br /&gt;
&lt;br /&gt;
Used to cache user grades for conditional availability purposes.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This cache sets a TTL (Time To Live) of 3600 (1 hour).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.7 (MDL-44070)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; availability, scores&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; ?&lt;br /&gt;
&lt;br /&gt;
===YUI Module definitions===&lt;br /&gt;
&lt;br /&gt;
Caches information on shifter YUI modules used within Moodle when JS caching is enabled.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5 (MDL-38391)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, yuimodules&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixes, the number of Moodle  YUI modules within core and plugins. This will only change during upgrade, or installation/removal of plugins.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone, this is used when ever Moodle YUI modules are used on a page and that is most pages as of 2.8.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; 5&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
&lt;br /&gt;
==Session caches==&lt;br /&gt;
Data cached here belongs to the user browsing the site.&lt;br /&gt;
&lt;br /&gt;
===Course categories lists for particular user===&lt;br /&gt;
&lt;br /&gt;
Used to store data for course categories visible to current user. Helps to browse list of categories.&amp;lt;br /&amp;gt;&lt;br /&gt;
This is also used during course category management.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5 (MDL-38147)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, coursecat&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; the number of categories and courses on the site that the user can see will determine the size of this for the current user.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone, it is used within several front page elements.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Requires shared cache.&lt;br /&gt;
* Is invalidated when changesincoursecat or changesincourse event is trigged.&lt;br /&gt;
&lt;br /&gt;
===Data used to persist user selections throughout Moodle===&lt;br /&gt;
&lt;br /&gt;
Caches user selections that should persist for the lifetime of the users log in. This includes things like which categories the user has expanded in the course category management page.&amp;lt;br /&amp;gt;&lt;br /&gt;
Think of them like user preferences but with limited lifetime.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.6 (MDL-42299)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, userselections&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; exponential, depends upon how much the user interacts with things like expading categories.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; logged in users.&lt;br /&gt;
&lt;br /&gt;
===Folder name cache [repository_skydrive]===&lt;br /&gt;
&lt;br /&gt;
?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.6 (MDL-30740)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; repository_skydrive, foldername &lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; ?&lt;br /&gt;
&lt;br /&gt;
==Request caches==&lt;br /&gt;
Caches here last only for the life time of the request and are only available to the browsing user.&lt;br /&gt;
&lt;br /&gt;
===Course categories records===&lt;br /&gt;
&lt;br /&gt;
Caches a list of course categories visible to the user.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5 (MDL-38147)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, coursecatrecords&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; fixes, the number of categories on the site visible to the user will determine this.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; everyone&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* This is accessed while rendering course category.&lt;br /&gt;
* Is invalidated when changesincoursecat event is triggered.&lt;br /&gt;
* Require local cache.&lt;br /&gt;
&lt;br /&gt;
===Helper caching [tool_uploadcourse]===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.6 (MDL-13114)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; tool_uploadcourse, helper&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; Administrators&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; ?&lt;br /&gt;
&lt;br /&gt;
===Repositories instances data===&lt;br /&gt;
&lt;br /&gt;
Used to cache data on configured repositories to avoid repetitive database calls to load repositories.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Since:&#039;&#039;&#039; Moodle 2.5 (MDL-34346)&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Component/Area:&#039;&#039;&#039; core, repositories&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Growth:&#039;&#039;&#039; ?&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Who:&#039;&#039;&#039; logged in users with one or more accessible repositories.&lt;br /&gt;
&amp;lt;br /&amp;gt;&#039;&#039;&#039;Priority:&#039;&#039;&#039; ?&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes for advanced, multi-server sites&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* Requires local cache.&lt;br /&gt;
&lt;br /&gt;
==More information==&lt;br /&gt;
* [[Cache definitions]] Information on the cache definitions found within Moodle.&lt;br /&gt;
* [[:dev:Cache API|Cache API]] Details of the Cache API.&lt;br /&gt;
* [[:dev:Cache API - Quick reference|Cache API - Quick reference]] A short, code focused page of on the Cache API.&lt;br /&gt;
* [[:dev:The Moodle Universal Cache (MUC)|The Moodle Universal Cache (MUC)]] The original cache specification.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* MDL-59142 - Cache post-processed CSS in MUC&lt;br /&gt;
&lt;br /&gt;
[[ja:キャッシュ定義]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Recycle_bin&amp;diff=132070</id>
		<title>Recycle bin</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Recycle_bin&amp;diff=132070"/>
		<updated>2018-10-16T15:03:34Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{More features}}&lt;br /&gt;
==What is the recycle bin?==&lt;br /&gt;
*The recycle bin allows teachers to retrieve course elements they have mistakenly deleted. It also allows those with relevant category permissions to restore deleted courses.&lt;br /&gt;
*If deleted items are not needed, they are automatically permanently deleted after seven days (or a time specified by the admin.)&lt;br /&gt;
*The recycle bin was the first project funded by the [https://moodleassociation.org/  Moodle Users Association]. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{MediaPlayer | url = https://www.youtube.com/watch?v=Wzieh7BYwfE | desc = Recycle bin in Moodle 3.1}}&lt;br /&gt;
&lt;br /&gt;
==How does it work?==&lt;br /&gt;
===Deleted activities===&lt;br /&gt;
&lt;br /&gt;
1. Before a course teacher deletes an item, a reminder message appears:&lt;br /&gt;
&lt;br /&gt;
[[File:confirmdeletion.png]]&lt;br /&gt;
&lt;br /&gt;
2. If you mistakenly click &#039;yes&#039;, all is not lost. After a short while, a &#039;Recycle bin&#039; link will appear either via the gear menu or in the Administration block (depending upon your theme). (The delay in the &#039;Recycle bin&#039; link appearing is because it requires the [[Cron|cron]] to run and the page to be refreshed.)&lt;br /&gt;
&lt;br /&gt;
[[File:courseadminrecylebinlink.png]]&lt;br /&gt;
&lt;br /&gt;
3. Click the link and then click the &#039;restore&#039; icon to retrieve the assignment  or other item you accidentally deleted.&lt;br /&gt;
&lt;br /&gt;
[[File:recycle bin.png]]&lt;br /&gt;
&lt;br /&gt;
===Deleted courses===&lt;br /&gt;
1. Access the category that the course was in before you accidentally deleted it.&lt;br /&gt;
2. From the category administration block, click &#039;Recycle bin&#039;.&lt;br /&gt;
&lt;br /&gt;
[[File:recyclebinrestorecourse1.png]]&lt;br /&gt;
&lt;br /&gt;
3.Click &#039;Restore&#039; to restore the deleted course:&lt;br /&gt;
&lt;br /&gt;
[[File:recyclebinrestorecourse2.png]]&lt;br /&gt;
&lt;br /&gt;
==Activity deletion in progress==&lt;br /&gt;
&lt;br /&gt;
A message &#039;Activity deletion in progress...&#039; is displayed whilst an activity is being deleted.&lt;br /&gt;
&lt;br /&gt;
Note: The [[Cron|cron]] should run every minute to ensure that activities are deleted promptly.&lt;br /&gt;
&lt;br /&gt;
==How is it set up?==&lt;br /&gt;
*The recycle bin is available by default in all courses and categories, but the link in the administration block is only visible once something  has been deleted. &lt;br /&gt;
*Administrators can modify the settings from &amp;quot;Recycle bin&#039;&#039; in the Site administration, and can decide how long an item or a course will remain available until it is permanently deleted, and make the recycle bin visible in the administration block even when empty. If preferred, the recycle bin can be disabled.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [https://moodle.org/mod/forum/discuss.php?d=364368 Can&#039;t remove Deletion in progress activities Moodle 3.4] forum discussion &lt;br /&gt;
&lt;br /&gt;
[[es:Papelera de reciclaje]]&lt;br /&gt;
[[de:Papierkorb]]&lt;br /&gt;
[[ja:ゴミ箱]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Installation_quick_guide&amp;diff=131892</id>
		<title>Installation quick guide</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Installation_quick_guide&amp;diff=131892"/>
		<updated>2018-09-09T15:17:02Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Installing Moodle}}&lt;br /&gt;
&#039;&#039;This page is intended for administrators who are experienced with installing web server applications and are in a hurry to get up and running. Otherwise please see [[Installing Moodle]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Basic Requirements==&lt;br /&gt;
&lt;br /&gt;
* You will need a working web server (e.g. [[Apache]]), a database (e.g. [[MySQL]], [[MariaDB]] or [[PostgreSQL]]) and have [[PHP]] configured. See the [{{Release notes}} release notes] in the dev docs for software requirements.&lt;br /&gt;
* Moodle requires a number of [[PHP]] extensions. However, Moodle checks early in the installation process and you can fix the problem and re-start the install script if any are missing.&lt;br /&gt;
* If you want Moodle to send email (you probably do) you need a working Sendmail (Unix/Linux) on your server or access to an SMTP mail server.&lt;br /&gt;
&lt;br /&gt;
==Getting Moodle==&lt;br /&gt;
&lt;br /&gt;
You have two basic options:&lt;br /&gt;
* Download your required version from http://moodle.org/downloads ... OR&lt;br /&gt;
* Pull the code from the Git repository (recommended for developers and also makes upgrading very simple):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone -b MOODLE_35_STABLE git://git.moodle.org/moodle.git &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
...this fetches a complete copy of the Moodle repository and then switches to the {{Version}} Stable branch. &lt;br /&gt;
&lt;br /&gt;
See [[Git_for_Administrators|Git for Administrators ]] for details on using Git to install Moodle code.&lt;br /&gt;
&lt;br /&gt;
Note: Only download Moodle from one of the moodle.org sources. Other versions (e.g. control panel based installers, Linux distribution repositories, other &amp;quot;one click&amp;quot; installers) cannot be guaranteed to work properly, be upgradable or be supportable.&lt;br /&gt;
&lt;br /&gt;
==Create a database==&lt;br /&gt;
&lt;br /&gt;
* Using your chosen database server, create a new empty database. The default encoding must be UTF8. For example, using MySQL:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Create a user/password combination with appropriate permissions for the database. For example (MySQL again):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mysql&amp;gt; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO &#039;moodleuser&#039;@&#039;localhost&#039; IDENTIFIED BY &#039;yourpassword&#039;;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes: It is important to GRANT ON moodle.* as the database name including the &#039;.*&#039; and not just the bare database name. Save this password you use for the Moodle user, since you will need it later in the install.&lt;br /&gt;
&lt;br /&gt;
==Create data directory==&lt;br /&gt;
&lt;br /&gt;
* Create an empty directory to hold Moodle files. It &#039;&#039;&#039;must not&#039;&#039;&#039; be in the area served by the web server and must have permissions so that the web server user can write to it. Other than that it can be located anywhere. Typically, either make it owned by the web server user or give it write permissions for &#039;everyone&#039;. If it is on a shared/NFS drive then read [[Caching]] - Moodle caches to this disk area by default and a slow share will mean terrible performance.&lt;br /&gt;
&lt;br /&gt;
==Install Moodle code==&lt;br /&gt;
&lt;br /&gt;
* If you downloaded the zip or tgz file earlier, then unzip / untar / move / copy the Moodle code (obtained above) so that it will be served by your web server (e.g. on Debian based Linux, move to /var/www/html/moodle)&lt;br /&gt;
* Check the permissions and make sure that the web server does &#039;&#039;&#039;not&#039;&#039;&#039; have permissions to write to any of the files in the Moodle code directories (a very common root cause of sites being hacked).&lt;br /&gt;
* If you need to, configure your web server to serve the Moodle site with your chosen URL.&lt;br /&gt;
&lt;br /&gt;
==Configure Moodle==&lt;br /&gt;
&lt;br /&gt;
* In the Moodle code directory, find the file &#039;&#039;config-dist.php&#039;&#039; and copy it to a new file called &#039;&#039;config.php&#039;&#039; (but read next step, &#039;Install Moodle&#039;, first).&lt;br /&gt;
* Edit config.php with your favourite editor and change the appropriate settings to point to your site, directories and database. &#039;&#039;Note: the Moodle install script will create config.php for you if it does not exist but make sure you (re-)set permissions appropriately afterwards&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Install Moodle==&lt;br /&gt;
&lt;br /&gt;
* Go to the URL for your moodle site in a browser (installation will complete automatically) or run the command line version at (requires cli version of PHP):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/bin/php /path/to/moodle/admin/cli/install.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The CLI creates the config.php for you and will not run if you created one in the previous step.&lt;br /&gt;
* After completing the install make sure your file permissions are ok for the Moodle program files (not writeable by web server) and the Moodle data files (writeable by web server).&lt;br /&gt;
&lt;br /&gt;
==Set up cron==&lt;br /&gt;
&lt;br /&gt;
You will need a cron job to run periodically. It is recommended that &#039;&#039;the cron is run every minute&#039;&#039;, as required for asynchronous activity deletion when using the [[Recycle bin|recycle bin]]. A typical Unix cron entry will be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* * * * *    /usr/bin/php /path/to/moodle/admin/cli/cron.php &amp;gt;/dev/null&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Your site &#039;&#039;&#039;will not work properly&#039;&#039;&#039; unless cron is running regularly. It is very important you do not skip this step.&lt;br /&gt;
&lt;br /&gt;
See [[Cron]] for details.&lt;br /&gt;
&lt;br /&gt;
==Congratulations!==&lt;br /&gt;
&lt;br /&gt;
You are now ready to use your Moodle site.&lt;br /&gt;
&lt;br /&gt;
If you run into problems, check the [[Installation FAQ]] and visit the [http://moodle.org/mod/forum/view.php?id=28 Installation help forum].&lt;br /&gt;
&lt;br /&gt;
[[Category:Quick guide]]&lt;br /&gt;
&lt;br /&gt;
[[de:Installation in Kürze]]&lt;br /&gt;
[[fr:Installation_rapide]]&lt;br /&gt;
[[es:Inicio_Rápido_de_Instalación]]&lt;br /&gt;
[[ja:インストレーションクイックガイド]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=MariaDB&amp;diff=131669</id>
		<title>MariaDB</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=MariaDB&amp;diff=131669"/>
		<updated>2018-08-10T13:26:19Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MariaDB is a MySQL fork that is developed and maintained by original MySQL developers organised under MariaDB Foundation. It is considered to be more open and is being distributed as default MySQL compatible database by majority of modern linux distributions.&lt;br /&gt;
&lt;br /&gt;
MariaDB is a drop-in replacement for Oracle MySQL, you can use it with any stable supported Moodle version using standard mysqli drivers.&lt;br /&gt;
&lt;br /&gt;
==MariaDB driver==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a dedicated driver for MariaDB. It is recommended to explicitly specify mariadb Moodle driver in config.php:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code php&amp;gt;&lt;br /&gt;
$CFG-&amp;gt;dbtype    = &#039;mariadb&#039;; &lt;br /&gt;
$CFG-&amp;gt;dblibrary = &#039;native&#039;;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
At the moment the driver is similar to MySQL but in the future the implementations may diverge significantly. Moodle MariaDB driver is not compatible with MyISAM database engine.&lt;br /&gt;
&lt;br /&gt;
See [[MySQL]] for more information, the setup procedure is nearly identical.&lt;br /&gt;
&lt;br /&gt;
==FAQ==&lt;br /&gt;
It fails during installation due to binlog_format configuration:&lt;br /&gt;
In my.cnf file set binlog_format = ROW under [mysqld] and restart mysql service&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
* [https://mariadb.org MariaDB.org]&lt;br /&gt;
&lt;br /&gt;
[[ja:MariaDB]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Installation_quick_guide&amp;diff=131490</id>
		<title>Installation quick guide</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Installation_quick_guide&amp;diff=131490"/>
		<updated>2018-07-13T13:04:14Z</updated>

		<summary type="html">&lt;p&gt;Mits: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Installing Moodle}}&lt;br /&gt;
&#039;&#039;This page is intended for administrators who are experienced with installing web server applications and are in a hurry to get up and running. Otherwise please see [[Installing Moodle]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Basic Requirements==&lt;br /&gt;
&lt;br /&gt;
* You will need a working web server (e.g. [[Apache]]), a database (e.g. [[MySQL]], [[MariaDB]] or [[PostgreSQL]]) and have [[PHP]] configured. See the [{{Release notes}} release notes] in the dev docs for software requirements.&lt;br /&gt;
* Moodle requires a number of [[PHP]] extensions. However, Moodle checks early in the installation process and you can fix the problem and re-start the install script if any are missing.&lt;br /&gt;
* If you want Moodle to send email (you probably do) you need a working Sendmail (Unix/Linux) on your server or access to an SMTP mail server.&lt;br /&gt;
&lt;br /&gt;
==Getting Moodle==&lt;br /&gt;
&lt;br /&gt;
You have two basic options:&lt;br /&gt;
* Download your required version from http://moodle.org/downloads ... OR&lt;br /&gt;
* Pull the code from the Git repository (recommended for developers and also makes upgrading very simple):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone -b MOODLE_34_STABLE git://git.moodle.org/moodle.git &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
...this fetches a complete copy of the Moodle repository and then switches to the {{Version}} Stable branch. &lt;br /&gt;
&lt;br /&gt;
See [[Git_for_Administrators|Git for Administrators ]] for details on using Git to install Moodle code.&lt;br /&gt;
&lt;br /&gt;
Note: Only download Moodle from one of the moodle.org sources. Other versions (e.g. control panel based installers, Linux distribution repositories) cannot be guaranteed to work properly, be upgradable or be supportable.&lt;br /&gt;
&lt;br /&gt;
==Create a database==&lt;br /&gt;
&lt;br /&gt;
* Using your chosen database server, create a new empty database. The default encoding must be UTF8. For example, using MySQL:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Create a user/password combination with appropriate permissions for the database. For example (MySQL again):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mysql&amp;gt; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO &#039;moodleuser&#039;@&#039;localhost&#039; IDENTIFIED BY &#039;yourpassword&#039;;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes: It is important to GRANT ON moodle.* as the database name including the &#039;.*&#039; and not just the bare database name. Save this password you use for the Moodle user, since you will need it later in the install.&lt;br /&gt;
&lt;br /&gt;
==Create data directory==&lt;br /&gt;
&lt;br /&gt;
* Create an empty directory to hold Moodle files. It &#039;&#039;&#039;must not&#039;&#039;&#039; be in the area served by the web server and must have permissions so that the web server user can write to it. Other than that it can be located anywhere. Typically, either make it owned by the web server user or give it write permissions for &#039;everyone&#039;. If it is on a shared/NFS drive then read [[Caching]] - Moodle caches to this disk area by default and a slow share will mean terrible performance.&lt;br /&gt;
&lt;br /&gt;
==Install Moodle code==&lt;br /&gt;
&lt;br /&gt;
* If you downloaded the zip or tgz file earlier, then unzip / untar / move / copy the Moodle code (obtained above) so that it will be served by your web server (e.g. on Debian based Linux, move to /var/www/html/moodle)&lt;br /&gt;
* Check the permissions and make sure that the web server does &#039;&#039;&#039;not&#039;&#039;&#039; have permissions to write to any of the files in the Moodle code directories (a very common root cause of sites being hacked).&lt;br /&gt;
* If you need to, configure your web server to serve the Moodle site with your chosen URL.&lt;br /&gt;
&lt;br /&gt;
==Configure Moodle==&lt;br /&gt;
&lt;br /&gt;
* In the Moodle code directory, find the file &#039;&#039;config-dist.php&#039;&#039; and copy it to a new file called &#039;&#039;config.php&#039;&#039; (but read next step, &#039;Install Moodle&#039;, first).&lt;br /&gt;
* Edit config.php with your favourite editor and change the appropriate settings to point to your site, directories and database. &#039;&#039;Note: the Moodle install script will create config.php for you if it does not exist but make sure you (re-)set permissions appropriately afterwards&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Install Moodle==&lt;br /&gt;
&lt;br /&gt;
* Go to the URL for your moodle site in a browser (installation will complete automatically) or run the command line version at (requires cli version of PHP):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/bin/php /path/to/moodle/admin/cli/install.php&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The CLI creates the config.php for you and will not run if you created one in the previous step.&lt;br /&gt;
* After completing the install make sure your file permissions are ok for the Moodle program files (not writeable by web server) and the Moodle data files (writeable by web server).&lt;br /&gt;
&lt;br /&gt;
==Set up cron==&lt;br /&gt;
&lt;br /&gt;
You will need a cron job to run periodically. It is recommended that &#039;&#039;the cron is run every minute&#039;&#039;, as required for asynchronous activity deletion when using the [[Recycle bin|recycle bin]]. A typical Unix cron entry will be as follows:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
* * * * *    /usr/bin/php /path/to/moodle/admin/cli/cron.php &amp;gt;/dev/null&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Your site &#039;&#039;&#039;will not work properly&#039;&#039;&#039; unless cron is running regularly. It is very important you do not skip this step.&lt;br /&gt;
&lt;br /&gt;
See [[Cron]] for details.&lt;br /&gt;
&lt;br /&gt;
==Congratulations!==&lt;br /&gt;
&lt;br /&gt;
You are now ready to use your Moodle site.&lt;br /&gt;
&lt;br /&gt;
If you run into problems, check the [[Installation FAQ]] and visit the [http://moodle.org/mod/forum/view.php?id=28 Installation help forum].&lt;br /&gt;
&lt;br /&gt;
[[Category:Quick guide]]&lt;br /&gt;
&lt;br /&gt;
[[de:Installation in Kürze]]&lt;br /&gt;
[[fr:Installation_rapide]]&lt;br /&gt;
[[es:Inicio_Rápido_de_Instalación]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Privacy_officer_role&amp;diff=131422</id>
		<title>Privacy officer role</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Privacy_officer_role&amp;diff=131422"/>
		<updated>2018-07-06T15:06:43Z</updated>

		<summary type="html">&lt;p&gt;Mits: Changed the page name based on en change.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Privacy}}&lt;br /&gt;
A Privacy officer can respond to data requests and manage the data registry.&lt;br /&gt;
&lt;br /&gt;
==Role set-up==&lt;br /&gt;
&lt;br /&gt;
# Go to &#039;Define roles&#039; in the Site administration.&lt;br /&gt;
# Click the button &amp;quot;Add a new role&amp;quot;.&lt;br /&gt;
# Set the role archetype to Guest.&lt;br /&gt;
# Give the role a name such as &#039;Privacy officer&#039;, short name and description.&lt;br /&gt;
# For context types where this role may be assigned, tick system.&lt;br /&gt;
# Enter dataprivacy in the filter box, then allow the capabilities tool/dataprivacy:managedataregistry and tool/dataprivacy:managedatarequests, and if necessary tool/dataprivacy:makedatarequestsforchildren.&lt;br /&gt;
# Allow more capabilities as follows: moodle/site:configview, moodle/category:viewhiddencategories, moodle/course:viewhiddencourses, moodle/course:view, moodle/course:viewhiddenactivities.&lt;br /&gt;
# Click the button &amp;quot;Create this role&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Next&lt;br /&gt;
&lt;br /&gt;
# Go to &#039;Privacy settings&#039; in the Site administration.&lt;br /&gt;
# Click to select the Privacy officer in the Privacy officer role mapping setting.&lt;br /&gt;
# Save changes.&lt;br /&gt;
&lt;br /&gt;
==Role assignment==&lt;br /&gt;
&lt;br /&gt;
# Go to &#039;Assign system roles&#039; in the Site administration.&lt;br /&gt;
# Choose the Privacy officer role to assign.&lt;br /&gt;
# Select the user in the Potential users list, and use the left-facing arrow button to add them to the Existing users list. &lt;br /&gt;
&lt;br /&gt;
[[Category: Privacy]]&lt;br /&gt;
[[Category:Roles]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[es:Rol de Oficial de Protección de Datos]]&lt;br /&gt;
[[de:Datenschutzbeauftragter-Rolle]]&lt;br /&gt;
[[ja:プライバシー責任者ロール]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Privacy_officer_role&amp;diff=131318</id>
		<title>Privacy officer role</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Privacy_officer_role&amp;diff=131318"/>
		<updated>2018-06-29T14:06:30Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A Privacy officer can respond to data requests and manage the data registry.&lt;br /&gt;
&lt;br /&gt;
==Role set-up==&lt;br /&gt;
&lt;br /&gt;
# Go to &#039;Define roles&#039; in the Site administration.&lt;br /&gt;
# Click the button &amp;quot;Add a new role&amp;quot;.&lt;br /&gt;
# Set the role archetype to Guest.&lt;br /&gt;
# Give the role a name such as &#039;Privacy officer&#039;, short name and description.&lt;br /&gt;
# For context types where this role may be assigned, tick system.&lt;br /&gt;
# Enter dataprivacy in the filter box, then allow the capabilities tool/dataprivacy:managedataregistry and tool/dataprivacy:managedatarequests, and if necessary tool/dataprivacy:makedatarequestsforchildren.&lt;br /&gt;
# Allow more capabilities as follows: moodle/site:configview, moodle/category:viewhiddencategories, moodle/course:viewhiddencourses, moodle/course:view, moodle/course:viewhiddenactivities.&lt;br /&gt;
# Click the button &amp;quot;Create this role&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Next&lt;br /&gt;
&lt;br /&gt;
# Go to &#039;Privacy settings&#039; in the Site administration.&lt;br /&gt;
# Click to select the Privacy officer in the Privacy officer role mapping setting.&lt;br /&gt;
# Save changes.&lt;br /&gt;
&lt;br /&gt;
==Role assignment==&lt;br /&gt;
&lt;br /&gt;
# Go to &#039;Assign system roles&#039; in the Site administration.&lt;br /&gt;
# Choose the Privacy officer role to assign.&lt;br /&gt;
# Select the user in the Potential users list, and use the left-facing arrow button to add them to the Existing users list. &lt;br /&gt;
&lt;br /&gt;
[[Category: Privacy]]&lt;br /&gt;
[[Category:Roles]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[es:Rol de Oficial de Protección de Datos]]&lt;br /&gt;
[[de:Datenschutzbeauftragter-Rolle]]&lt;br /&gt;
[[ja:プライバシー管理責任者ロール]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Adding_a_new_course&amp;diff=131160</id>
		<title>Adding a new course</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Adding_a_new_course&amp;diff=131160"/>
		<updated>2018-06-06T13:23:55Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Courses}}&lt;br /&gt;
==Adding a course==&lt;br /&gt;
&lt;br /&gt;
By default a regular teacher can&#039;t add a new course. To add a new course to Moodle, you need to have either [[Administrator|Administrator]], [[Course creator|Course Creator]] or [[Manager|Manager]] rights.To add a course:&lt;br /&gt;
*From the Site administration link, click Courses&amp;gt;Manage courses and categories&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
[[File:26addcourse1.png|400px|thumb|center|Click New course in the category page on the right]]&lt;br /&gt;
&lt;br /&gt;
*Click on the category where you want your course to be. For more information see [[Course categories|Course categories]]&lt;br /&gt;
*Click the &amp;quot;New course&amp;quot; link&lt;br /&gt;
*Enter the [[Course settings|course settings]], and then choose either to &amp;quot;Save and return&amp;quot; to go back to your course, or &amp;quot;Save and display&amp;quot; to go to the next screen.&lt;br /&gt;
&lt;br /&gt;
[[File:newcoursesavereturn.png]]&lt;br /&gt;
&lt;br /&gt;
*On the next screen,if you have chosen &amp;quot;Save and display&amp;quot;, choose your students/teachers to assign to the course.&lt;br /&gt;
&lt;br /&gt;
==Deleting a course==&lt;br /&gt;
&lt;br /&gt;
Teachers cannot delete courses. Managers (i.e. users with a role for which the capability [[Capabilities/moodle/course:delete|moodle/course:delete]] is allowed) can delete courses and [[Course creator|course creators]] can delete courses they have created themselves, but only within 24 hours of creating the course. This is so that courses created by mistake may be deleted without needing to ask an administrator.&lt;br /&gt;
&lt;br /&gt;
Administrators can always delete courses.&lt;br /&gt;
&lt;br /&gt;
To delete a course (as an admin or manager):&lt;br /&gt;
# From the Site administration link, click  Courses &amp;gt; Manage courses and categories&lt;br /&gt;
# Click the course&#039;s category and click the course in the screen on the right.&lt;br /&gt;
# Click the Delete link.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|[[File:26coursedelete.png|200px|thumb|center|Deleting a course]]&lt;br /&gt;
|}&lt;br /&gt;
You can delete multiple courses by: &lt;br /&gt;
*Creating a new (temporary) category. You can name it &amp;quot;To be deleted&amp;quot;.&lt;br /&gt;
*Select and &#039;&#039;&#039;move&#039;&#039;&#039; the &amp;quot;About to be deleted&amp;quot; courses to that category (&amp;quot;To be deleted&amp;quot;).&lt;br /&gt;
*Delete the category (&amp;quot;To be deleted&amp;quot;) and choose &amp;quot;Delete ALL - cannot be undone&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
There is no user interface for course creators to delete courses they have created; however they can do so by editing the URL of the course from &amp;lt;nowiki&amp;gt;http://yourmoodlesite.net/course/view.php?id=N&amp;lt;/nowiki&amp;gt; to &amp;lt;nowiki&amp;gt;http://yourmoodlesite.net/course/delete.php?id=N&amp;lt;/nowiki&amp;gt; (replacing &#039;view&#039; with &#039;delete&#039;).&lt;br /&gt;
&lt;br /&gt;
==Sorting courses==&lt;br /&gt;
Courses may be sorted by an admin or manager from &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Courses&amp;gt;Manage courses and categories.&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Courses may be sorted by ascending/descending and by time created.&lt;br /&gt;
[[File:coursesort.png|thumb|200px|center|Sorting courses]]&lt;br /&gt;
&lt;br /&gt;
==Course requests==&lt;br /&gt;
&lt;br /&gt;
The course request feature can be enabled by an administrator in &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Courses &amp;gt; Course request&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
An admin can set the default category for course requests, whether users can select a category when requesting a course, and who can receive notification of course requests (from a list of users with the capability [[Capabilities/moodle/site:approvecourse|moodle/site:approvecourse]]).&lt;br /&gt;
&lt;br /&gt;
A  &#039;Request a new course&#039; button will then appear on the &#039;All courses&#039; page. The All courses page can be accessed via a link in the [[Courses block]].&lt;br /&gt;
&lt;br /&gt;
If course requests are enabled, by default all authenticated users can make course requests. See [[Course requester role]] for details of how to restrict users who can make course requests.&lt;br /&gt;
&lt;br /&gt;
==Bulk course creation==&lt;br /&gt;
&lt;br /&gt;
For full details on how to bulk create courses and use course templates, see [[Upload courses]].&lt;br /&gt;
&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site Administration &amp;gt; Courses &amp;gt; Upload courses&#039;&#039;.&lt;br /&gt;
# Upload a CSV file either by dragging and dropping or using the button to select from the File picker.&lt;br /&gt;
# Select your import options and click Preview. If the settings are acceptable, click Upload.&lt;br /&gt;
&lt;br /&gt;
==Course templates==&lt;br /&gt;
&lt;br /&gt;
It is possible, from &#039;&#039;Administration&amp;gt;Site Administration&amp;gt;Courses&amp;gt;Upload courses&#039;&#039; to specify a course and settings to use as  template for future courses.&lt;br /&gt;
&lt;br /&gt;
Default blocks for new courses can also be configured in config.php.&lt;br /&gt;
&lt;br /&gt;
===Using an existing course as a template===&lt;br /&gt;
&lt;br /&gt;
First, create or locate on your Moodle the course you wish to use as a template and make a note of its shortname. A template course might for example have common headings or section summaries or policy agreements used throughout the site for consistency.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note that only the content of the course will be restored; not its settings. Settings are added separately.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
====Method 1====&lt;br /&gt;
&lt;br /&gt;
*Create your csv file. See [[Upload courses]] for accepted fields.&lt;br /&gt;
*From the Site administration link, click Courses&amp;gt;Upload courses and add your file.&lt;br /&gt;
*Preview it and scroll down to &#039;Course process&#039;. In the box &#039;Restore from this course after upload&#039;, add the shortname of your template course.&lt;br /&gt;
*If you are creating several courses using the same template and you wish them all to have the same settings, you can specify these in the Default course values.&lt;br /&gt;
*Upload your csv file.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|[[File:template1.png|thumb|400px|Adding shortname of template course]]&lt;br /&gt;
|&lt;br /&gt;
|[[File:26defaultcoursevalues.png|thumb|400|Default course values]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
====Method 2====&lt;br /&gt;
&lt;br /&gt;
*All the settings and the chosen template course can be specified in the csv file you create. Use &#039;&#039;templatecourse&#039;&#039; as the field for your chosen template course, and use the course shortname. See [[Upload courses]] for full list of fields you can include.&lt;br /&gt;
*Here is an example of a csv file for restoring a course to be used as a template. It specifies for example the theme, language, enrolment method and alternative names for student and teacher.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code bash&amp;gt;&lt;br /&gt;
shortname,fullname,category,newsitems,theme,lang,format,enrolment_1,enrolment_1_role,role_student,role_teacher,templatecourse&lt;br /&gt;
Knit,Knitting,2,0,afterburner,fr,topics,manual,student,NewKnitter,MasterKnitter,OMT&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
*Go to Administration&amp;gt;Site administration&amp;gt;Courses&amp;gt;Upload courses and add your csv file.&lt;br /&gt;
&lt;br /&gt;
===Using a backup course as a template===&lt;br /&gt;
&lt;br /&gt;
It is possible during the process of creating courses with a csv file in &#039;&#039;Site administration&amp;gt;Administration&amp;gt;Courses&amp;gt;Upload courses&#039;&#039; to specify and upload a backup file to be used as a template.&lt;br /&gt;
&lt;br /&gt;
*Create your csv file. See [[Upload courses]] for accepted fields.&lt;br /&gt;
*From &#039;&#039;Site administration&amp;gt;Administration&amp;gt;Courses&amp;gt;Upload courses&#039;&#039;, add your file.&lt;br /&gt;
*Preview it and scroll down to &#039;Course process&#039;. In the box &#039;Restore from this file after upload&#039;, add the backup file you wish to use as the template.&lt;br /&gt;
*If you are creating several courses using the same template and you wish them all to have the same settings, you can specify these in the &#039;Default course values&#039; section.&lt;br /&gt;
*Alternatively, you can specify the course settings (such as format, enrolment methods, language) in the csv file. This method is useful if you wish different courses using the same template to have different settings.&lt;br /&gt;
*Upload your csv file.&lt;br /&gt;
{|&lt;br /&gt;
|[[File:template2.png|thumb|400px|Uploading a template course]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
===Using the course templates plugin===&lt;br /&gt;
With emeneo&#039;s course templates plugin you can very easily create template based courses. More information and the plugin package you can find here: [https://moodle.org/plugins/local_course_templates https://moodle.org/plugins/local_course_templates]&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
===Screencasts===&lt;br /&gt;
* [http://youtu.be/MzK2jb-9SwE Bulk course creation]&lt;br /&gt;
&lt;br /&gt;
===Forum discussions===&lt;br /&gt;
*Using Moodle [http://moodle.org/mod/forum/discuss.php?d=83830 Hide Courses from some users or students] forum discussion&lt;br /&gt;
&lt;br /&gt;
[[de:Kurs anlegen]]&lt;br /&gt;
[[es:Añadiendo un nuevo curso]]&lt;br /&gt;
[[eu:Ikastaroak_%28Kudeatzaileak%29]]&lt;br /&gt;
[[fr:Ajouter_un_cours]]&lt;br /&gt;
[[ja:新しいコースを追加する]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/course:delete&amp;diff=131088</id>
		<title>Capabilities/moodle/course:delete</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/course:delete&amp;diff=131088"/>
		<updated>2018-05-21T20:19:37Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
*This allows a user to delete a course within 24 hours of creating it&lt;br /&gt;
*This capability is allowed for the default role of manager only&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [[Adding a new course]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities|Course]]&lt;br /&gt;
[[Category:Course]]&lt;br /&gt;
&lt;br /&gt;
[[eu:Capabilities/moodle/course:delete]]&lt;br /&gt;
[[fr:Capabilities/moodle/course:delete]]&lt;br /&gt;
[[es:Capabilities/moodle/course:delete]]&lt;br /&gt;
[[ja:ケイパビリティ/moodle/course:delete]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/course:request&amp;diff=130268</id>
		<title>Capabilities/moodle/course:request</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/course:request&amp;diff=130268"/>
		<updated>2018-03-09T15:01:55Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
*This capability allows a user to [[Adding a new course|request a course]] (which needs to be approved by a user with the [[Capabilities/moodle/site:approvecourse|capability to approve course requests]]).&lt;br /&gt;
*The default [[Authenticated user]] role has this capability set to allow.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [[Course requester role]] for restricting users who can make course requests&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities|Course]]&lt;br /&gt;
[[Category:Course]]&lt;br /&gt;
&lt;br /&gt;
[[eu:Capabilities/moodle/course:request]]&lt;br /&gt;
[[ja:ケイパビリティ/moodle/course:request]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Course_requester_role&amp;diff=130265</id>
		<title>Course requester role</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Course_requester_role&amp;diff=130265"/>
		<updated>2018-03-08T15:03:00Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Roles}}The role of Course requester may be used to restrict users who can make [[Course request|course requests]], perhaps to teachers only.&lt;br /&gt;
&lt;br /&gt;
==Removing the capability to make course requests==&lt;br /&gt;
&lt;br /&gt;
By default, all authenticated users can make course requests. To change this:&lt;br /&gt;
&lt;br /&gt;
#Access &#039;&#039;Administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Define roles&#039;&#039;.&lt;br /&gt;
#Edit the authenticated user role and change the capability [[Capabilities/moodle/course:request|moodle/course:request]] from allow to not set.&lt;br /&gt;
#Scroll to the bottom (or top) of the page and click the &#039;Save changes&#039; button.&lt;br /&gt;
&lt;br /&gt;
==Role set-up==&lt;br /&gt;
&lt;br /&gt;
#Access &#039;&#039;Administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Define roles&#039;&#039;.&lt;br /&gt;
#Click the button &amp;quot;Add a new role&amp;quot;&lt;br /&gt;
#Give the role a name e.g. Course requester, short name and description.&lt;br /&gt;
#Under &amp;quot;Context types where this role may be assigned&amp;quot;, click on the &amp;quot;System&amp;quot; tick box turning it on.&lt;br /&gt;
#Change the capability moodle/course:request to allow.&lt;br /&gt;
#Click the button &amp;quot;Create this role&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note&#039;&#039;: It is necessary to create a new role, rather than simply changing the capability for the teacher role, because it needs to be assigned as a system role. (The role of teacher is generally assigned in the course or course category context.)&lt;br /&gt;
&lt;br /&gt;
==Role assignment==&lt;br /&gt;
&lt;br /&gt;
#Access &#039;&#039;Administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Assign system roles&#039;&#039;.&lt;br /&gt;
#Choose the course requester role to assign.&lt;br /&gt;
#Select one or more users in the Potential users list, and use the left-facing arrow button to add it to the Existing users list. If you want all your institution&#039;s teachers to be able to make course requests, you need to select and add all their names to the Existing users list.&lt;br /&gt;
&lt;br /&gt;
==Add a Course Request block==&lt;br /&gt;
&lt;br /&gt;
Now, this will work fine for those users who already have a Teacher role in at least ONE course on your Moodle site. When they log in, they will see the list of course(s) that they are enrolled in as Teacher(s) plus an All courses button. Clicking on that &#039;&#039;&#039;All courses&#039;&#039;&#039; button will show the complete list of courses on the site, plus a &#039;&#039;&#039;Request a course&#039;&#039;&#039; button, which they will be able to click to request a course.&lt;br /&gt;
&lt;br /&gt;
However, those Moodle site users whom we have assigned to the Course requester role in System &#039;&#039;and who do not yet have a Teacher role in at least ONE course on your Moodle site will not see that &#039;&#039;&#039;All courses&#039;&#039;&#039; button&#039;&#039;, since by default all the available courses will be displayed. And consequently, the &#039;&#039;&#039;Request a course&#039;&#039;&#039; button will not appear to them. To solve this, a further step is required, viz. creating an HTML block on the front page with a direct link to /course/request.php! And of course that block will have to be made invisible to students etc.&lt;br /&gt;
&lt;br /&gt;
# On the front page add a block: HTML: title: &#039;&#039;Course request&#039;&#039; contents: &#039;&#039;Click here to request a course&#039;&#039; with a link to &amp;lt;yourmoodlesite&amp;gt;/course/request.php&lt;br /&gt;
# Click the &#039;Assign roles&#039; link and then in the administration block click the permissions link and edit the permissions so that only users with a Course requester or Teacher role will be able to view that block; students etc. won&#039;t see it.&lt;br /&gt;
&lt;br /&gt;
Now Course requesters who are not yet enrolled as Teachers in Courses will be able to see that HTML block, click on the link and request a course. Of course, this block is redundant for those Course requesters who are also Teachers, but it is needed for Teachers requesting the creation of &#039;&#039;their very first course&#039;&#039; on the Moodle site.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=195211 Only teachers can request courses - how to do that?] forum discussion&lt;br /&gt;
&lt;br /&gt;
[[es:Rol de solicitante de curso]]&lt;br /&gt;
[[ja:コースリクエストロール]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Course_categories&amp;diff=129853</id>
		<title>Course categories</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Course_categories&amp;diff=129853"/>
		<updated>2018-01-14T15:02:46Z</updated>

		<summary type="html">&lt;p&gt;Mits: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Courses}}&lt;br /&gt;
Course categories organize courses for all Moodle site participants. The default course category on a new Moodle site is &amp;quot;Miscellaneous&amp;quot; (although this can be renamed) A [[Course creator|Course creator]], [[Administrator|Administrator]] or [[Manager|Manager]] can put all courses in the Miscellaneous category. However, teachers and students will find it easier to find their classes if they are organized in descriptive categories.&lt;br /&gt;
&lt;br /&gt;
The list of courses within a category by default shows the teachers and the summary of each course. If the number of courses within a category exceeds 9 (10 or more), then a short list without teachers and summary is shown.&lt;br /&gt;
&lt;br /&gt;
==Adding a category==&lt;br /&gt;
Most people organize their courses by department and college or by topic. Be sure to test the organizational scheme with a few users before entering a large number of courses, to save time in moving them later.&lt;br /&gt;
&lt;br /&gt;
Adding categories is very simple:&lt;br /&gt;
&lt;br /&gt;
*Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Courses &amp;gt; Add a category&#039;&#039; &lt;br /&gt;
*Complete the details required and click &#039;Create category.&#039;&lt;br /&gt;
*Alternatively, you can go to &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Courses&amp;gt;Manage courses and categories&#039;&#039; and click the link &#039;Create new category&#039;.&lt;br /&gt;
*If you are on the category page (or you only have Manager rights at a Course Category level), click the &#039;Manage courses&#039; button at the top-right of the page and then click the link &#039;Create new category&#039;.&lt;br /&gt;
&lt;br /&gt;
[[File:Addcategory.png]]&lt;br /&gt;
&lt;br /&gt;
If the category is visible, the course category description will be displayed to users when they enter the category, above the list of courses.&lt;br /&gt;
&lt;br /&gt;
==Editing or moving a category==&lt;br /&gt;
*You can edit the details of a course category by clicking the actions icon next to its name in &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Courses&amp;gt;Manage courses and categories.&#039;&#039; and selecting &#039;Edit&#039;.&lt;br /&gt;
*You can move categories up or down by clicking the up/down arrow next to the category you wish to move. You can bulk move categories by checking the box to the left of their name and then by selecting from the dropdown &#039;Move selected categories to&#039;&lt;br /&gt;
&lt;br /&gt;
[[File:Editmovecategories.png]]&lt;br /&gt;
&lt;br /&gt;
==Adding sub-categories==&lt;br /&gt;
*Sometimes it might be useful to have a sub-category of a course. For example, you might have a category &amp;quot;Science&amp;quot; and wish to have sub-categories &amp;quot;Biology&amp;quot;, &amp;quot;Chemistry&amp;quot; and &amp;quot;Physics&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
*You can make one category a subcategory of another by checking the box to the left of its name and then by selecting from the drop down menu &#039;Move selected categories to&#039; You can create a new, empty sub-category by clicking the actions icon next to its name in &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Courses&amp;gt;Manage courses and categories.&#039;&#039; and selecting &#039;Create new subcategory.&#039;&lt;br /&gt;
&lt;br /&gt;
==Hiding categories==&lt;br /&gt;
*Categories may be easily hidden or shown via &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Courses&amp;gt;Manage courses and categories&#039;&#039; and clicking the &#039;eye&#039; icon of the category you wish to hide.  Hidden categories are only visible to site administrators or those with the capability to &amp;quot;view hidden courses&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Sorting categories==&lt;br /&gt;
Categories may be sorted by ascending/descending names or ID numbers from &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Courses&amp;gt;Manage courses and categories&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
[[File:categorysort.png|thumb|200px|center|Sorting categories]]&lt;br /&gt;
&lt;br /&gt;
Courses within categories may also be sorted. See [[Adding a new course]]&lt;br /&gt;
&lt;br /&gt;
==Setting category depth==&lt;br /&gt;
&lt;br /&gt;
You can limit the number of categories that are displayed in the front page &#039;List of Categories&#039; or &#039;Combo List&#039; from &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Front page&amp;gt;Front page settings&#039;&#039; Deeper level categories will appear as links and the user can expand them.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Assigning users a role in a course category==&lt;br /&gt;
&lt;br /&gt;
To assign a Manager at the Category level, see [[Manager_role#Assigning_the_role_of_Manager_at_the_Category_level | Assign Manager role at category level]].&lt;br /&gt;
&lt;br /&gt;
To enrol teacher or students roles category wide, see [[Category enrolments]].&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
===Screencasts===&lt;br /&gt;
[http://youtu.be/1N5Vs_OfVlA Course and category management]]&lt;br /&gt;
&lt;br /&gt;
Using Moodle forum discussions:&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=47954 Course Summary Sometimes Not Appearing]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=102803 Allowing teachers to put courses in categories]&lt;br /&gt;
&lt;br /&gt;
[[fr:Ajouter une catégorie de cours]]&lt;br /&gt;
[[es:Categorías de curso]]&lt;br /&gt;
[[de:Kursbereiche]]&lt;br /&gt;
[[ja:コースカテゴリ]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Additional_name_fields&amp;diff=125727</id>
		<title>Additional name fields</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Additional_name_fields&amp;diff=125727"/>
		<updated>2016-10-27T15:01:57Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Accounts}}&lt;br /&gt;
As well as first name and surname, the following additional name fields may be used:&lt;br /&gt;
&lt;br /&gt;
* First name - phonetic&lt;br /&gt;
* Surname - phonetic&lt;br /&gt;
* Middle name&lt;br /&gt;
* Alternate name&lt;br /&gt;
&lt;br /&gt;
==Administration settings==&lt;br /&gt;
&lt;br /&gt;
===Full name format===&lt;br /&gt;
[[File:participants-after.png|thumb|List of users with full names displayed]]&lt;br /&gt;
An administrator can set how names are displayed across the site via the setting &#039;Full name format&#039; (fullnamedisplay) in &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Users &amp;gt; Permissions &amp;gt; User policies&#039;&#039;. The default setting is &#039;&#039;language&#039;&#039;, which means that names are displayed according to information from the language pack used on the site. Alternatively, the following placeholders may be used:&lt;br /&gt;
&lt;br /&gt;
* firstname&lt;br /&gt;
* lastname&lt;br /&gt;
* firstnamephonetic&lt;br /&gt;
* lastnamephonetic&lt;br /&gt;
* middlename&lt;br /&gt;
* alternatename&lt;br /&gt;
&lt;br /&gt;
For example, a user with first name John, surname Doe, middle name James, first name phonetic Jon, and surname phonetic Dough will have his name displayed as&lt;br /&gt;
&lt;br /&gt;
*John James Doe when &#039;Full name format&#039; is set to &#039;&#039;firstname middlename lastname&#039;&#039; and&lt;br /&gt;
*Doe John (Dough Jon) when &#039;Full name format&#039; is set to &#039;&#039;lastname firstname (lastnamephonetic firstnamephonetic)&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Users with the [[Capabilities/moodle/site:viewfullnames|view full names capability]] (by default users with the role of manager, teacher or non-editing teacher) can always see first and last names, regardless of the &amp;quot;Full name format&amp;quot; setting.&lt;br /&gt;
&lt;br /&gt;
Note for sites upgrading from an earlier version: The &#039;Full name format&#039; setting was previously in &#039;&#039;Site policies&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
===Alternative full name format===&lt;br /&gt;
&lt;br /&gt;
The alternative full name format setting may be used to define how names are shown to users with the [[Capabilities/moodle/site:viewfullnames|view full names capability]]. For example, it may be set to &#039;&#039;lastname firstname (lastnamephonetic firstnamephonetic)&#039;&#039; so that phonetic names are also displayed.&lt;br /&gt;
&lt;br /&gt;
==User profile settings==&lt;br /&gt;
&lt;br /&gt;
Users can enter additional names by editing their profile in &#039;&#039;Administration &amp;gt; My profile settings &amp;gt; Edit profile&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
First name, surname and any additional names specified by an administrator in &#039;Full name format&#039; are listed in the General section. Additional names not specified in &#039;Full name format&#039; are listed in an &amp;quot;Additional names&#039; section.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
| [[File:name fields in general section.png|thumb|Name fields as specified in &#039;Full name format&#039;]]&lt;br /&gt;
| [[File:additional name fields.png|thumb|Additional name fields]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[es:Campos de nombre adicionales]]&lt;br /&gt;
[[de:Zusätzliche Namen]]&lt;br /&gt;
[[ja:追加氏名フィールド]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Metacourse_examples_of_use&amp;diff=125723</id>
		<title>Metacourse examples of use</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Metacourse_examples_of_use&amp;diff=125723"/>
		<updated>2016-10-25T15:09:29Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Enrolment}}&lt;br /&gt;
[[Metacourse]]s can be used in many ways to fill some special needs around student enrolment. Here are some examples scenarios that may help you to understand how they work. &lt;br /&gt;
&lt;br /&gt;
==Yearly intake ==&lt;br /&gt;
This example uses LDAP to enrol each year&#039;s intake of students onto that year&#039;s &#039;Course Noticeboard&#039;. Then by making each of the Modules meta courses, and assigning their &#039;child&#039; as that year&#039;s &#039;Course Noticeboard&#039;, the learners are automatically enrolled on all of the necessary module&lt;br /&gt;
&lt;br /&gt;
Foundation Degree (2009 intake) [course category]&lt;br /&gt;
Course 2009 Noticeboard (uses LDAP to enrol 2009 students)&lt;br /&gt;
Year 1 [course category]&lt;br /&gt;
:Module 1  (Metacourse linked to 2009 Noticeboard_&lt;br /&gt;
:Module 2  (Metacourse linked to 2009 Noticeboard_&lt;br /&gt;
:Module 3  (Metacourse linked to 2009 Noticeboard_&lt;br /&gt;
:etc.&lt;br /&gt;
&lt;br /&gt;
Foundation Degree (2010 intake) [course category]&lt;br /&gt;
Course 2010 Noticeboard (uses LDAP to enrol 2010 students)&lt;br /&gt;
Year 1 [course category]&lt;br /&gt;
Module 1  (Metacourse linked to 2010 Noticeboard_&lt;br /&gt;
Module 2  (Metacourse linked to 2010 Noticeboard_&lt;br /&gt;
Module 3  (Metacourse linked to 2010 Noticeboard_&lt;br /&gt;
&lt;br /&gt;
Jerome Di Pietro in [http://moodle.org/mod/forum/discuss.php?d=39438 Teaching Strategies forum]&lt;br /&gt;
&lt;br /&gt;
==1 course that sends its enrolments to 4 other courses ==&lt;br /&gt;
Meta courses 1-4 each have created a &amp;quot;child&amp;quot; link to Y which is a normal course. Students enrolling on Course Y are automatically enrolled in Meta courses  1-4. &lt;br /&gt;
&lt;br /&gt;
[[Image:Metacourses2_en.jpg|Upsidedown Meta course Usage|center]]&lt;br /&gt;
&lt;br /&gt;
For example: this would be used, when all five courses are intended to have exactly the same students.&lt;br /&gt;
&lt;br /&gt;
==1 course that gets its enrolment from 4 other courses==&lt;br /&gt;
X is a meta course and Courses 1, 2, 3, 4 can be normal courses with standard student enrolments. These courses can contain resources, and activities that are specific to those courses, but they may also only contain enrolments. Students enrolling in Courses 1 or 2, or 3 or 4,  are automatically enrolled onto Meta course X when the course is associated as a child course to Meta course X. The meta course is dependent upon its enrolments from each of the non-meta courses, the child courses.  &lt;br /&gt;
&lt;br /&gt;
[[Image:Metacourses1_en.jpg|Standard Meta course usage|center]]&lt;br /&gt;
&lt;br /&gt;
For example, a math teacher has 2 algebra and 2 geometry courses and wants a &amp;quot;home room&amp;quot; to place things of interest for all of their students. The teacher creates a meta course called &amp;quot;Teacher&#039;s home room&amp;quot; and links the algebra and geometry courses as the &amp;quot;child&amp;quot; courses.&lt;br /&gt;
&lt;br /&gt;
==&amp;quot;Merged course&amp;quot; / 1 course that consolidates enrollment from multiple other courses==&lt;br /&gt;
For a course with multiple sections - that is, a course where the same material is taught to students enrolled in several separate sections/courses - it is sometimes desirable to create a &amp;quot;merged course&amp;quot; that is used by students across all sections. This assumes that there is no section-specific information.&lt;br /&gt;
&lt;br /&gt;
To create a &amp;quot;merged course,&amp;quot; select one existing course/section that will become the merged metacourse. In that course:&lt;br /&gt;
&lt;br /&gt;
#In the Settings module, navigate to Course administration -&amp;gt; Users -&amp;gt; Enrollment methods.&lt;br /&gt;
#Use the Add method drop-down menu to select Course meta link.&lt;br /&gt;
#Use the Link course drop-down menu to choose one of the other sections/courses you wish to merge into the metacourse.&lt;br /&gt;
#Repeat the preceding steps as necessary for additional sections/courses.&lt;br /&gt;
&lt;br /&gt;
To make it clear which course is the merged metacourse, go to that course and:&lt;br /&gt;
&lt;br /&gt;
#In the Settings module, navigate to Course administration -&amp;gt; Edit settings.&lt;br /&gt;
#Change the Course full name appropriately (consider &amp;quot;[Course Number] - [Course Name] - [Course Date]&amp;quot; e.g. &amp;quot;CSSE101 - Introduction to Computer Science - 201210&amp;quot;)&lt;br /&gt;
#Click Save changes.&lt;br /&gt;
&lt;br /&gt;
To hide the unused sections/courses, go to each course and:&lt;br /&gt;
&lt;br /&gt;
#In the Settings module, navigate to Course administration -&amp;gt; Edit settings.&lt;br /&gt;
#Use the Availability drop-down menu to select This course is not available for students.&lt;br /&gt;
#Click Save changes.&lt;br /&gt;
&lt;br /&gt;
==Meta course(s) used as libraries==&lt;br /&gt;
One or more meta courses are used as a library of resources and activities.  &lt;br /&gt;
&lt;br /&gt;
For example, the English department has collected material useful in writing papers, these are set up as meta courses, with links to their regular courses. Teachers can direct or embed a link to a specific reference about citations, or how to select a topic for a paper or suggested reading compiled by students. Thus an English 101 course should be one of the links in the &amp;quot;Writing Papers&amp;quot; meta course.  This Meta course holds a resource called &amp;quot;Citations made easy&amp;quot;, a Lesson &amp;quot;Select a topic&amp;quot; and a Wiki or database called &amp;quot;Suggested readings from classmates&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==Expanding the library concept==&lt;br /&gt;
I teach 4 sections  of the same course and use a metacourse as the repository for materials used in the 4 sections.  What I did was create the resource in the metacourse and then link that resource to the sections.  For instance, I created a web page in the metacourse that included course notes.  These course notes are in the form of 17 pdf files.  The web page has links to the 17 files that were uploaded to the metacourse.  Thus, the files and the web page that students will use to get to the files all exist in the metacourse.&lt;br /&gt;
&lt;br /&gt;
Next I created a link to the web page in my normal courses.  To do this I had to execute the web page in the metacourse and copy the address from my browser into the link I created in the normal course.&lt;br /&gt;
&lt;br /&gt;
When the student is in the normal section course, they simply click on the link and the web page in the metacourse appears.  The only minor problem is that the student navigation might leave them in the metacourse instead of the normal section course.  To lessen this effect, I always launch links to the metacourse in a new window.  Normally students understand that they need to close the popup window when they are finished with it.&lt;br /&gt;
&lt;br /&gt;
There are several advantages to using metacourses in this way.  First, it saves having to upload the same materials more than once.  I can change a file in the metacourse and know that it is changed in all section courses.  Second, it saves storage space.  Third, it provides the possibility of developing learning objects or mini courses that can be quickly linked to create a new course.  Finally, it would allows several teachers to pick and choose what materials to include in their section courses.&lt;br /&gt;
&lt;br /&gt;
One hint, I put all activities (assignments, forums, journals, etc) in the child course, not in the metacourse.  This keeps grading segregated and allows me to adjust assignments for a particular section (child).&lt;br /&gt;
&lt;br /&gt;
Harold Kime [http://moodle.org/mod/forum/discuss.php?d=39438 Teaching strategies forum thread].&lt;br /&gt;
&lt;br /&gt;
== Common department area==&lt;br /&gt;
Here is how we use metacourses for our district. Lets take a math teacher for example who teaches algebra 1, algebra 2 and geometry. This teacher wants a space (Moodle course) for each of their main subject areas. But they also want a generic space where they can post things for all of the students in all of their classes. This is where a meta course comes into play. &lt;br /&gt;
&lt;br /&gt;
We create a Moodle course for algebra 1, another course for algebra 2 and a 3rd course for geometry. Now we enroll all of the appropriate students into each of these courses. Next we create a meta course and to the meta course we assign the first three courses created. Now by default, all of the students in the first three courses are automatically enrolled in the meta course. Now anything posted in the metacourse is available to all the students in the other three courses. &lt;br /&gt;
&lt;br /&gt;
Randy Orwin [http://moodle.org/mod/forum/discuss.php?d=39438 Teaching strategies forum thread].&lt;br /&gt;
&lt;br /&gt;
==A Diploma course sends its enrolment to meta courses==&lt;br /&gt;
A Diploma program  involves courses D1, D2, D3, and D4.  In this case, you would create a &amp;quot;Diploma&amp;quot; course as a normal course (non-meta course).  You would then designate programs D1 through D4 as meta courses and each would show the Diploma course as the &amp;quot;child&amp;quot; course.  When a student enrolls in &amp;quot;Diploma&amp;quot;, he or she will be automatically enrolled in courses D1 through D4.&lt;br /&gt;
&lt;br /&gt;
==Core subjects with fees based upon course groupings==&lt;br /&gt;
You have 3 course subjects and want to offer them for sale in different packages.   The meta courses will contain your subjects.  A normal (non-Meta course) course will be the gateways to the meta course(s).  Course 1 is your gold package.  Meta course A, Meta course B and Meta course C all link to Course 1.  The silver package is Course 2.  Meta courses A and B link to Course 2.   You have also set up individual courses that have a link from a specific Meta Course to them.  Thus you can offer and charge for each meta course separately or in some combination.&lt;br /&gt;
&lt;br /&gt;
==One course, different student fees==&lt;br /&gt;
You have one &amp;quot;Wizbang&amp;quot; course but want to charge a different rate based upon the type of user.  The &amp;quot;Wizbang&amp;quot; meta course is the one that holds the content.  You create a courses for &amp;quot;Wizbang for Large Corporation users&amp;quot; and &amp;quot;Wizbang for Small Business users&amp;quot;. The Wizbang meta course is linked to &amp;quot;Introduction to Wizbang for Large Corporation users&amp;quot; and &amp;quot;Introduction to Wizbang for Small Business users&amp;quot; courses.  You can charge a different fee for the non-meta courses, maybe brand or put some unique material in each &amp;quot;Introduction&amp;quot; course but the students will be able to take the same &amp;quot;Wizbang&amp;quot; course.&lt;br /&gt;
==Two courses, combined teaching space==&lt;br /&gt;
We have automatic enrolment into Moodle using a custom enrolment plugin.  We often have two or more courses that are taught together by the same teacher, in the same classroom with the same lectures.  We create a metacourse for both courses and add the two individual courses as child courses.  &lt;br /&gt;
==Student Support Space for degree programme==&lt;br /&gt;
We have a programme which is fully online.  We have created a metacourse as a support space which includes information for the programme, specific forums for groups of students (using groups &amp;amp; groupings) and Social Forums to allow students to interact with each other.&lt;br /&gt;
&lt;br /&gt;
[[Category:Examples of use]]&lt;br /&gt;
&lt;br /&gt;
[[ja:メタコース使用例]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/user:viewlastip&amp;diff=124869</id>
		<title>Capabilities/moodle/user:viewlastip</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/user:viewlastip&amp;diff=124869"/>
		<updated>2016-08-11T15:05:02Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
*This capability allows a user to view the last IP field in [[User profiles|user profiles]].&lt;br /&gt;
*It is set to &#039;Allow&#039; for the default role of manager only and is not set for other roles.&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities|User]]&lt;br /&gt;
[[Category:Site administration]]&lt;br /&gt;
&lt;br /&gt;
[[es:Capabilities/moodle/user:viewlastip]]&lt;br /&gt;
[[de:Capabilities/moodle/user:viewlastip]]&lt;br /&gt;
[[ja:ケイパビリティ/moodle/user:viewlastip]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=View_profile&amp;diff=124834</id>
		<title>View profile</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=View_profile&amp;diff=124834"/>
		<updated>2016-08-10T15:03:39Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Accounts}}&lt;br /&gt;
*A user may view their own full profile from the user menu top right. They may then personalise the display by clicking the &amp;quot;customise this page&amp;quot; button at the top right of the screen.&lt;br /&gt;
*A  student or course teacher may see the course profiles of users by clicking their names in &#039;&#039;Navigation&amp;gt;My courses (name of course)&amp;gt;Participants&#039;&#039; Teachers can then access the full profile  by clicking the link &amp;quot;full profile&amp;quot; at the bottom of the course profile (if allowed. See &#039;Viewing full profiles&#039; below).&lt;br /&gt;
*An administrator may additionally access and view full profiles via &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Users&amp;gt;Accounts&amp;gt;Browse list of users&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
==Full (site) profile==&lt;br /&gt;
&lt;br /&gt;
Depending on what the user has added to their profile, this  gives information such as first and last access, general interests and links to individual course profiles. Users may be messaged from the button at the top of their profile.&lt;br /&gt;
&lt;br /&gt;
A manager or anyone with the capability [[Capabilities/moodle/user:viewlastip]] will also see a link to the IP address from which the user last accessed Moodle.&lt;br /&gt;
&lt;br /&gt;
==Course profile==&lt;br /&gt;
A shorter version of users&#039; profiles is available in the course and includes their role(s) and groups in the course and a link to message them. Those  with the relevant permissions are also able to access the full profile from here:&lt;br /&gt;
&lt;br /&gt;
==Viewing full profiles==&lt;br /&gt;
&lt;br /&gt;
By default, only admins and managers can view full profiles.&lt;br /&gt;
&lt;br /&gt;
To allow everyone i.e. all authenticated users to view full profiles:&lt;br /&gt;
&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Define roles&#039;&#039;&lt;br /&gt;
# Click the edit icon for authenticated user&lt;br /&gt;
# Enter moodle/user:viewdetails in the filter box, then tick the checkbox to allow this capability&lt;br /&gt;
# Click the &#039;Save changes&#039; button&lt;br /&gt;
&lt;br /&gt;
To allow teachers to view full profiles:&lt;br /&gt;
&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Define roles&#039;&#039; and click the &#039;Add a new role&#039; button&lt;br /&gt;
# Give the role a name, such as &#039;Full profile viewer&#039; and tick System as the context type where the role may be assigned&lt;br /&gt;
# Copy and paste &#039;&#039;moodle/user:viewdetails&#039;&#039; into the filter box then tick the box to allow the capability&lt;br /&gt;
# Click the &#039;Create this role&#039; button&lt;br /&gt;
# Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Assign system roles&#039;&#039; and click &#039;Full profile viewer&#039;&lt;br /&gt;
# Assign teachers the role of &#039;Full profile viewer&#039; by selecting them in the list of potential users on the right and then adding them to the list on the left&lt;br /&gt;
&lt;br /&gt;
==Site administration settings==&lt;br /&gt;
&lt;br /&gt;
An administrator can set the defaults for certain user profile fields from &#039;&#039;Site administration&amp;gt;Users&amp;gt;Accounts&amp;gt;User default preferences&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
These are:&lt;br /&gt;
:Email display&lt;br /&gt;
:Email format&lt;br /&gt;
:Email digest type&lt;br /&gt;
:Forum auto-subscribe&lt;br /&gt;
:Forum tracking&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*[[User profiles]]&lt;br /&gt;
* [[Edit profile]]&lt;br /&gt;
*The capability [[Capabilities/moodle/user:viewdetails|moodle/user:viewdetails]]&lt;br /&gt;
&lt;br /&gt;
[[cs:Profil uživatele]]&lt;br /&gt;
[[de:Nutzerprofil ansehen]]&lt;br /&gt;
[[eu:Informazio_pertsonala]]&lt;br /&gt;
[[fr:Voir le profil]]&lt;br /&gt;
[[es:Ver perfil]]&lt;br /&gt;
[[ja:ユーザプロファイル]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Roles_and_permissions&amp;diff=124077</id>
		<title>Roles and permissions</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Roles_and_permissions&amp;diff=124077"/>
		<updated>2016-06-13T15:06:32Z</updated>

		<summary type="html">&lt;p&gt;Mits: Updated ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Managing a Moodle site}}&lt;br /&gt;
A role is a collection of permissions defined for the whole system that you can assign to specific users in specific contexts. The combination of roles and context define a specific user&#039;s ability to do something on any page.  The most common examples are the roles of student and teacher in the context of a course. &lt;br /&gt;
&lt;br /&gt;
*[[Managing roles]]&lt;br /&gt;
*[[Assign roles]]&lt;br /&gt;
*[[User policies]]&lt;br /&gt;
*[[Using roles]]&lt;br /&gt;
*[[Standard roles]]&lt;br /&gt;
*[[Creating custom roles]]&lt;br /&gt;
*[[Role export and import]]&lt;br /&gt;
*[[Permissions]]&lt;br /&gt;
*[[Override permissions]]&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
*[[Roles FAQ]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Roles]]&lt;br /&gt;
&lt;br /&gt;
[[es:Roles y permisos]]&lt;br /&gt;
[[eu:Rolak]]&lt;br /&gt;
[[fr:Rôles et permissions]]&lt;br /&gt;
[[ja:ロールおよびパーミッション]]&lt;br /&gt;
[[de:Rollen und Rechte]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Creating_custom_roles&amp;diff=123042</id>
		<title>Creating custom roles</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Creating_custom_roles&amp;diff=123042"/>
		<updated>2016-04-26T15:44:05Z</updated>

		<summary type="html">&lt;p&gt;Mits: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Roles}}&lt;br /&gt;
==Creating a new role==&lt;br /&gt;
&lt;br /&gt;
To create a custom role:&lt;br /&gt;
#Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Define roles&#039;&#039;. &lt;br /&gt;
#Click the &amp;quot;Add a new role&amp;quot; button.&lt;br /&gt;
#Select template for the new role or upload a preset&lt;br /&gt;
#Give the role a Short name e.g. &#039;Parent&#039;.The short name is necessary for other plugins in Moodle that may need to refer to the role (e.g. when uploading users from a file or setting enrolments via an enrolment plugin).&lt;br /&gt;
#You must provide a full name for all custom roles. If you need to name the role for multiple languages you can use [[Multi language content|multi-lang syntax]] if you wish.&lt;br /&gt;
#Give the role a description (optional).&lt;br /&gt;
#Select an appropriate role archetype (see below for further information).&lt;br /&gt;
#Select the contexts where the role may be assigned e.g. &#039;User&#039; for Parent role.&lt;br /&gt;
#Set permissions as required.&lt;br /&gt;
#Scroll to the top or bottom of the page and click the &amp;quot;Create this role&amp;quot; button.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|-&lt;br /&gt;
| [[Image:addinganewrole26.png|thumb|Adding a new role and setting context types]]&lt;br /&gt;
| [[Image:permissions125.png|thumb|Choose &amp;quot;Allow&amp;quot; where required]]&lt;br /&gt;
| [[Image:permissions225.png|thumb|Extra options with &amp;quot;Show advanced&amp;quot; enabled]]&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Role archetypes==&lt;br /&gt;
&lt;br /&gt;
A role archetype&lt;br /&gt;
&lt;br /&gt;
* Is a hard-coded template for a role&lt;br /&gt;
* Is used during upgrades when adding defaults for new capabilities - no archetype = no new capabilities during upgrade&lt;br /&gt;
* Is used during when resetting a role to determine the defaults - no archetype = reset removes all capabilities&lt;br /&gt;
&lt;br /&gt;
There is no need to set a role archetype for custom roles used for overrides or if the site admin wants to specify new capabilities manually after upgrading.&lt;br /&gt;
&lt;br /&gt;
The archetypes (which relate directly to the built-in roles) are:&lt;br /&gt;
* manager&lt;br /&gt;
* coursecreator&lt;br /&gt;
* editingteacher&lt;br /&gt;
* teacher&lt;br /&gt;
* guest&lt;br /&gt;
* user&lt;br /&gt;
* frontpage&lt;br /&gt;
&lt;br /&gt;
==Creating a duplicate role==&lt;br /&gt;
&lt;br /&gt;
To create a duplicate role:&lt;br /&gt;
#Go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Define roles&#039;&#039;. &lt;br /&gt;
#Click the &amp;quot;Add a new role&amp;quot; button.&lt;br /&gt;
#Select existing role as a template&lt;br /&gt;
#Give a name and set permissions for your new role; scroll down and click &amp;quot;Create this role&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
==New role considerations==&lt;br /&gt;
&lt;br /&gt;
A new role is not automatically listed in course descriptions even if was created by copying a role that is listed, such as Teacher. If you want the new role to appear in the course listing, you must set it explicitly via &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Appearance &amp;gt; Courses&amp;gt;Course Contacts&amp;quot;&lt;br /&gt;
&lt;br /&gt;
==Testing a new role==&lt;br /&gt;
&#039;&#039;Administration &amp;gt; Switch role to&#039;&#039;&lt;br /&gt;
Use the &amp;quot;Switch role to&amp;quot; link to see what another role will see in that context.  &lt;br /&gt;
&lt;br /&gt;
Since switching roles confines you to those roles you can assign in a course context, this method is only useful for testing course-scoped capabilities (i.e. it will not be useful for testing permissions that apply outside the course context, like moodle/user:edit).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Tip:&#039;&#039; You can always create test user and assign the new role to them.  Then logout as admin and login as the test user.  This is really the best way to test a new role.&lt;br /&gt;
&lt;br /&gt;
==Example custom roles==&lt;br /&gt;
&lt;br /&gt;
*[[Parent role|Parent]] - for providing parents/mentors/tutors with permission to view certain information about their children/mentees/tutees&lt;br /&gt;
*[[Demo teacher role|Demo teacher]] - for providing a demonstration teacher account with a password which can&#039;t be changed&lt;br /&gt;
*[[Forum moderator role|Forum moderator]] - for providing a user with permission in a particular forum to edit or delete forum posts, split discussions and move discussions to other forums&lt;br /&gt;
*[[Forum poster role]] - a highly restricted custom role which may be given to a visitor account to enable them to post in forums in a guest access course.&lt;br /&gt;
*[[Calendar editor role|Calendar editor]] - for enabling a user to add site or course events to the calendar&lt;br /&gt;
*[[Blogger role|Blogger]] - for limiting blogging to specific users only&lt;br /&gt;
*[[Quiz user with unlimited time role|Quiz user with unlimited time]] - for allowing a user unlimited time to attempt a quiz which has a time limit set&lt;br /&gt;
*[[Question creator role|Question creator]] - for enabling students to create questions for use in quizzes&lt;br /&gt;
*[[Question sharer]] - for allowing teachers to share questions between courses&lt;br /&gt;
*[[Course requester role]] - for restricting users who can make course requests&lt;br /&gt;
*[[Feedback template creator]] - for allowing teachers to save as &amp;quot;Public&amp;quot; a Feedback template.&lt;br /&gt;
*[[Grading forms publisher]] for allowing teachers to share Advanced grading forms with others&lt;br /&gt;
*[[Grading forms manager]] for allowing teachers to share Advanced grading forms with others and to delete templates others have created.&lt;br /&gt;
*[[Grade viewer]] for allowing users to view but not edit grades.&lt;br /&gt;
*[[Gallery owner role]] - may be used to provide editing capabilities (add and edit gallery images) to users on individual Lightbox Galleries.&lt;br /&gt;
*[[Course tagger]] - for allowing users other than managers and editing teachers to tag courses.&lt;br /&gt;
&lt;br /&gt;
==Uploading users to a system role==&lt;br /&gt;
&lt;br /&gt;
Where certain custom roles are applied in the system context, it is possible to upload users to that role in bulk by adding the field &#039;&#039;sysrole1&#039;&#039; (etc) to the CSV file&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
Using Moodle forum discussions:&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=66782 What happens if a user has multiple roles in a course?]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=90140 logged in: what role am I?]&lt;br /&gt;
* For more information, Ask questions and get answers on the [http://moodle.org/mod/forum/view.php?id=6826 &amp;quot;Roles and Permissions&amp;quot;] forum.&lt;br /&gt;
&lt;br /&gt;
[[Category:Site administration]]&lt;br /&gt;
&lt;br /&gt;
[[de:Neue Rollen anlegen]]&lt;br /&gt;
[[es:Crear roles personalizados]]&lt;br /&gt;
[[fr:Création_de_rôles_personnalisés]]&lt;br /&gt;
[[ja:カスタムロールの作成]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Course_meta_link_enrolment&amp;diff=122940</id>
		<title>Course meta link enrolment</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Course_meta_link_enrolment&amp;diff=122940"/>
		<updated>2016-04-16T15:08:07Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Enrolment}}&lt;br /&gt;
The Course meta link plugin makes it possible for one course, called a metacourse, to bring in enrolments from other courses. The Course meta link plugin needs to be enabled both on the site level by the site admin and has to be enabled within the course. &lt;br /&gt;
&lt;br /&gt;
==Course settings for Course meta link==&lt;br /&gt;
&lt;br /&gt;
*In a course, go to &#039;&#039;Administration &amp;gt; Course administration &amp;gt; Users &amp;gt; Enrolment methods&#039;&#039;.&lt;br /&gt;
*Click the dropdown menu under the enrolment methods and select &#039;Course meta link&#039;.&lt;br /&gt;
&#039;&#039;&lt;br /&gt;
[[File:enrolmentmethods29c.png|thumb|center|300px]]&lt;br /&gt;
*In the screen that comes up next, select from the dropdown box the course you wish to bring enrolments from and then click &#039;Add method&#039;.&lt;br /&gt;
[[File:newmetalink.png|thumb|center|400px]]&lt;br /&gt;
&lt;br /&gt;
*If several courses need to be added to the course, a button &amp;quot;Add method and create another&amp;quot; allows the teacher or course manager to quickly repeat the process without having to return to the main screen and start again.&lt;br /&gt;
*For each linked course, the users may be added to an existing group in the new course, or a new group may be created for them. (Groups from the linked courses are not synced to groups in the new courses. All users will be added to one group when the link is made.)&lt;br /&gt;
&lt;br /&gt;
:Note:  &#039;&#039;A teacher in a course will only be able to choose from courses they are teachers in elsewhere.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
*The users from the source (child)  course will now be enrolled in the current course - see the numbers in the screenshot below:&lt;br /&gt;
&lt;br /&gt;
[[File:Addedmetacourse.png]]&lt;br /&gt;
&lt;br /&gt;
*When new users are enrolled to the source (child) course, they will be automatically brought into the current  target (meta)course.&lt;br /&gt;
&lt;br /&gt;
==Site settings for Course meta link==&lt;br /&gt;
&lt;br /&gt;
The Course meta link plugin may be enabled or disabled throughout the site in &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Enrolments &amp;gt; Manage enrol plugins&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The page &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Enrolments &amp;gt; Course meta link&#039;&#039; contains options for defaults that admin can set. (It can be also be accessed by clicking the &#039;&#039;Settings&#039;&#039; link on on the course meta link section of &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Enrolments &amp;gt; Manage enrol plugins&#039;&#039;)&lt;br /&gt;
&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 enables administrators to exclude particular roles.&lt;br /&gt;
&lt;br /&gt;
==Course meta link capabilities==&lt;br /&gt;
&lt;br /&gt;
*[[Capabilities/enrol/meta:config|Configure meta enrol instances]]&lt;br /&gt;
*[[Capabilities/enrol/meta:selectaslinked|Select course as meta linked]]&lt;br /&gt;
&lt;br /&gt;
==Enabling teachers to add meta links==&lt;br /&gt;
&lt;br /&gt;
An administrator can enable teachers to add course meta links as follows:&lt;br /&gt;
&lt;br /&gt;
* Go to &#039;&#039;Site Administration &amp;gt; Users &amp;gt; Permissions &amp;gt; Define Roles&#039;&#039;&lt;br /&gt;
* Select the Teacher Role and click on the Edit button&lt;br /&gt;
* Scroll down to Course Meta Link as shown in the images below:&lt;br /&gt;
{| class=&amp;quot;nicetable&amp;quot; &lt;br /&gt;
|-&lt;br /&gt;
|[[Image:metacoursepermissionset00.png|Permission block for allowing Teachers to link Meta courses.]] &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align: center;&amp;quot;| The default setting is &amp;quot;Not Set&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|[[Image:metacoursepermissionset01.png|Permission changes for editing.]] &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align: center;&amp;quot;| When the Edit button is clicked, the panel changes to &amp;quot;Allow&amp;quot; and a checkbox&lt;br /&gt;
|- &lt;br /&gt;
|[[Image:metacoursepermissionset02.png|Setting permission to allow Teachers to link Meta courses.]]&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;text-align: center;&amp;quot;| Change to &amp;quot;Allow&amp;quot; by a click on the checkbox.  &lt;br /&gt;
|}&lt;br /&gt;
* Scroll to the bottom of the page to save your changes.&lt;br /&gt;
&lt;br /&gt;
==Examples of meta-linked courses==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;nicetable&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. &lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;nicetable&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;
There is one limitation: you cannot &#039;nest&#039; metacourses. In other words, if you have child course A linked to meta course B, and you then link B as a child course to meta course C, a student enrolled in A will be added to B, but not to C. In this situation, you would need to add a meta link directly between A and C instead of trying to nest them. (Another option might be to use [[Cohorts]].)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
Some known issues:&lt;br /&gt;
&lt;br /&gt;
* MDL-34938 - Important Open Issue: Enrolment expiration date settings in child course do not properly unenrol students from the Meta-course&lt;br /&gt;
* MDL-27628 - A workaround in the tracker for adding more than one course at a time&lt;br /&gt;
&lt;br /&gt;
How to use:&lt;br /&gt;
* [https://moodle.org/mod/forum/discuss.php?d=316161#p1266891 Re: Help setting up meta link metacourses with parent child courses] forum post&lt;br /&gt;
* [http://www.youtube.com/watch?v=hA5QcTb13no&amp;amp;feature=player_embedded  Screencast showing how to use the Course meta link plugin to make a Metacourse]&lt;br /&gt;
*[[Metacourse examples of use]]&lt;br /&gt;
&lt;br /&gt;
[[de:Meta-Einschreibung]]&lt;br /&gt;
[[es:Enlace a metacurso]]&lt;br /&gt;
[[ja:コースメタリンク]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Managing_repositories&amp;diff=122893</id>
		<title>Managing repositories</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Managing_repositories&amp;diff=122893"/>
		<updated>2016-04-10T14:02:33Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Repositories}}&lt;br /&gt;
==Enabling repositories==&lt;br /&gt;
&lt;br /&gt;
Repositories can be enabled by an administrator in &#039;&#039;Site administration &amp;gt; Plugins &amp;gt; Repositories &amp;gt; Manage repositories&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
A repository plugin may be set to one of three possible statuses:&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Enabled and visible&amp;quot; means available for use in the [[File picker]]&lt;br /&gt;
* &amp;quot;Enabled and hidden&amp;quot; means not available in the [[File picker]] &lt;br /&gt;
* &amp;quot;Disabled&amp;quot; means not available for use and if content has been added to your site you will be given the following message:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Are you sure you want to remove this repository plugin, its options and all of its instances - [Repository Name here]? If you choose &amp;quot;Continue and download&amp;quot;, file references to external contents will be downloaded to Moodle. This could take a long time to process.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
With options to Continue, Continue and download, or Cancel.&lt;br /&gt;
&lt;br /&gt;
The order in which repositories are shown in the [[File picker|file picker]] may be set using the up and down arrows.&lt;br /&gt;
&lt;br /&gt;
==Vocabulary==&lt;br /&gt;
&#039;&#039;&#039;Repository plugin&#039;&#039;&#039;: it is also called a repository type. It can be named Box, Flickr, Mahara, Youtube... Adding a plugin allow users to create instances of this plugin. Only instances are displayed into the file picker. Type only exist in order to let a Moodle administrator to deactivate/delete all instances of a type in one click.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Repository instance&#039;&#039;&#039;: An instance is displayed into the file picker and it is the access point to an external repository. An instance can have specific settings (for example be linked to a personal account).&lt;br /&gt;
 &lt;br /&gt;
*First case: when you add the plugin, an instance is automatically created and can not be edited. The Moodle administrator cannot change the instance name. The instance name displayed into the file picker will be exactly the same as the plugin name. For example Youtube, Box...&lt;br /&gt;
*Second case: the plugin allow the Moodle administrator to add multiple instances. An instance has a name for example Flickr Public access to Martin account, Martin&#039;s Mahara... &amp;lt;br/&amp;gt;For this second case it is important to identify two different kind of instances:&lt;br /&gt;
#Common instances: The instances set by Moodle administrator in these same administration pages will be available into any file picker.&lt;br /&gt;
#Private instance: A teacher can set some instances available only for a course, and an user can set some instances only available for himself. In order to set instances for a course the teacher will go to the course page, and in order to set instances for a personal use, a user will go on his profile page. An administrator cannot add/edit private instances from the administration pages.&lt;br /&gt;
&lt;br /&gt;
==Common repository settings==&lt;br /&gt;
&lt;br /&gt;
Common repository settings can be set by an administrator in &#039;&#039;Site administration &amp;gt; Plugins &amp;gt; Repositories &amp;gt; Common Repository settings&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
===Cache expire===&lt;br /&gt;
You can specify how long in seconds file listings are cached locally when browsing external repositories.&lt;br /&gt;
&lt;br /&gt;
===Timeout settings===&lt;br /&gt;
&lt;br /&gt;
If users are reporting timeouts when using repositories, an admin can increase the timeout for downloading or synchronising files.&lt;br /&gt;
&lt;br /&gt;
====Get file timeout====&lt;br /&gt;
Timeout in seconds for downloading an external file into Moodle. Defaults to 30.&lt;br /&gt;
====Sync file timeout====&lt;br /&gt;
Timeout in seconds for syncronising the external file size. Defaults to 1.&lt;br /&gt;
====Sync image timeout====&lt;br /&gt;
Timeout in seconds for downloading an image file from external repository during syncronisation. Defaults to 3.&lt;br /&gt;
&lt;br /&gt;
===Allow external links===&lt;br /&gt;
&lt;br /&gt;
With some repositories such as Flickr and Wikimedia, users can have the choice whether to copy the media into Moodle (the preferred solution) or to make a link to it instead.&lt;br /&gt;
&lt;br /&gt;
Defaults to Yes.&lt;br /&gt;
&lt;br /&gt;
===Legacy course files in new courses===&lt;br /&gt;
&lt;br /&gt;
This repository is not normally available in new courses as it is designed for upgraded 1.9 courses. However, if it is checked here then it will appear when new courses are created - but certain backup and restore features won&#039;t work with it. &lt;br /&gt;
&lt;br /&gt;
See [[Legacy course files]] for more details. This should not be enabled in sites not originally upgraded from Moodle 1.9.&lt;br /&gt;
&lt;br /&gt;
Defaults to No.&lt;br /&gt;
&lt;br /&gt;
===Allow adding to legacy course files===&lt;br /&gt;
&lt;br /&gt;
When &#039;Legacy course files&#039; is available in a course, this setting controls if users are able to add new files to it. When enabled, users will be able to add files and directories, as well as delete. When disabled, users will not be able to add files and directories.&lt;br /&gt;
&lt;br /&gt;
==Repository capabilities==&lt;br /&gt;
&lt;br /&gt;
Authenticated user role:&lt;br /&gt;
&lt;br /&gt;
*[[Capabilities/repository/alfresco:view|View Alfresco repository]]&lt;br /&gt;
*[[Capabilities/repository/areafiles:view|View Embedded files]]&lt;br /&gt;
*[[Capabilities/repository/boxnet:view|View Box repository]]&lt;br /&gt;
*[[Capabilities/repository/dropbox:view|View a Dropbox folder]]&lt;br /&gt;
*[[Capabilities/repository/flickr:view|View Flickr repository]]&lt;br /&gt;
*[[Capabilities/repository/flickr public:view|Use Flickr public repository in file picker]]&lt;br /&gt;
*[[Capabilities/repository/googledocs:view|View Google Drive repository]]&lt;br /&gt;
*[[Capabilities/repository/merlot:view|View the Merlot repository]]&lt;br /&gt;
*[[Capabilities/repository/picasa:view|View Picasa repository]]&lt;br /&gt;
*[[Capabilities/repository/recent:view|View Recent files]]&lt;br /&gt;
*[[Capabilities/repository/s3:view|View Amazon s3 repository]]&lt;br /&gt;
*[[Capabilities/repository/skydrive:view|View Microsoft OneDrive repository]]&lt;br /&gt;
*[[Capabilities/repository/upload:view|Use uploading in file picker]]&lt;br /&gt;
*[[Capabilities/repository/url:view|Use URL downloader in file picker]]&lt;br /&gt;
*[[Capabilities/repository/user:view|View use Private files]]&lt;br /&gt;
*[[Capabilities/repository/wikimedia:view|View Wikimedia repository]]&lt;br /&gt;
*[[Capabilities/repository/youtube:view|Use YouTube in file picker]]&lt;br /&gt;
&lt;br /&gt;
Manager, Course creator, Teacher, Non-editing teacher Roles:&lt;br /&gt;
&lt;br /&gt;
*[[Capabilities/repository/coursefiles:view|Use Legacy course files repository]]&lt;br /&gt;
*[[Capabilities/repository/filesystem:view|View File system repository]]&lt;br /&gt;
*[[Capabilities/repository/local:view|View Server repository]]&lt;br /&gt;
*[[Capabilities/repository/webdav:view|View WebDav repository]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[de:Repositories verwalten]]&lt;br /&gt;
[[es:Gestionando repositorios]]&lt;br /&gt;
[[ja:リポジトリ管理]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Repositories_FAQ&amp;diff=122143</id>
		<title>Repositories FAQ</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Repositories_FAQ&amp;diff=122143"/>
		<updated>2016-01-30T15:38:39Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Repositories}}&lt;br /&gt;
==What is a repository?==&lt;br /&gt;
A repository can be thought of as a storage area from which users can retrieve files to add to their course. There are several repositories enabled by default, such as  [[Server files]] which contains files from other courses a user has access to, or [[Upload a file repository| Upload a file]] which allows the user to search their computer or USB drive for a file to upload. Other repositories include [[Google Docs repository|Google Drive]],or [[Flickr repository|Flickr]]. See [[Repositories]] for more information.&lt;br /&gt;
&lt;br /&gt;
==How can I enable repositories in Moodle?==&lt;br /&gt;
&lt;br /&gt;
Repositories can be enabled by a site administrator in &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Repositories &amp;gt; Manage repositories&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
All enabled and visible repositories will appear in the file picker.&lt;br /&gt;
&lt;br /&gt;
==How can I delete an embedded file previously added using the file picker?==&lt;br /&gt;
&lt;br /&gt;
There is no need to do anything, as any unused files are detected and then deleted automatically after a period of time. Users cannot delete files manually, since they may be used elsewhere.&lt;br /&gt;
&lt;br /&gt;
When an activity or resource which uses a file is deleted, the file is moved immediately to trash. The frequency with which trash is emptied i.e. files are deleted depends on  the settings in &#039;&#039;Site administration &amp;gt; Server &amp;gt; Scheduled tasks&#039;&#039; (\core\task\file_trash_cleanup_task)&lt;br /&gt;
&lt;br /&gt;
See also the forum thread [https://moodle.org/mod/forum/discuss.php?d=317135#p1271171 Deleting uploaded files].&lt;br /&gt;
&lt;br /&gt;
==If I add a file (File resources) to a page, then delete the File resource, will the file I added remain in my Recent files list?==&lt;br /&gt;
&lt;br /&gt;
No. The file will not be available.&lt;br /&gt;
&lt;br /&gt;
==How do I create a new repository on my site?==&lt;br /&gt;
You can create a new repository that will show up on the file picker.  See [[File system repository]].&lt;br /&gt;
&lt;br /&gt;
==How can I prevent students from accessing the private files repository?==&lt;br /&gt;
If you want to prevent students from accessing it but still wish other users to access it, follow these steps:&lt;br /&gt;
#In &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Users&amp;gt;Permissions&amp;gt;Define Roles&#039;&#039; create a new role (such as &amp;quot;no private files&amp;quot;) and assign it in the system context. (See [[Creating custom roles]] for help creating a new role)&lt;br /&gt;
#Search for and set the capabilities &#039;&#039;moodle/user:manageownfiles&#039;&#039; and &#039;&#039;repository/user:view&#039;&#039; to &#039;&#039;&#039;prohibit.&#039;&#039;&#039;&lt;br /&gt;
#In &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Users&amp;gt;Permissions&amp;gt;Assign system roles&#039;&#039;, give this role to the student(s) you do not wish to access private files. &lt;br /&gt;
#They may be enrolled as normal students in courses, but will not be able to use their private files.&lt;br /&gt;
&lt;br /&gt;
An alternative, but more dramatic, because it involves modifying standard roles, is to edit  both the authenticated user role AND the student role to prevent the capabilities &amp;quot;moodle/user:manageownfiles&amp;quot; and &amp;quot;repository/user:view&amp;quot; - and then edit the teacher role (and any others) to allow them. You have to do it to the authenticated user role as well, as all users are authenticated users in the system as well as teachers or students.&lt;br /&gt;
&lt;br /&gt;
==What happens if a teacher adds a file from their Private files to the course and they later leave and their account is closed?==&lt;br /&gt;
As long as a file is used in a context, such as a course, the file should remains available in that context.&lt;br /&gt;
&lt;br /&gt;
That holds true when a teacher copies a file in a course from his My private files area and also when a teacher creates an alias/shortcut: in the latter case if a teacher deletes his files from My private files area that are used as alias/shortcut in some courses, Moodle will convert existing alias/shortcuts into file copies, so your course file links won&#039;t break. &#039;&#039;(copied from [https://moodle.org/mod/forum/discuss.php?d=2287 forum thread thanks to Andrea Bicciolo]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==I cannot access a student&#039;s repositories when logged in as that student==&lt;br /&gt;
This is intentional, as there is a security and privacy risk involved in an administrator being able to log in as a student and then explore and use the student&#039;s Google Drive, Dropbox and other similar repositories.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [[File picker FAQ]]&lt;br /&gt;
* [[File system repository FAQ]]&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/view.php?id=1807 Repositories forum]&lt;br /&gt;
&lt;br /&gt;
[[Category:FAQ]]&lt;br /&gt;
&lt;br /&gt;
[[de:Repositories FAQ]]&lt;br /&gt;
[[es:Repositorios FAQ]]&lt;br /&gt;
[[ja:リポジトリFAQ]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Repositories&amp;diff=121759</id>
		<title>Repositories</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Repositories&amp;diff=121759"/>
		<updated>2015-12-08T15:03:08Z</updated>

		<summary type="html">&lt;p&gt;Mits: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Managing content}}&lt;br /&gt;
Repositories in Moodle enable users to add files to a course and other locations in Moodle. Repositories provide access to specific types of file sources. They can also allow, where appropriate, users to upload files, access previously uploaded files, and to easily bring content into Moodle from external sources, such as Flickr or Google Docs. &lt;br /&gt;
&lt;br /&gt;
See [[Managing repositories]] for more on configuring and managing them.&lt;br /&gt;
&lt;br /&gt;
==Standard repositories==&lt;br /&gt;
&lt;br /&gt;
Repositories are managed in &#039;&#039;Site administration &amp;gt; Plugins &amp;gt; Repositories &amp;gt; Manage repositories&#039;&#039;. Standard repositories come with default Moodle. It is also possible to add additional repositories via Moodle plugins. &lt;br /&gt;
&lt;br /&gt;
===Repositories enabled by default===&lt;br /&gt;
&lt;br /&gt;
* [[Embedded files repository|Embedded files]] - Allows linking to files and images available to the user that have been added/embedded in their course activities&lt;br /&gt;
* [[Server files repository|Server files]] - Gives access to files elsewhere on the Moodle site (limited by a user&#039;s permissions)&lt;br /&gt;
* [[Recent files repository|Recent files]] - Shows the last 50 files you have uploaded, according to the context&lt;br /&gt;
* [[Upload a file repository|Upload a file]] - Enables the &amp;quot;Upload a file&amp;quot; option in the site File picker to allow users to browse for and upload files&lt;br /&gt;
* [[Private files]] - Enables access to a personal storage area for every user&lt;br /&gt;
* [[URL downloader repository|URL downloader]] - Allows downloading of files and images from a particular URL&lt;br /&gt;
* [[Wikimedia repository|Wikimedia]] - Let&#039;s users search for and insert media (images) from Wikipedia&lt;br /&gt;
&lt;br /&gt;
===Additional standard repositories disabled by default===&lt;br /&gt;
These may be enabled and set to visible or hidden by a site administrator.&lt;br /&gt;
&lt;br /&gt;
* [[Alfresco repository|Alfresco]] - link to or copy files from Alfresco into Moodle&lt;br /&gt;
* [[Box repository|Box]] - bring files in from your Box account&lt;br /&gt;
* [[Legacy course files]] - use the old system from 1.9 of &amp;quot;course files&amp;quot; (pertains to sites upgraded to 1.9)&lt;br /&gt;
* [[Dropbox repository|Dropbox]] - link to or copy files from Dropbox&lt;br /&gt;
* [[EQUELLA repository|EQUELLA]] - link to files in an EQUELLA installation&lt;br /&gt;
* [[File_system_repository|File system]] - access files uploaded to a folder on your server (by, eg FTP)&lt;br /&gt;
* [[Flickr repository|Flickr]] - search for and display images from your personal Flickr account&lt;br /&gt;
* [[Flickr public repository|Flickr public]] - search for and display images publicly available from Flickr&lt;br /&gt;
* [[Google Drive repository|Google Drive]] - bring files from your Google Drive account&lt;br /&gt;
* [[Merlot.org repository|Merlot.org]] - bring resources in from Merlot.org&lt;br /&gt;
* [[Picasa web album repository|Picasa web album]] - search for and display images from your Picasa account&lt;br /&gt;
* [[Amazon S3 repository|Amazon S3]] - enables users to copy files from Amazon S3 storage instances&lt;br /&gt;
* [[Skydrive repository|OneDrive]] bring in files from your Microsoft OneDrive&lt;br /&gt;
* [[WebDAV repository|WebDAV]] -bring in files from external sources using WebDAV protocol &lt;br /&gt;
* [[Youtube videos repository|Youtube videos]] - search for and display Youtube videos&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [[Managing repositories]]&lt;br /&gt;
* [[Repositories FAQ]]&lt;br /&gt;
* [http://www.youtube.com/watch?v=zdrdyev82bU Repositories in Moodle 2.0 video]&lt;br /&gt;
* [http://www.somerandomthoughts.com/blog/whitepaper-moodle-2-repositories/ Whitepaper – Moodle 2 Repositories] by Gavin Henrick&lt;br /&gt;
* [http://www.moodlerooms.com/resources/blog/five-tips-using-new-file-repository-system-moodle Five Tips for Using the New File Repository System in Moodle] by Marcelo Mendes&lt;br /&gt;
* [[:dev:Repository plugins]] developer documentation&lt;br /&gt;
* [http://moodle.org/plugins/browse.php?list=category&amp;amp;id=25 Moodle Repository Plugins database]&lt;br /&gt;
* [http://moodle.org/mod/forum/view.php?id=1807 Moodle Repositories discussion forum]&lt;br /&gt;
&lt;br /&gt;
[[Category:Repositories]]&lt;br /&gt;
&lt;br /&gt;
[[es:Repositorios]]&lt;br /&gt;
[[eu:Biltegiak]]&lt;br /&gt;
[[de:Repositories]]&lt;br /&gt;
[[fr:Dépôts]]&lt;br /&gt;
[[ja:リポジトリ]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Unenrolment&amp;diff=121647</id>
		<title>Unenrolment</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Unenrolment&amp;diff=121647"/>
		<updated>2015-11-30T04:22:21Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Course enrolment}}&lt;br /&gt;
Unenrolment is the process of removing users from a course. It is controlled by one or more of the following:&lt;br /&gt;
&lt;br /&gt;
* The enrolment duration, which suspends students after the specified time has elapsed.  Some plugins include the  option to unenrol users after enrolment expiration&lt;br /&gt;
* For self enrolment, the &#039;Unenrol inactive after&#039; setting in &#039;&#039;Administration &amp;gt; Course administration &amp;gt; Users &amp;gt; Enrolment methods &amp;gt; Self enrolment&#039;&#039; can be set to specify a time after which a student is automatically unenrolled from a course if they haven&#039;t accessed it in that time&lt;br /&gt;
* An [[Enrolment plugins|enrolment plugin]] may decide that the enrolment has expired, for example, if a user for a course is not present in an LDAP database, or if a Flat file is processed by Cron.&lt;br /&gt;
&lt;br /&gt;
In addition, users with the appropriate permission can unenrol themself from a course. &lt;br /&gt;
&lt;br /&gt;
==Enrolment duration==&lt;br /&gt;
&lt;br /&gt;
The default enrolment duration for manual enrolment can be set in &#039;&#039;Administration &amp;gt; Course administration &amp;gt; Users &amp;gt; Enrolment methods &amp;gt; Manual enrolment&#039;&#039;. It can be amended from the default value when enrolling users manually in &#039;&#039;Administration &amp;gt; Course administration &amp;gt; Users &amp;gt; Enrolled users&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
The enrolment duration for self enrolment can be set in &#039;&#039;Administration &amp;gt; Course administration &amp;gt; Users &amp;gt; Enrolment methods &amp;gt; Self enrolment&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Bulk unenrolment==&lt;br /&gt;
&lt;br /&gt;
Users who were previously manually enrolled may be unenrolled in bulk via &#039;&#039;Administration &amp;gt; Course administraton &amp;gt; Users &amp;gt; Enrolment methods&#039;&#039; then clicking on the &#039;Enrol&#039; users icon.&lt;br /&gt;
&lt;br /&gt;
==Unenrolment and grade history==&lt;br /&gt;
&lt;br /&gt;
When a user is unenrolled, their grade history is not deleted. If a user is unenrolled accidentally, their grades can be restored by going to &#039;&#039;Administration &amp;gt; Course administration &amp;gt; Users &amp;gt; Enrolled users&#039;&#039;, clicking &#039;Enrol users&#039; and making sure that the &#039;Recover user&#039;s old grades if possible&#039; checkbox is ticked in the enrolment options before re-enrolling the user.&lt;br /&gt;
&lt;br /&gt;
Users enrolled with methods other than manual will have their grades restored depending on the value of &amp;quot;recovergradesdefault&amp;quot; in &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Grades &amp;gt; General settings&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
==Suspended or Unenrolled?==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Suspended users&#039;&#039;&#039; are not longer able to access any of their courses on Moodle but their data is preserved, so it is possible for them to return to their course at a later time. This might be useful for example, for keeping safe the work of students who have left the establishment but whose data might be needed for inspection in future years. Suspended users currently still appear in the gradebook but a teacher can select in their Grader report preferences to show only active users or all users (including suspended users). See [[Grade settings]] for more details.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Note:&#039;&#039; A single user may be suspended by an admin user or manager by editing the user&#039;s profile and selecting &amp;quot;Suspended account&amp;quot;. Groups of users may be suspended from &amp;quot;Users &amp;gt; Enrolled users&amp;quot;. With the manual enrolments selected, choose &amp;quot;Edit user enrolments&amp;quot; and &amp;quot;Alter status &amp;gt; Suspended&amp;quot;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
It is also possible to  suspend users from courses  via csv/text file from &#039;&#039;Site administration &amp;gt; Users &amp;gt; Accounts &amp;gt; Upload users&#039;&#039; using the enrolstatus field, where 1 against a user means they are suspended (and leaving blank means they are still enrolled.)&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Unenrolled users&#039;&#039;&#039; do not normally retain any data and will not appear in the gradebook. However, see [[#Unenrolment and grade history]] Unenrolment is typically more final than suspension.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
[http://www.screencast.com/t/XtPhA6w2SM Screencast: how to bulk unenrol students from a course.]&lt;br /&gt;
&lt;br /&gt;
[[Category:Site administration]]&lt;br /&gt;
&lt;br /&gt;
[[eu:Desmatrikulatzea]]&lt;br /&gt;
[[fr:Désinscription]]&lt;br /&gt;
[[de:Abmelden aus einem Kurs]]&lt;br /&gt;
[[es:Des-inscripción]]&lt;br /&gt;
[[ja:登録解除]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Import_course_data&amp;diff=119706</id>
		<title>Import course data</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Import_course_data&amp;diff=119706"/>
		<updated>2015-09-01T15:02:59Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Reusing activities}}&lt;br /&gt;
Course activities and resources may be imported from any other course that the teacher has editing permissions in. This will allow teachers to re-use instead of re-creating one or more [[Activities|activities]] or [[Resources|resources]]. &lt;br /&gt;
&lt;br /&gt;
Import course data is similar to a backup and restore process and does not include any user data.&lt;br /&gt;
&lt;br /&gt;
==How to import activities or resources==&lt;br /&gt;
&lt;br /&gt;
*In &#039;&#039;Administration  &amp;gt; Course Administration&#039;&#039;, click on the &#039;&#039;Import&#039;&#039; link:&lt;br /&gt;
&lt;br /&gt;
[[File:Importactivities.png]]&lt;br /&gt;
&lt;br /&gt;
*Select the course you wish to import from and click  &#039;&#039;Continue&#039;&#039;.&lt;br /&gt;
*You will be presented with the &amp;quot;backup settings&amp;quot; page. Use the check boxes for import activities, blocks and or filters as types of items which will show on the next screen. &lt;br /&gt;
&lt;br /&gt;
[[File:Importsettings.png]]&lt;br /&gt;
&lt;br /&gt;
*Select the elements you want to include in the import in the Schema settings step.&lt;br /&gt;
&lt;br /&gt;
[[File:Includeforimport.png]]&lt;br /&gt;
&lt;br /&gt;
*Review and click &#039;&#039;Perform import&#039;&#039; or click the cancel or previous buttons. The confirmation page will place green check marks and red marks next to the backup settings and include item list for you to review.&lt;br /&gt;
&lt;br /&gt;
[[File:Includeforimportconfirm.png]]&lt;br /&gt;
&lt;br /&gt;
*You should see the &amp;quot;Import complete. Click continue to return to the course.&amp;quot; message, or an error message indicating that the import process did not take place.&lt;br /&gt;
&lt;br /&gt;
==Examples and tips==&lt;br /&gt;
&lt;br /&gt;
*Importing a quiz from course A to course B, will also add the questions to the question bank so you can use them in new quizzes. &lt;br /&gt;
*&#039;&#039;Tip:&#039;&#039; Groups can also be imported as a batch from a file.&lt;br /&gt;
* &#039;&#039;Tip:&#039;&#039; It may be necessary to check all Activities (Forums, Assignments, etc.) to assure they are now using HTML format. Due to the change in the HTML editor from 1.9 to 2.2, editing of Activities comes up as &amp;quot;Moodle Auto-format&amp;quot; which displays the HTML version of the Description. Once the &amp;quot;Moodle Auto-format&amp;quot; has been changed to &amp;quot;HTML format&amp;quot; the new HTML editor is available by default when editing.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Import course capabilities==&lt;br /&gt;
&lt;br /&gt;
* [[Capabilities/moodle/backup:backuptargetimport|Backup for import]] - allows a user to backup a course ready for importing into another course &lt;br /&gt;
* [[Capabilities/moodle/restore:restoretargetimport|Restore from files targeted as import]] - allows a user to import activities or resources from another course&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*[[Course backup]] &amp;amp; [[Course restore]] - for a similar process&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[fr:Importation]]&lt;br /&gt;
[[de:Kursdaten importieren]]&lt;br /&gt;
[[es:Importar datos de curso]]&lt;br /&gt;
[[ja:コースデータをインポートする]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/restore:restoretargetimport&amp;diff=119695</id>
		<title>Capabilities/moodle/restore:restoretargetimport</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/restore:restoretargetimport&amp;diff=119695"/>
		<updated>2015-08-31T15:03:18Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
*This allows a user to [[Import course data|import activities or resources from another course]]&lt;br /&gt;
*Together with the capability [[Capabilities/moodle/backup:backuptargetimport|moodle/backup:backuptargetimport]], this allows a user to duplicate an activity or resource using the x2 icon on the course page (when editing is turned on)&lt;br /&gt;
*This capability is allowed for the default roles of manager and teacher &lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [[Reusing activities]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities|Backup]]&lt;br /&gt;
[[Category:Backup]]&lt;br /&gt;
&lt;br /&gt;
[[es:Capabilities/moodle/restore:restoretargetimport]]&lt;br /&gt;
[[ja:ケイパビリティ/moodle/restore:restoretargetimport]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/backup:backuptargetimport&amp;diff=119636</id>
		<title>Capabilities/moodle/backup:backuptargetimport</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/backup:backuptargetimport&amp;diff=119636"/>
		<updated>2015-08-24T15:32:35Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
*This allows a user to backup a course ready for importing into another course&lt;br /&gt;
*Together with the capability [[Capabilities/moodle/restore:restoretargetimport|moodle/restore:restoretargetimport]], this allows a user to duplicate an activity or resource using the x2 icon on the course page (when editing is turned on)&lt;br /&gt;
*This capability is allowed for the default roles of manager and teacher&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [[Reusing activities]]&lt;br /&gt;
* [[Import course data]]&lt;br /&gt;
&lt;br /&gt;
[[Category:Capabilities|Backup]]&lt;br /&gt;
[[Category:Backup]]&lt;br /&gt;
&lt;br /&gt;
[[ja:ケイパビリティ/moodle/backup:backuptargetimport]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=SSL_certificate_for_moodle.org&amp;diff=118779</id>
		<title>SSL certificate for moodle.org</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=SSL_certificate_for_moodle.org&amp;diff=118779"/>
		<updated>2015-06-08T15:25:35Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Security}}&lt;br /&gt;
== Synopsis ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE: This has been updated as of 04/11/2013 - Moodle has moved to the GeoTrust Certificate Authority&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
When you, as an administrator, [[Notifications|check for available updates]] or [[Automatic updates deployment|install an update]], your Moodle site needs to communicate with moodle.org. This communication is done via the secure HTTPS protocol. Your Moodle site validates the SSL certificate of moodle.org (such as the [https://moodle.org/plugins Moodle plugins directory]) and verifies its identity. To pass this verification, there must be a certificate (in the PEM format) of the [http://en.wikipedia.org/wiki/Certificate_authority certificate authority (CA)] that issued the certificate for moodle.org installed on your server. &lt;br /&gt;
&lt;br /&gt;
The SSL certificate for moodle.org has been issued by the [http://www.geotrust.com/resources/root-certificates/ GeoTrust Certificate Authority].&lt;br /&gt;
&lt;br /&gt;
== Problem ==&lt;br /&gt;
&lt;br /&gt;
If this CA certificate is missing, the remote site (moodle.org) can not be verified and so your Moodle site will refuse to fetch the data (to protect you against so called man-in-the-middle attack). The exact location of the certificate on your server depends on the OS type and other settings. On Linux servers it may be typically found at &#039;&#039;/usr/share/ca-certificates/mozilla/GeoTrust_Primary_Certification_Authority.crt&#039;&#039; for example.&lt;br /&gt;
&lt;br /&gt;
A missing CA certificate results in an error when checking for available updates and attempting to install them.&lt;br /&gt;
&lt;br /&gt;
== Solutions ==&lt;br /&gt;
&lt;br /&gt;
=== Update your operating system (recommended) ===&lt;br /&gt;
&lt;br /&gt;
The recommended way to fix this problem is to update your server&#039;s operating system so that it contains recent SSL certificates from common certificate authorities. This does not seem to help for Windows servers though. At Windows, the cURL library bundled with PHP does not use the CA certificates installed in the OS and you will have to use the alternative solution described below.&lt;br /&gt;
&lt;br /&gt;
For Debian and RedHat based  distributions, CA certificates are distributed in the &#039;&#039;ca-certificates&#039;&#039; package.  Gentoo servers provide them via the &#039;&#039;app-misc/ca-certificates&#039;&#039; ebuild. It&#039;s also a good idea to make sure that the OpenSSL libraries (libssl) and cURL libraries (libcurl) are up-to-date on your server.&lt;br /&gt;
&lt;br /&gt;
=== Provide the CA certificate manually ===&lt;br /&gt;
&lt;br /&gt;
If updating the operating system is not an option for you, or the administrator of the server refuses to update the CA certificates on the server (despite there being no good reason for not doing so), or updating the CA installed in the OS did not help (such as in case of Windows servers), a possible workaround is to download the bundle of required certificates from the [http://curl.haxx.se/ca/ cURL] site. You need to download the file [http://curl.haxx.se/ca/cacert.pem cacert.pem] from there and put it into your &#039;&#039;moodledata/moodleorgca.crt&#039;&#039; file (i.e. download the cacert.pem file, rename it to moodleorgca.crt and upload it into your mooodledata). If this file is found in moodledata, Moodle will use it instead of relying on certificates provided by the operating system.&lt;br /&gt;
&lt;br /&gt;
It must be highlighted that having the CA certificate on your server&#039;s operating system as described above is really the recommended solution. The solution based on moodleorgca.crt should only be considered as a temporary fix (although it seems to be the only way to make it work at Windows servers).&lt;br /&gt;
&lt;br /&gt;
Alternatively, the direct root certificate can be found here, which you may download and install on your system.&lt;br /&gt;
[http://www.geotrust.com/resources/root_certificates/certificates/GeoTrust_Primary_CA.pem GeoTrust Primary CA]&lt;br /&gt;
&lt;br /&gt;
[[es:SSL certificate for moodle.org]]&lt;br /&gt;
[[ja:moodle.orgのSSL証明書]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=History&amp;diff=117834</id>
		<title>History</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=History&amp;diff=117834"/>
		<updated>2015-04-09T17:47:01Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{About Moodle}}&lt;br /&gt;
Growing up in the Australian outback in the late 1970s, Moodle&#039;s  Founder and Lead Developer Martin Dougiamas took lessons from the School of the Air, giving him from a young age an insight into distance learning.&lt;br /&gt;
&lt;br /&gt;
As an adult, he worked and later studied at Curtin University, where his experience with WebCT prompted him to investigate an alternative method of online teaching. In 1999 he started trialling early prototypes of a new LMS, the experiences of which formed the basis for his paper [https://otl.curtin.edu.au/professional_development/conferences/tlf/tlf2000/dougiamas.html Improving the Effectiveness of online Learning]. He registered the word &#039;Moodle&#039; as a [https://docs.moodle.org/dev/License trademark of Moodle Pty Ltd] and explained his choice of name in a [https://moodle.org/mod/forum/discuss.php?d=27533&amp;amp;parent=129848 forum post] some years later.&lt;br /&gt;
 &lt;br /&gt;
Research continued:  the first ever Moodle site was  Peter Taylor&#039;s http://smec2001.moodle.com/ at Curtin University , with Martin making the [https://moodle.org/mod/forum/discuss.php?d=1 first post] on  his own Moodle.com site in November 2001. The pair published [http://dougiamas.com/writing/herdsa2002/ An Interpretive analysis  of an internet based course constructed using a new courseware tool called Moodle.]&lt;br /&gt;
&lt;br /&gt;
By the end of 2001, Moodle could be downloaded via CVS (Git arrived in 2010 and replaced CVS in 2013) and basic installation documentation was available. It was  still very much one man&#039;s vision, with Martin setting up the [https://tracker.moodle.org/secure/Dashboard.jspa tracker in May 2002] &amp;quot;so you can see what I am working on.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[https://moodle.org/mod/forum/discuss.php?d=31 Moodle 1.0] was released in August 2002. Users were discussing Moodle on a new  forum, translating Moodle into different languages and creating themes. A year later, the first contributed module (workshop) was released and [https://moodle.org/ Moodle.org] became the community arm of Moodle, with [https://moodle.com Moodle.com] representing the commercial aspect.&lt;br /&gt;
&lt;br /&gt;
Moodle grew quickly: the first ever Moodle Moot was held in Oxford in 2004 and companies  started applying to become [http://moodle.com/partners/ Moodle partners.] 2005 marked the move to [https://moodle.org/mod/forum/discuss.php?d=32727 dedicated premises] with Martin and 4 others; [http://moodle.com/contact/ the current HQ]  at Richardson St West Perth, houses 16 with 11 working remotely. At the Spanish Moodle Moot 2005 in Las Palmas de Gran Canaria, the mojito established itself as the unofficial - and then subsequently official -  Moodle Moot drink. (See blog post: [http://www.moodleblog.net/2014/03/07/the-history-of-moodle-mojitos/ Moodle Mojitos History])&lt;br /&gt;
&lt;br /&gt;
With improved documentation and  new certification , Moodle had established itself  by 2007 as a leading and [https://moodle.org/mod/forum/discuss.php?d=68408 award-winning open source LMS].  From 1000 registered sites in 2004, it had gone to half a million users in 2008 and  over a million users in 2010, with over 50 Moodle partners. Its translation repository [[:dev:AMOS_manual|AMOS]] held over 100 languages. The long awaited [https://moodle.org/mod/forum/discuss.php?d=162906 Moodle 2.0]  came out in November 2010  and now, regular releases bring enhanced features every six months. The current focus is on mobile technology: an [https://moodle.org/mod/forum/discuss.php?d=227988 official HTML5 app] was released in 2013 and the latest version of Moodle includes a customisable theme suitable for all screen sizes.&lt;br /&gt;
&lt;br /&gt;
The inauguration of the [http://research.moodle.net/ Moodle Research conference] in 2012 served as a reminder that, however advanced the technology, Moodle design and  development is guided by [[Philosophy| social constructionist pedagogy]]. During September 2013, the official Moodle MOOC, [http://learn.moodle.net Learn Moodle], introduced over 9000 participants to Moodle&#039;s basic features. Educators everywhere are encouraged to share their experiences, just as did Martin over a decade previously. The MOOC was repeated in January 2015 and will be run on a regular, six monthly basis.&lt;br /&gt;
&lt;br /&gt;
[[es:Historia]]&lt;br /&gt;
[[de:Historie]]&lt;br /&gt;
[[ja:歴史]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=116633</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=116633"/>
		<updated>2015-01-02T15:48:47Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
Or save some typing and copy and paste this into the terminal. It will install everything one should need for a Moodle installation:&lt;br /&gt;
&lt;br /&gt;
sudo yum -y install aspell aspell-en aspell-fr aspell-es cvs git httpd memcached mysql mysql-server php php-cli php-gd php-intl php-mbstring php-mcrypt php-mysql php-pdo php-pear php-pecl-zip php-pspell php-soap php-xml php-xmlrpc php-zip php-zts unzip zip zip.so&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows (I have found that the precise lines required seem to vary as time goes on)&lt;br /&gt;
Back up my.cnf first with &lt;br /&gt;
 cp /etc/my.cnf /etc/mycnf.original&lt;br /&gt;
&lt;br /&gt;
Then edit to read&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
Check that mysql restarts with &lt;br /&gt;
 service mysqld restart&lt;br /&gt;
&lt;br /&gt;
NB edit. Later with FC16 I found that I needed to make my.cnf read&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 # Settings user and group are ignored when systemd is used.&lt;br /&gt;
 # If you need to run mysqld under different user or group, &lt;br /&gt;
 # customize your systemd unit file for mysqld according to the&lt;br /&gt;
 # instructions in http://fedoraproject.org/wiki/Systemd&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589))&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
Also, you may give the apache user ownership of the site, this way, when you install, the script will be able to create the config.php file.&lt;br /&gt;
If you leave the owner as root, you will have to paste the suggested config.php into /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
To give apache ownership do&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;br /&gt;
&lt;br /&gt;
= Other Resources = &lt;br /&gt;
&lt;br /&gt;
For another method of using Amazon EC2 for Moodle hosting you can utilize the free image created by Bitnami.org: http://bitnami.org/stack/moodle which makes creating a Moodle server on Amazon a snap (no command line necessary)&lt;br /&gt;
&lt;br /&gt;
[[ja:Amazon EC2クラウドサービスインストレーション]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Badges_settings&amp;diff=113222</id>
		<title>Badges settings</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Badges_settings&amp;diff=113222"/>
		<updated>2014-06-19T15:16:21Z</updated>

		<summary type="html">&lt;p&gt;Mits: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Badges}}&lt;br /&gt;
&lt;br /&gt;
==Individual user settings==&lt;br /&gt;
*A user can [[Managing badges|manage badges]] from &#039;&#039;Navigation&amp;gt;My profile&amp;gt;My badges&#039;&#039;.&lt;br /&gt;
*A user can view available course badges from &#039;&#039;Navigation&amp;gt;Current course&amp;gt;Badges&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|[[File:coursebadgenav1.png|thumb|Viewing course badges]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Viewing the badges of other users==&lt;br /&gt;
&lt;br /&gt;
{{New features}}&lt;br /&gt;
&lt;br /&gt;
*A student can view other students&#039; course badges by going to &#039;&#039;Navigation&amp;gt;Participants&#039;&#039; and clicking on the course profile of a chosen user. Badges are visible in the short (course) profile.&lt;br /&gt;
&lt;br /&gt;
==Course administration settings==&lt;br /&gt;
*A teacher can add and manage badges in their course if the administrator has enabled course badges in &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Badges settings.&#039;&#039;&lt;br /&gt;
*They will see a link to badges in &#039;&#039;Administration&amp;gt;Course administration&amp;gt;Badges.&#039;&#039; where badges may be [[Managing badges| managed]] and added.&lt;br /&gt;
&lt;br /&gt;
==Site administration settings==&lt;br /&gt;
*Badges are enabled by default and can be disabled in &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Advanced features.&#039;&#039; (Note that disabling the feature once badges have been awarded does not prevent those badges being verified by external backpacks.)&lt;br /&gt;
*The site settings for badges are located in &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Badges&amp;gt;Badges settings&#039;&#039;&lt;br /&gt;
===Default badge issuer===&lt;br /&gt;
Here you set the name and email address of the issuer. The name will appear where the badges are displayed and might typically be the name of the organization.&lt;br /&gt;
===Salt for hashing recipient&#039;s email address===&lt;br /&gt;
If a hash is used (numbers and letters only) then backpack services can confirm a badge earner without exposing their email address.&lt;br /&gt;
===Enable connection to external backpacks===&lt;br /&gt;
This should be enabled in order to connect to, for example [http://openbadges.org/ Mozilla Open Badges]. Note that this will not work on a Moodle hosted locally/offline.&lt;br /&gt;
===Enable course badges===&lt;br /&gt;
Ticking this box will allow teachers to add and manage badges in their courses.&lt;br /&gt;
&lt;br /&gt;
==Badges capabilities==&lt;br /&gt;
There are a number of capabilities associated with badges:&lt;br /&gt;
&lt;br /&gt;
*[[Capabilities/block/badges:addinstance|Add a new My latest badges block]]&lt;br /&gt;
*[[Capabilities/block/badges:myaddinstance|Add a new My latest badges block to My home]]&lt;br /&gt;
*[[Capabilities/moodle/badges:awardbadge| Award a badge]]&lt;br /&gt;
*[[Capabilities/moodle/badges:configurecriteria|Set up criteria for awarding a badge]]&lt;br /&gt;
*[[Capabilities/moodle/badges:configuredetails|Set up and edit badge details]]&lt;br /&gt;
*[[Capabilities/moodle/badges:configuremessages|Configure badges messages]]&lt;br /&gt;
*[[Capabilities/moodle/badges:createbadge| Create or duplicate badges]]&lt;br /&gt;
*[[Capabilities/moodle/badges:deletebadge| Delete badges]]&lt;br /&gt;
*[[Capabilities/moodle/badges:earnbadge|Earn badges]]&lt;br /&gt;
*[[Capabilities/moodle/badges:manageglobalsettings | Manage badges site administration settings]]&lt;br /&gt;
*[[Capabilities/moodle/badges:manageownbadges|View and manage your own earned badges]]&lt;br /&gt;
*[[Capabilities/moodle/badges:viewawarded|View users who earned a specific badge without being able to award a badge]]&lt;br /&gt;
*[[Capabilities/moodle/badges:viewbadges |View badges without earning them]]&lt;br /&gt;
*[[Capabilities/moodle/badges:viewotherbadges|View public badges in other users&#039; profiles]]&lt;br /&gt;
&lt;br /&gt;
[[de:Auszeichnungen konfigurieren]]&lt;br /&gt;
[[es:Configuraciones de insignias]]&lt;br /&gt;
[[ja:バッジ設定]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Badges_settings&amp;diff=113221</id>
		<title>Badges settings</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Badges_settings&amp;diff=113221"/>
		<updated>2014-06-19T15:15:57Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Badges}}&lt;br /&gt;
&lt;br /&gt;
==Individual user settings==&lt;br /&gt;
*A user can [[Managing badges|manage badges]] from &#039;&#039;Navigation&amp;gt;My profile&amp;gt;My badges&#039;&#039;.&lt;br /&gt;
*A user can view available course badges from &#039;&#039;Navigation&amp;gt;Current course&amp;gt;Badges&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
{|&lt;br /&gt;
|[[File:coursebadgenav1.png|thumb|Viewing course badges]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Viewing the badges of other users==&lt;br /&gt;
&lt;br /&gt;
{{New features}}&lt;br /&gt;
&lt;br /&gt;
*A student can view other students&#039; course badges by going to &#039;&#039;Navigation&amp;gt;Participants&#039;&#039; and clicking on the course profile of a chosen user. Badges are visible in the short (course) profile.&lt;br /&gt;
&lt;br /&gt;
==Course administration settings==&lt;br /&gt;
*A teacher can add and manage badges in their course if the administrator has enabled course badges in &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Badges settings.&#039;&#039;&lt;br /&gt;
*They will see a link to badges in &#039;&#039;Administration&amp;gt;Course administration&amp;gt;Badges.&#039;&#039; where badges may be [[Managing badges| managed]] and added.&lt;br /&gt;
&lt;br /&gt;
==Site administration settings==&lt;br /&gt;
*Badges are enabled by default and can be disabled in &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Advanced features.&#039;&#039; (Note that disabling the feature once badges have been awarded does not prevent those badges being verified by external backpacks.)&lt;br /&gt;
*The site settings for badges are located in &#039;&#039;Administration&amp;gt;Site administration&amp;gt;Badges&amp;gt;Badges settings&#039;&#039;&lt;br /&gt;
===Default badge issuer===&lt;br /&gt;
Here you set the name and email address of the issuer. The name will appear where the badges are displayed and might typically be the name of the organization.&lt;br /&gt;
===Salt for hashing recipient&#039;s email address===&lt;br /&gt;
If a hash is used (numbers and letters only) then backpack services can confirm a badge earner without exposing their email address.&lt;br /&gt;
===Enable connection to external backpacks===&lt;br /&gt;
This should be enabled in order to connect to, for example [http://openbadges.org/ Mozilla Open Badges]. Note that this will not work on a Moodle hosted locally/offline.&lt;br /&gt;
===Enable course badges===&lt;br /&gt;
Ticking this box will allow teachers to add and manage badges in their courses.&lt;br /&gt;
&lt;br /&gt;
==Badges capabilities==&lt;br /&gt;
There are a number of capabilities associated with badges:&lt;br /&gt;
&lt;br /&gt;
*[[Capabilities/block/badges:addinstance|Add a new My latest badges block]]&lt;br /&gt;
*[[Capabilities/block/badges:myaddinstance|Add a new My latest badges block to My home]]&lt;br /&gt;
*[[Capabilities/moodle/badges:awardbadge| Award a badge]]&lt;br /&gt;
*[[Capabilities/moodle/badges:configurecriteria|Set up criteria for awarding a badge]]&lt;br /&gt;
*[[Capabilities/moodle/badges:configuredetails|Set up and edit badge details]]&lt;br /&gt;
*[[Capabilities/moodle/badges:configuremessages|Configure badges messages]]&lt;br /&gt;
*[[Capabilities/moodle/badges:createbadge| Create or duplicate badges]]&lt;br /&gt;
*[[Capabilities/moodle/badges:deletebadge| Delete badges]]&lt;br /&gt;
*[[Capabilities/moodle/badges:earnbadge|Earn badges]]&lt;br /&gt;
*[[Capabilities/moodle/badges:manageglobalsettings | Manage badges site administration settings]]&lt;br /&gt;
*[[Capabilities/moodle/badges:manageownbadges|View and manage your own earned badges]]&lt;br /&gt;
*[[Capabilities/moodle/badges:viewawarded|View users who earned a specific badge without being able to award a badge]]&lt;br /&gt;
*[[Capabilities/moodle/badges:viewbadges |View badges without earning them]]&lt;br /&gt;
*[[Capabilities/moodle/badges:viewotherbadges|View public badges in other users&#039; profiles]]&lt;br /&gt;
&lt;br /&gt;
[[de:Auszeichnungen konfigurieren]]&lt;br /&gt;
[[es:Configuraciones de insignias]]&lt;br /&gt;
[[en:バッジ設定]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/badges:viewotherbadges&amp;diff=113118</id>
		<title>Capabilities/moodle/badges:viewotherbadges</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/badges:viewotherbadges&amp;diff=113118"/>
		<updated>2014-06-14T15:11:32Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
* This allows a user to view public [[Badges|badges]] in other users&#039; profiles&lt;br /&gt;
* This capability is allowed for the default role of authenticated user &lt;br /&gt;
&lt;br /&gt;
[[Category:Badges]]&lt;br /&gt;
[[Category:Capabilities|Badges]]&lt;br /&gt;
&lt;br /&gt;
[[ja:ケイパビリティ/moodle/バッジ:viewotherbadges]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/badges:viewbadges&amp;diff=113037</id>
		<title>Capabilities/moodle/badges:viewbadges</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/badges:viewbadges&amp;diff=113037"/>
		<updated>2014-06-10T15:25:03Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
* This allows a user to view [[Badges|badges]] without earning them&lt;br /&gt;
* This capability is allowed for the default roles of manager, student and authenticated user &lt;br /&gt;
&lt;br /&gt;
[[Category:Badges]]&lt;br /&gt;
[[Category:Capabilities|Badges]]&lt;br /&gt;
&lt;br /&gt;
[[ja:ケイパビリティ/moodle/バッジ:viewbadges]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/badges:viewawarded&amp;diff=112981</id>
		<title>Capabilities/moodle/badges:viewawarded</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/badges:viewawarded&amp;diff=112981"/>
		<updated>2014-06-08T07:24:37Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
* This allows a user to view users who earned a specific [[Badges|badge]] without being able to award a badge&lt;br /&gt;
* This capability is allowed for the default roles of manager, teacher and non-editing teacher&lt;br /&gt;
&lt;br /&gt;
[[Category:Badges]]&lt;br /&gt;
[[Category:Capabilities|Badges]]&lt;br /&gt;
&lt;br /&gt;
[[ja:ケイパビリティ/moodle/バッジ:viewawarded]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/badges:manageownbadges&amp;diff=112869</id>
		<title>Capabilities/moodle/badges:manageownbadges</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/501/en/index.php?title=Capabilities/moodle/badges:manageownbadges&amp;diff=112869"/>
		<updated>2014-06-03T21:29:23Z</updated>

		<summary type="html">&lt;p&gt;Mits: ja link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Capabilities}}&lt;br /&gt;
* This allows a user to view and manage their own earned [[Badges|badges]]&lt;br /&gt;
* This capability is allowed for the default role of authenticated user &lt;br /&gt;
&lt;br /&gt;
[[Category:Badges]]&lt;br /&gt;
[[Category:Capabilities|Badges]]&lt;br /&gt;
&lt;br /&gt;
[[ja:ケイパビリティ/moodle/バッジ:manageownbadges]]&lt;/div&gt;</summary>
		<author><name>Mits</name></author>
	</entry>
</feed>