Moodle PHP Documentation 4.5
Moodle 4.5dev (Build: 20240606) (d3ae1391abe)
course_enrolment_table Class Reference

Main course enrolment table. More...

Inheritance diagram for course_enrolment_table:
html_table renderable course_enrolment_other_users_table course_enrolment_users_table

Public Member Functions

 __construct (course_enrolment_manager $manager)
 Constructs the table.
 
 get_bulk_user_enrolment_operations ()
 Returns an array of bulk operations.
 
 get_combined_url_params ()
 Returns an array of URL params for both the table and the manager.
 
 get_field_sort_direction ($field)
 Gets the sort direction for a given field.
 
 get_manual_enrol_buttons ()
 Returns an array of enrol_user_buttons that are created by the different enrolment plugins available.
 
 get_paging_bar ()
 Gets the paging bar instance for this table.
 
 get_url_params ()
 Gets the params that will need to be added to the url in order to return to this page.
 
 has_bulk_user_enrolment_operations ()
 Returns true fi the table is aware of any bulk operations that can be performed on users selected from the currently filtered enrolment plugins.
 
 initialise_javascript ()
 
 set_bulk_user_enrolment_operations (array $bulkoperations)
 Sets the bulk operations for this table.
 
 set_fields ($fields, $output)
 Sets the fields for this table.
 
 set_total_users ($totalusers)
 Sets the total number of users.
 
 set_users (array $users)
 Sets the users for this table.
 

Public Attributes

array $align
 An array of column alignments.
 
array $attributes = array()
 Attributes of HTML attributes for the.
 
string $caption
 Caption for the table, typically a title.
 
bool $captionhide = false
 Whether to hide the table's caption from sighted users.
 
int $cellpadding = null
 
int $cellspacing = null
 Spacing between cells, in pixels.
 
string $class
 class name to add to this html table.
 
array $colclasses
 An array of classes to add to every cell in a particular column, space-separated string.
 
array $data = []
 Array of arrays or html_table_row objects containing the data.
 
array $head
 An array of headings.
 
array $headspan
 An array that can be used to make a heading span multiple columns.
 
string $id = null
 Value to use for the id attribute of the table.
 
bool $otherusers
 To store status of Other users page.
 
int $page = 0
 The current page, starting from 0.
 
int $pages = 0
 The total number of pages.
 
int $perpage = 0
 The number of items to display per page.
 
bool $responsive = true
 Whether to make the table to be scrolled horizontally with ease.
 
array $rowclasses
 Array of classes to add to particular rows, space-separated string.
 
array $size
 The value is used as CSS 'size' property.
 
string $sort
 The sort field for this table, should be one of course_enrolment_table\$sortablefields.
 
string $sortdirection
 The sort direction, either ASC or DESC.
 
string $summary
 Description of the contents for screen readers.
 
string $tablealign = null
 
string $width = null
 
array $wrap
 An array of wrapping information.
 
const DEFAULTPERPAGE = 100
 The default number of items per page.
 
const DEFAULTSORT = 'lastname'
 The default sort, options are course_enrolment_table\$sortablefields Default: lastname.
 
const DEFAULTSORTDIRECTION = 'ASC'
 The default direction Default: ASC.
 
const PAGEVAR = 'page'
 The get/post variable that is used to identify the page.
 
const PERPAGEVAR = 'perpage'
 The get/post variable to is used to identify the number of items to display per page.
 
const SORTDIRECTIONVAR = 'dir'
 The get/post variable that is used to identify the sort direction for the table.
 
const SORTVAR = 'sort'
 The get/post variable that is used to identify the sort field for the table.
 

Protected Member Functions

 get_direction_icon ($output, $field)
 Gets the direction icon for the sortable field within this table.
 

Protected Attributes

array $bulkoperations = array()
 An array of bulk user enrolment operations.
 
array $fields = array()
 The fields for this table.
 
course_enrolment_manager $manager
 The course manager this table is displaying for.
 
paging_bar $pagingbar = null
 The paging bar that controls the paging for this table.
 
int $totalusers = null
 The total number of users enrolled in the course.
 
array $users = null
 The users enrolled in this course.
 

Static Protected Attributes

static array $sortablefields
 An array of sortable fields.
 

