您需要將此插件放在/ local文件夾中,並通過添加到主導航塊的鏈接提供對其頁面的訪問。
myplugin_extends_navigation(global_navigation $navigation) {
// Read the docs for get_context_instance and look at other uses to see what params you need
$usercontext = get_context_instance(CONTEXT_USER, $USER->id, MUST_EXIST);
// You will need to define some capabilities or use existing ones. If the user is allowed, they see the link below
if (has_capability('whatevercapability', $context)) {
// Adds a link
$node_schedule = $nodecoursework->add('Submission Schedule',
new moodle_url('/local/myplugin/sub.php'),
navigation_node::TYPE_CUSTOM,
'Submission Schedule',
'Submission Schedule');
}
}
報告頁面,然後放在這個文件夾作爲單獨的文件(sub.php在這個例子中:這是通過將以下功能分爲/local/myplugin/lib.php將被自動拾取完成)。尋找html_table()類來生成報告,也是基於sql的子類。
製作本地插件的文檔是here,您可以看到一個示例here。
謝謝你的回覆。那麼我高興地建立了模塊,首先創建了一個層次結構,在這個層次結構中,人工智能可以創建新的部門,分區n個區域並將其分配給對方。然後finaly把用戶放入不合邏輯的組中。我在做一個插件cald用戶層次結構在/ blocks /文件夾中,並且在hev準備好我的層次結構的時候我會在/ report /文件夾中創建一個插件,考慮n讓差異級別的用戶查看差異報告。是不是也是正確的?可能還有太多的複雜因素,比如我們可以這樣做。 – ivn 2012-02-17 12:39:45
聽起來很合理,雖然/報告是非標準的,所以很多像導航鏈接,運行單元測試等的小部件都不會掃描它,這可能是一個缺點。你如何製作層次結構?角色/上下文系統應該已經爲你提供了這些。 – 2012-02-17 13:01:23
Dint get u?系統已經爲你提供了什麼?正如我之前提到的,我創建了一個新的插件,其中包含部門,區域和區域的表格以及將部門和區域分成幾部分的單獨表格。現在剩下的就是將用戶放入這些層次結構中,並根據層次結構設置權限。一旦完成,我將開始使用我的報告插件。 – ivn 2012-02-18 10:22:34