Moodle PHP Documentation 5.1
Moodle 5.1dev (Build: 20250530) (c39b7370636)
assign_grading_table Class Reference

Extends table_sql to provide a table of assignment submissions. More...

Inheritance diagram for assign_grading_table:

Public Member Functions

 __construct (assign $assignment, $perpage, $filter, $rowoffset, $quickgrading, $downloadfilename=null)
 overridden constructor keeps a reference to the assignment class that is displaying this table
 
 can_view_all_grades ()
 Return things to the renderer.
 
 col_allocatedmarker (stdClass $row)
 list current marker
 
 col_allowsubmissionsfromdate (stdClass $row)
 Format a column of data for display.
 
 col_cutoffdate (stdClass $row)
 Format a column of data for display.
 
 col_duedate (stdClass $row)
 Format a column of data for display.
 
 col_finalgrade (stdClass $row)
 Format a column of data for display.
 
 col_fullname ($row)
 Format a user record for display (link to profile).
 
 col_grade (stdClass $row)
 Format a column of data for display.
 
 col_gradecanbechanged (stdClass $row)
 Format a column of data for display.
 
 col_grademax (stdClass $row)
 Format a column of data for display.
 
 col_outcomes (stdClass $row)
 Format a list of outcomes.
 
 col_recordid (stdClass $row)
 Add a column with an ID that uniquely identifies this user in this assignment.
 
 col_scale ($row)
 For download only - list all the valid options for this custom scale.
 
 col_select (stdClass $row)
 Insert a checkbox for selecting the current row for batch operations.
 
 col_status (stdClass $row)
 Format a column of data for display.
 
 col_team (stdClass $row)
 Get the team info for this user.
 
 col_timemarked (stdClass $row)
 Format a column of data for display.
 
 col_timesubmitted (stdClass $row)
 Format a column of data for display.
 
 col_workflowstate ($row)
 For download only - list current marking workflow state.
 
 col_workflowstatus (stdClass $row)
 list current marking workflow state
 
 display_grade ($grade, $editable, $userid, $modified, float $deductedmark=0)
 Display a grade with scales etc.
 
 finish_html ()
 Finish the HTML output.
 
 format_row ($row)
 Before adding each row to the table make sure rownum is incremented.
 
 get_assignment_name ()
 Return things to the renderer.
 
 get_column_data ($columnname)
 Using the current filtering and sorting - load all rows and return a single column from them.
 
 get_course_context ()
 Return things to the renderer.
 
 get_course_id ()
 Return things to the renderer.
 
 get_course_module_id ()
 Return things to the renderer.
 
 get_paging_bar ()
 Returns the html for the paging bar.
 
 get_paging_selector ()
 Returns the html for the paging selector.
 
 get_row_class ($row)
 Add the userid to the row class so it can be updated via ajax.
 
 get_rows_per_page ()
 Return the number of rows to display on a single page.
 
 get_sort_columns ()
 Always return a valid sort - even if the userid column is missing.
 
 other_cols ($colname, $row)
 Format the submission and feedback columns.
 
 setup ()
 Overides setup to ensure it will only run a single time.
 
 start_html ()
 Start the HTML output.
 
 submissions_enabled ()
 Return things to the renderer.
 

Public Attributes

 $actions = array()
 
 $caneditsubmission = $this->assignment->can_edit_submission($row->id, $USER->id)
 
 $edit = ''
 
return $edit
 
 $flags = $row
 
 $hasattempts = $isunlimited || $row->attemptnumber < $this->assignment->get_instance()->maxattempts - 1
 
 $hassubmission = !empty($row->status)
 
if( $this->assignment->is_any_submission_plugin_enabled()) if(($this->assignment->get_instance() ->duedate||$this->assignment->get_instance() ->cutoffdate) && $this->hasgrantextension) if( $row->status==ASSIGN_SUBMISSION_STATUS_SUBMITTED &&$this->assignment->get_instance() ->submissiondrafts) if($row->status==ASSIGN_SUBMISSION_STATUS_DRAFT && $this->assignment->get_instance() ->submissiondrafts && $caneditsubmission && $submissionsopen && $row->id !=$USER->id $ismanual ) = $this->assignment->get_instance()->attemptreopenmethod == ASSIGN_ATTEMPT_REOPEN_METHOD_MANUAL
 
 $isunlimited = $this->assignment->get_instance()->maxattempts == ASSIGN_UNLIMITED_ATTEMPTS
 
