2010-03-10 25 views
0

在Moodle 1.9.7中,我需要允許教師上傳一個全新的作業插件的管理面板中的文件。Moodle 1.9.7:在作業管理面板中上傳文件

當重寫setup_elements功能在我assignment.class.php,我做的是這樣的:

$mform->addElement('file', 'foo', 'Label'); 
$mform->setHelpButton('foo', array('foo', 'Label', 'assignment/type/my_assignment')); 

的形式上傳一個不錯的文件選擇器,但我該怎麼辦上傳的文件?哪個函數應該被覆蓋?我怎樣才能指定我想上傳文件的地方?

有一個完整的缺乏文檔(混合有點混亂)在Moodle的這個:(

我挖入代碼,看看發生了什麼幕後走向臺前。同時,我認爲一些你可以在過去所做的一樣。

我知道這是高度具體的,但也許Moodle的開發者正在研究這個:)

回答

0

那麼,在代碼挖後,這裏就是我已經完成。

我已經覆蓋了以下分配功能:

function add_instance($submission) 
{ 
    return (save_uploaded_files($submission)) ? parent::add_instance($submission) : false; 
} 

function update_instance($submission) 
{ 
    return (save_uploaded_files($submission)) ? parent::update_instance($submission) : false; 
} 

save_uploaded_files($submission)函數看起來像:

function save_uploaded_files($submission) 
{ 
    global $CFG; 

    $um = new upload_manager('my_file', ... [OPTIONS HERE] ...); 
    return $um->process_file_uploads("my/upload/path"); 
}