Detailed Description

Main course enrolment table.

This table is used to display the enrolment information for a course. It requires that a course enrolment manager be provided during constuct with provides all of the information for the table. The control then produces the table, the paging, and the associated JS actions for the page.

@subpackage enrol

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

Constructor & Destructor Documentation

◆ __construct()

course_enrolment_table::__construct ( course_enrolment_manager $manager)

Constructs the table.

Parameters
course_enrolment_manager$manager

Reimplemented in course_enrolment_other_users_table.

Member Function Documentation

◆ get_bulk_user_enrolment_operations()

course_enrolment_table::get_bulk_user_enrolment_operations ( )

Returns an array of bulk operations.

Return values
array

◆ get_combined_url_params()

course_enrolment_table::get_combined_url_params ( )

Returns an array of URL params for both the table and the manager.

Return values
array

◆ get_direction_icon()

course_enrolment_table::get_direction_icon ( $output,
$field )
protected

Gets the direction icon for the sortable field within this table.

Parameters
core_renderer$output
string$field
Return values
string

◆ get_field_sort_direction()

course_enrolment_table::get_field_sort_direction ( $field)

Gets the sort direction for a given field.

Parameters
string$field
Return values
stringASC or DESC

◆ get_manual_enrol_buttons()

course_enrolment_table::get_manual_enrol_buttons ( )

Returns an array of enrol_user_buttons that are created by the different enrolment plugins available.

Return values
array

◆ get_paging_bar()

course_enrolment_table::get_paging_bar ( )

Gets the paging bar instance for this table.

Return values
paging_bar

◆ get_url_params()

course_enrolment_table::get_url_params ( )

Gets the params that will need to be added to the url in order to return to this page.

Return values
array

◆ has_bulk_user_enrolment_operations()

course_enrolment_table::has_bulk_user_enrolment_operations ( )

Returns true fi the table is aware of any bulk operations that can be performed on users selected from the currently filtered enrolment plugins.

Return values
bool

◆ set_bulk_user_enrolment_operations()

course_enrolment_table::set_bulk_user_enrolment_operations ( array $bulkoperations)

Sets the bulk operations for this table.

Parameters
array$bulkoperations

◆ set_fields()

course_enrolment_table::set_fields ( $fields,
$output )

Sets the fields for this table.

These get added to the tables head as well.

You can also use a multi dimensional array for this to have multiple fields in a single column

Parameters
array$fieldsAn array of fields to set
string$output

◆ set_total_users()

course_enrolment_table::set_total_users ( $totalusers)

Sets the total number of users.

Parameters
int$totalusers

◆ set_users()

course_enrolment_table::set_users ( array $users)

Sets the users for this table.

Parameters
array$users
Return values
void

Member Data Documentation

◆ $align

array html_table::$align
inherited

An array of column alignments.

The value is used as CSS 'text-align' property. Therefore, possible values are 'left', 'right', 'center' and 'justify'. Specify 'right' or 'left' from the perspective of a left-to-right (LTR) language. For RTL, the values are flipped automatically.

Examples of usage: $t->align = array(null, 'right'); or $t->align[1] = 'right';

◆ $attributes

array html_table::$attributes = array()
inherited

Attributes of HTML attributes for the.

◆ $caption

string html_table::$caption
inherited

Caption for the table, typically a title.

Example of usage: $t->caption = "TV Guide";

◆ $captionhide

bool html_table::$captionhide = false
inherited

Whether to hide the table's caption from sighted users.

Example of usage: $t->caption = "TV Guide"; $t->captionhide = true;

◆ $cellpadding

int html_table::$cellpadding = null
inherited
Deprecated
since Moodle 2.0. Styling should be in the CSS. Padding on each cell, in pixels

◆ $cellspacing

int html_table::$cellspacing = null
inherited

Spacing between cells, in pixels.

Deprecated
since Moodle 2.0. Styling should be in the CSS.

◆ $colclasses

array html_table::$colclasses
inherited

An array of classes to add to every cell in a particular column, space-separated string.

Class 'cell' is added automatically by the renderer. Classes 'c0' or 'c1' are added automatically for every odd or even column, respectively. Class 'lastcol' is added automatically for all last cells in a row.

