Moodle PHP Documentation 4.3
Moodle 4.3.5 (Build: 20240610) (7dcfaa79f78)
grade_scale Class Reference

Class representing a grade scale. More...

Inheritance diagram for grade_scale:
grade_object

Public Member Functions

 can_control_visibility ()
 Returns whether the grade object can control the visibility of the grades.
 
 can_delete ()
 Checks if scale can be deleted.
 
 compact_items ($items=NULL)
 Compacts (implodes) the array of items in $scale_items into a comma-separated string, $scale.
 
 delete ($source=null)
 Deletes this scale from the database.
 
 get_description ()
 Returns the formatted grade description with URLs converted.
 
 get_hidden ()
 Check a grade item hidden status.
 
 get_name ()
 Returns the most descriptive field for this object.
 
 get_nearest_item ($grade)
 When called on a loaded scale object (with a valid id) and given a float grade between the grademin and grademax, this method returns the scale item that falls closest to the float given (which is usually an average of several grades on a scale).
 
 get_record_data ()
 Returns object with fields and values that are defined in database.
 
 insert ($source=null, $isbulkupdate=false)
 Records this object in the Database, sets its id to the returned value, and returns that value.
 
 is_hidden ()
 Returns the current hidden state of this grade_item.
 
 is_hiddenuntil ()
 Check grade object hidden status.
 
 is_last_global_scale ()
 Checks if this is the last scale on the site.
 
 is_used ()
 Returns if scale used anywhere - activities, grade items, outcomes, etc.
 
 load_items ($items=NULL)
 Loads the scale's items into the $scale_items array.
 
 load_optional_fields ()
 Makes sure all the optional fields are loaded.
 
 set_hidden ($hidden, $cascade=false)
 Set a grade object hidden status.
 
 update ($source=null, $isbulkupdate=false)
 In addition to update() it also updates grade_outcomes_courses if needed.
 
 update_from_db ()
 Using this object's id field, fetches the matching record in the DB, and looks at each variable in turn.
 

Static Public Member Functions

static fetch ($params)
 Finds and returns a grade_scale instance based on params.
 
static fetch_all ($params)
 Finds and returns all grade_scale instances based on params.
 
static fetch_all_global ()
 Static function returning all global scales.
 
static fetch_all_helper ($table, $classname, $params)
 Factory method which uses the parameters to retrieve all matching instances from the database.
 
static fetch_all_local ($courseid)
 Static function returning all local course scales.
 
static set_properties (&$instance, $params)
 Given an associated array or object, cycles through each key/variable and assigns the value to the corresponding variable in this object.
 

Public Attributes

int $courseid
 The course this scale belongs to.
 
string $description
 A description for this scale.
 
int int $descriptionformat
 Identifier of the text format to be used.
 
int $hidden = 0
 0 if visible, 1 always hidden or date not visible until $hidden
 
int $id
 The PK.
 
string $name
 The name of the scale.
 
array $optional_fields = array()
 Array of optional fields with default values - usually long text information that is not always needed.
 
array $required_fields = array('id', 'courseid', 'userid', 'name', 'scale', 'description', 'descriptionformat', 'timemodified')
 Array of required table fields, must start with 'id'.
 
string $scale
 A string representation of the scale items (a comma-separated list).
 
array $scale_items = array()
 The items in this scale.
 
bool $standard
 Standard event.
 
string $table = 'scale'
 DB Table (used by grade_object).
 
int $timecreated
 The first time this grade_object was created.
 
int $timemodified
 The last time this grade_object was modified.
 
int $userid
 The ID of the user who created the scale $userid.
 

Protected Member Functions

 add_feedback_files (int $historyid=null)
 Handles adding feedback files in the gradebook.
 
 delete_feedback_files ()
 Handles deleting feedback files in the gradebook.
 
 notify_changed ($deleted)
 Called immediately after the object data has been inserted, updated, or deleted in the database.
 
 update_feedback_files (int $historyid=null)
 Handles updating feedback files in the gradebook.
 

Static Protected Member Functions

static fetch_helper ($table, $classname, $params)
 Factory method which uses the parameters to retrieve matching instances from the database.
 

Detailed Description

Class representing a grade scale.

It is responsible for handling its DB representation, modifying and returning its metadata.

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

Member Function Documentation

◆ add_feedback_files()

grade_object::add_feedback_files ( int $historyid = null)
protectedinherited

Handles adding feedback files in the gradebook.

Parameters
int | null$historyid

Reimplemented in grade_grade.

◆ can_control_visibility()

grade_object::can_control_visibility ( )
inherited

Returns whether the grade object can control the visibility of the grades.

Return values
bool

