$plugin_info['report'] = $reports;
}
+ if ($settings = grade_helper::get_info_manage_settings($courseid)) {
+ $plugin_info['settings'] = $settings;
+ }
+
if ($scale = grade_helper::get_info_scales($courseid)) {
$plugin_info['scale'] = array('view'=>$scale);
}
}
}
- // Hide course settings if we're not in a course
- if ($settings = grade_helper::get_info_manage_settings($courseid)) {
- $plugin_info['settings'] = $settings;
- }
-
- // Put preferences last
- if ($preferences = grade_helper::get_plugins_report_preferences($courseid)) {
- $plugin_info['preferences'] = $preferences;
- }
-
foreach ($plugin_info as $plugin_type => $plugins) {
if (!empty($plugins->id) && $active_plugin == $plugins->id) {
$plugin_info['strings']['active_plugin_str'] = $plugins->string;
$buttons=false, $shownavigation=true) {
global $CFG, $OUTPUT, $PAGE;
+ if ($active_type === 'preferences') {
+ // In Moodle 2.8 report preferences were moved under 'settings'. Allow backward compatibility for 3rd party grade reports.
+ $active_type = 'settings';
+ }
+
$plugin_info = grade_get_plugin_info($courseid, $active_type, $active_plugin);
// Determine the string of the active plugin
}
}
+ if ($settings = grade_helper::get_info_manage_settings($courseid)) {
+ $settingsnode = $gradenode->add($strings['settings'], null, navigation_node::TYPE_CONTAINER);
+ foreach ($settings as $setting) {
+ $settingsnode->add($setting->string, $setting->link, navigation_node::TYPE_SETTING, null, $setting->id, new pix_icon('i/settings', ''));
+ }
+ }
+
if ($imports = grade_helper::get_plugins_import($courseid)) {
$importnode = $gradenode->add($strings['import'], null, navigation_node::TYPE_CONTAINER);
foreach ($imports as $import) {
}
}
- if ($settings = grade_helper::get_info_manage_settings($courseid)) {
- $settingsnode = $gradenode->add($strings['settings'], null, navigation_node::TYPE_CONTAINER);
- foreach ($settings as $setting) {
- $settingsnode->add($setting->string, $setting->link, navigation_node::TYPE_SETTING, null, $setting->id, new pix_icon('i/settings', ''));
- }
- }
-
- if ($preferences = grade_helper::get_plugins_report_preferences($courseid)) {
- $preferencesnode = $gradenode->add(get_string('myreportpreferences', 'grades'), null, navigation_node::TYPE_CONTAINER);
- foreach ($preferences as $preference) {
- $preferencesnode->add($preference->string, $preference->link, navigation_node::TYPE_SETTING, null, $preference->id, new pix_icon('i/settings', ''));
- }
- }
-
if ($letters = grade_helper::get_info_letters($courseid)) {
$letters = array_shift($letters);
$gradenode->add($strings['letter'], $letters->link, navigation_node::TYPE_SETTING, null, $letters->id, new pix_icon('i/settings', ''));
'letter' => get_string('letters', 'grades'),
'export' => get_string('export', 'grades'),
'import' => get_string('import'),
- 'preferences' => get_string('mypreferences', 'grades'),
- 'settings' => get_string('settings')
+ 'settings' => get_string('edittree', 'grades')
);
}
return self::$pluginstrings;
$context = context_course::instance($courseid);
self::$managesetting = array();
if ($courseid != SITEID && has_capability('moodle/grade:manage', $context)) {
+ self::$managesetting['categoriesanditems'] = new grade_plugin_info('setup',
+ new moodle_url('/grade/edit/tree/index.php', array('id' => $courseid)),
+ get_string('categoriesanditems', 'grades'));
self::$managesetting['coursesettings'] = new grade_plugin_info('coursesettings',
new moodle_url('/grade/edit/settings/index.php', array('id'=>$courseid)),
get_string('coursegradesettings', 'grades'));
- self::$managesetting['setup'] = new grade_plugin_info('setup',
- new moodle_url('/grade/edit/tree/index.php', array('id' => $courseid)),
- get_string('setupgradeslayout', 'grades'));
+ }
+ if (self::$gradereportpreferences === null) {
+ self::get_plugins_reports($courseid);
+ }
+ if (self::$gradereportpreferences) {
+ self::$managesetting = array_merge(self::$managesetting, self::$gradereportpreferences);
}
return self::$managesetting;
}
// Add link to preferences tab if such a page exists
if (file_exists($plugindir.'/preferences.php')) {
$url = new moodle_url('/grade/report/'.$plugin.'/preferences.php', array('id'=>$courseid));
- $gradepreferences[$plugin] = new grade_plugin_info($plugin, $url, $pluginstr);
+ $gradepreferences[$plugin] = new grade_plugin_info($plugin, $url,
+ get_string('mypreferences', 'grades') . ': ' . $pluginstr);
}
}
if (count($gradereports) == 0) {
self::$gradereportpreferences = $gradepreferences;
return self::$gradereports;
}
- /**
- * Returns an array of grade plugin report preferences for plugin reports that
- * support preferences
- * @param int $courseid
- * @return array
- */
- public static function get_plugins_report_preferences($courseid) {
- if (self::$gradereportpreferences !== null) {
- return self::$gradereportpreferences;
- }
- self::get_plugins_reports($courseid);
- return self::$gradereportpreferences;
- }
+
/**
* Get information on scales
* @param int $courseid
$string['calculationview'] = 'View calculation';
$string['cannotaccessgroup'] = 'Can not access grades of selected group, sorry.';
$string['categories'] = 'Categories';
+$string['categoriesanditems'] = 'Categories and items';
$string['category'] = 'Category';
$string['categoryedit'] = 'Edit category';
$string['categoryname'] = 'Category name';
$string['editoutcome'] = 'Edit outcome';
$string['editoutcomes'] = 'Edit outcomes';
$string['editscale'] = 'Edit scale';
+$string['edittree'] = 'Setup';
$string['editverbose'] = 'Edit {$a->category} {$a->itemmodule} {$a->itemname}';
$string['enableajax'] = 'Enable AJAX';
$string['enableajax_help'] = 'Adds a layer of AJAX functionality to the grader report, simplifying and speeding up common operations. Depends on Javascript being switched on at the user\'s browser level.';
$string['setpreferences'] = 'Set preferences';
$string['setting'] = 'Setting';
$string['settings'] = 'Settings';
-$string['setupgradeslayout'] = 'Set up grades layout';
$string['setweights'] = 'Set weights';
$string['showanalysisicon'] = 'Show grade analysis icon';
$string['showanalysisicon_desc'] = 'Whether to show grade analysis icon by default. If the activity module supports it, the grade analysis icon links to a page with more detailed explanation of the grade and how it was obtained.';
// Deprecated since Moodle 2.8
-$string['categoriesanditems'] = 'Setup';
$string['categoriesedit'] = 'Edit setup';
-$string['edittree'] = 'Setup';
$string['fullview'] = 'Full view';
$string['simpleview'] = 'Simple view';