[ Index ] |
PHP Cross Reference of moodle-2.8 |
[Summary view] [Print] [Text view]
1 <?php 2 // This file is part of Moodle - http://moodle.org/ 3 // 4 // Moodle is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // Moodle is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU General Public License for more details. 13 // 14 // You should have received a copy of the GNU General Public License 15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 16 17 /** 18 * This page lists public api for tool_monitor plugin. 19 * 20 * @package tool_monitor 21 * @copyright 2014 onwards Ankit Agarwal <[email protected]> 22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 23 */ 24 25 defined('MOODLE_INTERNAL') || die; 26 27 /** 28 * This function extends the navigation with the tool items 29 * 30 * @param navigation_node $navigation The navigation node to extend 31 * @param stdClass $course The course to object for the tool 32 * @param context $context The context of the course 33 */ 34 function tool_monitor_extend_navigation_course($navigation, $course, $context) { 35 if (has_capability('tool/monitor:managerules', $context) && get_config('tool_monitor', 'enablemonitor')) { 36 $url = new moodle_url('/admin/tool/monitor/managerules.php', array('courseid' => $course->id)); 37 $settingsnode = navigation_node::create(get_string('managerules', 'tool_monitor'), $url, navigation_node::TYPE_SETTING, 38 null, null, new pix_icon('i/settings', '')); 39 $reportnode = $navigation->get('coursereports'); 40 41 if (isset($settingsnode) && !empty($reportnode)) { 42 $reportnode->add_node($settingsnode); 43 } 44 } 45 } 46 47 /** 48 * This function extends the navigation with the tool items 49 * 50 * @param navigation_node $navigation The navigation node to extend 51 * @param stdClass $course The course to object for the tool 52 * @param context $context The context of the course 53 */ 54 function tool_monitor_extend_navigation_frontpage($navigation, $course, $context) { 55 56 if (has_capability('tool/monitor:managerules', $context)) { 57 $url = new moodle_url('/admin/tool/monitor/managerules.php', array('courseid' => $course->id)); 58 $settingsnode = navigation_node::create(get_string('managerules', 'tool_monitor'), $url, navigation_node::TYPE_SETTING, 59 null, null, new pix_icon('i/settings', '')); 60 $reportnode = $navigation->get('frontpagereports'); 61 62 if (isset($settingsnode) && !empty($reportnode)) { 63 $reportnode->add_node($settingsnode); 64 } 65 } 66 } 67 68 /** 69 * This function extends the navigation with the tool items for user settings node. 70 * 71 * @param navigation_node $navigation The navigation node to extend 72 * @param stdClass $user The user object 73 * @param context $usercontext The context of the user 74 * @param stdClass $course The course to object for the tool 75 * @param context $coursecontext The context of the course 76 */ 77 function tool_monitor_extend_navigation_user_settings($navigation, $user, $usercontext, $course, $coursecontext) { 78 global $USER, $SITE; 79 if (($USER->id == $user->id) && (has_capability('tool/monitor:subscribe', $coursecontext) 80 && get_config('tool_monitor', 'enablemonitor'))) { 81 // The $course->id will always be the course that corresponds to the current context. 82 $courseid = $course->id; 83 // A $course->id of $SITE->id might either be the frontpage or the site. So if we get the site ID back, check the... 84 // ...courseid parameter passed to the page so we can know if we are looking at the frontpage rules or site level rules. 85 if ($course->id == $SITE->id && optional_param('courseid', $course->id, PARAM_INT) == 0) { 86 $courseid = 0; 87 } 88 $url = new moodle_url('/admin/tool/monitor/index.php', array('courseid' => $courseid)); 89 $subsnode = navigation_node::create(get_string('managesubscriptions', 'tool_monitor'), $url, 90 navigation_node::TYPE_SETTING, null, null, new pix_icon('i/settings', '')); 91 92 if (isset($subsnode) && !empty($navigation)) { 93 $navigation->add_node($subsnode); 94 } 95 } 96 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Fri Nov 28 20:29:05 2014 | Cross-referenced by PHPXref 0.7.1 |