From 30e99c8720b53d0042a353a888a736d06c2b780e Mon Sep 17 00:00:00 2001 From: lonecatz Date: Tue, 10 May 2005 14:49:54 +0000 Subject: [PATCH] some correction by sun at hit.edu.cn --- lang/zh_cn_utf8/docs/coding.html | 133 +++++++++++++++++------------- lang/zh_cn_utf8/docs/teacher.html | 49 +++++------ lang/zh_cn_utf8/editor.php | 5 +- lang/zh_cn_utf8/moodle.php | 4 +- 4 files changed, 101 insertions(+), 90 deletions(-) diff --git a/lang/zh_cn_utf8/docs/coding.html b/lang/zh_cn_utf8/docs/coding.html index 0adbce74795..69d47ea0ed4 100644 --- a/lang/zh_cn_utf8/docs/coding.html +++ b/lang/zh_cn_utf8/docs/coding.html @@ -1,7 +1,10 @@ + + Moodle帮助文档: 程序编写准则 - - + +

Moodle程序编写准则

@@ -12,25 +15,24 @@
  • 所有代码文件应当使用 .php 作为扩展名。
  • 所有模板文件应当使用 .html 作为扩展名。
  • 所有文本文件应当使用Unix风格的文本格式(多数的文本编辑器都有这个选项)。
  • -
  • 所有php标记都必须是“完整”标记,譬如 ... 而不是如的“短”标记。 +
  • 所有php标记都必须是“完整”标记,譬如<?php ?> ... 而不是如<? ?>的“短”标记。
  • 所有已经存在的版权声明应当被保留。如果有必要,你可以加入自己的。
  • 每个文件都应当包含主config.php文件。
  • 每个文件都应当检查用户的身份是否正确,可以使用函数require_login()和isadmin()、isteacher()、iscreator()或者isstudent()。
  • -
  • 所有访问数据库的操作都应当使用lib/datalib.php中的函数――这样可以兼容更多的数据库服务器。所有的事情都应当是可以用这些函数来完成的,如果遇到必须要写SQL代码的情况,请记住这些代码应当是夸平台的,且仅仅对你代码中的特定函数(通常在一个lib.php文件中)有效,且代码中有明确的注释。
  • -
  • 不要使用标准全局变量$CFG、$SESSION、$THEME和$USER之外的全局变量。
  • +
  • 所有访问数据库的操作都应当使用lib/datalib.php中的函数――这样可以兼容更多的数据库服务器。所有的事情都应当是可以用这些函数来完成的,如果遇到必须要写SQL代码的情况,请记住这些代码应当是跨平台的,且仅仅对你代码中的特定函数(通常在一个lib.php文件中)有效,且代码中用注释进行明确说明。
  • +
  • 不要建立和使用标准全局变量$CFG、$SESSION、$THEME和$USER之外的全局变量。
  • 所有变量都应当被初始化或者至少在使用前用isset()或empty()等函数进行检测。
  • -
  • 所有字符串都应当可翻译――在"lang/en"目录中创建新的文本文件,字符串应当使用简洁的英文小心名称,并通过函数get_string()或print_string()来取得。
  • +
  • 所有字符串都应当可翻译――在"lang/en"目录中创建新的文本文件,字符串应当使用简洁的英文小写名称,并通过函数get_string()或print_string()来取得。
  • 所有帮助文件应当可翻译――在"en/help"目录中创建文本文件并且通过helpbutton()函数来调用它们。 -

    如果需要上传一个帮助文件: +

    如果需要上传一个帮助文件:

    -

  • 从浏览器发来的信息(以GET或POST形式发送)都应用了magic_quotes(无论PHP的设置如何),因此直接将它们插入到数据库中是安全的。所有其它的原始数据(来自文件或数据库的)都必须在插入数据库前使用addslashes()进行预处理。
  • -
  • 重要的:Moodle中所有的文本,特别是用户提供的文本,都必须使用format_text()函数来输出。这样就可以确保文本已经被过滤器且正确地清除了过滤信息。
  • +
  • 重要的:Moodle中所有的文本,特别是用户提供的文本,都必须使用format_text()函数来输出。这样就可以确保文本已经正确地过滤。
  • 编码风格

    @@ -40,8 +42,8 @@
  • 变量名应当是容易理解、有含义的小写英文单词。如果确实需要两个或以上的单词,请把它们连在一起,但要保持名称尽可能短。对于数组对象,请使用复数名称。

    好的: $quiz
    好的: $errorstring
    - 好的: $assignments (for an array of objects)
    - 好的: $i (but only in little loops)
    + 好的: $assignments (用于数组)
    + 好的: $i (仅用于小型循环)

    坏的: $Quiz
    坏的: $aReallyLongVariableNameWithoutAGoodReason
    @@ -52,31 +54,31 @@ 1);

  • 函数名称应当是简单的英文小写单词,且总是以模块名作为前缀以防止模块之间的冲突。单词之间以下划线分隔。变量如果可能应当总有合理的缺省值。注意在函数名和其后的括号之间没有空格。
    -

    function forum_set_display_mode($mode=0) +

    function forum_set_display_mode($mode=0) {
    - global
    $USER, +     global $USER, $CFG;

    - if (
    $mode) +     if ($mode) {
    -
    $USER->mode +         $USER->mode = $mode;
    - } else if (empty(
    $USER->mode)) +     } else if (empty($USER->mode)) {
    -
    $USER->mode - = $CFG->forum_displaymode;
    - }
    +         
    $USER->mode + = $CFG->forum_displaymode;
    +     }
    }

  • 语句块必须总是使用大括号(即便是只有一行)。Moodle使用如下风格: -

    if ($quiz->attempts) +

    if ($quiz->attempts) {
    - if (
    $numattempts > - $quiz->attempts) +     if ($numattempts > + $quiz->attempts) {
    -
    error($strtoomanyattempts, - "view.php?id=$cm->id");
    - }
    +         
    error($strtoomanyattempts, + "view.php?id=$cm->id");
    +     }
    }

  • 字符串应当尽可能用单引号定义以提高速度。
    @@ -86,50 +88,64 @@ $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) +

  • 实用的注释应当尽可能填写,用以解释代码流程和函数与变量的功能。 +
      +
    • 每个函数和类都应该使用流行的phpDoc格式编写,以便自动生成代码文档。
    • +
    • 内嵌注释应使用 // 风格,并且整齐布局,使其能融入代码中并和代码对齐。 +
    • +
    + +

    +/**
    + * The description should be first, with asterisks laid out exactly
    + * like this example. If you want to refer to a another function,
    + * do it like this: {@link clean_param()}. Then, add descriptions
    + * for each parameter as follows.
    + *
    + * @param int $postid The PHP type is followed by the variable name
    + * @param array $scale The PHP type is followed by the variable name
    + * @param array $ratings The PHP type is followed by the variable name
    + * @return mixed
    + */

    +function forum_get_ratings_mean($postid, + $scale, $ratings=NULL) + {
    +     if (!$ratings) {
    -
    /// 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(); // +         $ratings + = array();     // Initialize the empty array
    - if (
    $rates - = get_records("forum_ratings", - "post", $postid)) +         if ($rates + = get_records("forum_ratings", + "post", $postid)) {
    -
    // +             // Process each rating in turn
    - foreach - (
    $rates as $rate) +             foreach + ($rates as $rate) {
    ....etc

  • +
  • 换行可以被大方地使用——把东西分散开看起来会比较清楚。一般情况下,在花括号和普通命令之间应当有一个换行符,但在花括号和变量或函数之间可以没有换行符:
    -

    foreach ($objects - as $key => +

    foreach ($objects + as $key => $thing) {
    -
    process($thing); +     process($thing);
    }

    -
    if ($x == - $y) + if ($x == + $y) {
    -
    $a +     $a = $b;
    - } else if (
    $x == + } else if ($x == $z) {
    -
    $a +     $a = $c;
    } else {
    -
    $a +     $a = $d;
    }

  • @@ -141,17 +157,18 @@
  • 包含着模块中数据实例的主表格必须和模块同名(譬如widget),并且至少包含如下字段:
    • id - 如上一条所述
    • -
    • course - 每个实例所属的课程
    • +
    • course - 每个实例所属的课程id
    • name - 每个实例的完整名称
  • -
  • 与模块相关的其它表格的命名规则是:如果它包含的信息是关于“thing”的,则它的名字应当是widget_things(注意采用复数形式)。
  • +
  • 与模块相关的其它表格的命名规则是:如果它包含的信息是关于“things”的,则它的名字应当是widget_things(注意采用复数形式)。
  • 字段名称应当简短,与变量名的规则相同。
  • 在可能的情况下,包含着对其它表格(如widget)引用的字段应当命名为widgetid。(注意这是个新约定,有一些老的表格并未遵守)
  • -
  • 布尔字段应当使用小整数类型(如INT4)并存储0或1,这样就可以在需要时扩展它。
  • +
  • 布尔字段应当使用小整数类型(如INT4)并存储为0或1,这样就可以在需要时扩展它。
  • 多数的表格应当有一个timemodified字段(INT10),并用PHP的time()函数取得的当前时间戳来更新它。

  • Moodle帮助文档

    -

    Version: $Id$

    - \ No newline at end of file +

    Version: $Id$

    + + diff --git a/lang/zh_cn_utf8/docs/teacher.html b/lang/zh_cn_utf8/docs/teacher.html index e4d07b10cfe..6d5129bf20c 100644 --- a/lang/zh_cn_utf8/docs/teacher.html +++ b/lang/zh_cn_utf8/docs/teacher.html @@ -1,22 +1,12 @@ + + - Moodle帮助文档:教师手册 - - - +Moodle Docs: Teachers Manual + + - -

    教师手册

    这是个关于使用Moodle创建在线课程的快速指南。这里概述了主要功能及你需要做些什么样的选择。

    @@ -39,11 +29,11 @@
  • 请注意这些小图标并正确使用:
    -

     ——编辑图标 让你编辑与它相邻的项目。 +

    ——编辑图标 让你编辑与它相邻的项目。

    ——帮助图标 为你弹出一个帮助窗口。

    -

     ——开眼图标 隐藏某些东西不让学生看到。

    -

     ——闭眼图标 让原本隐藏的东西可见。

    +

    ——开眼图标 隐藏某些东西不让学生看到。

    +

    ——闭眼图标 让原本隐藏的东西可见。

  • 使用每页顶部的导航条: @@ -51,7 +41,7 @@
  • -

     

    +

    课程设置

    你要做的第一件事是,在你的课程首页的“管理”菜单中找到并点击“设置...”(整个“管理”菜单只有你和网站管理员可见,学生是永远看不见的)。

    @@ -60,24 +50,24 @@

    这里是三种课程格式的屏幕截图(不必在意不同的颜色,颜色是由网站管理员为整个站点设置的):

    星期格式:

    -

     

    +

    主题格式:

    -

     

    +

    社区格式:

    -

     

    +

    星期格式和主题格式在结构上很相近。主要的区别在于,星期格式中的每个方块只包含一个星期,而主题格式中你可以随意使用。社区格式并不使用很多内容,只是围绕着一个论坛展开,这个论坛显示于课程首页。

    在课程设置页中点击帮助按钮可看到更详细的说明。

    -

     

    +

    上载文件

    也许你有现成的东西要加入到你的课程中,比如网页、音频、视频、word文档或flash动画。 任何一种类型的文件都可以上载到你的课程中,并储存于服务器上。你的文件在服务器上,你可以对它们进行移动、重命名、编辑或删除操作。

    这些功能都可以通过点击“管理”菜单中的“文件管理”链接实现。文件管理页面看起来就象这样:

    -

     

    +

    这个界面只有教师可见,学生是看不见的。以后可以让学生看到其中个别文件(作为“资源”——请看下一节内容)。

    如截图所示,文件和子目录并列。你可以创建任意多个子目录以管理文件,可以在子目录之间移动文件。

    目前通过网页上载只限于一次一个文件。如果你想一次上载很多文件(例如整个网站的网页),你可以先用压缩(zip)软件把这些文件打包成一个文件,上载这个zip文件,然后在服务器上解压(在zip文件后面你可以看到“解压”链接)。

    @@ -85,7 +75,7 @@

    HTML和文本文件可以直接在线编辑。其它文件必须在你的本地电脑上编辑然后重新上载。如果你上载的文件与服务器上已有的文件重名,已有的文件将被覆盖。

    最后一个提示:如果你的内容就在网上,你根本不必上载文件——你只需在课程中建立链接直接指向它们(请看资源模块和下一节内容)。

    -

     

    +

    建立活动模块

    建设课程还包括在课程首页添加活动模块,按照学生可能用到的次序排列。当然你随时可以重新排列模块顺序。

    @@ -125,7 +115,7 @@ )上移或下移。你也可以用叉号()删除它们,或者用编辑图标()重新编辑它们。

    -

     

    +

    运作课程

    有计划在将来把这个文档扩展成一个更全面的指南。目前暂提供一些要点:

    @@ -138,7 +128,7 @@
  • 尽快对学生做出反应。不要拖拉,马上就做。拖拉的后果不单是积压了大量的工作难以完成,而且是营造和维持团队氛围的大忌。
  • -

     

    +

    进一步的建议

    如果你有任何关于网站的特殊问题,请和网站管理员联系。

    @@ -148,10 +138,11 @@ Dougiamas或浏览Moodle网站的“bug tracker”moodle.org/bugs

    感谢使用Moodle并祝教安!


    -

     

    +

    Moodle帮助文档

    Version: $Id: teacher.html,v 1.4 2002/08/18 10:00:01 martin Exp $

    + diff --git a/lang/zh_cn_utf8/editor.php b/lang/zh_cn_utf8/editor.php index 43f1026c577..42dd6fef407 100644 --- a/lang/zh_cn_utf8/editor.php +++ b/lang/zh_cn_utf8/editor.php @@ -1,5 +1,5 @@
    你可以试试这三个已知的解决方法:
    (1) 用SHIFT+Insert来代替CTRL+v
    (2) 使用浏览器菜单里的Edit->Paste
    (3) 通过编辑user.js来改变浏览器的参数。

    点下面的“确定”键获得更多帮助,或者点“放弃”回到编辑器'; $string['delete'] = '删除'; $string['filebrowser'] = '文件浏览'; $string['findwhat'] = '查找'; @@ -108,7 +109,7 @@ $string['strikethrough'] = '删除线'; $string['subscript'] = '下标'; $string['superscript'] = '上标'; $string['textindicator'] = '当前风格'; -$string['textmode'] = '现在是文本模式. 点击[<>] 按钮返回所见即所得模式.'; +$string['textmode'] = '现在是文本模式。点击[<>]按钮返回所见即所得模式.'; $string['texttop'] = '文字顶部'; $string['top'] = '顶部'; $string['type'] = '类别'; diff --git a/lang/zh_cn_utf8/moodle.php b/lang/zh_cn_utf8/moodle.php index f712de6505c..a1313435fc9 100644 --- a/lang/zh_cn_utf8/moodle.php +++ b/lang/zh_cn_utf8/moodle.php @@ -1,5 +1,5 @@ count$a->items'; $string['country'] = '国家和地区'; $string['course'] = '课程'; $string['courseavailable'] = '该课程允许学生学习'; @@ -433,6 +434,7 @@ $string['files'] = '文件管理'; $string['filesfolders'] = '文件/文件夹'; $string['filloutallfields'] = '请填完这个表单的所有空格'; $string['findmorecourses'] = '查询更多课程...'; +$string['firstdayofweek'] = '1'; $string['firstname'] = '名'; $string['firsttime'] = '第一次光临本站?'; $string['followingoptional'] = '以下为可选项';