/** * Get information import plugins * @param int $courseid * @return array */ public static function get_plugins_import($courseid) { global $CFG; if (self::$importplugins !== null) { return self::$importplugins; } $importplugins = array(); $context = context_course::instance($courseid); if (has_capability('moodle/grade:import', $context)) { foreach (core_component::get_plugin_list('gradeimport') as $plugin => $plugindir) { if (!has_capability('gradeimport/' . $plugin . ':view', $context)) { continue; } $pluginstr = get_string('pluginname', 'gradeimport_' . $plugin); $url = new moodle_url('/grade/import/' . $plugin . '/index.php', array('id' => $courseid)); $importplugins[$plugin] = new grade_plugin_info($plugin, $url, $pluginstr); } if ($CFG->gradepublishing) { $url = new moodle_url('/grade/import/keymanager.php', array('id' => $courseid)); $importplugins['keymanager'] = new grade_plugin_info('keymanager', $url, get_string('keymanager', 'grades')); } } if (count($importplugins) > 0) { asort($importplugins); self::$importplugins = $importplugins; } else { self::$importplugins = false; } return self::$importplugins; }