diff --git a/lang/th/calendar.php b/lang/th/calendar.php index ffdfa40a4bc..615fd3969f7 100644 --- a/lang/th/calendar.php +++ b/lang/th/calendar.php @@ -24,8 +24,8 @@ $string['errorbeforecoursestart'] = ' $string['errorinvaliddate'] = 'วันที่ไม่ถูกต้อง'; $string['errorinvalidminutes'] = 'กำหนดระยะเวลาเป็นนาทีโดยตั้งค่าระหว่าง 1 ถึง 999'; $string['errorinvalidrepeats'] = 'กำหนดจำนวนกิจกรรมโดยตั้งค่าระหว่าง 1 ถึง 99'; -$string['errornodescription'] = 'ต้องกำหนดคำอธิบาย'; -$string['errornoeventname'] = 'ต้องกำหนดชื่อ'; +$string['errornodescription'] = 'ต้องใส่คำอธิบาย'; +$string['errornoeventname'] = 'ต้องใส่ชื่อ'; $string['eventdate'] = 'วันที่'; $string['eventdescription'] = 'คำอธิบาย'; $string['eventduration'] = 'ระยะเวลา'; @@ -39,10 +39,10 @@ $string['eventstarttime'] = ' $string['eventtime'] = 'เวลา'; $string['eventview'] = 'รายละเอียดกิจกรรม'; $string['expired'] = 'หมดเวลา'; -$string['explain_lookahead'] = 'ตรงนี้คุณสามารถเลือกว่า ก่อนที่กิจกรรมจะเริ่มขึ้นเป็นจำนวนกี่วันให้ชื่อกิจกรรมไปถูกแสดงในรายการชื่อกิจกรรมที่กำลงจะเริ่มขึ้น แต่ไม่มีการรับรองว่า กิจกรรมทุกอันที่เริ่มในช่วงเวลาจะถูกนำมาแสดงทั้งหมด ถ้ามีรายชื่อกิจกรรมที่จะเริ่มมากเกินไป( มากกว่าค่าสูงสุดที่ตั้งไว้ในตัวเลือกที่ชอบ) กิจกรรมที่จัดไว้ไกลไปในอนาคตจะไม่ถูกแสดง'; -$string['explain_maxevents'] = 'ตรงนี้คุณสามารถเลือกจำนวนของกิจกรรมที่กำลังจะเริ่มที่จะถูกแสดงบนเว็บ ถ้าคุณเลือกให้แสดงหลายกิจกรรม อาจจะทำให้รายชื่อยาวและใช้เนื้อที่บนจอมากไป'; -$string['explain_startwday'] = 'ปฏิทินรายอาทิตย์จะถูกแสดง เร่มจากวันที่คุณเลือกตรงนี้เป็นต้นไป'; -$string['explain_timeformat'] = 'คุณสามารถเลือกที่จะแสดงเวลาเป็นหลัก 12 ชั่วโมง (เช้า/เย็น) หรือ หลัก 24 ชั่วโมงก็ได้ ถ้าคุณเลือก \"ค่าปกติ\" เวลาจะถูกแสดงตามภาษาที่คุณใช้บนเว็บไซต์'; +$string['explain_lookahead'] = 'ตั้งค่าจำนวนวันที่มากที่สุดที่คุณต้องการให้กิจกรรมนี้แสดงในบล็อค\"กิจกรรมที่กำลังจะมีขึ้น\" กิจกรรมที่เกิดขึ้นเกินกว่าระยะเวลานี้จะไม่มีการแสดงในบล็อคนี้ อย่างไรก็ตามระบบไม่สามารถจะรับประกันได้ว่ากิจกรรมทั้งหมดที่เริ่มในช่วงระยะเวลาที่ระบุจะแสดงในบล็อคนี้ถ้าหากคุณระบุระยะเวลาไว้นานเกินไป'; +$string['explain_maxevents'] = 'ระบุจำนวนกิจกรรมที่มากที่สุดที่ต้องการแสดง ถ้าหากระบุจำนวนมากเกินไปอาจทำให้เสียพื้นที่หน้าจอ'; +$string['explain_startwday'] = 'เลือกวันที่ต้องการให้เป็นวันแรกในมุมมองรายสัปดาห์'; +$string['explain_timeformat'] = 'คุณสามารถเลือกที่จะแสดงเวลาเป็นแบบ 12 ชั่วโมง (เช้า/เย็น) หรือแบบ 24 ชั่วโมงก็ได้ ถ้าคุณเลือก \"ค่าที่ตั้งไว้\" เวลาจะถูกแสดงตามภาษาที่คุณใช้บนเว็บไซต์'; $string['february'] = 'กุมภาพันธ์'; $string['fri'] = 'ศ.'; $string['friday'] = 'ศุกร์'; @@ -68,8 +68,8 @@ $string['pref_lookahead'] = ' $string['pref_maxevents'] = 'จำนวนมากที่สุดของกิจกรรมที่กำลังจะเริ่ม'; $string['pref_startwday'] = 'วันแรกของสัปดาห์'; $string['pref_timeformat'] = 'รูปแบบการแสดงเวลา'; -$string['preferences'] = 'เลือกตามชอบ'; -$string['preferences_available'] = 'ตัวเลือกที่คุณชอบ'; +$string['preferences'] = 'ตั้งค่าที่ต้องการ'; +$string['preferences_available'] = 'ค่าที่คุณต้องการ'; $string['repeatnone'] = 'ไม่มีการซ้ำ'; $string['repeatweeksl'] = 'ซ้ำเป็นรายสัปดาห์, สร้างพร้อมกัน'; $string['repeatweeksr'] = 'กิจกรรม'; @@ -82,28 +82,28 @@ $string['sun'] = ' $string['sunday'] = 'อาทิตย์'; $string['thu'] = 'พฤ.'; $string['thursday'] = 'พฤหัสบดี'; -$string['timeformat_12'] = '12 ชั่วโมง (เช้า/เย็น)'; +$string['timeformat_12'] = '12 ชั่วโมง (am/pm)'; $string['timeformat_24'] = '24 ชั่วโมง'; $string['today'] = 'วันนี้'; $string['tomorrow'] = 'วันพรุ่งนี้'; $string['tt_deleteevent'] = 'ลบกิจกรรม'; $string['tt_editevent'] = 'แก้ไขกิจกรรม'; -$string['tt_hidecourse'] = 'กิจกรรมของคอร์สแสดงอยู่ (คลิ้กเพื่อซ่อน)'; -$string['tt_hideglobal'] = 'กิจกรรมทั่วไปแสดงอยู่ (คลิ้กเพื่อซ่อน)'; -$string['tt_hidegroups'] = 'กิจกรรมของกลุ่มแสดงอยู่ (คลิ้กเพื่อซ่อน)'; -$string['tt_hideuser'] = 'กิจกรรมของผู้ใช้แสดงอยู่ (คลิ้กเพื่อซ่อน)'; -$string['tt_showcourse'] = 'กิจกรรมของคอร์สถูกซ่อนอยู่ (คลิ้กเพื่อแสดง)'; -$string['tt_showglobal'] = 'กิจกรรมทั่วไปถูกซ่อนอยู่(คลิ้กเพื่อแสดง)'; -$string['tt_showgroups'] = 'กิจกรรมของกลุ่มถูกซ่อนอยู่(คลิ้กเพื่อแสดง)'; -$string['tt_showuser'] = 'กิจกรรมของผู้ใช้ถูกซ่อนอยู่ (คลิ้กเพื่อแสดง)'; +$string['tt_hidecourse'] = 'กิจกรรมของรายวิชา(คลิ้กเพื่อซ่อน)'; +$string['tt_hideglobal'] = 'กิจกรรมของเว็บไซต์(คลิ้กเพื่อซ่อน)'; +$string['tt_hidegroups'] = 'กิจกรรมของกลุ่ม (คลิ้กเพื่อซ่อน)'; +$string['tt_hideuser'] = 'กิจกรรมของสมาชิก (คลิ้กเพื่อซ่อน)'; +$string['tt_showcourse'] = 'ซ่อนกิจกรรมของรายวิชา (คลิ้กเพื่อแสดง)'; +$string['tt_showglobal'] = 'ซ่อนกิจกรรมของเว็บ(คลิ้กเพื่อแสดง)'; +$string['tt_showgroups'] = 'ซ่อนกิจกรรมของกลุ่ม(คลิ้กเพื่อแสดง)'; +$string['tt_showuser'] = 'ซ่อนกิจกรรมของสมาชิก(คลิ้กเพื่อแสดง)'; $string['tue'] = 'อ.'; $string['tuesday'] = 'อังคาร'; -$string['typecourse'] = 'กิจกรรมของคอร์ส'; +$string['typecourse'] = 'กิจกรรมของรายวิชา'; $string['typegroup'] = 'กิจกรรมกลุ่ม'; $string['typesite'] = 'กิจกรรมของเว็บไซต์'; $string['typeuser'] = 'กิจกรรมของผู้ใช้'; $string['upcomingevents'] = 'กิจกรรมที่กำลังจะมีขึ้น'; -$string['userevents'] = 'กิจกรรมของผู้ใช้'; +$string['userevents'] = 'กิจกรรมของสมาชิก'; $string['wed'] = 'พ.'; $string['wednesday'] = 'พุธ'; $string['yesterday'] = 'เมื่อวาน'; diff --git a/lang/th/chat.php b/lang/th/chat.php index d0e5c6771ee..1ef73bdb0de 100644 --- a/lang/th/chat.php +++ b/lang/th/chat.php @@ -1,9 +1,9 @@ diff --git a/lang/th/docs/README.txt b/lang/th/docs/README.txt new file mode 100644 index 00000000000..27265d05da4 --- /dev/null +++ b/lang/th/docs/README.txt @@ -0,0 +1,48 @@ +Moodle documentation +-------------------- + +If you want to translate this documentation into another language, +I would suggest that you: + + 1) don't include English versions of the files in this directory + because they will be used automatically anyway if it is missing + from your language pack. + + 2) translate them in this order (starting with the important ones): + + MOST IMPORTANT + |------------------- + | + | - files.php + | - install.html + | - installamp.html + | - upgrade.html + | - faq.html + | + | ----------------- + | + | - teacher.html + | - module_files.txt + | + | ----------------- + | + | - intro.html + | - features.html + | - release.html + | + | ----------------- + | + | - developer.html + | - cvs.html + | - future.html + | + | ----------------- + | + | - license.html + | + |------------------- + LEAST IMPORTANT + + 3) Please don't translate credits.html at all - it changes too much. + + diff --git a/lang/th/docs/background.html b/lang/th/docs/background.html new file mode 100644 index 00000000000..da03dd07b60 --- /dev/null +++ b/lang/th/docs/background.html @@ -0,0 +1,79 @@ + + +
+++ +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 who 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/th/docs/coding.html b/lang/th/docs/coding.html new file mode 100644 index 00000000000..38b4be41875 --- /dev/null +++ b/lang/th/docs/coding.html @@ -0,0 +1,190 @@ + + +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: $assignments (for an array of objects)
+ 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/th/docs/credits.html b/lang/th/docs/credits.html new file mode 100644 index 00000000000..1a9fc956cb1 --- /dev/null +++ b/lang/th/docs/credits.html @@ -0,0 +1,209 @@ + + + +++ + diff --git a/lang/th/docs/cvs.html b/lang/th/docs/cvs.html new file mode 100644 index 00000000000..9a6fcfe5bcb --- /dev/null +++ b/lang/th/docs/cvs.html @@ -0,0 +1,150 @@ + + +Overall guidance
+++Martin Dougiamas is the originator, lead developer, project manager, release manager and general teaboy for the whole Moodle project. Do you take sugar?
+The Moodle software package is Copyright © 1999-2004, Martin Dougiamas under the GNU GPL.
++
Main Developers
+++A special thanks from all of us goes to those who have contributed substantial and ongoing amounts of time + to writing Moodle code and helping it grow. These are people who "get" what developing Moodle is all about and without whom Moodle would be a far lesser thing:
++++ Eloy Lafuente (stronk7), Ray Kingdon, Williams Castillo, Petri Asikainen, Henrik Kaipe, Zbigniew Fiedorowicz, Gustav Delius, Thomas Robb, Janne Mikkonen, Jon Papaioannou, + Scott Elliott
++
Other Contributors
+++Many other people have contributed (and are still contributing) with constructive + discussions, support, testing and various chunks of code and documentation. This list is long and always + changing, but some names include (in the order they were added): +
++++ Peter C. Taylor, 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, Russell Jungwirth, Przemyslaw Stencel, Roberto + Pinna (Bobo), John "Captain" Eyre, Paula Edmiston, Howard Miller, + Claudio Tavares, P. Timothy Ervin, Bob Calder, Ursula + Raab, David Delgado, Mad Alex, Gaëtan Frenoy, Bernard Boucher, Bryan Williams, Mike Churchward, Rob Butner, Koen Roggemans.
+Sorry if we've forgotten to include your name here - the Moodle community is large and active so this list is difficult + to maintain! Please email Martin and make your suggestions! :-)
+Thanks also to everyone of you who have +
++
+- donated via the Donations + page, +
+- contributed to the bug tracker, + and +
+- participated in the Moodle + Community
++
Translators
+++One of Moodle's strengths is the number of translations it has. Each translation takes many hours of work, as there are + over 1000 phrases to translate (plus hundreds of help files!). Many of the languages + have more than one contributor, sometimes working together and sometimes working serially. +
+Maintaining a list of all these wonderful people is too difficult, so please look at the Language + download page for names and details.
++
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, cornflower, by Thomas Murdock, http://sand-paper.org +
+- garden, by Spiggy, http://phpgirl.com
+- formal_white, by Andrea Bicciolo
++
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: 4.20
+
+ Copyright © 2000-2004 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
++html2text - lib/html2text.php
+++PHP script to convert HTML into an approximate text equivalent
+Version: 1.0 (with modifications)
+
+ Copyright © 2002 Mark Wilton-Jones
+ License: HowToCreate script license with written permission
+ URL: http://www.howtocreate.co.uk/php/
++htmlArea - lib/editor
+++Javascript/HTML script to put a GUI editor in textareas on Internet Explorer and Mozilla
+Version: 3.0 beta (with modifications)
+
+ Copyright © 2002 interactivetools.com, inc.
+ License: htmlArea License (based on BSD license)
+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.phpmimeTeX - filter/tex
+++Compiled C program to convert TeX into GIFs
+
+
+ Version: 1.4
+ Copyright © 2002-2004 John Forkosh Associates, Inc
+ License: GNU GPL
+ URL: http://www.forkosh.com/mimetex.html
+URL: http://moodle.org/download/mimetex+
+ 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
+Snoopy - lib/snoopy
+++A PHP net client
+
+
+ Version: 1.0
+ Copyright © 1999-2000 Monte Ohrt <monte@ispi.net>
+ License: GNU LGPL
+ URL: http://snoopy.sourceforge.com
+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
+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.sourceforge.net:/cvsroot/moodle co moodle+The command is similar for other CVS modules (such as the contrib folder or the MySQL Admin folder):
+++cvs -z3 -d:ext:myusername@cvs.sourceforge.net:/cvsroot/moodle co contrib+
+cvs -z3 -d:ext:myusername@cvs.sourceforge.net:/cvsroot/moodle co mysqlDon't try to do run this first CVS command over an existing moodle installation + - 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.sourceforge.net:/cvsroot/moodle++
+ 5. Under the "Module" field, type "moodle" to get Moodle, "contrib" to get the contributions directory, or "mysql" to get the MySQL Admin module.
+
+ 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/th/docs/developer.html b/lang/th/docs/developer.html new file mode 100644 index 00000000000..16a511b8c83 --- /dev/null +++ b/lang/th/docs/developer.html @@ -0,0 +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.
+Learning Activities
+++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
+++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!
+
+Languages
+++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.
+Database Schemas
+++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.
++
Course Formats
+++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.
++
Documentation and articles
+++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$
+ +