顯示具有 Module 標籤的文章。 顯示所有文章
顯示具有 Module 標籤的文章。 顯示所有文章

2011年3月10日 星期四

Make new module with groupING

In mod_form.php, add this line:
$this->_features->groupings = true;

Note: But i still wonder why others module don't add this line but they are still available for groupING, any idea?

2011年3月8日 星期二

Add a table to Module Database

  1. Site administration -> Development -> XMLDB editor
  2. Find your module and click [Load]
  3. Click [Edit]
  4. Click [New table] and fill in the detail
  5. Click [Back]
  6. Click [View PHP code]
  7. Select action: create table
  8. Select table: select your table name
  9. Click "View"
  10. Copy the code to mod/your_mod/db/upgrade.php
  11. Change XXXXXXXXXX to new version number (e.g. 2011022301)
  12. Open mod/your_mod/version.php, change $module->version to the new version number
  13. Notification 
  14. Done

2011年2月22日 星期二

Add a field to Module Update page

By Module Update page, i mean the page shown when you add a new activity or update it.

Note: You should add a field to the database first if you want to save the entered field information.

  1. Open mod\your_mod\mod_form.php
  2. Add this line: $mform->addElement('text', 'your_field', 'label_shown', array('size'=>'64'));
  3. Done

Note2: your_field is the field name in the database of table mdl_your_mod, the field information will save to the table

Note3: To show the field, just use $your_mod->your_field

Add a field to Module Database

  1. Site administration -> Development -> XMLDB editor
  2. Find your module and click [Load]
  3. Click [Edit]
  4. At the Tables section, click the table you want to add field
  5. Click [New field] and fill in the detail
  6. [View PHP code]
  7. Select action: add field
  8. Select field/key/index: your_new_field_name
  9. Click "View"
  10. Copy the code to mod/your_mod/db/upgrade.php
  11. Change XXXXXXXXXX to new version number (e.g. 2011022301)
  12. Open mod/your_mod/version.php, change $module->version to the new version number
  13. Notification 
  14. Done

Remove a Module

  1. Goto: Site administration -> Plugins -> Activity modules -> Manage activities
  2. Find your module and click Delete
  3. Remove the module from mod/ folder
  4. Done

2011年1月24日 星期一

Build a Hello World new module

  1. Download the NEWMODULE.zip (HEAD) from http://docs.moodle.org/en/Development:NEWMODULE_Documentation (or download here) (Follow the README.txt from the zip file! (not the tutorial at moodle.org, it is not for 2.0))
  2. Rename all occurrences of "NEWMODULE" to "widget" (or your new module name) of the all files in the zip (161 replacements) (Also rename "newmodule" to "widget" for unix system)
  3. Rename "NEWMODULE" folder to "widget"
  4. Rename lang\en\NEWMODULE.php to widget.php
  5. In version.php, modify $module->version to current date (you need to change the XX for each update). Comment this line: $module->version = 0
  6. Optional: In view.php, just before the footer(), add -> echo 'Hello World';
  7. Copy the widget folder to moodle\mod\
  8. Site Administration -> Notifications, when you see the new module, -> Update
  9. Done.
Note: It seems there will be some problem if the last character of the module name is digital