Reimplemented in grade_item.

◆ can_delete()

grade_scale::can_delete ( )

Checks if scale can be deleted.

Return values
bool

◆ compact_items()

grade_scale::compact_items ( $items = NULL)

Compacts (implodes) the array of items in $scale_items into a comma-separated string, $scale.

There are three ways to achieve this:

  1. No argument given: The $scale_items array is already loaded and imploded to a string of items.
  2. An array is given and is imploded into a string of items.
  3. A string of items is given and saved directly as the $scale variable. NOTE: This method is the exact reverse of load_items, and their input/output should be interchangeable. However, because load_items() trims the whitespace around the items, when the string is reconstructed these whitespaces will be missing. This is not an issue, but should be kept in mind when comparing the two strings.
Parameters
mixed$itemsCould be null, a string or an array. The method behaves differently for each case.
Return values
arrayThe resulting string of scale items or null if the method failed to produce one.

◆ delete()

grade_scale::delete ( $source = null)

Deletes this scale from the database.

Parameters
string$sourcefrom where was the object deleted (mod/forum, manual, etc.)
Return values
boolsuccess

Reimplemented from grade_object.

◆ delete_feedback_files()

grade_object::delete_feedback_files ( )
protectedinherited

Handles deleting feedback files in the gradebook.

Reimplemented in grade_grade.

◆ fetch()

static grade_scale::fetch ( $params)
static

Finds and returns a grade_scale instance based on params.

Parameters
array$paramsassociative arrays varname=>value
Return values
objectgrade_scale instance or false if none found.

Reimplemented from grade_object.

◆ fetch_all()

static grade_scale::fetch_all ( $params)
static

Finds and returns all grade_scale instances based on params.

Parameters
array$paramsassociative arrays varname=>value
Return values
arrayarray of grade_scale instances or false if none found.

Reimplemented from grade_object.

◆ fetch_all_global()

static grade_scale::fetch_all_global ( )
static

Static function returning all global scales.

Return values
object

◆ fetch_all_helper()

static grade_object::fetch_all_helper ( $table,
$classname,
$params )
staticinherited

Factory method which uses the parameters to retrieve all matching instances from the database.

Parameters
string$tableThe table to retrieve from
string$classnameThe name of the class to instantiate
array$paramsAn array of conditions like $fieldname => $fieldvalue
Return values
array|boolArray of object instances or false if not found

◆ fetch_all_local()

static grade_scale::fetch_all_local ( $courseid)
static

Static function returning all local course scales.

Parameters
int$courseidThe course ID
Return values
arrayReturns an array of grade_scale instances

◆ fetch_helper()

static grade_object::fetch_helper ( $table,
$classname,
$params )
staticprotectedinherited

Factory method which uses the parameters to retrieve matching instances from the database.

Parameters
string$tableThe table to retrieve from
string$classnameThe name of the class to instantiate
array$paramsAn array of conditions like $fieldname => $fieldvalue
Return values
mixedAn object instance or false if not found

◆ get_description()

grade_scale::get_description ( )

Returns the formatted grade description with URLs converted.

Return values
string

◆ get_hidden()

grade_object::get_hidden ( )
inherited

Check a grade item hidden status.

Return values
int0 means visible, 1 hidden always, a timestamp means "hidden until"

Reimplemented in grade_grade.

◆ get_name()

grade_scale::get_name ( )

Returns the most descriptive field for this object.

This is a standard method used when we do not know the exact type of an object.

Return values
stringname

◆ get_nearest_item()

grade_scale::get_nearest_item ( $grade)

When called on a loaded scale object (with a valid id) and given a float grade between the grademin and grademax, this method returns the scale item that falls closest to the float given (which is usually an average of several grades on a scale).

If the float falls below 1 but above 0, it will be rounded up to 1.

Parameters
float$grade
Return values
string

◆ get_record_data()

grade_object::get_record_data ( )
inherited

Returns object with fields and values that are defined in database.

Return values
stdClass

◆ insert()

grade_scale::insert ( $source = null,
$isbulkupdate = false )

Records this object in the Database, sets its id to the returned value, and returns that value.

If successful this function also fetches the new object data from database and stores it in object properties.

Parameters
string$sourcefrom where was the object inserted (mod/forum, manual, etc.)
bool$isbulkupdateIf bulk grade update is happening.
Return values
intPK ID if successful, false otherwise

Reimplemented from grade_object.

◆ is_hidden()

grade_object::is_hidden ( )
inherited

Returns the current hidden state of this grade_item.

This depends on the grade object hidden setting and the current time if hidden is set to a "hidden until" timestamp

Return values
boolCurrent hidden state

