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 * Definitions of constants for gradebook 19 * 20 * @package core_grades 21 * @category grade 22 * @copyright 2007 Nicolas Connault 23 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 24 */ 25 26defined('MOODLE_INTERNAL') || die(); 27 28// Category aggregation types 29 30/** 31 * GRADE_AGGREGATE_MEAN - Use the category mean for grade aggregation. 32 */ 33define('GRADE_AGGREGATE_MEAN', 0); 34 35/** 36 * GRADE_AGGREGATE_MEDIAN - Use the category median for grade aggregation. 37 */ 38define('GRADE_AGGREGATE_MEDIAN', 2); 39 40/** 41 * GRADE_AGGREGATE_MIN - Use the category minimum grade for grade aggregation. 42 */ 43define('GRADE_AGGREGATE_MIN', 4); 44 45/** 46 * GRADE_AGGREGATE_MAX - Use the category maximum grade for grade aggregation. 47 */ 48define('GRADE_AGGREGATE_MAX', 6); 49 50/** 51 * GRADE_AGGREGATE_MEDIAN - Use the category mode for grade aggregation. 52 */ 53define('GRADE_AGGREGATE_MODE', 8); 54 55/** 56 * GRADE_AGGREGATE_WEIGHTED_MEAN - Use a weighted mean of grades in the category for grade aggregation. Weights can be manually set. 57 */ 58define('GRADE_AGGREGATE_WEIGHTED_MEAN', 10); 59 60/** 61 * GRADE_AGGREGATE_WEIGHTED_MEAN2 - Use a simple weighted mean of grades in the category for grade aggregation. 62 */ 63define('GRADE_AGGREGATE_WEIGHTED_MEAN2', 11); 64 65/** 66 * GRADE_AGGREGATE_EXTRACREDIT_MEAN - Use the category mean for grade aggregation and include support for extra credit. 67 */ 68define('GRADE_AGGREGATE_EXTRACREDIT_MEAN', 12); 69 70/** 71 * GRADE_AGGREGATE_WEIGHTED_MEAN2 - Use Natural in the category for grade aggregation. 72 */ 73define('GRADE_AGGREGATE_SUM', 13); 74 75// Grade types 76 77/** 78 * GRADE_TYPE_NONE - Ungraded. 79 */ 80define('GRADE_TYPE_NONE', 0); 81 82/** 83 * GRADE_TYPE_NONE - The grade is a numeric value 84 */ 85define('GRADE_TYPE_VALUE', 1); 86 87/** 88 * GRADE_TYPE_NONE - The grade is a value from the set of values available in a grade scale. 89 */ 90define('GRADE_TYPE_SCALE', 2); 91 92/** 93 * GRADE_TYPE_NONE - Feedback only. 94 */ 95define('GRADE_TYPE_TEXT', 3); 96 97 98// grade_update() return status 99 100/** 101 * GRADE_UPDATE_OK - Grade updated completed successfully. 102 */ 103define('GRADE_UPDATE_OK', 0); 104 105/** 106 * GRADE_UPDATE_FAILED - Grade updated failed. 107 */ 108define('GRADE_UPDATE_FAILED', 1); 109 110/** 111 * GRADE_UPDATE_MULTIPLE - Grade update failed because there are multiple grade items with the same itemnumber for this activity. 112 */ 113define('GRADE_UPDATE_MULTIPLE', 2); 114 115/** 116 * GRADE_UPDATE_DELETED - Grade item cannot be updated as it is locked 117 */ 118define('GRADE_UPDATE_ITEM_LOCKED', 4); 119 120 121// Grade tables history tracking actions 122 123/** 124 * GRADE_HISTORY_INSERT - A grade item was inserted 125 */ 126define('GRADE_HISTORY_INSERT', 1); 127 128/** 129 * GRADE_HISTORY_UPDATE - A grade item was updated 130 */ 131define('GRADE_HISTORY_UPDATE', 2); 132 133/** 134 * GRADE_HISTORY_INSERT - A grade item was deleted 135 */ 136define('GRADE_HISTORY_DELETE', 3); 137 138// Display style constants 139 140/** 141 * GRADE_DISPLAY_TYPE_DEFAULT - Grade display type can be set at 3 levels: grade_item, course setting and site. Use the display type from the higher level. 142 */ 143define('GRADE_DISPLAY_TYPE_DEFAULT', 0); 144 145/** 146 * GRADE_DISPLAY_TYPE_REAL - Display the grade as a decimal number. 147 */ 148define('GRADE_DISPLAY_TYPE_REAL', 1); 149 150/** 151 * GRADE_DISPLAY_TYPE_PERCENTAGE - Display the grade as a percentage. 152 */ 153define('GRADE_DISPLAY_TYPE_PERCENTAGE', 2); 154 155/** 156 * GRADE_DISPLAY_TYPE_LETTER - Display the grade as a letter grade. For example, A, B, C, D or F. 157 */ 158define('GRADE_DISPLAY_TYPE_LETTER', 3); 159 160/** 161 * GRADE_DISPLAY_TYPE_REAL_PERCENTAGE - Display the grade as a decimal number and a percentage. 162 */ 163define('GRADE_DISPLAY_TYPE_REAL_PERCENTAGE', 12); 164 165/** 166 * GRADE_DISPLAY_TYPE_REAL_LETTER - Display the grade as a decimal number and a letter grade. 167 */ 168define('GRADE_DISPLAY_TYPE_REAL_LETTER', 13); 169 170/** 171 * GRADE_DISPLAY_TYPE_LETTER_REAL - Display the grade as a letter grade and a decimal number. 172 */ 173define('GRADE_DISPLAY_TYPE_LETTER_REAL', 31); 174 175/** 176 * GRADE_DISPLAY_TYPE_LETTER_PERCENTAGE - Display the grade as a letter grade and a percentage. 177 */ 178define('GRADE_DISPLAY_TYPE_LETTER_PERCENTAGE', 32); 179 180/** 181 * GRADE_DISPLAY_TYPE_PERCENTAGE_LETTER - Display the grade as a percentage and a letter grade. 182 */ 183define('GRADE_DISPLAY_TYPE_PERCENTAGE_LETTER', 23); 184 185/** 186 * GRADE_DISPLAY_TYPE_PERCENTAGE_REAL - Display the grade as a percentage and a decimal number. 187 */ 188define('GRADE_DISPLAY_TYPE_PERCENTAGE_REAL', 21); 189 190/** 191 * GRADE_REPORT_AGGREGATION_POSITION_FIRST - Display the course totals before the individual activity grades 192 */ 193define('GRADE_REPORT_AGGREGATION_POSITION_FIRST', 0); 194 195/** 196 * GRADE_REPORT_AGGREGATION_POSITION_LAST - Display the course totals after the individual activity grades 197 */ 198define('GRADE_REPORT_AGGREGATION_POSITION_LAST', 1); 199 200// What to do if category or course total contains a hidden item 201 202/** 203 * GRADE_REPORT_HIDE_TOTAL_IF_CONTAINS_HIDDEN - If the category or course total contains a hidden item hide the total from students. 204 */ 205define('GRADE_REPORT_HIDE_TOTAL_IF_CONTAINS_HIDDEN', 0); 206 207/** 208 * GRADE_REPORT_SHOW_TOTAL_IF_CONTAINS_HIDDEN - If the category or course total contains a hidden item show the total to students minus grades from the hidden items. 209 */ 210define('GRADE_REPORT_SHOW_TOTAL_IF_CONTAINS_HIDDEN', 1); 211 212/** 213 * GRADE_REPORT_SHOW_REAL_TOTAL_IF_CONTAINS_HIDDEN - If the category or course total contains a hidden item show students the real total including marks from hidden items. 214 */ 215define('GRADE_REPORT_SHOW_REAL_TOTAL_IF_CONTAINS_HIDDEN', 2); 216 217/** 218 * GRADE_REPORT_PREFERENCE_DEFAULT - Use the setting from site preferences. 219 */ 220define('GRADE_REPORT_PREFERENCE_DEFAULT', 'default'); 221 222/** 223 * GRADE_REPORT_PREFERENCE_INHERIT - Inherit the setting value from the parent. 224 */ 225define('GRADE_REPORT_PREFERENCE_INHERIT', 'inherit'); // means inherit from parent 226 227/** 228 * GRADE_REPORT_PREFERENCE_UNUSED - Unused constant. 229 */ 230define('GRADE_REPORT_PREFERENCE_UNUSED', -1); 231 232/** 233 * GRADE_REPORT_MEAN_ALL - Include all grade items including those where the student hasn't received a grade when calculating the mean. 234 */ 235define('GRADE_REPORT_MEAN_ALL', 0); 236 237/** 238 * GRADE_REPORT_MEAN_GRADED - Only include grade items where the student has a grade when calculating the mean. 239 */ 240define('GRADE_REPORT_MEAN_GRADED', 1); 241 242/** 243 * GRADE_NAVMETHOD_DROPDOWN - Display a drop down box to allow navigation within the gradebook 244 */ 245define('GRADE_NAVMETHOD_DROPDOWN', 0); 246 247/** 248 * GRADE_NAVMETHOD_TABS - Display tabs to allow navigation within the gradebook 249 */ 250define('GRADE_NAVMETHOD_TABS', 1); 251 252/** 253 * GRADE_NAVMETHOD_TABS - Display both a drop down and tabs to allow navigation within the gradebook 254 */ 255define('GRADE_NAVMETHOD_COMBO', 2); 256 257/** 258 * GRADE_MIN_MAX_FROM_GRADE_ITEM - Get the grade min/max from the grade item. 259 */ 260define('GRADE_MIN_MAX_FROM_GRADE_ITEM', 1); 261 262/** 263 * GRADE_MIN_MAX_FROM_GRADE_GRADE - Get the grade min/max from the grade grade. 264 */ 265define('GRADE_MIN_MAX_FROM_GRADE_GRADE', 2); 266 267/** 268 * The component to store grade files. 269 */ 270define('GRADE_FILE_COMPONENT', 'grade'); 271 272/** 273 * The file area to store the associated grade_grades feedback files. 274 */ 275define('GRADE_FEEDBACK_FILEAREA', 'feedback'); 276 277/** 278 * The file area to store the associated grade_grades_history feedback files. 279 */ 280define('GRADE_HISTORY_FEEDBACK_FILEAREA', 'historyfeedback'); 281