<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.moodle.org/30/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mroos</id>
	<title>MoodleDocs - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.moodle.org/30/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Mroos"/>
	<link rel="alternate" type="text/html" href="https://docs.moodle.org/30/en/Special:Contributions/Mroos"/>
	<updated>2026-04-15T17:37:18Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://docs.moodle.org/30/en/index.php?title=Development:Setting_up_Netbeans&amp;diff=68098</id>
		<title>Development:Setting up Netbeans</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/30/en/index.php?title=Development:Setting_up_Netbeans&amp;diff=68098"/>
		<updated>2010-02-02T16:17:20Z</updated>

		<summary type="html">&lt;p&gt;Mroos: link is ok but now it is this links to the final version 6.8&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[http://www.netbeans.org/features/php/index.html NetBeans] has got a good PHP support. You find a host of information on the website (tutorials, developer blog, screen casts, etc.).&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
* CVS integration: see all changes, lines deletion, diff in real time, show annotations, diff history...&lt;br /&gt;
* Ctrl+Click: Go to declaration&lt;br /&gt;
* Export/Import Diff Patch&lt;br /&gt;
* Easy navigation&lt;br /&gt;
* List of functions&lt;br /&gt;
* Code completion&lt;br /&gt;
* Instant rename&lt;br /&gt;
* HTML, CSS, JavaScript support&lt;br /&gt;
* MySQL manager&lt;br /&gt;
* Quick Search&lt;br /&gt;
* Very few bugs&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
&lt;br /&gt;
* I recommend downloading the latest [http://www.netbeans.org/downloads/indexB.html 6.7.1 version with PHP support ]. It&#039;s only a 26 MB download.&lt;br /&gt;
* Install and run it.&lt;br /&gt;
&lt;br /&gt;
* There&#039;s also the brand new [http://netbeans.org/community/releases/68/ NetBeans 6.8 release].&lt;br /&gt;
&lt;br /&gt;
== Set up for Moodle development ==&lt;br /&gt;
&lt;br /&gt;
* Checkout your Moodle project with a &#039;&#039;&#039;CVS client&#039;&#039;&#039; - see [[CVS for Administrators]] or [[Development:CVS for developers|CVS for Developers]].&lt;br /&gt;
&lt;br /&gt;
* Open File &amp;gt; New Project &amp;gt; PHP &amp;gt; PHP Application &amp;gt; Next &lt;br /&gt;
: You&#039;re going to set the project now. &#039;&#039;Name&#039;&#039;, &#039;&#039;Location&#039;&#039; and &#039;&#039;Folder&#039;&#039; are used by NetBeans and are not related to the source code. So you can choose whatever you like, except your source folder. &#039;&#039;Sources&#039;&#039; has to be your checked out Moodle branch/head folder. The rest is clear enough. Don&#039;t forget to choose UTF-8 for &#039;&#039;Default Encoding&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
: Example:&lt;br /&gt;
&lt;br /&gt;
 Project Name:        Moodle 1.9 Stable&lt;br /&gt;
 Project Location:    C:\Users\jerome\Documents\NetBeansProjects&lt;br /&gt;
 Project Folder:      C:\Users\jerome\Documents\NetBeansProjects\Moodle 1.9 Stable&lt;br /&gt;
 Project Sources:     C:\Users\jerome\Projects\branch19_STABLE\moodle&lt;br /&gt;
 Project URL:         http://localhost/moodle19/&lt;br /&gt;
 Index File:          index.php&lt;br /&gt;
 Create:              unchecked&lt;br /&gt;
 Default Encoding:    UTF-8&lt;br /&gt;
 Set as Main Project: unchecked&lt;br /&gt;
&lt;br /&gt;
* Click on Finish.&lt;br /&gt;
&lt;br /&gt;
* Start coding!&lt;br /&gt;
&lt;br /&gt;
== CVS with NetBeans ==&lt;br /&gt;
&lt;br /&gt;
NetBeans comes with &#039;&#039;&#039;integrated CVS support&#039;&#039;&#039; which might be the easiest way to check out Moodle.&lt;br /&gt;
&lt;br /&gt;
=== Anonymous checkout ===&lt;br /&gt;
&lt;br /&gt;
# In NetBeans, select Window-&amp;gt;Versioning-&amp;gt;CVS-&amp;gt;Checkout&lt;br /&gt;
# Select Team-&amp;gt;CVS-&amp;gt;Checkout&lt;br /&gt;
# Enter into CVS Root: &#039;&#039;:pserver:anonymous@us.cvs.moodle.org:/cvsroot/moodle&#039;&#039;&lt;br /&gt;
: (Non-US-residents might use one of the other [https://docs.moodle.org/en/CVS_for_Administrators#CVS_Servers Moodle CVS servers] nearer to them.)&lt;br /&gt;
# Click &#039;&#039;Next&#039;&#039;&lt;br /&gt;
# Browse or enter into &#039;&#039;Module:&#039;&#039; moodle&lt;br /&gt;
# Browse or enter into &#039;&#039;Branch:&#039;&#039; MOODLE_19_STABLE&lt;br /&gt;
# Browse or enter into &#039;&#039;Local Folder:&#039;&#039; C:\xampp\htdocs&lt;br /&gt;
# Click &#039;&#039;Finish&#039;&#039; (and wait a few minutes for Moodle to be checked out)&lt;br /&gt;
# When you get the dialog box &amp;quot;Do you want to create an IDE project from the checked-out sources?&amp;quot;, Click &amp;quot;Create Project...&amp;quot;&lt;br /&gt;
# Select PHP Application with Existing Sources, and click Next&lt;br /&gt;
# Browse or enter into &#039;&#039;Sources Folder&#039;&#039; C:\xampp\htdocs\moodle&lt;br /&gt;
# Enter into &#039;&#039;Project Name:&#039;&#039; moodle&lt;br /&gt;
# Keep the other defaults and click next&lt;br /&gt;
# &#039;&#039;Run As:&#039;&#039; should have selected &#039;&#039;Local Web Site (running on local web server)&#039;&#039;&lt;br /&gt;
# Enter into Project URL http://localhost/moodle/&lt;br /&gt;
# Browse or enter into &#039;&#039;Index File:&#039;&#039; index.php&lt;br /&gt;
# Click &#039;&#039;Finish&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Checkout for developers with write access ===&lt;br /&gt;
&lt;br /&gt;
IF you wish to use NetBeans CVS and have CVS write access, the procedure is as follows:&lt;br /&gt;
&lt;br /&gt;
# Follow the above instructions except for point 3&lt;br /&gt;
# At part 3, substitute &#039;&#039;:ext:yourusername&#039;&#039; for the part before the @ and remove the country code from after it, leaving it like this  &#039;&#039;&#039;&#039;&#039;:ext:yourusername&#039;&#039;&#039;@cvs.moodle.org/cvsroot/moodle&#039;&#039;&lt;br /&gt;
# Follow the rest of the instructions as above&lt;br /&gt;
&lt;br /&gt;
If you wish to work with a plugin, you will need to check this out separately and add it to the Moodle code project you have just made. This because for some reason, the &#039;Do you want to create a project&#039; option fails to show any of the files once you open it if you try to check out the plugin on its own (NetBeans 6.7.1 on a Mac).&lt;br /&gt;
&lt;br /&gt;
# Follow the above steps up to point 3, and again substitute &#039;&#039;:ext:yourusername&#039;&#039; and click &#039;next&#039;&lt;br /&gt;
# Click &#039;Browse...&#039; next to the &#039;Module&#039; dialogue&lt;br /&gt;
# Find the plugin you wish to work with in CONTRIB&lt;br /&gt;
# Click &#039;OK&#039;&lt;br /&gt;
# Proceed as before up to point 6, then press &#039;Close&#039; when asked if you want to create a new project.&lt;br /&gt;
# Now navigate to the folder you earlier specified in the &#039;local folder&#039; dialogue and you will find a folder marked &#039;contrib&#039;.&lt;br /&gt;
# navigate to the plugin folder, copy that folder, and then navigate to your main Moodle project folder and paste it where it belongs.&lt;br /&gt;
&lt;br /&gt;
===Adding a branch to your plugin===&lt;br /&gt;
Your plugin will likely start with just a HEAD tag and at some point, you will want to branch it so that you can have versions for different Moodles. To add a MOODLE_20_STABLE branch, for example, do the following.&lt;br /&gt;
&lt;br /&gt;
# Checkout as above, but use the MOODLE_20_STABLE branch instead of MOODLE_19_STABLE&lt;br /&gt;
# You will end up with an empty folder, which you copy into place as above.&lt;br /&gt;
# Find the folder in NetBeans, then right click and choose CVS-&amp;gt;Merge changes from branch...&lt;br /&gt;
# Choose to merge from whatever branch has all the current code, using the help link if not sure what to do.&lt;br /&gt;
&lt;br /&gt;
There is a small chance that the Merge link will not be there, in which case, you will have to copy the files into the directory by hand outside netbeans and then check them in. If you do this, make sure you don&#039;t copy over the &#039;CVS&#039; folders that will have been made when you checked out the MOODLE_19_STABLE code.&lt;br /&gt;
&lt;br /&gt;
=== A few warnings ===&lt;br /&gt;
&lt;br /&gt;
Some of these warnings could also apply to other IDEs:&lt;br /&gt;
&lt;br /&gt;
* If you want to delete a file from your computer but not from CVS, delete it from Windows Explorer/Nautilus/Finder. Otherwise your next commit could delete the file from CVS. &amp;lt;br/&amp;gt;In case you have already deleted a wrong file from NetBeans:  with Windows Explorer/Nautilus/Finder, delete all the folder content of this deleted file (including the CVS folder) and update the folder.&lt;br /&gt;
* If you rename files and that other people are working on them, NetBeans could end up to mess up your CVS folder (even though that is quite rare). Then NetBeans CVS will refuse to update your code displaying a no explicit error as &#039;&#039;&#039;Update Failed&#039;&#039;&#039;. In this case, delete the content of the damaged folder with Windows Explorer/Nautilus/Finder. Then update this folder.&lt;br /&gt;
* If you create a patch or a new PHP file with NetBeans on Microsoft Windows, please check that it&#039;s a Unix format file. You may want to use another software to create Unix format patch/php files.&lt;br /&gt;
&lt;br /&gt;
== Git with NetBeans ==&lt;br /&gt;
&lt;br /&gt;
=== NBGit | Git Support for NetBeans ===&lt;br /&gt;
&lt;br /&gt;
&amp;quot;NBGit is a module for the NetBeans IDE that adds support for working with the Git version control system. It uses the JGit library created as part of EGit to interact with Git repositories. Because the module is Java code all the way, it should work better cross-platform modulo platform specific differences, such as file system behavior. It is based on the NetBeans Mercurial module.&amp;quot; &lt;br /&gt;
(http://nbgit.org)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;p class=&amp;quot;note&amp;quot;&amp;gt;&lt;br /&gt;
Unfortunately, the key word in that quote is &#039;&#039;&#039;should&#039;&#039;&#039;. In reality, because JGit is a rewrite from scratch of the tried-and-tested git core C code, it is still buggy, incomplete and unreliable. Therefore, the NetBeans and Eclipse git plugins are still only beta quality, and pretty sucky. Well, they mostly work for browsing the contents of the repository, but there is a small chance that if you use them for update operations, they will corrupt your repository. Hence, I am still doing git from the command-line.--[[User:Tim Hunt|Tim Hunt]] 11:11, 19 January 2010 (UTC)&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Optimization ==&lt;br /&gt;
&lt;br /&gt;
1. You may want to run NetBeans with the Sun JDK. NetBeans seems to work a bit better with the [http://java.sun.com/javase/downloads/index.jsp Sun JDK]. You&#039;ll have to edit NetBeans config file. Open netbeans/etc/netbeans.conf. Then uncomment and edit: &lt;br /&gt;
&lt;br /&gt;
 netbeans_jdkhome=&amp;quot;your_JDK_path&amp;quot;&lt;br /&gt;
&lt;br /&gt;
2. To change the NetBeans look and feel run netbeans in the command line with this parameter:&lt;br /&gt;
 &amp;quot;netbeans&amp;quot;  --laf javax.swing.plaf.metal.MetalLookAndFeel &lt;br /&gt;
&lt;br /&gt;
3. If NetBeans starts to slow down, give it more memory&lt;br /&gt;
 &amp;quot;netbeans&amp;quot; -J-Xmx600m&lt;br /&gt;
See FAQ for more [http://wiki.netbeans.org/FaqSettingHeapSize details on memory optimisation].&lt;br /&gt;
&lt;br /&gt;
== Coding faster ==&lt;br /&gt;
&lt;br /&gt;
=== Keyboard shortcuts ===&lt;br /&gt;
(Note: Some shortcuts might not work for PHP development.)&lt;br /&gt;
* [http://www.phpmag.ru/2009/01/23/extremely-usefull-netbeans-shortcuts/ Extremely Useful NetBeans Shortcuts] &lt;br /&gt;
* [http://netbeanside61.blogspot.com/2008/04/top-10-netbeans-ide-keyboard-shortcuts.html Top 10 NetBeans IDE Keyboard Shortcuts I use the most]&lt;br /&gt;
* [http://wiki.netbeans.org/KeymapProfileFor60 NetBeans IDE 6.x Keyboard Shortcuts Specification]&lt;br /&gt;
&lt;br /&gt;
=== PHPUnit support ===&lt;br /&gt;
See [http://blogs.sun.com/netbeansphp/entry/recent_improvements_in_phpunit_support &amp;quot;Recent improvements in PHPUnit-support&amp;quot;] on how to use PHPUnit with NetBeans.&lt;br /&gt;
&lt;br /&gt;
== See also: ==&lt;br /&gt;
* Moodle forum: [http://moodle.org/mod/forum/discuss.php?d=112972 NetBeans 6.5 for moodle/PHP/debugging is a better experience v.s Eclipse]&lt;br /&gt;
* [http://www.netbeans.org/kb/trails/php.html NetBeans PHP Learning Trail]&lt;br /&gt;
* [http://wiki.netbeans.org/PHP NetBeans PHP Wiki]&lt;br /&gt;
* Sun&#039;s [http://blogs.sun.com/netbeansphp/ NetBeans PHP Team Blog]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Developer|NetBeans]]&lt;br /&gt;
[[Category:Developer tools|NetBeans]]&lt;/div&gt;</summary>
		<author><name>Mroos</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/30/en/index.php?title=AJAX_and_Javascript_settings&amp;diff=56413</id>
		<title>AJAX and Javascript settings</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/30/en/index.php?title=AJAX_and_Javascript_settings&amp;diff=56413"/>
		<updated>2009-05-24T11:13:48Z</updated>

		<summary type="html">&lt;p&gt;Mroos: german wiki link added&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Moodle 1.9}}Location: &#039;&#039;Administration &amp;gt; Appearance &amp;gt; AJAX and Javascript&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In Moodle 1.9 onwards, admins can choose to enable/disable [[AJAX]] across the whole site and also AJAX course editing.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
*[[Forum settings]] for enabling AJAX rating&lt;br /&gt;
*[[Student projects/AJAX course format]]&lt;br /&gt;
&lt;br /&gt;
[[Category:AJAX]]&lt;br /&gt;
[[Category:Administrator]]&lt;br /&gt;
&lt;br /&gt;
[[de:Einstellungen für JavaScript und Ajax]]&lt;br /&gt;
[[eu:AJAX_eta_Javascript-en_ezarpenak]]&lt;/div&gt;</summary>
		<author><name>Mroos</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/30/en/index.php?title=Configuration_file&amp;diff=55813</id>
		<title>Configuration file</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/30/en/index.php?title=Configuration_file&amp;diff=55813"/>
		<updated>2009-05-15T15:30:36Z</updated>

		<summary type="html">&lt;p&gt;Mroos: Link to german wiki&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The name for Moodle&#039;s configuration file is config.php. The file is located in the moodle directory. It is not included in the Moodle download packages and is created by the installation process from the template file config-dist.php (which is included in Moodle packages).&lt;br /&gt;
&lt;br /&gt;
==Sample config.php file==&lt;br /&gt;
Although the installation process creates the config.php file for you, there may be times when you want to do this yourself. Here is a sample config.php file to work from.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;WARNING&#039;&#039;&#039;: You may want to edit the config.php file directly if, for example, you change you database password or change servers completely. If you do so, be very careful that there are no spaces or line breaks after the final &amp;quot;?&amp;gt;&amp;quot; in the file. If there are such spaces, you may get blank pages.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;?php  /// Moodle Configuration File &lt;br /&gt;
&lt;br /&gt;
unset($CFG);&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;dbtype    = &#039;mysql&#039;;&lt;br /&gt;
$CFG-&amp;gt;dbhost    = &#039;localhost&#039;;&lt;br /&gt;
$CFG-&amp;gt;dbname    = &#039;moodle17&#039;;&lt;br /&gt;
$CFG-&amp;gt;dbuser    = &#039;moodleuser&#039;;&lt;br /&gt;
$CFG-&amp;gt;dbpass    = &#039;xxxxxx&#039;;&lt;br /&gt;
$CFG-&amp;gt;dbpersist =  false;&lt;br /&gt;
$CFG-&amp;gt;prefix    = &#039;mdl_&#039;;&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;wwwroot   = &#039;http://www.mymoodle.com/moodle&#039;;&lt;br /&gt;
$CFG-&amp;gt;dirroot   = &#039;/var/www/moodle&#039;;&lt;br /&gt;
$CFG-&amp;gt;dataroot  = &#039;/var/moodledata&#039;;&lt;br /&gt;
$CFG-&amp;gt;admin     = &#039;admin&#039;;&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;directorypermissions = 00777;  // try 02777 on a server in Safe Mode&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;unicodedb = true;  // Database is utf8&lt;br /&gt;
&lt;br /&gt;
require_once(&amp;quot;$CFG-&amp;gt;dirroot/lib/setup.php&amp;quot;);&lt;br /&gt;
// MAKE SURE WHEN YOU EDIT THIS FILE THAT THERE ARE NO SPACES, BLANK LINES,&lt;br /&gt;
// RETURNS, OR ANYTHING ELSE AFTER THE TWO CHARACTERS ON THE NEXT LINE.&lt;br /&gt;
?&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==The config-dist.php file==&lt;br /&gt;
&lt;br /&gt;
The config-dist.php file is the template file. It contains the usual settings of a config.php file, with some additional settings that don&#039;t have a UI for them. To use these settings you have to add them to the configuration file. &lt;br /&gt;
&lt;br /&gt;
Here is the contents of the config-dist.php:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;?PHP // $Id: config-dist.php,v 1.97 2006/09/03 15:46:21 moodler Exp $&lt;br /&gt;
///////////////////////////////////////////////////////////////////////////&lt;br /&gt;
//                                                                       //&lt;br /&gt;
// Moodle configuration file                                             //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
// This file should be renamed &amp;quot;config.php&amp;quot; in the top-level directory   //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
///////////////////////////////////////////////////////////////////////////&lt;br /&gt;
//                                                                       //&lt;br /&gt;
// NOTICE OF COPYRIGHT                                                   //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
// Moodle - Modular Object-Oriented Dynamic Learning Environment         //&lt;br /&gt;
//          http://moodle.org                                            //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
// Copyright (C) 1999-2004  Martin Dougiamas  http://dougiamas.com       //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
// This program is free software; you can redistribute it and/or modify  //&lt;br /&gt;
// it under the terms of the GNU General Public License as published by  //&lt;br /&gt;
// the Free Software Foundation; either version 2 of the License, or     //&lt;br /&gt;
// (at your option) any later version.                                   //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
// This program is distributed in the hope that it will be useful,       //&lt;br /&gt;
// but WITHOUT ANY WARRANTY; without even the implied warranty of        //&lt;br /&gt;
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         //&lt;br /&gt;
// GNU General Public License for more details:                          //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
//          http://www.gnu.org/copyleft/gpl.html                         //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
///////////////////////////////////////////////////////////////////////////&lt;br /&gt;
unset($CFG);  // Ignore this line&lt;br /&gt;
&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// 1. DATABASE SETUP&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// First, you need to configure the database where all Moodle data       //&lt;br /&gt;
// will be stored.  This database must already have been created         //&lt;br /&gt;
// and a username/password created to access it.                         //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
//   mysql      - the prefix is optional, but useful when installing     //&lt;br /&gt;
//                into databases that already contain tables.            //&lt;br /&gt;
//&lt;br /&gt;
//   postgres7  - the prefix is REQUIRED, regardless of whether the      //&lt;br /&gt;
//                database already contains tables.                      //&lt;br /&gt;
//                                                                       //&lt;br /&gt;
// A special case exists when using PostgreSQL databases via sockets.    //&lt;br /&gt;
// Define dbhost as follows, leaving dbname, dbuser, dbpass BLANK!:      //&lt;br /&gt;
//    $CFG-&amp;gt;dbhost = &amp;quot; user=&#039;muser&#039; password=&#039;mpass&#039; dbname=&#039;mdata&#039;&amp;quot;;    //&lt;br /&gt;
//&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;dbtype    = &#039;mysql&#039;;       // mysql or postgres7 (for now)&lt;br /&gt;
$CFG-&amp;gt;dbhost    = &#039;localhost&#039;;   // eg localhost or db.isp.com&lt;br /&gt;
$CFG-&amp;gt;dbname    = &#039;moodle&#039;;      // database name, eg moodle&lt;br /&gt;
$CFG-&amp;gt;dbuser    = &#039;username&#039;;    // your database username&lt;br /&gt;
$CFG-&amp;gt;dbpass    = &#039;password&#039;;    // your database password&lt;br /&gt;
$CFG-&amp;gt;prefix    = &#039;mdl_&#039;;        // Prefix to use for all table names&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;dbpersist = false;         // Should database connections be reused?&lt;br /&gt;
                 // &amp;quot;false&amp;quot; is the most stable setting&lt;br /&gt;
                 // &amp;quot;true&amp;quot; can improve performance sometimes&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// 2. WEB SITE LOCATION&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// Now you need to tell Moodle where it is located. Specify the full&lt;br /&gt;
// web address to where moodle has been installed.  If your web site&lt;br /&gt;
// is accessible via multiple URLs then choose the most natural one&lt;br /&gt;
// that your students would use.  Do not include a trailing slash&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;wwwroot   = &#039;http://example.com/moodle&#039;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// 3. SERVER FILES LOCATION&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// Next, specify the full OS directory path to this same location&lt;br /&gt;
// Make sure the upper/lower case is correct.  Some examples:&lt;br /&gt;
//&lt;br /&gt;
//    $CFG-&amp;gt;dirroot = &#039;c:\program files\easyphp\www\moodle&#039;;    // Windows&lt;br /&gt;
//    $CFG-&amp;gt;dirroot = &#039;/var/www/html/moodle&#039;;     // Redhat Linux&lt;br /&gt;
//    $CFG-&amp;gt;dirroot = &#039;/home/example/public_html/moodle&#039;; // Cpanel host&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;dirroot   = &#039;/home/example/public_html/moodle&#039;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// 4. DATA FILES LOCATION&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// Now you need a place where Moodle can save uploaded files.  This&lt;br /&gt;
// directory should be readable AND WRITEABLE by the web server user&lt;br /&gt;
// (usually &#039;nobody&#039; or &#039;apache&#039;), but it should not be accessible&lt;br /&gt;
// directly via the web.&lt;br /&gt;
//&lt;br /&gt;
// - On hosting systems you might need to make sure that your &amp;quot;group&amp;quot; has&lt;br /&gt;
//   no permissions at all, but that &amp;quot;others&amp;quot; have full permissions.&lt;br /&gt;
//&lt;br /&gt;
// - On Windows systems you might specify something like &#039;c:\moodledata&#039;&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;dataroot  = &#039;/home/example/moodledata&#039;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// 5. DATA FILES PERMISSIONS&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// The following parameter sets the permissions of new directories&lt;br /&gt;
// created by Moodle within the data directory.  The format is in&lt;br /&gt;
// octal format (as used by the Unix utility chmod, for example).&lt;br /&gt;
// The default is usually OK, but you may want to change it to 0750&lt;br /&gt;
// if you are concerned about world-access to the files (you will need&lt;br /&gt;
// to make sure the web server process (eg Apache) can access the files.&lt;br /&gt;
// NOTE: the prefixed 0 is important, and don&#039;t use quotes.&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;directorypermissions = 02777;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// 6. DIRECTORY LOCATION  (most people can just ignore this setting)&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// A very few webhosts use /admin as a special URL for you to access a&lt;br /&gt;
// control panel or something.  Unfortunately this conflicts with the&lt;br /&gt;
// standard location for the Moodle admin pages.  You can fix this by&lt;br /&gt;
// renaming the admin directory in your installation, and putting that&lt;br /&gt;
// new name here.  eg &amp;quot;moodleadmin&amp;quot;.  This will fix admin links in Moodle.&lt;br /&gt;
&lt;br /&gt;
$CFG-&amp;gt;admin = &#039;admin&#039;;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// 7. OTHER MISCELLANEOUS SETTINGS (ignore these for new installations)&lt;br /&gt;
//=========================================================================&lt;br /&gt;
//&lt;br /&gt;
// These are additional tweaks for which no GUI exists in Moodle yet.&lt;br /&gt;
//&lt;br /&gt;
//&lt;br /&gt;
// Prevent users from updating their profile images&lt;br /&gt;
//      $CFG-&amp;gt;disableuserimages = true;&lt;br /&gt;
//&lt;br /&gt;
// Prevent scheduled backups from operating (and hide the GUI for them)&lt;br /&gt;
// Useful for webhost operators who have alternate methods of backups&lt;br /&gt;
//      $CFG-&amp;gt;disablescheduledbackups = true;&lt;br /&gt;
//&lt;br /&gt;
// Prevent stats processing and hide the GUI&lt;br /&gt;
//      $CFG-&amp;gt;disablestatsprocessing = true;&lt;br /&gt;
//&lt;br /&gt;
// Set global password for &amp;quot;Login as&amp;quot;, teacher is prompted only once in each session.&lt;br /&gt;
// Set your own password and tell it only to teachers that should have access to this feature.&lt;br /&gt;
//      $CFG-&amp;gt;loginaspassword = &#039;yoursharedpassword&#039;;&lt;br /&gt;
//&lt;br /&gt;
// Setting this to true will enable admins to edit any post at any time&lt;br /&gt;
//      $CFG-&amp;gt;admineditalways = true;&lt;br /&gt;
//&lt;br /&gt;
// These variables define DEFAULT block variables for new courses&lt;br /&gt;
// If this one is set it overrides all others and is the only one used.&lt;br /&gt;
//      $CFG-&amp;gt;defaultblocks_override = &#039;participants,activity_modules,search_forums,admin,&lt;br /&gt;
course_list:news_items,calendar_upcoming,recent_activity&#039;;&lt;br /&gt;
//&lt;br /&gt;
// These variables define the specific settings for defined course formats.&lt;br /&gt;
// They override any settings defined in the formats own config file.&lt;br /&gt;
//      $CFG-&amp;gt;defaultblocks_site = &#039;site_main_menu,admin,&lt;br /&gt;
course_list:course_summary,calendar_month&#039;;&lt;br /&gt;
//      $CFG-&amp;gt;defaultblocks_social = &#039;participants,search_forums,calendar_month,calendar_upcoming,&lt;br /&gt;
social_activities,recent_activity,admin,course_list&#039;;&lt;br /&gt;
//      $CFG-&amp;gt;defaultblocks_topics = &#039;participants,activity_modules,search_forums,admin,&lt;br /&gt;
course_list:news_items,calendar_upcoming,recent_activity&#039;;&lt;br /&gt;
//      $CFG-&amp;gt;defaultblocks_weeks = &#039;participants,activity_modules,search_forums,admin,&lt;br /&gt;
course_list:news_items,calendar_upcoming,recent_activity&#039;;&lt;br /&gt;
//&lt;br /&gt;
// These blocks are used when no other default setting is found.&lt;br /&gt;
//      $CFG-&amp;gt;defaultblocks = &#039;participants,activity_modules,search_forums,admin,&lt;br /&gt;
course_list:news_items,calendar_upcoming,recent_activity&#039;;&lt;br /&gt;
//&lt;br /&gt;
//&lt;br /&gt;
// This setting will put Moodle in Unicode mode. Please note that database must support it.&lt;br /&gt;
// Do not enable this if your database in not converted to UTF-8!&lt;br /&gt;
//     $CFG-&amp;gt;unicodedb = true;&lt;br /&gt;
//&lt;br /&gt;
// Allow unicode characters in uploaded files, generated reports, etc.&lt;br /&gt;
// This setting is new and not much tested, there are known problems&lt;br /&gt;
// with backup/restore that will not be solved, because native infozip&lt;br /&gt;
// binaries are doing some weird conversions - use internal PHP zipping instead.&lt;br /&gt;
// NOT RECOMMENDED FOR PRODUCTION SITES&lt;br /&gt;
//     $CFG-&amp;gt;unicodecleanfilename = true;&lt;br /&gt;
//&lt;br /&gt;
// Seconds for files to remain in caches. Decrease this if you are worried&lt;br /&gt;
// about students being served outdated versions of uploaded files.&lt;br /&gt;
//     $CFG-&amp;gt;filelifetime = 86400;&lt;br /&gt;
//&lt;br /&gt;
// This setting will prevent the &#039;My Courses&#039; page being displayed when a student&lt;br /&gt;
// logs in. The site front page will always show the same (logged-out) view.&lt;br /&gt;
//     $CFG-&amp;gt;disablemycourses = true;&lt;br /&gt;
// &lt;br /&gt;
// If this setting is set to true, then Moodle will track the IP of the &lt;br /&gt;
// current user to make sure it hasn&#039;t changed during a session.  This &lt;br /&gt;
// will prevent the possibility of sessions being hijacked via XSS, but it &lt;br /&gt;
// may break things for users coming using proxies that change all the time,&lt;br /&gt;
// like AOL.&lt;br /&gt;
//      $CFG-&amp;gt;tracksessionip = true;&lt;br /&gt;
//&lt;br /&gt;
//&lt;br /&gt;
// The following lines are for handling email bounces.&lt;br /&gt;
//      $CFG-&amp;gt;handlebounces = true;&lt;br /&gt;
//      $CFG-&amp;gt;minbounces = 10;&lt;br /&gt;
//      $CFG-&amp;gt;bounceratio = .20;&lt;br /&gt;
// The next lines are needed both for bounce handling and any other email to module processing.&lt;br /&gt;
// mailprefix must be EXACTLY four characters.&lt;br /&gt;
// Uncomment and customise this block for Postfix &lt;br /&gt;
//      $CFG-&amp;gt;mailprefix = &#039;mdl+&#039;; // + is the separator for Exim and Postfix.&lt;br /&gt;
//      $CFG-&amp;gt;mailprefix = &#039;mdl-&#039;; // - is the separator for qmail &lt;br /&gt;
//      $CFG-&amp;gt;maildomain = &#039;youremaildomain.com&#039;;&lt;br /&gt;
//&lt;br /&gt;
// The following setting will tell Moodle to respect your PHP session &lt;br /&gt;
// settings. Use this if you want to control session configuration&lt;br /&gt;
// from php.ini, httpd.conf or .htaccess files. &lt;br /&gt;
//      $CFG-&amp;gt;respectsessionsettings = true;&lt;br /&gt;
//&lt;br /&gt;
// This setting will cause the userdate() function not to fix %d in &lt;br /&gt;
// date strings, and just let them show with a zero prefix.&lt;br /&gt;
//      $CFG-&amp;gt;nofixday = true;&lt;br /&gt;
//&lt;br /&gt;
// This setting will make some graphs (eg user logs) use lines instead of bars&lt;br /&gt;
//      $CFG-&amp;gt;preferlinegraphs = true;&lt;br /&gt;
//&lt;br /&gt;
// Enabling this will allow custom scripts to replace existing moodle scripts.&lt;br /&gt;
// For example: if $CFG-&amp;gt;customscripts/course/view.php exists then&lt;br /&gt;
// it will be used instead of $CFG-&amp;gt;wwwroot/course/view.php&lt;br /&gt;
// At present this will only work for files that include config.php and are called&lt;br /&gt;
// as part of the url (index.php is implied).&lt;br /&gt;
// Some examples are:&lt;br /&gt;
//      http://my.moodle.site/course/view.php&lt;br /&gt;
//      http://my.moodle.site/index.php&lt;br /&gt;
//      http://my.moodle.site/admin            (index.php implied)&lt;br /&gt;
// Custom scripts should not include config.php&lt;br /&gt;
// Warning: Replacing standard moodle scripts may pose security risks and/or may not&lt;br /&gt;
// be compatible with upgrades. Use this option only if you are aware of the risks&lt;br /&gt;
// involved. &lt;br /&gt;
// Specify the full directory path to the custom scripts&lt;br /&gt;
//      $CFG-&amp;gt;customscripts = &#039;/home/example/customscripts&#039;;&lt;br /&gt;
//&lt;br /&gt;
// Performance profiling &lt;br /&gt;
// &lt;br /&gt;
//   If you set Debug to &amp;quot;Yes&amp;quot; in the Configuration-&amp;gt;Variables page some&lt;br /&gt;
//   performance profiling data will show up on your footer (in default theme).&lt;br /&gt;
//   With these settings you get more granular control over the capture&lt;br /&gt;
//   and printout of the data&lt;br /&gt;
//&lt;br /&gt;
//   Capture performance profiling data&lt;br /&gt;
//   define(&#039;MDL_PERF&#039;  , true);&lt;br /&gt;
//&lt;br /&gt;
//   Capture additional data from DB&lt;br /&gt;
//   define(&#039;MDL_PERFDB&#039;  , true);&lt;br /&gt;
//&lt;br /&gt;
//   Print to log (for passive profiling of production servers)&lt;br /&gt;
//   define(&#039;MDL_PERFTOLOG&#039;  , true);&lt;br /&gt;
//&lt;br /&gt;
//   Print to footer (works with the default theme)&lt;br /&gt;
//   define(&#039;MDL_PERFTOFOOT&#039;, true);&lt;br /&gt;
//&lt;br /&gt;
// Force displayed usernames&lt;br /&gt;
//   A little hack to anonymise user names for all students.  If you set these &lt;br /&gt;
//   then all non-teachers will always see these for every person.&lt;br /&gt;
//       $CFG-&amp;gt;forcefirstname = &#039;Bruce&#039;;&lt;br /&gt;
//       $CFG-&amp;gt;forcelastname  = &#039;Simpson&#039;;&lt;br /&gt;
//&lt;br /&gt;
// The following setting will turn SQL Error logging on. This will output an&lt;br /&gt;
// entry in apache error log indicating the position of the error and the statement&lt;br /&gt;
// called. This option will action disregarding error_reporting setting.&lt;br /&gt;
//     $CFG-&amp;gt;dblogerror = true;&lt;br /&gt;
//&lt;br /&gt;
// The following setting will turn on username logging into Apache log. For full details regarding setting&lt;br /&gt;
// up of this function please refer to the install section of the document.&lt;br /&gt;
//     $CFG-&amp;gt;apacheloguser = 0; // Turn this feature off. Default value.&lt;br /&gt;
//     $CFG-&amp;gt;apacheloguser = 1; // Log user id.&lt;br /&gt;
//     $CFG-&amp;gt;apacheloguser = 2; // Log full name in cleaned format. ie, Darth Vader will be displayed as darth_vader.&lt;br /&gt;
//     $CFG-&amp;gt;apacheloguser = 3; // Log username. &lt;br /&gt;
// To get the values logged in Apache&#039;s log, add to your httpd.conf&lt;br /&gt;
// the following statements. In the General part put:&lt;br /&gt;
//     LogFormat &amp;quot;%h %l %{MOODLEUSER}n %t \&amp;quot;%r\&amp;quot; %s %b \&amp;quot;%{Referer}i\&amp;quot; \&amp;quot;%{User-Agent}i\&amp;quot;&amp;quot; moodleformat&lt;br /&gt;
// And in the part specific to your Moodle install / virtualhost:&lt;br /&gt;
//     CustomLog &amp;quot;/your/path/to/log&amp;quot; moodleformat&lt;br /&gt;
// CAUTION: Use of this option will expose usernames in the Apache log,&lt;br /&gt;
// If you are going to publish your log, or the output of your web stats analyzer&lt;br /&gt;
// this will weaken the security of your website.&lt;br /&gt;
// &lt;br /&gt;
// Email database connection errors to someone.  If Moodle cannot connect to the &lt;br /&gt;
// database, then email this address with a notice.&lt;br /&gt;
//&lt;br /&gt;
//     $CFG-&amp;gt;emailconnectionerrorsto = &#039;your@emailaddress.com&#039;;&lt;br /&gt;
// &lt;br /&gt;
// Restore pre-1.6 behaviour where courses could still be available&lt;br /&gt;
// even if the category they were in was hidden&lt;br /&gt;
//     $CFG-&amp;gt;allowvisiblecoursesinhiddencategories = true;&lt;br /&gt;
// &lt;br /&gt;
// NOTE: if you are using custompix in your theme, see /fixpix.php.&lt;br /&gt;
&lt;br /&gt;
//=========================================================================&lt;br /&gt;
// ALL DONE!  To continue installation, visit your main page with a browser&lt;br /&gt;
//=========================================================================&lt;br /&gt;
if ($CFG-&amp;gt;wwwroot == &#039;http://example.com/moodle&#039;) {&lt;br /&gt;
    echo &amp;quot;&amp;lt;p&amp;gt;Error detected in configuration file&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
    echo &amp;quot;&amp;lt;p&amp;gt;Your server address can not be: \$CFG-&amp;gt;wwwroot = &#039;http://example.com/moodle&#039;;&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
    die;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if (file_exists(&amp;quot;$CFG-&amp;gt;dirroot/lib/setup.php&amp;quot;))  {       // Do not edit&lt;br /&gt;
    include_once(&amp;quot;$CFG-&amp;gt;dirroot/lib/setup.php&amp;quot;);&lt;br /&gt;
} else {&lt;br /&gt;
    if ($CFG-&amp;gt;dirroot == dirname(__FILE__)) {&lt;br /&gt;
        echo &amp;quot;&amp;lt;p&amp;gt;Could not find this file: $CFG-&amp;gt;dirroot/lib/setup.php&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
        echo &amp;quot;&amp;lt;p&amp;gt;Are you sure all your files have been uploaded?&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
    } else {&lt;br /&gt;
        echo &amp;quot;&amp;lt;p&amp;gt;Error detected in config.php&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
        echo &amp;quot;&amp;lt;p&amp;gt;Error in: \$CFG-&amp;gt;dirroot = &#039;$CFG-&amp;gt;dirroot&#039;;&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
        echo &amp;quot;&amp;lt;p&amp;gt;Try this: \$CFG-&amp;gt;dirroot = &#039;&amp;quot;.dirname(__FILE__).&amp;quot;&#039;;&amp;lt;/p&amp;gt;&amp;quot;;&lt;br /&gt;
    }&lt;br /&gt;
    die;&lt;br /&gt;
}&lt;br /&gt;
// MAKE SURE WHEN YOU EDIT THIS FILE THAT THERE ARE NO SPACES, BLANK LINES,&lt;br /&gt;
// RETURNS, OR ANYTHING ELSE AFTER THE TWO CHARACTERS ON THE NEXT LINE.&lt;br /&gt;
?&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category: Administrator]]&lt;br /&gt;
[[de:Konfigurationsdatei]]&lt;br /&gt;
[[ja:設定ファイル]]&lt;/div&gt;</summary>
		<author><name>Mroos</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/30/en/index.php?title=Email-based_self-registration&amp;diff=55347</id>
		<title>Email-based self-registration</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/30/en/index.php?title=Email-based_self-registration&amp;diff=55347"/>
		<updated>2009-05-06T06:29:11Z</updated>

		<summary type="html">&lt;p&gt;Mroos: German translation link added&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Location: Settings link in &#039;&#039;Administration &amp;gt; Users &amp;gt; Authentication &amp;gt; [[Manage authentication]]&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This authentication method enables users to create their own accounts if email-based self-registration is selected from the self registration drop-down menu in the common settings section on the manage authentication page. They then receive an email at the address they specified in their account profile to confirm their account.&lt;br /&gt;
&lt;br /&gt;
Warning: Enabling self registration results in the possibility of spammers creating accounts in order to use forum posts, blog entries etc. for spam. This risk can be minimized by limiting self registration to particular email domains with the allowed email domains setting in &#039;&#039;Administration &amp;gt; Users &amp;gt; Authentication &amp;gt; [[Authentication|Manage authentication]]&#039;&#039; (or in &#039;&#039;Administration &amp;gt; Server &amp;gt; [[Email settings|Email]]&#039;&#039; prior to Moodle 1.9). Alternatively, self registration may be enabled for a short period of time to allow users to create accounts, and then later disabled.&lt;br /&gt;
&lt;br /&gt;
Note: The Email-based self-registration authentication plugin must be enabled to allow users who previously self-registered to login. Selecting Email-based self-registration as the self registration method allows potential users to self register.&lt;br /&gt;
&lt;br /&gt;
==Enable reCAPTCHA element==&lt;br /&gt;
&lt;br /&gt;
[[Image:New account form with captcha element.png|thumb|New account form with CAPTCHA element]]&lt;br /&gt;
A CAPTCHA is a program that can tell whether its user is a human or a computer. CAPTCHAs are used by many websites to prevent abuse from bots, or automated programs usually written to generate spam. No computer program can read distorted text as well as humans can, so bots cannot navigate sites protected by CAPTCHAs.&lt;br /&gt;
&lt;br /&gt;
{{Moodle 1.9}}From Moodle 1.9.1 onwards, spam protection may be added to the email-based self-registration new account form with a CAPTCHA element - a challenge-response test used to determine whether the user is human.&lt;br /&gt;
&lt;br /&gt;
In addition to enabling the reCAPTCHA element, email-based self-registration should be set as the self registration authentication plugin and reCAPTCHA keys should be set in the manage authentication common settings.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
*[[No Email]]&lt;br /&gt;
&lt;br /&gt;
Using Moodle forum discussions:&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=97938 Admin approving self registrations?]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=80518 Sending the email confirmation again]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=92958 Self registration with validation]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=102458 Email based self registration is still on by default - 1.9.2]&lt;br /&gt;
&lt;br /&gt;
[[Category:Authentication]]&lt;br /&gt;
&lt;br /&gt;
[[de:E-Mail-basierte Selbstregistrierung]]&lt;br /&gt;
[[fr:Authentification par courriel]]&lt;br /&gt;
[[ja:Eメールによる自己登録]]&lt;/div&gt;</summary>
		<author><name>Mroos</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/30/en/index.php?title=Verify_Database_Schema&amp;diff=55179</id>
		<title>Verify Database Schema</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/30/en/index.php?title=Verify_Database_Schema&amp;diff=55179"/>
		<updated>2009-05-01T14:34:16Z</updated>

		<summary type="html">&lt;p&gt;Mroos: Added: Link to german wiki page&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you have been upgrading your Moodle site over several versions, it is possible (likely even) that some differences may have crept in between the database table definitions (the &amp;quot;schema&amp;quot;) in your database and the version you would get creating a new empty site. This happens because of small errors or oversights in the upgrade scripts. Most of these differences are not harmful, but some may cause strange or unexpected errors. For example, if a default value has been added to a field and this was not reflected in an upgrade script code that assumes the presence of the default may fail to work as expected. &lt;br /&gt;
&lt;br /&gt;
The solution is after doing an upgrade to compare the database schema of the &amp;quot;production&amp;quot; site to that of a newly created site (where no upgrades have been performed) using &#039;&#039;&#039;exactly&#039;&#039;&#039; the same code base. There are a number of ways of doing this, but this article outlines a simple way using the Unix command line.&lt;br /&gt;
&lt;br /&gt;
* Complete the upgrade&lt;br /&gt;
* Generate the database schema from your recently upgraded site using the following command:&lt;br /&gt;
    mysqldump -d -u root -p &#039;&#039;myproductiondb&#039;&#039; &amp;gt;production.schema&lt;br /&gt;
* Copy the code  of your production database to a new (web accessible) location (this is important, it *must* be the same version)&lt;br /&gt;
* Create a new, empty database and moodledata area for the new site as per the [[Installation]] instructions&lt;br /&gt;
* Edit the config.php file to point at the new database and locations, or delete it and use the install script&lt;br /&gt;
* Run the install script to generate the (if applicable) config.php file and the database (admin and site values are not important)&lt;br /&gt;
* Generate the database schema from your new site using the following command:&lt;br /&gt;
    mysqldump -d -u root -p &#039;&#039;mycleandb&#039;&#039; &amp;gt;clean.schema&lt;br /&gt;
* Run the following command to detect the differences&lt;br /&gt;
    diff -u production.schema clean.schema &amp;gt;db.diff&lt;br /&gt;
&lt;br /&gt;
You can now look at &#039;&#039;db.diff&#039;&#039; with your favorite editor to see the differences.&lt;br /&gt;
&lt;br /&gt;
==Interpreting the diff file==&lt;br /&gt;
&lt;br /&gt;
Firstly here&#039;s a (real) example:&lt;br /&gt;
&lt;br /&gt;
     --&lt;br /&gt;
     -- Table structure for table `mdl_backup_config`&lt;br /&gt;
        @@ -129,11 +93,11 @@&lt;br /&gt;
         DROP TABLE IF EXISTS `mdl_backup_config`;&lt;br /&gt;
         CREATE TABLE `mdl_backup_config` (&lt;br /&gt;
    -  `id` int(10) unsigned NOT NULL auto_increment,&lt;br /&gt;
    +  `id` bigint(10) unsigned NOT NULL auto_increment,&lt;br /&gt;
       `name` varchar(255) NOT NULL default &#039;&#039;,&lt;br /&gt;
       `value` varchar(255) NOT NULL default &#039;&#039;,&lt;br /&gt;
        PRIMARY KEY  (`id`),&lt;br /&gt;
    -  UNIQUE KEY `name` (`name`)&lt;br /&gt;
    +  UNIQUE KEY `mdl_backconf_nam_uix` (`name`)&lt;br /&gt;
         ) ENGINE=MyISAM AUTO_INCREMENT=15 DEFAULT CHARSET=utf8 COMMENT=&#039;To store backup configuration variables&#039;;&lt;br /&gt;
&lt;br /&gt;
The file may have lots of blocks of changes. The - lines show lines to be taken out and the + lines the ones to replace them (from the production to the clean). So here, the int has been replaced with a bigint and the key name changed. Both of these, technically, should have been changed at some point by upgrade scripts but have been missed. In this case they are unlikely to affect the operation of Moodle. &lt;br /&gt;
&lt;br /&gt;
==Should I worry?==&lt;br /&gt;
&lt;br /&gt;
Changes in field types (as long as they are compatible) and key name changes seem to be the common issues but &#039;&#039;&#039;should&#039;&#039;&#039; not cause problems. Things to look out for would be along the lines of missing fields and changes to default values.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* The missing indexes report in SiteAdmin-&amp;gt;Misc-&amp;gt;XMLDB editor-&amp;gt;Check Indexes&lt;br /&gt;
* [http://moodle.org/mod/forum/view.php?id=45 Moodle Databases Forum]&lt;br /&gt;
&lt;br /&gt;
[[Category:Administrator | Verify Database Schema]]&lt;br /&gt;
[[de:Datenbank-Schema prüfen]]&lt;/div&gt;</summary>
		<author><name>Mroos</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/30/en/index.php?title=Verify_Database_Schema&amp;diff=55155</id>
		<title>Verify Database Schema</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/30/en/index.php?title=Verify_Database_Schema&amp;diff=55155"/>
		<updated>2009-05-01T07:44:35Z</updated>

		<summary type="html">&lt;p&gt;Mroos: Diff parameter must be -u to be in line with following example&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;If you have been upgrading your Moodle site over several versions, it is possible (likely even) that some differences may have crept in between the database table definitions (the &amp;quot;schema&amp;quot;) in your database and the version you would get creating a new empty site. This happens because of small errors or oversights in the upgrade scripts. Most of these differences are not harmful, but some may cause strange or unexpected errors. For example, if a default value has been added to a field and this was not reflected in an upgrade script code that assumes the presence of the default may fail to work as expected. &lt;br /&gt;
&lt;br /&gt;
The solution is after doing an upgrade to compare the database schema of the &amp;quot;production&amp;quot; site to that of a newly created site (where no upgrades have been performed) using &#039;&#039;&#039;exactly&#039;&#039;&#039; the same code base. There are a number of ways of doing this, but this article outlines a simple way using the Unix command line.&lt;br /&gt;
&lt;br /&gt;
* Complete the upgrade&lt;br /&gt;
* Generate the database schema from your recently upgraded site using the following command:&lt;br /&gt;
    mysqldump -d -u root -p &#039;&#039;myproductiondb&#039;&#039; &amp;gt;production.schema&lt;br /&gt;
* Copy the code  of your production database to a new (web accessible) location (this is important, it *must* be the same version)&lt;br /&gt;
* Create a new, empty database and moodledata area for the new site as per the [[Installation]] instructions&lt;br /&gt;
* Edit the config.php file to point at the new database and locations, or delete it and use the install script&lt;br /&gt;
* Run the install script to generate the (if applicable) config.php file and the database (admin and site values are not important)&lt;br /&gt;
* Generate the database schema from your new site using the following command:&lt;br /&gt;
    mysqldump -d -u root -p &#039;&#039;mycleandb&#039;&#039; &amp;gt;clean.schema&lt;br /&gt;
* Run the following command to detect the differences&lt;br /&gt;
    diff -u production.schema clean.schema &amp;gt;db.diff&lt;br /&gt;
&lt;br /&gt;
You can now look at &#039;&#039;db.diff&#039;&#039; with your favorite editor to see the differences.&lt;br /&gt;
&lt;br /&gt;
==Interpreting the diff file==&lt;br /&gt;
&lt;br /&gt;
Firstly here&#039;s a (real) example:&lt;br /&gt;
&lt;br /&gt;
     --&lt;br /&gt;
     -- Table structure for table `mdl_backup_config`&lt;br /&gt;
        @@ -129,11 +93,11 @@&lt;br /&gt;
         DROP TABLE IF EXISTS `mdl_backup_config`;&lt;br /&gt;
         CREATE TABLE `mdl_backup_config` (&lt;br /&gt;
    -  `id` int(10) unsigned NOT NULL auto_increment,&lt;br /&gt;
    +  `id` bigint(10) unsigned NOT NULL auto_increment,&lt;br /&gt;
       `name` varchar(255) NOT NULL default &#039;&#039;,&lt;br /&gt;
       `value` varchar(255) NOT NULL default &#039;&#039;,&lt;br /&gt;
        PRIMARY KEY  (`id`),&lt;br /&gt;
    -  UNIQUE KEY `name` (`name`)&lt;br /&gt;
    +  UNIQUE KEY `mdl_backconf_nam_uix` (`name`)&lt;br /&gt;
         ) ENGINE=MyISAM AUTO_INCREMENT=15 DEFAULT CHARSET=utf8 COMMENT=&#039;To store backup configuration variables&#039;;&lt;br /&gt;
&lt;br /&gt;
The file may have lots of blocks of changes. The - lines show lines to be taken out and the + lines the ones to replace them (from the production to the clean). So here, the int has been replaced with a bigint and the key name changed. Both of these, technically, should have been changed at some point by upgrade scripts but have been missed. In this case they are unlikely to affect the operation of Moodle. &lt;br /&gt;
&lt;br /&gt;
==Should I worry?==&lt;br /&gt;
&lt;br /&gt;
Changes in field types (as long as they are compatible) and key name changes seem to be the common issues but &#039;&#039;&#039;should&#039;&#039;&#039; not cause problems. Things to look out for would be along the lines of missing fields and changes to default values.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* The missing indexes report in SiteAdmin-&amp;gt;Misc-&amp;gt;XMLDB editor-&amp;gt;Check Indexes&lt;br /&gt;
* [http://moodle.org/mod/forum/view.php?id=45 Moodle Databases Forum]&lt;br /&gt;
&lt;br /&gt;
[[Category:Administrator | Verify Database Schema]]&lt;/div&gt;</summary>
		<author><name>Mroos</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/30/en/index.php?title=CSS&amp;diff=54541</id>
		<title>CSS</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/30/en/index.php?title=CSS&amp;diff=54541"/>
		<updated>2009-04-20T14:19:20Z</updated>

		<summary type="html">&lt;p&gt;Mroos: Übersetzung angefangen&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Cascading Style Sheets&#039;&#039;&#039; (Abk.: CSS) gelten heute als die Standard-Stylesheetsprache für Webseiten.&lt;br /&gt;
Auf einer HTML Seite können CSS-Befehle verwendet werden, um die Darstellung ausgezeichneter Inhalte oder Bereiche auf der Seite zu steuern. Die CSS-Befehle werden in einer eigenen Datei gespeichert und wirken seitenübergreifend, d.h. die zentrale Änderung einer CSS-Definition an einer Stelle, wirkt sich auf alle Moodle Seiten aus, auf denen diese Darstellungssteuerungsanweisung verwendet wurde.&lt;br /&gt;
&lt;br /&gt;
Für eine bessere Wartbarkeit der CSS-Definitionen gruppiert man diese in der Regel in Dateien mit verschiedenen Schwerpunkten (Layout, Farbe, Blöcke, ...). Sehr häufig werden auch CSS-Definitonsdateien für Browser (Internet Explorer, Mozilla, Firefox, ...) angelegt, um spezielle Eigenheiten/Fehlern von Browsern zu korrigieren. &lt;br /&gt;
&lt;br /&gt;
Alle CSS-Dateien fasst man dann zu einem Thema zusammen und sammelt diese in einem Themenordner. Nach einer Moodle Version 1.9.4 Standardinstallation befinden sich im Themenordner schon 15 Darstellungsvarianten für Ihr Moodle System (chameleon, cornflower, metal, orangewhite, standard, wood, ...).&lt;br /&gt;
 &lt;br /&gt;
Die CSS-Dateien für die Moodle Seiten befinden sich im [[Theme|theme]] Verzeichnis. Ein Thema hat  üblicherweise zumindest die folgdenden drei Hauptstylesheet Dateien: [[CSS styles_ color.css|styles_color]], [[CSS styles_layout.css|styles_layout]] und [[CSS styles_fonts.css|styles_fonts]]. Wird eine bestimmte CSS Definiton in einem dieser angepassten Themas nicht gefunden, so wird defaultmäßig auf die Dateien im Standardverzeichnis zurückgegriffen.&lt;br /&gt;
&lt;br /&gt;
==Basic Moodle page parts==&lt;br /&gt;
A web page is broken up into pieces or elements.  Not every page contains the same parts.&lt;br /&gt;
&lt;br /&gt;
These parts or elements include: core, forms, header, footer,admin, blocks, blog, calendar, course, doc, grades, login, message, notes, mymoodle, question, tabs, tags, user and many of the modules.&lt;br /&gt;
&lt;br /&gt;
==Basic CSS files==&lt;br /&gt;
*[[CSS styles_ layout.css]] contains the layout specifications for various page elements.  &lt;br /&gt;
&lt;br /&gt;
*[[CSS styles_color.css]] contains the colors used in the page elements. &lt;br /&gt;
&lt;br /&gt;
*[[CSS styles_fonts.css]] defines the fonts used in the page elements.&lt;br /&gt;
&lt;br /&gt;
== See Also ==&lt;br /&gt;
&lt;br /&gt;
* [[CSS FAQ]]&lt;br /&gt;
* [[CSS styles moz.css]]&lt;br /&gt;
* [[Themes]]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Cascading_Style_Sheets Wikipedia Cascading Style Sheets]&lt;br /&gt;
* [http://www.w3schools.com/css/default.asp W3schools]&lt;br /&gt;
&lt;br /&gt;
[[Category:Administrator]]&lt;br /&gt;
[[Category:Developer]]&lt;br /&gt;
[[Category:Themes]]&lt;/div&gt;</summary>
		<author><name>Mroos</name></author>
	</entry>
</feed>