Reimplemented in grade_grade.

◆ is_hiddenuntil()

grade_object::is_hiddenuntil ( )
inherited

Check grade object hidden status.

Return values
boolTrue if a "hidden until" timestamp is set, false if grade object is set to always visible or always hidden.

Reimplemented in grade_grade.

◆ is_last_global_scale()

grade_scale::is_last_global_scale ( )

Checks if this is the last scale on the site.

Return values
bool

◆ is_used()

grade_scale::is_used ( )

Returns if scale used anywhere - activities, grade items, outcomes, etc.

Return values
bool

◆ load_items()

grade_scale::load_items ( $items = NULL)

Loads the scale's items into the $scale_items array.

There are three ways to achieve this:

  1. No argument given: The $scale string is already loaded and exploded to an array of items.
  2. A string is given: A comma-separated list of items is exploded into an array of items.
  3. An array of items is given and saved directly as the array of items for this scale.
Parameters
mixed$itemsCould be null, a string or an array. The method behaves differently for each case.
Return values
arrayThe resulting array of scale items or null if the method failed to produce one.

◆ load_optional_fields()

grade_object::load_optional_fields ( )
inherited

Makes sure all the optional fields are loaded.

If id present, meaning the instance exists in the database, then data will be fetched from the database. Defaults are used for new instances.

◆ notify_changed()

grade_object::notify_changed ( $deleted)
protectedinherited

Called immediately after the object data has been inserted, updated, or deleted in the database.

Default does nothing, can be overridden to hook in special behaviour.

Parameters
bool$deleted

Reimplemented in grade_category, and grade_item.

◆ set_hidden()

grade_object::set_hidden ( $hidden,
$cascade = false )
inherited

Set a grade object hidden status.

Parameters
int$hidden0 means visiable, 1 means hidden always, a timestamp means "hidden until"
bool$cascadeIgnored

Reimplemented in grade_category, grade_grade, and grade_item.

◆ set_properties()

static grade_object::set_properties ( & $instance,
$params )
staticinherited

Given an associated array or object, cycles through each key/variable and assigns the value to the corresponding variable in this object.

Parameters
grade_object$instanceThe object to set the properties on
array$paramsAn array of properties to set like $propertyname => $propertyvalue
Return values
array|stdClassEither an associative array or an object containing property name, property value pairs

Reimplemented in grade_category.

◆ update()

grade_scale::update ( $source = null,
$isbulkupdate = false )

In addition to update() it also updates grade_outcomes_courses if needed.

Parameters
string$sourcefrom where was the object inserted
bool$isbulkupdateIf bulk grade update is happening.
Return values
boolsuccess

Reimplemented from grade_object.

◆ update_feedback_files()

grade_object::update_feedback_files ( int $historyid = null)
protectedinherited

Handles updating feedback files in the gradebook.

Parameters
int | null$historyid

Reimplemented in grade_grade.

◆ update_from_db()

grade_object::update_from_db ( )
inherited

Using this object's id field, fetches the matching record in the DB, and looks at each variable in turn.

If the DB has different data, the db's data is used to update the object. This is different from the update() function, which acts on the DB record based on the object.

Return values
boolTrue if successful

Member Data Documentation

◆ $courseid

int grade_scale::$courseid

The course this scale belongs to.

$courseid

◆ $description

string grade_scale::$description

A description for this scale.

$description

◆ $descriptionformat

int int grade_scale::$descriptionformat

Identifier of the text format to be used.

$descriptionformat

◆ $id

int grade_object::$id
inherited

The PK.

$id

◆ $name

string grade_scale::$name

The name of the scale.

$name

◆ $optional_fields

array grade_object::$optional_fields = array()
inherited

Array of optional fields with default values - usually long text information that is not always needed.

If you want to create an instance without optional fields use: new grade_object($only_required_fields, false); $optional_fields

◆ $required_fields

array grade_scale::$required_fields = array('id', 'courseid', 'userid', 'name', 'scale', 'description', 'descriptionformat', 'timemodified')

Array of required table fields, must start with 'id'.

$required_fields

◆ $scale

string grade_scale::$scale

A string representation of the scale items (a comma-separated list).

$scale

◆ $scale_items

array grade_scale::$scale_items = array()

The items in this scale.

$scale_items

◆ $standard

bool grade_scale::$standard

Standard event.

$standard

◆ $table

string grade_scale::$table = 'scale'

DB Table (used by grade_object).

$table

◆ $timecreated

int grade_object::$timecreated
inherited

The first time this grade_object was created.

$timecreated

◆ $timemodified

int grade_object::$timemodified
inherited

The last time this grade_object was modified.

$timemodified


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