if($ismanual && $hassubmission && $notreopened && $hasattempts $menu ) = new action_menu()
 
 $noimage = null
 
 $notreopened = $hassubmission && $row->status != ASSIGN_SUBMISSION_STATUS_REOPENED
 
 $submission = $row
 
if($this->assignment->get_instance() ->teamsubmission) $submissionsopen
 
 $url = new moodle_url('/mod/assign/view.php', $urlparams)
 
 $urlparams
 
replacement __FUNCTION__
 
replacement : null
 Format a user picture for display.
 
replacement : null
 Format a column of data for display.
 
if($this->assignment->is_blind_marking()) else
 
if(! $row->grade) else
 
foreach($actions as $action) $menu prioritise = true
 
replacement reason: 'Picture column is merged with fullname column' )] public function col_picture(stdClass $row) { core\deprecation::emit_deprecation_if_present([$this
 
replacement since: '4.5'
 

Protected Member Functions

 get_group_and_submission ($userid, &$group, &$submission, $attemptnumber)
 Use a static cache to try and reduce DB calls.
 
 show_hide_link ($column, $index)
 Override the table show_hide_link to not show for select column.
 

Detailed Description

Extends table_sql to provide a table of assignment submissions.

License
http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later

Constructor & Destructor Documentation

◆ __construct()

assign_grading_table::__construct ( assign $assignment,
$perpage,
$filter,
$rowoffset,
$quickgrading,
$downloadfilename = null )

overridden constructor keeps a reference to the assignment class that is displaying this table

Parameters
assign$assignmentThe assignment class
int$perpagehow many per page
string$filterThe current filter
int$rowoffsetFor showing a subsequent page of results
bool$quickgradingIs this table wrapped in a quickgrading form?
string$downloadfilename

Member Function Documentation

◆ can_view_all_grades()

assign_grading_table::can_view_all_grades ( )

Return things to the renderer.

Return values
boolCan this user view all grades (the gradebook)

◆ col_allocatedmarker()

assign_grading_table::col_allocatedmarker ( stdClass $row)

list current marker

Parameters
stdClass$row- The row of data
Return values
idthe user->id of the marker.

◆ col_allowsubmissionsfromdate()

assign_grading_table::col_allowsubmissionsfromdate ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_cutoffdate()

assign_grading_table::col_cutoffdate ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_duedate()

assign_grading_table::col_duedate ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_finalgrade()

assign_grading_table::col_finalgrade ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_fullname()

assign_grading_table::col_fullname ( $row)

Format a user record for display (link to profile).

Parameters
stdClass$row
Return values
string

◆ col_grade()

assign_grading_table::col_grade ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_gradecanbechanged()

assign_grading_table::col_gradecanbechanged ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_grademax()

assign_grading_table::col_grademax ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_outcomes()

assign_grading_table::col_outcomes ( stdClass $row)

Format a list of outcomes.

Parameters
stdClass$row
Return values
string

◆ col_recordid()

assign_grading_table::col_recordid ( stdClass $row)

Add a column with an ID that uniquely identifies this user in this assignment.

Parameters
stdClass$row
Return values
string

◆ col_scale()

assign_grading_table::col_scale ( $row)

For download only - list all the valid options for this custom scale.

Parameters
stdClass$row- The row of data
Return values
stringA list of valid options for the current scale

◆ col_select()

assign_grading_table::col_select ( stdClass $row)

Insert a checkbox for selecting the current row for batch operations.

Parameters
stdClass$row
Return values
string

◆ col_status()

assign_grading_table::col_status ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_team()

assign_grading_table::col_team ( stdClass $row)

Get the team info for this user.

Parameters
stdClass$row
Return values
stringThe team name

◆ col_timemarked()

assign_grading_table::col_timemarked ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_timesubmitted()

assign_grading_table::col_timesubmitted ( stdClass $row)

Format a column of data for display.

Parameters
stdClass$row
Return values
string

◆ col_workflowstate()

assign_grading_table::col_workflowstate ( $row)

For download only - list current marking workflow state.

Parameters
stdClass$row- The row of data
Return values
stringThe current marking workflow state

◆ col_workflowstatus()

assign_grading_table::col_workflowstatus ( stdClass $row)

list current marking workflow state

Parameters
stdClass$row
Return values
string

◆ display_grade()

assign_grading_table::display_grade ( $grade,
$editable,
$userid,
$modified,
float $deductedmark = 0 )

Display a grade with scales etc.

Parameters
string$grade
boolean$editable
int$useridThe user id of the user this grade belongs to
int$modifiedTimestamp showing when the grade was last modified
float$deductedmarkThe deducted mark if penalty is applied
Return values
stringThe formatted grade

◆ finish_html()

assign_grading_table::finish_html ( )

Finish the HTML output.

This function is essentially a copy of the parent function except the paging bar not being rendered.

Return values
void

◆ format_row()

assign_grading_table::format_row ( $row)

Before adding each row to the table make sure rownum is incremented.

Parameters
array$rowrow of data from db used to make one row of the table.
Return values
arrayone row for the table

◆ get_assignment_name()

assign_grading_table::get_assignment_name ( )

Return things to the renderer.

Return values
stringthe assignment name

◆ get_column_data()

assign_grading_table::get_column_data ( $columnname)

Using the current filtering and sorting - load all rows and return a single column from them.

Parameters
string$columnnameThe name of the raw column data
Return values
arrayof data

◆ get_course_context()

assign_grading_table::get_course_context ( )

Return things to the renderer.

Return values
stdClassThe course context

◆ get_course_id()

assign_grading_table::get_course_id ( )

Return things to the renderer.

Return values
intthe course id

◆ get_course_module_id()

assign_grading_table::get_course_module_id ( )

Return things to the renderer.

Return values
intthe course module id

◆ get_group_and_submission()

assign_grading_table::get_group_and_submission ( $userid,
& $group,
& $submission,
$attemptnumber )
protected

Use a static cache to try and reduce DB calls.

Parameters
int$useridThe user id for this submission
int$groupThe groupid (returned)
stdClass | false$submissionThe stdClass submission or false (returned)
int$attemptnumberReturn a specific attempt number (-1 for latest)

◆ get_paging_bar()

assign_grading_table::get_paging_bar ( )

Returns the html for the paging bar.

Return values
string

◆ get_paging_selector()

assign_grading_table::get_paging_selector ( )

Returns the html for the paging selector.

Return values
string

◆ get_row_class()

assign_grading_table::get_row_class ( $row)

Add the userid to the row class so it can be updated via ajax.

Parameters
stdClass$rowThe row of data
Return values
stringThe row class

◆ get_rows_per_page()

assign_grading_table::get_rows_per_page ( )

Return the number of rows to display on a single page.

Return values
intThe number of rows per page

◆ get_sort_columns()

assign_grading_table::get_sort_columns ( )

Always return a valid sort - even if the userid column is missing.

Return values
arraycolumn name => SORT_... constant.

◆ other_cols()

assign_grading_table::other_cols ( $colname,
$row )

Format the submission and feedback columns.

Parameters
string$colnameThe column name
stdClass$rowThe submission row
Return values
mixedstring or NULL

◆ show_hide_link()

assign_grading_table::show_hide_link ( $column,
$index )
protected

Override the table show_hide_link to not show for select column.

Parameters
string$columnthe column name, index into various names.
int$indexnumerical index of the column.
Return values
stringHTML fragment.

◆ start_html()

assign_grading_table::start_html ( )

Start the HTML output.

This function is essentially a copy of the parent function except the paging bar not being rendered.

Return values
void

◆ submissions_enabled()

assign_grading_table::submissions_enabled ( )

Return things to the renderer.

Return values
boolDoes this assignment accept submissions

Member Data Documentation

◆ $submissionsopen

if ( $this->assignment->get_instance() ->teamsubmission) assign_grading_table::$submissionsopen
Initial value:
= $this->assignment->submissions_open($row->id,
true,
$submission,
$flags,
$this->gradinginfo)

◆ $urlparams

assign_grading_table::$urlparams
Initial value:
= array('id' => $this->assignment->get_course_module()->id,
'rownum' => 0,
'action' => 'grader')

◆ __pad0__

replacement assign_grading_table::__pad0__

Format a user picture for display.

Parameters
stdClass$row
Return values
string
Deprecated
since Moodle 4.5
Todo
Final deprecation in Moodle 6.0. See MDL-82336.

◆ __pad1__

replacement assign_grading_table::__pad1__

Format a column of data for display.

Parameters
stdClass$row
Return values
string
Deprecated
since Moodle 4.5
Todo
Final deprecation in Moodle 6.0. See MDL-82336.

◆ else [1/2]

if ( $this->assignment->is_blind_marking()) assign_grading_table::else
Initial value:
{
$urlparams['userid'] = $row->userid

◆ else [2/2]

if (! $row->grade) assign_grading_table::else
Initial value:
{
$description = get_string('updategrade', 'assign')

The documentation for this class was generated from the following file: