Moodle PHP Documentation 4.4
Moodle 4.4.1 (Build: 20240610) (db07c09afc5)
|
Class providing an API for the overview report building and displaying. More...
Public Member Functions | |
__construct ($userid, $gpr, $context) | |
Constructor. | |
fill_table ($activitylink=false, $studentcoursesonly=false) | |
Fill the table for displaying. | |
get_lang_string ($strcode, $section=null) | |
First checks the cached language strings, then returns match if found, or uses get_string() to get it from the DB, caches it then returns it. | |
get_numusers ($groups=true, $users=false) | |
Fetches and returns a count of all the users that will be shown on this page. | |
get_pref ($pref, $objectid=null) | |
Given the name of a user preference (without grade_report_ prefix), locally saves then returns the value of that preference. | |
item_types () | |
Get grade item type names in a course to use in filter dropdown. | |
print_table ($return=false) | |
Prints or returns the HTML from the flexitable. | |
print_teacher_table () | |
Print a table to show courses that the user is able to grade. | |
process_action ($target, $action) | |
Processes a single action against a category, grade_item or grade. | |
process_data ($data) | |
Processes the data sent by the form (grades and feedbacks). | |
regrade_all_courses_if_needed (bool $frontend=false) | |
Regrades all courses if needed. | |
set_pref ($pref, $pref_value='default', $itemid=null) | |
Uses set_user_preferences() to update the value of a user preference. | |
setup_courses_data ($studentcoursesonly) | |
Set up the courses grades data for the report. | |
setup_table () | |
Prepares the headers and attributes of the flexitable. | |
setup_users () | |
Sets up this report's user criteria to restrict the selection of users to display. | |
show_only_active () | |
To check if we only need to include active enrolments. | |
ungraded_counts (bool $grouponly=false, bool $includehiddengrades=false, $showonlyactiveenrol=true) | |
Get ungraded grade items info and sum of all grade items in a course. | |
Static Public Member Functions | |
static | calculate_average (grade_item $gradeitem, array $info) |
Calculate average grade for a given grade item. | |
static | check_access ($systemcontext, $context, $personalcontext, $course, $userid) |
Check if the user can access the report. | |
static | get_additional_context (context_course $context, int $courseid, array $element, grade_plugin_return $gpr, string $mode, stdClass $templatecontext, bool $otherplugins=false) |
Add additional links specific to plugin. | |
static | get_gradable_users (int $courseid, ?int $groupid=null) |
Load a valid list of gradable users in a course. | |
static | supports_mygrades () |
This report supports being set as the 'grades' report. | |
static | viewed ($context, $courseid, $userid) |
Trigger the grade_report_viewed event. | |
Public Attributes | |
string | $baseurl |
base url for sorting by first/last name. | |
context | $context |
The context. | |
object | $course |
The course. | |
int | $courseid |
The courseid. | |
array | $courses |
The user's courses $courses. | |
int | $currentgroup |
The current group being displayed. | |
string | $currentgroupname |
The current groupname being displayed. | |
object | $gpr |
Grade plugin return tracking object. | |
string | $gradebookroles |
The roles for this report. | |
string | $group_selector |
A HTML select element used to select the current group. | |
int | $groupmode |
Current course group mode $groupmode. | |
grade_tree | $gtree |
The grade_tree object. | |
int | $page |
Current page (for paging). | |
string | $pbarurl |
base url for paging. | |
array | $prefs = array() |
User preferences related to this report. | |
array | $showrank |
Show student ranks within each course. | |
array | $showtotalsifcontainhidden = [] |
show course/category totals if they contain hidden items $showtotalsifcontainhidden | |
array | $studentcourseids |
An array of course ids that the user is a student in. | |
object | $table |
A flexitable to hold the data. | |
array | $teachercourses |
An array of courses that the user is a teacher in. | |
stdClass | $user |
To store user data $user. | |
Protected Member Functions | |
blank_hidden_total ($courseid, $course_item, $finalgrade) | |
Optionally blank out course/category totals if they contain any hidden items. | |
blank_hidden_total_and_adjust_bounds ($courseid, $course_item, $finalgrade) | |
Optionally blank out course/category totals if they contain any hidden items. | |
format_average_cell (grade_item $gradeitem, ?array $aggr=null, ?bool $shownumberofgrades=null) | |
Returns a row of grade items averages. | |
format_averages (array $ungradedcounts) | |
Returns a row of grade items averages. | |
get_sort_arrow (string $direction='down', ?moodle_url $sortlink=null) | |
Returns an arrow icon inside an tag, for the purpose of sorting a column. | |
get_users_search_sql (array $mappings, array $userfields) | |
Prepare SQL where clause and associated parameters for any user searching being performed. | |
setup_groups () | |
Sets up this object's group variables, mainly to restrict the selection of users to display. | |
Protected Attributes | |
string | $groupsql |
An SQL fragment used to add linking information to the group tables. | |
string | $groupwheresql |
An SQL constraint to append to the queries used by this object to build the report. | |
array | $groupwheresql_params = array() |
The ordered params for $groupwheresql $groupwheresql_params. | |
string | $preferences_page |
To store a link to preferences page $preferences_page. | |
int int | $userid = -1 |
If the user is wanting to show only one particular user their id will be placed here. | |
string string | $usersearch = '' |
If the user is wanting to search for a particular user within searchable fields their needle will be placed here. | |
string | $userwheresql |
An SQL constraint to append to the queries used by this object to build the report. | |
array | $userwheresql_params = array() |
The ordered params for $userwheresql $userwheresql_params. | |
Class providing an API for the overview report building and displaying.
@uses grade_report
grade_report_overview::__construct | ( | $userid, | |
$gpr, | |||
$context ) |
Constructor.
Sets local copies of user preferences and initialises grade_tree.
int | $userid | |
object | $gpr | grade plugin return tracking object |
string | $context |
|
protectedinherited |
Optionally blank out course/category totals if they contain any hidden items.
string | $courseid | the course id |
string | $course_item | an instance of grade_item |
string | $finalgrade | the grade for the course_item |
string | The new final grade |
|
protectedinherited |
Optionally blank out course/category totals if they contain any hidden items.
string | $courseid | the course id |
string | $course_item | an instance of grade_item |
string | $finalgrade | the grade for the course_item |
array[] | containing values for 'grade', 'grademax', 'grademin', 'aggregationstatus' and 'aggregationweight' |
|
staticinherited |
Calculate average grade for a given grade item.
grade_item | $gradeitem | Grade item |
array | $info | Ungraded grade items counts and report preferences. |
array | Average grade and meancount. |
|
static |
Check if the user can access the report.
stdClass | $systemcontext | system context |
stdClass | $context | course context |
stdClass | $personalcontext | personal context |
stdClass | $course | course object |
int | $userid | userid |
bool | true if the user can access the report |
grade_report_overview::fill_table | ( | $activitylink = false, | |
$studentcoursesonly = false ) |
Fill the table for displaying.
bool | $activitylink | If this report link to the activity report or the user report. |
bool | $studentcoursesonly | Only show courses that the user is a student of. |
|
protectedinherited |
Returns a row of grade items averages.
Override this method to change the format of the average cell.
grade_item | $gradeitem | Grade item. |
array | null | $aggr | Average value and meancount information. |
bool | null | $shownumberofgrades | Whether to show number of grades. |
html_table_cell | table cell. |
Reimplemented in grade_report_grader, and gradereport_user\report\user.
|
protectedinherited |
Returns a row of grade items averages.
array | $ungradedcounts | Ungraded grade items counts with report preferences. |
html_table_row | Row with averages |
|
staticinherited |
Add additional links specific to plugin.
context_course | $context | Course context |
int | $courseid | Course ID |
array | $element | An array representing an element in the grade_tree |
grade_plugin_return | $gpr | A grade_plugin_return object |
string | $mode | Mode (user or grade item) |
stdClass | $templatecontext | Template context |
bool | $otherplugins | If we need to insert links to other plugins |
?stdClass | Updated template context |
|
staticinherited |
Load a valid list of gradable users in a course.
int | $courseid | The course ID. |
int | null | $groupid | The group ID (optional). |
array | A list of enrolled gradable users. |
|
inherited |
First checks the cached language strings, then returns match if found, or uses get_string() to get it from the DB, caches it then returns it.
string | $strcode | |
string | $section | Optional language section |
string |
|
inherited |
Fetches and returns a count of all the users that will be shown on this page.
boolean | $groups | include groups limit |
boolean | $users | include users limit - default false, used for searching purposes |
int | Count of users |
|
inherited |
Given the name of a user preference (without grade_report_ prefix), locally saves then returns the value of that preference.
If the preference has already been fetched before, the saved value is returned. If the preference is not set at the User level, the $CFG equivalent is given (site default). Can be called statically, but then doesn't benefit from caching
string | $pref | The name of the preference (do not include the grade_report_ prefix) |
int | $objectid | An optional itemid or categoryid to check for a more fine-grained preference |
mixed | The value of the preference |
|
protectedinherited |
Returns an arrow icon inside an tag, for the purpose of sorting a column.
string | $direction | |
moodle_url | null | $sortlink |
|
protectedinherited |
Prepare SQL where clause and associated parameters for any user searching being performed.
This mostly came from core_user\table\participants_search with some slight modifications four our use case.
array | $mappings | Array of field mappings (fieldname => SQL code for the value) |
array | $userfields | An array that we cast from user profile fields to search within. |
array | SQL query data in the format ['where' => '', 'params' => []]. |
|
inherited |
Get grade item type names in a course to use in filter dropdown.
array | Item types. |
grade_report_overview::print_table | ( | $return = false | ) |
Prints or returns the HTML from the flexitable.
bool | $return | Whether or not to return the data instead of printing it directly. |
string |
grade_report_overview::process_action | ( | $target, | |
$action ) |
Processes a single action against a category, grade_item or grade.
string | $target | Sortorder |
string | $action | Which action to take (edit, delete etc...) |
Reimplemented from grade_report.
grade_report_overview::process_data | ( | $data | ) |
Processes the data sent by the form (grades and feedbacks).
array | $data |
bool | Success or Failure (array of errors). |
Reimplemented from grade_report.
grade_report_overview::regrade_all_courses_if_needed | ( | bool | $frontend = false | ) |
Regrades all courses if needed.
If $frontend is true, this may show a progress bar and redirect back to the page (possibly several times if multiple courses need it). Otherwise, it will not return until all the courses have been updated.
bool | $frontend | True if we are running front-end code and can safely redirect back |
|
inherited |
Uses set_user_preferences() to update the value of a user preference.
If 'default' is given as the value, the preference will be removed in favour of a higher-level preference.
string | $pref | The name of the preference. |
mixed | $pref_value | The value of the preference. |
int | $itemid | An optional itemid to which the preference will be assigned |
bool | Success or failure. |
grade_report_overview::setup_courses_data | ( | $studentcoursesonly | ) |
Set up the courses grades data for the report.
bool | $studentcoursesonly | Only show courses that the user is a student of. |
array | of course grades information |
|
protectedinherited |
Sets up this object's group variables, mainly to restrict the selection of users to display.
Reimplemented in gradereport_singleview\report\singleview.
|
inherited |
To check if we only need to include active enrolments.
bool |
Reimplemented in grade_report_summary.
|
static |
This report supports being set as the 'grades' report.
Reimplemented from grade_report.
|
inherited |
Get ungraded grade items info and sum of all grade items in a course.
bool | $grouponly | If we want to compute group average only. |
bool | $includehiddengrades | Include hidden grades. |
bool | $showonlyactiveenrol | Whether to only include active enrolments. |
array | Ungraded grade items counts with report preferences. |
|
static |
Trigger the grade_report_viewed event.
stdClass | $context | course context |
int | $courseid | course id |
int | $userid | user id |
|
inherited |
base url for sorting by first/last name.
$baseurl
|
inherited |
The context.
$context
|
inherited |
The course.
$course
|
inherited |
The courseid.
$courseid
|
inherited |
The current group being displayed.
$currentgroup
|
inherited |
The current groupname being displayed.
$currentgroupname
|
inherited |
Grade plugin return tracking object.
$gpr
|
inherited |
The roles for this report.
$gradebookroles
|
inherited |
A HTML select element used to select the current group.
$group_selector
|
protectedinherited |
An SQL fragment used to add linking information to the group tables.
$groupsql
|
protectedinherited |
An SQL constraint to append to the queries used by this object to build the report.
$groupwheresql
|
inherited |
The grade_tree object.
$gtree
|
inherited |
Current page (for paging).
$page
|
inherited |
base url for paging.
$pbarurl
|
inherited |
User preferences related to this report.
$prefs
array grade_report_overview::$showrank |
Show student ranks within each course.
$showrank
array grade_report_overview::$studentcourseids |
An array of course ids that the user is a student in.
$studentcourseids
object grade_report_overview::$table |
A flexitable to hold the data.
$table
array grade_report_overview::$teachercourses |
An array of courses that the user is a teacher in.
$teachercourses
|
protectedinherited |
If the user is wanting to show only one particular user their id will be placed here.
$userid
|
protectedinherited |
If the user is wanting to search for a particular user within searchable fields their needle will be placed here.
$usersearch
|
protectedinherited |
An SQL constraint to append to the queries used by this object to build the report.
$userwheresql