diff --git a/doc/contents.php b/doc/contents.php
index a5aa4752749..bbde6f7797c 100755
--- a/doc/contents.php
+++ b/doc/contents.php
@@ -10,10 +10,13 @@
print_header();
- echo "";
foreach ($string as $file => $filename) {
- echo " '.
+ $filename.'
Moodle is an active and evolving work in progress. Development was started - by Martin - Dougiamas who continues to lead the project:
---I've been working on it, in some way or other, for several years. It - started in the 90's when I was webmaster at Curtin - University of Technology and a system administrator of their WebCT installation. - I encountered many frustrations with the WebCT beast and developed an itch - that needed scratching - there had to be a better way (no, not Blackboard - :-)
-I also know a lot of people in schools and smaller institutions (and - some big ones!) who want to make better use of the Internet but don't know - where to start in the maze of technologies and pedagogies that are out there. - I've always hoped there would be a Free alternative that such people could - use to help them move their teaching skills into the online environment.
-My strong beliefs in the unrealised possibilities of Internet-based education - led me to complete a Masters and then a PhD in Education, combining my former - career in Computer Science with newly constructed knowledge about the nature - of learning and collaboration. In particular, I am particularly influenced - by the epistemology of social constructionism - which not only treats learning - as a social activity, but focusses attention on the learning that occurs while - actively constructing artifacts (such as texts) for others to see or use. -
-It is crucial to me that this software be easy to use - in fact it should - be as intuitive as possible.
-I'm committed to continuing my work on Moodle and on keeping it Open - and Free. I have a deeply-held belief in the importance of unrestricted education - and empowered teaching, and Moodle is the main way I can contribute to the - realisation of these ideals.
-
A number of early prototypes were produced and discarded before he released - version 1.0 upon a largely unsuspecting world on August 20, 2002. This version - was targeted towards smaller, more intimate classes at University level, and - was the subject of research case studies that closely analysed the nature of - collaboration and reflection that occurred among these small groups of adult - participants. -
Since then there has been steady series of new releases adding new features, - better scalability and improved performance. -
As Moodle has spread and the community has grown, more input is being drawn - from a wider variety of people in different teaching situations. For example, - Moodle is now used not only in Universities, but in high schools, primary schools, - non-profit organisations, private companies, by independent teachers and even - homeschooling parents. A growing number of people from around the world are - contributing to Moodle in different ways - for more details see the Credits - page. -
An important feature of the Moodle project is the moodle.org - web site, which provides a central point for information, discussion and collaboration - among Moodle users, who include system administrators, teachers, researchers, - instructional designers and of course, developers. Like Moodle, this site is - always evolving to suit the needs of the community, and like Moodle it will - always be Free. -
In 2003, the company moodle.com - was launched to provide additional commercial support for those need it, as - well as managed hosting, consulting and other services. -
For more about our future plans for Moodle, see the Future - roadmap.
- - -Version: $Id$
- - - + + + +++ +Moodle is an active and evolving work in progress. Development was started + by Martin + Dougiamas who continues to lead the project:
+++I've been working on it, in some way or other, for several years. It + started in the 90's when I was webmaster at Curtin + University of Technology and a system administrator of their WebCT installation. + I encountered many frustrations with the WebCT beast and developed an itch + that needed scratching - there had to be a better way (no, not Blackboard + :-)
+I also know a lot of people in schools and smaller institutions (and + some big ones!) who want to make better use of the Internet but don't know + where to start in the maze of technologies and pedagogies that are out there. + I've always hoped there would be a Free alternative that such people could + use to help them move their teaching skills into the online environment.
+My strong beliefs in the unrealised possibilities of Internet-based education + led me to complete a Masters and then a PhD in Education, combining my former + career in Computer Science with newly constructed knowledge about the nature + of learning and collaboration. In particular, I am particularly influenced + by the epistemology of social constructionism - which not only treats learning + as a social activity, but focusses attention on the learning that occurs while + actively constructing artifacts (such as texts) for others to see or use. +
+It is crucial to me that this software be easy to use - in fact it should + be as intuitive as possible.
+I'm committed to continuing my work on Moodle and on keeping it Open + and Free. I have a deeply-held belief in the importance of unrestricted education + and empowered teaching, and Moodle is the main way I can contribute to the + realisation of these ideals.
+A number of early prototypes were produced and discarded before he released + version 1.0 upon a largely unsuspecting world on August 20, 2002. This version + was targeted towards smaller, more intimate classes at University level, and + was the subject of research case studies that closely analysed the nature of + collaboration and reflection that occurred among these small groups of adult + participants. +
+Since then there has been steady series of new releases adding new features, + better scalability and improved performance. +
+As Moodle has spread and the community has grown, more input is being drawn + from a wider variety of people in different teaching situations. For example, + Moodle is now used not only in Universities, but in high schools, primary schools, + non-profit organisations, private companies, by independent teachers and even + homeschooling parents. A growing number of people from around the world are + contributing to Moodle in different ways - for more details see the Credits + page. +
+An important feature of the Moodle project is the moodle.org + web site, which provides a central point for information, discussion and collaboration + among Moodle users, who include system administrators, teachers, researchers, + instructional designers and of course, developers. Like Moodle, this site is + always evolving to suit the needs of the community, and like Moodle it will + always be Free. +
+In 2003, the company moodle.com + was launched to provide additional commercial support for those need it, as + well as managed hosting, consulting and other services. +
+For more about our future plans for Moodle, see the Future + roadmap.
+
Version: $Id$
+ + + diff --git a/lang/en/docs/coding.html b/lang/en/docs/coding.html index a50830f15d3..24dcd45bf41 100755 --- a/lang/en/docs/coding.html +++ b/lang/en/docs/coding.html @@ -1,262 +1,168 @@ - - -Any collaborative project needs consistency and stability - to stay strong.
-These guidelines are to provide a goal for all Moodle code - to strive to. It's true that some of the older existing code falls short in - a few areas, but it will all be fixed eventually. All new code definitely must - adhere to these standards as closely as possible.
--
I know it can be a little annoying to change your style - if you're used to something else, but balance that annoyance against the annoyance - of all the people trying later on to make sense of Moodle code with mixed styles. - There are obviously many good points for and against any style that people use, - but the current style just is, so please stick to it.
-GOOD: $quiz
- GOOD: $errorstring
- GOOD: $i (but only in little loops)
-
- BAD: $Quiz
- BAD: $aReallyLongVariableNameWithoutAGoodReason
- BAD: $error_string
define("FORUM_MODE_FLATOLDEST", - 1);
- function forum_set_display_mode($mode=0)
- {
- global $USER,
- $CFG;
-
- if ($mode)
- {
- $USER->mode
- = $mode;
- } else if (empty($USER->mode))
- {
- $USER->mode
- = $CFG->forum_displaymode;
- }
- }
if ($quiz->attempts)
- {
- if ($numattempts >
- $quiz->attempts)
- {
- error($strtoomanyattempts,
- "view.php?id=$cm->id");
- }
- }
$var = 'some text without any
- variables';
- $var = "with special characters like a new line \n";
- $var = 'a very, very long string with a '.$single.' variable in it';
- $var = "some $text with $many variables $within it";
function forum_get_ratings_mean($postid,
- $scale, $ratings=NULL)
- {
- /// Return the mean rating of a post given
- to the current user by others.
- /// Scale is an array of possible ratings in the scale
- /// Ratings is an optional simple array of actual ratings (just integers)
-
- if (!$ratings)
- {
- $ratings
- = array(); //
- Initialize the empty array
- if ($rates
- = get_records("forum_ratings",
- "post", $postid))
- {
- //
- Process each rating in turn
- foreach
- ($rates as $rate)
- {
- ....etc
foreach ($objects
- as $key =>
- $thing) {
- process($thing);
-
- }
-
- if ($x ==
- $y)
- {
- $a
- = $b;
- } else if ($x ==
- $z) {
- $a
- = $c;
- } else {
- $a
- = $d;
- }
-
Version: $Id: faq.html,v 1.6 2003/03/30 13:54:28 - moodler Exp $
- - + + +Any collaborative project needs consistency and stability + to stay strong.
+These guidelines are to provide a goal for all Moodle code + to strive to. It's true that some of the older existing code falls short in + a few areas, but it will all be fixed eventually. All new code definitely must + adhere to these standards as closely as possible.
++
I know it can be a little annoying to change your style + if you're used to something else, but balance that annoyance against the annoyance + of all the people trying later on to make sense of Moodle code with mixed styles. + There are obviously many good points for and against any style that people use, + but the current style just is, so please stick to it.
+GOOD: $quiz
+ GOOD: $errorstring
+ GOOD: $i (but only in little loops)
+
+ BAD: $Quiz
+ BAD: $aReallyLongVariableNameWithoutAGoodReason
+ BAD: $error_string
define("FORUM_MODE_FLATOLDEST", + 1);
+ function forum_set_display_mode($mode=0)
+ {
+ global $USER,
+ $CFG;
+
+ if ($mode)
+ {
+ $USER->mode
+ = $mode;
+ } else if (empty($USER->mode))
+ {
+ $USER->mode
+ = $CFG->forum_displaymode;
+ }
+ }
if ($quiz->attempts)
+ {
+ if ($numattempts >
+ $quiz->attempts)
+ {
+ error($strtoomanyattempts,
+ "view.php?id=$cm->id");
+ }
+ }
$var = 'some text without any
+ variables';
+ $var = "with special characters like a new line \n";
+ $var = 'a very, very long string with a '.$single.' variable in it';
+ $var = "some $text with $many variables $within it";
function forum_get_ratings_mean($postid,
+ $scale, $ratings=NULL)
+ {
+ /// Return the mean rating of a post given
+ to the current user by others.
+ /// Scale is an array of possible ratings in the scale
+ /// Ratings is an optional simple array of actual ratings (just integers)
+
+ if (!$ratings)
+ {
+ $ratings
+ = array(); //
+ Initialize the empty array
+ if ($rates
+ = get_records("forum_ratings",
+ "post", $postid))
+ {
+ //
+ Process each rating in turn
+ foreach
+ ($rates as $rate)
+ {
+ ....etc
foreach ($objects
+ as $key =>
+ $thing) {
+ process($thing);
+
+ }
+
+ if ($x ==
+ $y)
+ {
+ $a
+ = $b;
+ } else if ($x ==
+ $z) {
+ $a
+ = $c;
+ } else {
+ $a
+ = $d;
+ }
+
Version: $Id$
+ + diff --git a/lang/en/docs/credits.html b/lang/en/docs/credits.html index 45732f259c1..61012b58c66 100644 --- a/lang/en/docs/credits.html +++ b/lang/en/docs/credits.html @@ -1,210 +1,186 @@ - - - -Moodle the package is Copyright © 2001-2003, - Martin Dougiamas. It is distributed under the - GNU Public License.
- - - --- -Many thanks to every person who has contributed to translating Moodle into - different languages. Each translation takes many hours of work, as there are - over 1000 phrases to translate (plus all the help files!). Many of the languages - have more than one contributor, sometimes working together and sometimes they've - taken over the work from a previous person. -
Maintaining a list of everyone here is too difficult. For the most up-to-date - information see the Language - download page.
-- - -Themes give Moodle sites some colour and life. Here are all the themes carried as part of the Moodle distribution, along with their authors: -
-
-- standard* and cordoroyblue, by Martin Dougiamas -
- oceanblue, by Mitsuhiro Yoshida, http://mitstek.com -
- brightretro, by Thomas Murdock, http://sand-paper.org -
- garden, by Spiggy, http://phpgirl.com -
-- - -Thanks to all of you who have -
-
- - -- donated via the Donations page, -
- contributed to the bug tracker, and -
- participated in the Moodle Community -
Special thanks to those who have contributed substantial amounts of time to helping with Moodle code, including: -
- Petri Asikainen, - Ray Kingdon, - Eloy Lafuente, - Henrik Kaipe, - Williams Castillo, - Russell Jungwirth. -
- - -Also, thanks to those of you who have at some time contributed with constructive - discussions, support, testing and bits of code. This list is long and always - changing, but some names include (in the order I added them): -
- Art Lader, Matt Hope, Tom Murdock, Sébastien Namèche, James Miller, Dustin - Rue, Holger Schadeck, Giovanni Tummarello, John Windmueller, Sean Keogh, Mitsuhiro - Yoshida, Greg Barnett, Mark Kimes, Mary Hunter, Przemyslaw Stencel, Roberto Pinna (Bobo), - John "Captain" Eyre, Paula Edmiston, Scott Elliott, Howard Miller, Claudio Tavares, - Zbigniew Fiedorowicz, P. Timothy Ervin, Bob Calder, Ursula Raab, Thomas Robb, - David Delgado, Mad Alex, Gustav Delius. -
-I apologise if I've forgotten to include your name here - it's very difficult - to maintain! Mail me (Martin) and gently remind me! :-)
- -
-- - + + + +Some of Moodle's libraries were written by other people, and are being redistributed - as part of Moodle under their respective open source licenses that thankfully - allow us to do so. My thanks go out to the authors of all these excellent - products - without them Moodle would be missing important functionality. Copyright - information for each package is included below:
- -ADOdb - lib/adodb
- -
--- -Database abstraction library for MySQL, PostgreSQL, MSSQL, Oracle, -Interbase, Foxpro, Access, ADO, Sybase, DB2 and ODBC.
- -Version: 3.60
-
- Copyright © 2000-2003 John Lim (jlim@natsoft.com.my)
- License: Dual LGPL and BSD-style
- URL: http://php.weblogs.com/adodb
-Graph Class - lib/graphlib.php
- --- - -Class to draw line, point, bar, and area graphs, including numeric - x-axis and double y-axis.
- -Version: 1.6.3 (with modifications)
-
- Copyright © 2000 Herman Veluwenkamp, hermanV@mindless.com
- License: LGPL
-IP-Atlas - lib/ipatlas
- -PHP scripts to show the location of an IP address on a map.- - - -
-
- Version: 1.0 (with modifications)
- Copyright © 2002 Ivan Kozik
- License: GNU GPL
- URL: http://www.xpenguin.com/ip-atlas.php
-PclZip - lib/pclzip
- -Class to create, manage and unpack zip files.- - - -
-
- Version: 2.0 RC2
- Copyright © 2003 Vincent Blavet <vincent@phpconcept.net>
- License: GNU GPL
- URL: http://www.phpconcept.net
-PHP mailer - lib/class.phpmailer.php
- -
-Class for sending email using either sendmail, PHP mail(), -or SMTP. Methods are based upon the standard AspEmail(tm) classes.- - - -
-
- Version 1.71,
- Copyright © 2003 Brent R. Matzelle <bmatzelle@yahoo.com>
- License: LGPL
- URL: http://phpmailer.sourceforge.net
-
-Spreadsheet::WriteExcel - lib/excel
- -A library for generating Excel Spreadsheets.- - - - - -
-
- Version: 2002-11-28
- Copyright © 2002 Xavier Noguer <xnoguer@rezebra.com>
- License: GNU LGPL
- URL: http://jeffn.users.phpclasses.org/browse.html/package/767.html
-Richtext Editor - lib/rte
- -HTML text editor for embedding in web pages.- - -
-
- Version: 0.30 beta 1 (plus modifications)
- Copyright © 2001 Ramesys (Contracting Services) Limited <Austin.France@Ramesys.com> - License: GNU LGPL
- URL: http://richtext.sourceforge.net
-SMTP class - lib/class.smtp.php
- -
-Class that can be used to connect and communicate with - any SMTP server.- - -
- It implements all the SMTP functions defined in RFC821 except TURN.
-
- Version: 03/26/2001
- Copyright © 2001 Chris Ryan <chris@greatbridge.com>
-
-- - -
-Version: $Id$
- - -
++ + diff --git a/lang/en/docs/cvs.html b/lang/en/docs/cvs.html index 2c07cc8d594..d367cc9f7fc 100644 --- a/lang/en/docs/cvs.html +++ b/lang/en/docs/cvs.html @@ -1,160 +1,148 @@ - - -Moodle the package is Copyright © 2001-2003, + Martin Dougiamas. It is distributed under the + GNU Public License.
+Special thanks
+++Dr Peter C. Taylor, at + Curtin University of Technology in Perth, Australia, for working with the earliest + prototypes and making many useful suggestions along the way +
+Translations
+++Many thanks to every person who has contributed to translating Moodle into + different languages. Each translation takes many hours of work, as there are + over 1000 phrases to translate (plus all the help files!). Many of the languages + have more than one contributor, sometimes working together and sometimes they've + taken over the work from a previous person. +
+Maintaining a list of everyone here is too difficult. For the most up-to-date + information see the Language + download page.
+Themes
+++Themes give Moodle sites some colour and life. Here are all the themes carried + as part of the Moodle distribution, along with their authors: +
++
+- standard* and cordoroyblue, by Martin Dougiamas +
+- oceanblue, by Mitsuhiro Yoshida, http://mitstek.com +
+- brightretro, by Thomas Murdock, http://sand-paper.org +
+- garden, by Spiggy, http://phpgirl.com +
+Other contributors
+++Thanks to all of you who have +
++
+- donated via the Donations + page, +
+- contributed to the bug tracker, + and +
+- participated in the Moodle + Community +
++
Special thanks to those who have contributed substantial amounts of time + to helping with Moodle code, including: +
++++ Petri Asikainen, Ray Kingdon, Eloy Lafuente, Henrik Kaipe, Williams Castillo, + Russell Jungwirth. +
++
Also, thanks to those of you who have at some time contributed with constructive + discussions, support, testing and bits of code. This list is long and always + changing, but some names include (in the order I added them): +
++++ Art Lader, Matt Hope, Tom Murdock, Sébastien Namèche, James Miller, Dustin + Rue, Holger Schadeck, Giovanni Tummarello, John Windmueller, Sean Keogh, Mitsuhiro + Yoshida, Greg Barnett, Mark Kimes, Mary Hunter, Przemyslaw Stencel, Roberto + Pinna (Bobo), John "Captain" Eyre, Paula Edmiston, Scott Elliott, Howard Miller, + Claudio Tavares, Zbigniew Fiedorowicz, P. Timothy Ervin, Bob Calder, Ursula + Raab, Thomas Robb, David Delgado, Mad Alex, Gustav Delius. +
+I apologise if I've forgotten to include your name here - it's very difficult + to maintain! Mail me (Martin) and gently remind me! :-)
+Moodle libraries
+++ + +Some of Moodle's libraries were written by other people, and are being redistributed + as part of Moodle under their respective open source licenses that thankfully + allow us to do so. My thanks go out to the authors of all these excellent + products - without them Moodle would be missing important functionality. Copyright + information for each package is included below:
+ADOdb - lib/adodb
+++Database abstraction library for MySQL, PostgreSQL, MSSQL, Oracle, Interbase, + Foxpro, Access, ADO, Sybase, DB2 and ODBC.
+Version: 3.60
+
+ Copyright © 2000-2003 John Lim (jlim@natsoft.com.my)
+ License: Dual LGPL and BSD-style
+ URL: http://php.weblogs.com/adodb
+Graph Class - lib/graphlib.php
+++Class to draw line, point, bar, and area graphs, including numeric x-axis + and double y-axis.
+Version: 1.6.3 (with modifications)
+
+ Copyright © 2000 Herman Veluwenkamp, hermanV@mindless.com
+ License: LGPL
+IP-Atlas - lib/ipatlas
+++PHP scripts to show the location of an IP address on a map.
+
+
+ Version: 1.0 (with modifications)
+ Copyright © 2002 Ivan Kozik
+ License: GNU GPL
+ URL: http://www.xpenguin.com/ip-atlas.php
+PclZip - lib/pclzip
+++Class to create, manage and unpack zip files.
+
+
+ Version: 2.0 RC2
+ Copyright © 2003 Vincent Blavet <vincent@phpconcept.net>
+ License: GNU GPL
+ URL: http://www.phpconcept.net
+PHP mailer - lib/class.phpmailer.php
+++Class for sending email using either sendmail, PHP mail(), or SMTP. + Methods are based upon the standard AspEmail(tm) classes.
+
+
+ Version 1.71,
+ Copyright © 2003 Brent R. Matzelle <bmatzelle@yahoo.com>
+ License: LGPL
+ URL: http://phpmailer.sourceforge.net
+Spreadsheet::WriteExcel - lib/excel
+++A library for generating Excel Spreadsheets.
+
+
+ Version: 2002-11-28
+ Copyright © 2002 Xavier Noguer <xnoguer@rezebra.com>
+ License: GNU LGPL
+ URL: http://jeffn.users.phpclasses.org/browse.html/package/767.html
+Richtext Editor - lib/rte
+++HTML text editor for embedding in web pages.
+
+
+ Version: 0.30 beta 1 (plus modifications)
+ Copyright © 2001 Ramesys (Contracting Services) Limited <Austin.France@Ramesys.com> + License: GNU LGPL
+ URL: http://richtext.sourceforge.net
+SMTP class - lib/class.smtp.php
+++Class that can be used to connect and communicate with any SMTP + server.
+
+ It implements all the SMTP functions defined in RFC821 except TURN.
+
+ Version: 03/26/2001
+ Copyright © 2001 Chris Ryan <chris@greatbridge.com>+
+Version: $Id$
+
-- -CVS is the Concurrent Versioning System. It's a commonly used way of storing - source code because it keeps versions of all files so that nothing is ever - lost, and usage by different people is tracked. It also provides ways to merge - code if two or more people are working on the same file. All code and all - versions are stored on a central server (in the case of Moodle, at Sourceforge). -
-If you just want to access the current CVS version of Moodle with read-only access then - you don't need this page - just follow the simpler CVS instructions on the Moodle download page.
- -To use Moodle's - CVS archive (as a developer - with write access), you first need to have an account - on Sourceforge. For the examples on this page, let's assume your username - is myusername and your password - is mypassword. Take special note of the - sourceforge instructions to create your CVS home directory - something you have to - do with every new account to "enable" it for CVS. Basically you just have to use ssh to interactively connect to cvs.sourceforge.net.
- -Once you have - a working Sourceforge account, contact Martin Dougiamas so he can give you write access - to particular Moodle directories.
- -To avoid being prompted for mypassword - every time you run a CVS command, follow the Sourceforge - directions for using authorized keys. This step is optional, but it can - make your CVS experience a lot nicer.
-With that done, you should have all the permissions you need, so you just - need to set up your machine and download the current sources so you can start - working on them. Below are instructions for Unix and Windows systems.
-1. Using CVS on Unix
---Sourceforge CVS uses ssh as a transport layer for security, so you will - have to set this CVS_RSH environment variable in your Unix shell:
---setenv CVS_RSH ssh (for csh, tcsh etc)-export CVS_RSH=ssh (for sh, bash etc)-It's best to put this in your .bashrc or .cshrc so you don't have to type - it all the time. Then, check out Moodle using this (all one line):
---cvs -z3 -d:ext:myusername@cvs.moodle.sourceforge.net:/cvsroot/moodle co moodle-Don't try to do run this first CVS command into an existing moodle directory - - start fresh with a new directory.
-Note that you will be prompted for mypassword - for each command unless you set up authorized - keys
-Now, you should have a new 'moodle' directory. You can rename it and move - it around if you like. Go into it:
---cd moodle-All the latest Moodle files should be in there. You can now change files - in your copy. To compare your files against the main CVS copy on the server - use cvs diff, eg:
---cvs diff -c config-dist.php -cvs diff -c lang-To fetch the latest updates from the server use:
---cvs update -dP-To copy your new files back to the server you would do something like: -
---cd lang/ca -cvs commit-You will be prompted to add some comments (depends on your default text - editor) ... add a meangingful comment and close the editor ... the files - will be sent to Sourceforge and stored. Done!
-To save more time you can put default arguments into a file called .cvsrc - in your home directory. For example, mine contains:
---diff -c -update -dP-Try 'cvs help' for more details ...
--
2. Using CVS on Windows
---First, you need to download a completely fresh copy of Moodle using your - developer account.
---1. Get TortoiseCVS from tortoisecvs.org - and install it, then reboot.
-
-
- 2. Find or create a new folder somewhere where you want Moodle to be downloaded - to.
-
- 3. Right-mouse-click that folder and choose "CVS Checkout" - from the menu. You should see a dialog box.
-
- 4. Copy this text into the CVSROOT field (using your own username!):--:ext:myusername@cvs.moodle.sourceforge.net:/cvsroot/moodle--
- 5. Press the button: "Fetch list...".
-
- 6. To the right of the button you should see a list of modules: choose - "moodle" from that list.
-
- 7. Press the button: "OK" and everything should - be downloaded.
-A dialog box should show all the files being downloaded, and after a while - you should have a complete copy of Moodle. After this first checkout, you - can fetch the latest updated files from the CVS server:
---1. Right-mouse-click on your Moodle folder (or any file) and select - "CVS Update".
-
-After modifying files (you will note they change from green top red!), - you can commit them back to the CVS server like this:
---1. Right-mouse-click on your Moodle folder (or any file) and select - "CVS Commit...".
-
-
- 2. In the dialog box, type a clear description of the changes you are - committing.
-
- 3. Click "OK". Your changes will be sent to the server.
--
Good luck!
--
Version: $Id$
- - + + +++ +CVS is the Concurrent Versioning System. It's a commonly used way of storing + source code because it keeps versions of all files so that nothing is ever + lost, and usage by different people is tracked. It also provides ways to merge + code if two or more people are working on the same file. All code and all + versions are stored on a central server (in the case of Moodle, at Sourceforge). +
+If you just want to access the current CVS version of Moodle with read-only access then + you don't need this page - just follow the simpler CVS instructions on the Moodle download page.
+ +To use Moodle's + CVS archive (as a developer + with write access), you first need to have an account + on Sourceforge. For the examples on this page, let's assume your username + is myusername and your password + is mypassword. Take special note of the + sourceforge instructions to create your CVS home directory - something you have to + do with every new account to "enable" it for CVS. Basically you just have to use ssh to interactively connect to cvs.sourceforge.net.
+ +Once you have + a working Sourceforge account, contact Martin Dougiamas so he can give you write access + to particular Moodle directories.
+ +To avoid being prompted for mypassword + every time you run a CVS command, follow the Sourceforge + directions for using authorized keys. This step is optional, but it can + make your CVS experience a lot nicer.
+With that done, you should have all the permissions you need, so you just + need to set up your machine and download the current sources so you can start + working on them. Below are instructions for Unix and Windows systems.
+1. Using CVS on Unix
+++Sourceforge CVS uses ssh as a transport layer for security, so you will + have to set this CVS_RSH environment variable in your Unix shell:
+++setenv CVS_RSH ssh (for csh, tcsh etc)+export CVS_RSH=ssh (for sh, bash etc)+It's best to put this in your .bashrc or .cshrc so you don't have to type + it all the time. Then, check out Moodle using this (all one line):
+++cvs -z3 -d:ext:myusername@cvs.moodle.sourceforge.net:/cvsroot/moodle co moodle+Don't try to do run this first CVS command into an existing moodle directory + - start fresh with a new directory.
+Note that you will be prompted for mypassword + for each command unless you set up authorized + keys
+Now, you should have a new 'moodle' directory. You can rename it and move + it around if you like. Go into it:
+++cd moodle+All the latest Moodle files should be in there. You can now change files + in your copy. To compare your files against the main CVS copy on the server + use cvs diff, eg:
+++cvs diff -c config-dist.php +cvs diff -c lang+To fetch the latest updates from the server use:
+++cvs update -dP+To copy your new files back to the server you would do something like: +
+++cd lang/ca +cvs commit+You will be prompted to add some comments (depends on your default text + editor) ... add a meangingful comment and close the editor ... the files + will be sent to Sourceforge and stored. Done!
+To save more time you can put default arguments into a file called .cvsrc + in your home directory. For example, mine contains:
+++diff -c +update -dP+Try 'cvs help' for more details ...
++
2. Using CVS on Windows
+++First, you need to download a completely fresh copy of Moodle using your + developer account.
+++1. Get TortoiseCVS from tortoisecvs.org + and install it, then reboot.
+
+
+ 2. Find or create a new folder somewhere where you want Moodle to be downloaded + to.
+
+ 3. Right-mouse-click that folder and choose "CVS Checkout" + from the menu. You should see a dialog box.
+
+ 4. Copy this text into the CVSROOT field (using your own username!):++:ext:myusername@cvs.moodle.sourceforge.net:/cvsroot/moodle++
+ 5. Press the button: "Fetch list...".
+
+ 6. To the right of the button you should see a list of modules: choose + "moodle" from that list.
+
+ 7. Press the button: "OK" and everything should + be downloaded.
+A dialog box should show all the files being downloaded, and after a while + you should have a complete copy of Moodle. After this first checkout, you + can fetch the latest updated files from the CVS server:
+++1. Right-mouse-click on your Moodle folder (or any file) and select + "CVS Update".
+
+After modifying files (you will note they change from green top red!), + you can commit them back to the CVS server like this:
+++1. Right-mouse-click on your Moodle folder (or any file) and select + "CVS Commit...".
+
+
+ 2. In the dialog box, type a clear description of the changes you are + committing.
+
+ 3. Click "OK". Your changes will be sent to the server.
++
Good luck!
++
Version: $Id$
+ + diff --git a/lang/en/docs/developer.html b/lang/en/docs/developer.html index ffb2cc81de3..16a511b8c83 100644 --- a/lang/en/docs/developer.html +++ b/lang/en/docs/developer.html @@ -1,308 +1,293 @@ - -This document describes some of Moodle's design and how you can contribute.
-It's a bit thin at the moment - better documentation will come eventually!
-Sections in this document:
--
--From a system administrator's perspective, Moodle has been designed according - to the following criteria:
--
-- Moodle should run on the widest variety of platforms
-
-
- The web application platform that runs on most platforms is PHP combined - with MySQL, and this is the environment that Moodle has been developed in - (on Linux, Windows, and Mac OS X). Moodle also uses the ADOdb library for - database abstraction, which means Moodle can use more - than ten different brands of database (unfortunately, though, it can - not yet set up tables in all these databases - - more on this later).
-
-- Moodle should be easy to install, learn and modify
-
-
- Early prototypes of Moodle (1999) were built using Zope - - an advanced object-oriented web application server. Unfortunately I found - that although the technology was pretty cool, it had a very steep learning - curve and was not very flexible in terms of system administration. The PHP - scripting language, on the other hand, is very easy to get into (especially - if you've done any programming using any other scripting language). Early - on I made the decision to avoid using a class-oriented design - again, to - keep it simple to understand for novices. Code reuse is instead achieved - by libraries of clearly-named functions and consistent layout of script - files. PHP is also easy to install (binaries are available for every platform) - and is widely available to the point that most web hosting services provide - it as standard.
-
-- It should be easy to upgrade from one version to the next
-
-
- Moodle knows what version it is (as well as the versions of all plug-in - modules) and a mechanism has been built-in so that Moodle can properly upgrade - itself to new versions (for example it can rename database tables or add - new fields). If using CVS in Unix for example, one can just do a "cvs - update -d" and then visit the site home page to complete an upgrade.
-
-- It should be modular to allow for growth
-
-
- Moodle has a number of features that are modular, including themes, activities, - interface languages, database schemas and course formats. This allows anyone - to add features to the main codebase or to even distribute them separately. - More on this below in the next section.
-
-- It should be able to be used in conjunction with other systems
-
-
- One thing Moodle does is keep all files for one course within a single, - normal directory on the server. This would allow a system administrator - to provide seamless forms of file-level access for each teacher, such as - Appletalk, SMB, NFS, FTP, WebDAV and so on. The authentication modules allow - Moodle to use LDAP, IMAP, POP3, NNTP and other databases as sources for - user information. Otherwise, there is work yet to do. Features planned for - Moodle in future versions include: import and export of Moodle data using - XML-based formats (including IMS and SCORM); and increased use of style - sheets for interface formatting (so that it can be integrated visually into - other web sites).
-
--As mentioned above, Moodle has a number of features that are modular. Even - if you are not a programmer there are things you can change or help with.
- --- -These are by far the most important modules, and reside in the 'mod' directory. - There are seven default modules: assignment, choice, forum, journal, quiz, - resource, and survey. Each module is in a separate subdirectory and consists - of the following mandatory elements (plus extra scripts unique to each module):
--
-- mod.html: a form to set up or update an instance of this module
-- version.php: defines some meta-info and provides upgrading code
-- icon.gif: a 16x16 icon for the module
-- db/: SQL dumps of all the required db tables and data (for each database - type)
-- index.php: a page to list all instances in a course
-- view.php: a page to view a particular instance
-- lib.php: any/all functions defined by the module should be in here. - If the modulename if called widget, then the required functions include: -
--
-- widget_add_instance() - code to add a new instance of widget
-- widget_update_instance() - code to update an existing instance
-- widget_delete_instance() - code to delete an instance
-- widget_user_outline() - given an instance, return a summary of a - user's contribution
-- widget_user_complete() - given an instance, print details of a user's - contribution
-
-- To avoid possible conflict, any module functions should be named - starting with widget_ and any constants you define should start with - WIDGET_
-- Lastly, each module will have some language files that contain strings - for that module. See below.
-The easiest way to start a new learning activity module is to use the template - in mod/newmodule_template.zip. - Unzip it and follow the README inside.
-You might also like to post first in the Activities - modules forum on Using Moodle.
--
--Themes (or skins) define the look of a site. A number of simple themes - are provided in the main distribution, but you may want to create your own - theme with your own colours, logo, styles and graphics.
-Each theme is in a subdirectory of the "theme" directory, and - contains at least the following files:
--
-- config.php: defines the theme colours used throughout - the site
-- styles.php: the style sheet, containing CSS definitions - for standard HTML elements as well as many Moodle elements.
-- header.html: Included at the top of each page. This - is what you need to edit to add a logo at the top of pages, for example.
-- footer.html: Included at the bottom of each page.
-To create your own themes for current versions of Moodle:
--
-- Copy one of the existing theme folders to one with a new name. I recommend - starting with one of the standard themes.
-- Edit config.php and insert your own colours.
-- Edit styles.php and change your CSS styles.
-- Edit header.html and footer.html to add new logos, or change the layout. -
-Note that all these steps are optional - you can make a radically different - look to your site simply by editing the colours in config.php
-Note also that Moodle upgrades may break themes slightly, so check - the release notes carefully if you are using a custom theme.
-In particular, Moodle 2.0 will have a completely new display system, probably - based on XSL transformations of XML output from Moodle. It is likely that - the themes for this will be a completely different format, but the advantage - will be a much higher possible degree of customisation (including moving - elements around the page).
-More discussion about this in the Themes - forum on Using Moodle. If you create a nice theme that you think others - might want to use, please post your zip file on the themes forum!
-
-- -
-- -Moodle has been designed for internationalisation. Each 'string' or 'page' - of text that is displayed as part of the interface is drawn from a set of - language files. Each language is a subdirectory of the directory 'lang'. - The structure of the lang directory is as follows:
-lang/en - directory containing all files for one language - (eg English)
--
-- moodle.php - strings for main interface
-- assignment.php - strings for assignment module
-- choice.php - strings for choice module
-- forum.php - strings for forum module
-- journal.php - strings for journal module
-- quiz.php - strings for quiz module
-- resource.php - strings for resource module
-- survey.php - strings for survey module
-- .... plus other modules if any.
-
-
- A string is called from these files using the get_string() - or print_string() functions. Each string - supports variable substitution, to support variable ordering in different - languages.
-
- eg $strdueby = get_string("assignmentdueby", "assignment", - userdate($date));
-
- If a string doesn't exist in a particular language, then the equivalent - in English will automatically be used instead.lang/en/help - contains whole help pages (for popup context-sensitive - help)
---Main help pages are situated here, while help pages specific to each - module are located in subdirectories with the module's name.
-You can insert a helpbutton in a page with the helpbutton function.
-eg helpbutton("text", "Click here for help about text");
-and for modules:
-helpbutton("forumtypes", "Forum types", "forum");
-Note that you can edit languages online, using the administration web tools - under "Check this language". This makes it easy to not to only - create new languages but to refine existing ones. If you are starting a - new language, please contact me, Martin - Dougiamas.
-You might also like to post in the Languages - forum on Using Moodle.
-If you are maintaining a language an ongoing basis, I can give you CVS - write access to the Moodle source code so that you can directly maintain - the files.
---Given a working database with defined tables, the intentionally simple - SQL used in Moodle should work fine with a wide variety of database brands.
-A problem exists with automatically creating new tables - in a database, which is what Moodle tries to do upon initial installation. - Because every database is very different, there doesn't yet exist any way - to do this in a platform-independent way. To support this automation in - each database, schemas can be created that list the required SQL to create - Moodle tables in a particular database. These are files in lib/db - and inside the db subdirectory of each module.
-Currently, only MySQL and PostgreSQL are fully supported in this way (no-one - wrote the schemas for other brands).
-Moodle 1.2 will use a new method of database-independent XML schemas that - will make all this unnecessary.
-- -
--Moodle currently supports three different course formats: weekly, topics - and social.
-These are a little more connected to the rest of the code (and hence, less - "pluggable") but it is still quite easy to add new ones.
-If you have any ideas for different formats that you need or would like - to see, get in touch with me and I'll do my absolute best to have them available - in future releases.
-- -
--If you feel like writing a tutorial, an article, an academic paper or anything - else about Moodle, please do!
-Put it on the web and make sure you include links to http://moodle.org/
--
Participating in the bug tracker
---Finally, I would like to invite you to register on the "bug tracker" - at http://moodle.org/bugs - so you can file any bugs that you find and perhaps participate in discussing - and fixing them.
-"Bugs" not only includes software bugs with current versions - of Moodle, but also new ideas, feature requests and even constructive criticism - of existing features. The beauty of open source is that anyone can participate - in some way and help to create a better product for all of us to enjoy. - In this project, your input is very welcome!
-
-
------Thanks for using Moodle!
-
-
- Martin Dougiamas, Lead - Developer
-
-
-- --
Version: $Id: developer.html,v 1.2 2001/12/09 - 10:34:19 martin Exp $
- - -