예제 #1
0
 /**
  * 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;
 }