function require_login 
- ログインしているかどうかをチェックする.
- lib/moodlelib.php
require_login($courseorid=NULL, $autologinguest=true, $cm=NULL, $setwantsurltome=true, $preventredirect=false)
- この関数を呼ばない場合,contextlevel は CONTEXT_SYSTEM (10) になる.
- $cm が NULL の場合, contextlevel は CONTEXT_COURSE (50) になる.
- $cm が NULL でない場合,contextlevel は CONTEXT_MODULE (70) になる.
- contextlevel が CONTEXT_MODULE の場合,管理ブロック(settings) にモジュールの管理メニューが dock される (lib/navigationlib.php).
- contextlevel が CONTEXT_MODULE の場合,管理ブロック(settings) にモジュールの管理メニューが dock される (lib/navigationlib.php).
feedback_extend_settings_navigation 
- lib.php に記述.
- 管理ブロック(settings) にメニューを追加する.(see feedback モジュール)
- モジュール名_supports() 関数で,メニューを制御可能
function add_to_log 
- lib/moodlelib.php
function add_to_log($courseid, $module, $action, $url='', $info='', $cm=0, $user=0)
function get_coursemodule_from_id 
- get_coursemodule_from_id($dbname, $id)
- $dbname : モジュール名
- $id : モジュールのインスタンスID
$cm = get_coursemodule_from_id('altwiki', 60); print_r($cm); [id] => 60 モジュールオブジェクトのインスタンスID (Moodle全体で一意的) [course] => 2 コースID [module] => 56 モジュールID [instance] => 2 そのモジュール内でのインスタンスID (モジュール内で一意的.データベースのID) [section] => 2 [idnumber] => [added] => 1371440189 [score] => 0 [indent] => 0 [visible] => 1 [visibleold] => 1 [groupmode] => 0 [groupingid] => 0 [groupmembersonly] => 0 [completion] => 0 [completiongradeitemnumber] => [completionview] => 0 [completionexpected] => 0 [availablefrom] => 0 [availableuntil] => 0 [showavailability] => 0 [showdescription] => 0 [name] => ALT2 [modname] => altwiki
class file_storage 
- lib/filestorage/file_storage.php
- array get_area_files($contextid, $component, $filearea, $itemid=false, $sort="itemid, filepath, filename", $includedirs=true);
- bool delete_area_files($contextid, $component = false, $filearea = false, $itemid = false);
$fs->get_area_files() 
- 格納ディレクトリの情報オブジェクトの配列を得る.
- ディレクトリが A/B/C/D/ の場合.通常 A はコンテキストID.
$files = $fs->get_area_files(A, B, C, D);
- 使用例
$files = $fs->get_area_files($context->id, 'mod_altwiki', 'attachments', $resourceid);
- ディレクトリが A/B/C/D/ の場合.通常 A はコンテキストID.
- 格納ファイルの名前を得る.ただし,カレントディレクトリ '.' を含む.
foreach ($files as $file) { echo $file->get_name(); }
class moodle_url 
- lib/weblib.php
$base_url = new moodle_url('/mod/apply/'.$action_file); $base_url->params(array('id'=>$id, 'courseid'=>$courseid));
$OUTPUT->single_button 
/** * Returns a form with a single button. * * @param string|moodle_url $url * @param string $label button text * @param string $method get or post submit method * @param array $options associative array {disabled, title, etc.} * @return string HTML fragment */ public function single_button($url, $label, $method='post', array $options=null);
$DB->insert_record 
- record_id insert_record($table, $dataobject, $returnid=true, $bulk=false);
$apply_id = $DB->insert_record('apply', $apply);
$DB->update_record 
- bool update_record($table, $dataobject, $bulk=false);
update_record('apply', $apply);
$DB->delete_records 
- bool delete_records($table, array $conditions=null)
$ret = $DB->delete_records('event', array('modulename'=>'apply', 'instance'=>$apply_id));
$DB->get_record 
- object get_record($table, array $conditions, $fields='*', $strictness=IGNORE_MISSING)
$item = $DB->get_record('apply_item', array('id'=>$apply_id)); $name = $item->name;
$DB->get_records 
- array(object) get_records($table, array $conditions=null, $sort='', $fields='*', $limitfrom=0, $limitnum=0)
$params = array('apply_id'=>$item->apply_id); $items = $DB->get_records('apply_item', $params, 'position'); foreach ($items as $item) { $name = $item->name; ......
$DB->get_records_select 
- array(object) get_records_select($table, $select, array $params=null, $sort='', $fields='*', $limitfrom=0, $limitnum=0)
- $select の ? に 配列 $params の要素が対応(並び順)
- $select 中の :変数名 に $params の各要素が対応
- name が結果の配列のキーになる(重複があるとワーニング)
$templates = $DB->get_records_select('apply_template', 'course=? OR ispublic=1', array($course->id), 'name');
$DB->get_records_sql 
- array(object) get_records_sql($sql, array $params=null, $limitfrom=0, $limitnum=0)
- $sql の ? に 配列 $params の要素が対応(並び順)
- $sql 中の :変数名 に $params の各要素が対応
$where = 'WHERE as.id=av.submit_id AND av.version=0 AND as.apply_id=:apply_id AND ai.id=av.item_id '; $sql = 'SELECT MAX(ai.position) FROM {apply_submit} as, {apply_value} av, {apply_item} ai '.$where; $params = array(); $params['apply_id'] = $apply_id; $lastpos = $DB->get_field_sql($sql, $params);
$DB->execute 
- array(object) execute($sql, array $params=null)
- $sql の ? に 配列 $params の要素が対応(並び順)
- $sql 中の :変数名 に $params の各要素が対応
構成 
- version.php
- mod_form.php
- form の定義, definition():設定画面, BDと名前を合わせる?
- lib.php
- ライブラリ
- index.php
- view.php オプション
- setting.php オプション
Memo 
mod_form.php: a form to setup/update a module instance version.php: defines some meta-info and provides upgrading code pix/icon.gif: a 16x16 icon for the module db/install.xml: an SQL dump of all the required db tables and data 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. constants should be defined using MODULENAME_xxxxxx functions should be defined using modulename_xxxxxx There are a number of standard functions: modulename_add_instance() modulename_update_instance() modulename_delete_instance() modulename_user_complete() modulename_user_outline() modulename_cron() modulename_print_recent_activity()
- $loginfo = "$attsid,$prvmethod,$method,$prvstate,$state";
Form 
- MoodleQuickForm::registerElementType('advcheckbox', "$CFG->libdir/form/advcheckbox.php", 'MoodleQuickForm_advcheckbox');
- MoodleQuickForm::registerElementType('button', "$CFG->libdir/form/button.php", 'MoodleQuickForm_button');
- MoodleQuickForm::registerElementType('cancel', "$CFG->libdir/form/cancel.php", 'MoodleQuickForm_cancel');
- MoodleQuickForm::registerElementType('searchableselector', "$CFG->libdir/form/searchableselector.php", 'MoodleQuickForm_searchableselector');
- MoodleQuickForm::registerElementType('checkbox', "$CFG->libdir/form/checkbox.php", 'MoodleQuickForm_checkbox');
- MoodleQuickForm::registerElementType('date_selector', "$CFG->libdir/form/dateselector.php", 'MoodleQuickForm_date_selector');
- MoodleQuickForm::registerElementType('date_time_selector', "$CFG->libdir/form/datetimeselector.php", 'MoodleQuickForm_date_time_selector');
- MoodleQuickForm::registerElementType('duration', "$CFG->libdir/form/duration.php", 'MoodleQuickForm_duration');
- MoodleQuickForm::registerElementType('editor', "$CFG->libdir/form/editor.php", 'MoodleQuickForm_editor');
- MoodleQuickForm::registerElementType('filemanager', "$CFG->libdir/form/filemanager.php", 'MoodleQuickForm_filemanager');
- MoodleQuickForm::registerElementType('filepicker', "$CFG->libdir/form/filepicker.php", 'MoodleQuickForm_filepicker');
- MoodleQuickForm::registerElementType('grading', "$CFG->libdir/form/grading.php", 'MoodleQuickForm_grading');
- MoodleQuickForm::registerElementType('group', "$CFG->libdir/form/group.php", 'MoodleQuickForm_group');
- MoodleQuickForm::registerElementType('header', "$CFG->libdir/form/header.php", 'MoodleQuickForm_header');
- MoodleQuickForm::registerElementType('hidden', "$CFG->libdir/form/hidden.php", 'MoodleQuickForm_hidden');
- MoodleQuickForm::registerElementType('htmleditor', "$CFG->libdir/form/htmleditor.php", 'MoodleQuickForm_htmleditor');
- MoodleQuickForm::registerElementType('modgrade', "$CFG->libdir/form/modgrade.php", 'MoodleQuickForm_modgrade');
- MoodleQuickForm::registerElementType('modvisible', "$CFG->libdir/form/modvisible.php", 'MoodleQuickForm_modvisible');
- MoodleQuickForm::registerElementType('password', "$CFG->libdir/form/password.php", 'MoodleQuickForm_password');
- MoodleQuickForm::registerElementType('passwordunmask', "$CFG->libdir/form/passwordunmask.php", 'MoodleQuickForm_passwordunmask');
- MoodleQuickForm::registerElementType('questioncategory', "$CFG->libdir/form/questioncategory.php", 'MoodleQuickForm_questioncategory');
- MoodleQuickForm::registerElementType('radio', "$CFG->libdir/form/radio.php", 'MoodleQuickForm_radio');
- MoodleQuickForm::registerElementType('recaptcha', "$CFG->libdir/form/recaptcha.php", 'MoodleQuickForm_recaptcha');
- MoodleQuickForm::registerElementType('select', "$CFG->libdir/form/select.php", 'MoodleQuickForm_select');
- MoodleQuickForm::registerElementType('selectgroups', "$CFG->libdir/form/selectgroups.php", 'MoodleQuickForm_selectgroups');
- MoodleQuickForm::registerElementType('selectwithlink', "$CFG->libdir/form/selectwithlink.php", 'MoodleQuickForm_selectwithlink');
- MoodleQuickForm::registerElementType('selectyesno', "$CFG->libdir/form/selectyesno.php", 'MoodleQuickForm_selectyesno');
- MoodleQuickForm::registerElementType('static', "$CFG->libdir/form/static.php", 'MoodleQuickForm_static');
- MoodleQuickForm::registerElementType('submit', "$CFG->libdir/form/submit.php", 'MoodleQuickForm_submit');
- MoodleQuickForm::registerElementType('submitlink', "$CFG->libdir/form/submitlink.php", 'MoodleQuickForm_submitlink');
- MoodleQuickForm::registerElementType('tags', "$CFG->libdir/form/tags.php", 'MoodleQuickForm_tags');
- MoodleQuickForm::registerElementType('text', "$CFG->libdir/form/text.php", 'MoodleQuickForm_text');
- MoodleQuickForm::registerElementType('textarea', "$CFG->libdir/form/textarea.php", 'MoodleQuickForm_textarea');
- MoodleQuickForm::registerElementType('url', "$CFG->libdir/form/url.php", 'MoodleQuickForm_url');
- MoodleQuickForm::registerElementType('warning', "$CFG->libdir/form/warning.php", 'MoodleQuickForm_warning');
Counter: 4449,
today: 1,
yesterday: 2
最終更新: 2021-07-29 (木) 14:41:26 (JST) (1327d) by iseki