Example of usage: $t->colclasses = array(null, 'grade');

◆ $data

array html_table::$data = []
inherited

Array of arrays or html_table_row objects containing the data.

Alternatively, if you have $head specified, the string 'hr' (for horizontal ruler) can be used instead of an array of cells data resulting in a divider rendered.

Example of usage with array of arrays: $row1 = array('Harry Potter', '76 '); $row2 = array('Hermione Granger', '100 '); $t->data = array($row1, $row2);

Example with array of html_table_row objects: (used for more fine-grained control) $cell1 = new html_table_cell(); $cell1->text = 'Harry Potter'; $cell1->colspan = 2; $row1 = new html_table_row(); $row1->cells[] = $cell1; $cell2 = new html_table_cell(); $cell2->text = 'Hermione Granger'; $cell3 = new html_table_cell(); $cell3->text = '100 '; $row2 = new html_table_row(); $row2->cells = array($cell2, $cell3); $t->data = array($row1, $row2);

◆ $head

array html_table::$head
inherited

An array of headings.

The n-th array item is used as a heading of the n-th column. For more control over the rendering of the headers, an array of html_table_cell objects can be passed instead of an array of strings.

Example of usage: $t->head = array('Student', 'Grade');

◆ $headspan

array html_table::$headspan
inherited

An array that can be used to make a heading span multiple columns.

In this example, html_table:$data is supposed to have three columns. For the first two columns, the same heading is used. Therefore, html_table::$head should consist of two items.

Example of usage: $t->headspan = array(2,1);

◆ $responsive

bool html_table::$responsive = true
inherited

Whether to make the table to be scrolled horizontally with ease.

Make table responsive across all viewports.

◆ $rowclasses

array html_table::$rowclasses
inherited

Array of classes to add to particular rows, space-separated string.

Class 'lastrow' is added automatically for the last row in the table.

Example of usage: $t->rowclasses[9] = 'tenth'

◆ $size

array html_table::$size
inherited

The value is used as CSS 'size' property.

Examples of usage: $t->size = array('50', '50'); or $t->size[1] = '120px';

◆ $sortablefields

array course_enrolment_table::$sortablefields
staticprotected
Initial value:
= array('firstname', 'lastname', 'firstnamephonetic', 'lastnamephonetic', 'middlename',
'alternatename', 'username', 'idnumber', 'email', 'phone1', 'phone2',
'institution', 'department', 'lastaccess', 'lastcourseaccess')

An array of sortable fields.

◆ $summary

string html_table::$summary
inherited

Description of the contents for screen readers.

The "summary" attribute on the "table" element is not supported in HTML5. Consider describing the structure of the table in a "caption" element or in a "figure" element containing the table; or, simplify the structure of the table so that no description is needed.

Deprecated
since Moodle 3.9.

◆ $tablealign

string html_table::$tablealign = null
inherited
Deprecated
since Moodle 2.0. Styling should be in the CSS. Alignment for the whole table. Can be 'right', 'left' or 'center' (default).

◆ $width

string html_table::$width = null
inherited
Deprecated
since Moodle 2.0. Styling should be in the CSS. Width of the table, percentage of the page preferred.

◆ $wrap

array html_table::$wrap
inherited

An array of wrapping information.

The only possible value is 'nowrap' that sets the CSS property 'white-space' to the value 'nowrap' in the given column.

Example of usage: $t->wrap = array(null, 'nowrap');

◆ DEFAULTPERPAGE

const course_enrolment_table::DEFAULTPERPAGE = 100

The default number of items per page.

Default: 100

◆ PAGEVAR

const course_enrolment_table::PAGEVAR = 'page'

The get/post variable that is used to identify the page.

Default: page

◆ PERPAGEVAR

const course_enrolment_table::PERPAGEVAR = 'perpage'

The get/post variable to is used to identify the number of items to display per page.

Default: perpage

◆ SORTDIRECTIONVAR

const course_enrolment_table::SORTDIRECTIONVAR = 'dir'

The get/post variable that is used to identify the sort direction for the table.

Default: dir

◆ SORTVAR

const course_enrolment_table::SORTVAR = 'sort'

The get/post variable that is used to identify the sort field for the table.

Default: sort


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