Moodle PHP Documentation 4.4
Moodle 4.4.1 (Build: 20240610) (db07c09afc5)
core\context\coursecat Class Reference
Inheritance diagram for core\context\coursecat:
core\context

Public Member Functions

 __get ($name)
 Magic method getter, redirects to read only values.
 
 __isset ($name)
 Full support for isset on our magic read only properties.
 
 __set ($name, $value)
 Magic setter method, we do not want anybody to modify properties from the outside.
 
 __unset ($name)
 All properties are read only, sorry.
 
 delete ()
 Delete the context content and the context record itself.
 
 delete_capabilities ()
 Unassign all capabilities from a context.
 
 delete_content ()
 Delete all data linked to content, do not delete the context record itself.
 
 get_capabilities (string $sort=self::DEFAULT_CAPABILITY_SORT)
 Returns array of relevant context capability records.
 
 get_child_contexts ()
 Returns immediate child contexts of category and all subcategories, children of subcategories and courses are not returned.
 
 get_context_name ($withprefix=true, $short=false, $escape=true)
 Returns human readable context identifier.
 
 get_course_context ($strict=true)
 Is this context part of any course? If yes return course context.
 
 get_parent_context ()
 Returns parent context.
 
 get_parent_context_ids ($includeself=false)
 Returns parent context ids of this context in reversed order, i.e.
 
 get_parent_context_paths ($includeself=false)
 Returns parent context paths of this context.
 
 get_parent_contexts ($includeself=false)
 Returns parent contexts of this context in reversed order, i.e.
 
 get_url ()
 Returns the most relevant URL for this context.
 
 getIterator ()
 Create an iterator because magic vars can't be seen by 'foreach'.
 
 is_child_of (context $possibleparent, bool $includeself)
 Determine if the current context is a child of the possible parent.
 
 is_locked ()
 Whether the current context is locked.
 
 is_parent_of (context $possiblechild, bool $includeself)
 Determine if the current context is a parent of the possible child.
 
 mark_dirty ()
 Mark a context as dirty (with timestamp) so as to force reloading of the context.
 
 reload_if_dirty ()
 Reset all cached permissions and definitions if the necessary.
 
 reset_paths ($rebuild=true)
 Remove all context path info and optionally rebuild it.
 
 set_locked (bool $locked)
 Set whether this context has been locked or not.
 
 update_moved (context $newparent)
 Update context info after moving context in the tree structure.
 

Static Public Member Functions

static get_level_name ()
 Returns human readable context level name.
 
static get_possible_parent_levels ()
 Returns list of all possible parent context levels.
 
static get_short_name ()
 Returns short context name.
 
static instance ($categoryid, $strictness=MUST_EXIST)
 Returns course category context instance.
 
static instance_by_id ($id, $strictness=MUST_EXIST)
 Get a context instance as an object, from a given context id.
 

Public Attributes

int const LEVEL = 40
 numeric context level value matching legacy CONTEXT_COURSECAT
 

Protected Member Functions

 __construct (stdClass $record)
 Please use core\context\coursecat\instance($coursecatid) if you need the instance of context.
 

Static Protected Member Functions

static build_paths ($force)
 Rebuild context paths and depths at course category context level.
 
static cache_add (context $context)
 Adds a context to the cache.
 
static cache_get ($contextlevel, $instance)
 Gets a context from the cache.
 
static cache_get_by_id ($id)
 Gets a context from the cache based on its id.
 
static cache_remove (context $context)
 Removes a context from the cache.
 
static create_instance_from_record (stdClass $record)
 This function is also used to work around 'protected' keyword problems in context_helper.
 
static create_level_instances ()
 Create missing context instances at course category context level.
 
static get_behat_reference_columns ()
 Returns list of columns that can be used from behat to look up context by reference.
 
static get_cleanup_sql ()
 Returns sql necessary for purging of stale context instances.
 
static get_compatible_role_archetypes ()
 Returns list of all role archetypes that are compatible with role assignments in context level.
 
static get_instance_table ()
 Returns context instance database name.
 
static insert_context_record ($contextlevel, $instanceid, $parentpath)
 Utility method for context creation.
 
static merge_context_temp_table ()
 Copy prepared new contexts from temp table to context table, we do this in db specific way for perf reasons only.
 
static preload_from_record (stdClass $rec)
 Preloads context information from db record and strips the cached info.
 
static reset_caches ()
 Resets the cache to remove all data.
 

Protected Attributes

int $_contextlevel
 The context level Can be accessed publicly through $context->contextlevel One of CONTEXT_* e.g.
 
int $_depth
 The depth of the context in relation to parent contexts Can be accessed publicly through $context->depth.
 
int $_id
 The context id Can be accessed publicly through $context->id.
 
int $_instanceid
 Id of the item this context is related to e.g.
 
int $_locked
 Whether this context is locked or not.
 
string $_path
 The path to the context always starting from the system context Can be accessed publicly through $context->path.
 
string const DEFAULT_CAPABILITY_SORT = 'contextlevel, component, name'
 Default sorting of capabilities in {.
 

Static Protected Attributes

static int $cache_count = 0
 Context count Why do we do count contexts? Because count($array) is horribly slow for large arrays.
 
static array $cache_preloaded = array()
 Context caching info.
 
static context system $systemcontext = null
 The system context once initialised.
 

Detailed Description

License
https://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
Since
Moodle 4.2

Constructor & Destructor Documentation

◆ __construct()

core\context\coursecat::__construct ( stdClass $record)
protected

Please use core\context\coursecat\instance($coursecatid) if you need the instance of context.

Alternatively if you know only the context id use core\context\instance_by_id($contextid)

Parameters
stdClass$record

Reimplemented from core\context.

Member Function Documentation

◆ __get()

core\context::__get ( $name)
inherited

Magic method getter, redirects to read only values.

Parameters
string$name
Return values
mixed

◆ __isset()

core\context::__isset ( $name)
inherited

Full support for isset on our magic read only properties.

Parameters
string$name
Return values
bool

◆ __set()

core\context::__set ( $name,
$value )
inherited

Magic setter method, we do not want anybody to modify properties from the outside.

Parameters
string$name
mixed$value

◆ __unset()

core\context::__unset ( $name)
inherited

All properties are read only, sorry.

Parameters
string$name

◆ build_paths()

static core\context\coursecat::build_paths ( $force)
staticprotected

Rebuild context paths and depths at course category context level.

Parameters
bool$force

Reimplemented from core\context.

◆ cache_add()

static core\context::cache_add ( context $context)
staticprotectedinherited

Adds a context to the cache.

If the cache is full, discards a batch of older entries.

Parameters
context$contextNew context to add
Return values
void

◆ cache_get()

static core\context::cache_get ( $contextlevel,
$instance )
staticprotectedinherited

Gets a context from the cache.

Parameters
int$contextlevelContext level
int$instanceInstance ID
Return values
context|boolContext or false if not in cache

◆ cache_get_by_id()

static core\context::cache_get_by_id ( $id)
staticprotectedinherited

Gets a context from the cache based on its id.

Parameters
int$idContext ID
Return values
context|boolContext or false if not in cache

◆ cache_remove()

static core\context::cache_remove ( context $context)
staticprotectedinherited

Removes a context from the cache.

Parameters
context$contextContext object to remove
Return values
void

◆ create_instance_from_record()

static core\context::create_instance_from_record ( stdClass $record)
staticprotectedinherited

This function is also used to work around 'protected' keyword problems in context_helper.

Parameters
stdClass$record
Return values
contextinstance

◆ create_level_instances()

static core\context\coursecat::create_level_instances ( )
staticprotected

Create missing context instances at course category context level.

Reimplemented from core\context.

◆ get_behat_reference_columns()

static core\context\coursecat::get_behat_reference_columns ( )
staticprotected

Returns list of columns that can be used from behat to look up context by reference.

Return values
arraylist of column names from instance table

Reimplemented from core\context.

◆ get_capabilities()

core\context\coursecat::get_capabilities ( string $sort = self::DEFAULT_CAPABILITY_SORT)

Returns array of relevant context capability records.

Parameters
string$sort
Return values
array

Reimplemented from core\context.

◆ get_child_contexts()

core\context\coursecat::get_child_contexts ( )

Returns immediate child contexts of category and all subcategories, children of subcategories and courses are not returned.

Return values
array

Reimplemented from core\context.

◆ get_cleanup_sql()

static core\context\coursecat::get_cleanup_sql ( )
staticprotected

Returns sql necessary for purging of stale context instances.

Return values
stringcleanup SQL

Reimplemented from core\context.

◆ get_compatible_role_archetypes()

static core\context\coursecat::get_compatible_role_archetypes ( )
staticprotected

Returns list of all role archetypes that are compatible with role assignments in context level.

Since
Moodle 4.2
Return values
int[]

Reimplemented from core\context.

◆ get_context_name()

core\context\coursecat::get_context_name ( $withprefix = true,
$short = false,
$escape = true )

Returns human readable context identifier.

Parameters
boolean$withprefixwhether to prefix the name of the context with Category
boolean$shortdoes not apply to course categories
boolean$escapeWhether the returned name of the context is to be HTML escaped or not.
Return values
stringthe human readable context name.

Reimplemented from core\context.

◆ get_course_context()

core\context::get_course_context ( $strict = true)
inherited

Is this context part of any course? If yes return course context.

Parameters
bool$stricttrue means throw exception if not found, false means return false if not found
Return values
context\course|falsecontext of the enclosing course, null if not found or exception

Reimplemented in core\context\block, core\context\course, and core\context\module.

◆ get_instance_table()

static core\context\coursecat::get_instance_table ( )
staticprotected

Returns context instance database name.

Return values
string|nulltable name for all levels except system.

Reimplemented from core\context.

◆ get_level_name()

static core\context\coursecat::get_level_name ( )
static

Returns human readable context level name.

Return values
stringthe human readable context level name.

◆ get_parent_context()

core\context::get_parent_context ( )
inherited

Returns parent context.

Return values
context|false

◆ get_parent_context_ids()

core\context::get_parent_context_ids ( $includeself = false)
inherited

Returns parent context ids of this context in reversed order, i.e.

parent first, then grand parent, etc.

Parameters
bool$includeselftrue means include self too
Return values
arrayof context ids

◆ get_parent_context_paths()

core\context::get_parent_context_paths ( $includeself = false)
inherited

Returns parent context paths of this context.

Parameters
bool$includeselftrue means include self too
Return values
arrayof context paths

◆ get_parent_contexts()

core\context::get_parent_contexts ( $includeself = false)
inherited

Returns parent contexts of this context in reversed order, i.e.

parent first, then grand parent, etc.

Parameters
bool$includeselftrue means include self too
Return values
arrayof context instances

◆ get_possible_parent_levels()

static core\context\coursecat::get_possible_parent_levels ( )
static

Returns list of all possible parent context levels.

Since
Moodle 4.2
Return values
int[]

Reimplemented from core\context.

◆ get_short_name()

static core\context\coursecat::get_short_name ( )
static

Returns short context name.

Since
Moodle 4.2
Return values
string

Reimplemented from core\context.

◆ get_url()

core\context\coursecat::get_url ( )

Returns the most relevant URL for this context.

Return values
moodle_url

Reimplemented from core\context.

◆ getIterator()

core\context::getIterator ( )
inherited

Create an iterator because magic vars can't be seen by 'foreach'.

Now we can convert context object to array using convert_to_array(), and feed it properly to json_encode().

◆ insert_context_record()

static core\context::insert_context_record ( $contextlevel,
$instanceid,
$parentpath )
staticprotectedinherited

Utility method for context creation.

Parameters
int$contextlevel
int$instanceid
string$parentpath
Return values
stdClasscontext record

◆ instance()

static core\context\coursecat::instance ( $categoryid,
$strictness = MUST_EXIST )
static

Returns course category context instance.

Parameters
int$categoryidid from {course_categories} table
int$strictness
Return values
coursecat|falsecontext instance

◆ instance_by_id()

static core\context::instance_by_id ( $id,
$strictness = MUST_EXIST )
staticinherited

Get a context instance as an object, from a given context id.

Parameters
int$idcontext id
int$strictnessIGNORE_MISSING means compatible mode, false returned if record not found, debug message if more found; MUST_EXIST means throw exception if no record found
Return values
context|boolthe context object or false if not found

◆ is_child_of()

core\context::is_child_of ( context $possibleparent,
bool $includeself )
inherited

Determine if the current context is a child of the possible parent.

Parameters
context$possibleparent
bool$includeselfWhether to check the current context
Return values
bool

◆ is_locked()

core\context::is_locked ( )
inherited

Whether the current context is locked.

Return values
bool

◆ is_parent_of()

core\context::is_parent_of ( context $possiblechild,
bool $includeself )
inherited

Determine if the current context is a parent of the possible child.

Parameters
context$possiblechild
bool$includeselfWhether to check the current context
Return values
bool

◆ preload_from_record()

static core\context::preload_from_record ( stdClass $rec)
staticprotectedinherited

Preloads context information from db record and strips the cached info.

Parameters
stdClass$rec
Return values
context|null(modifies $rec)

Reimplemented in core\context_helper.

◆ reload_if_dirty()

core\context::reload_if_dirty ( )
inherited

Reset all cached permissions and definitions if the necessary.

Return values
void

◆ reset_caches()

static core\context::reset_caches ( )
staticprotectedinherited

Resets the cache to remove all data.

Reimplemented in core\context_helper.

◆ reset_paths()

core\context::reset_paths ( $rebuild = true)
inherited

Remove all context path info and optionally rebuild it.

Parameters
bool$rebuild
Return values
void

◆ set_locked()

core\context::set_locked ( bool $locked)
inherited

Set whether this context has been locked or not.

Parameters
bool$locked
Return values
$this

Reimplemented in core\context\system.

◆ update_moved()

core\context::update_moved ( context $newparent)
inherited

Update context info after moving context in the tree structure.

Parameters
context$newparent
Return values
void

Member Data Documentation

◆ $_contextlevel

int core\context::$_contextlevel
protectedinherited

The context level Can be accessed publicly through $context->contextlevel One of CONTEXT_* e.g.

CONTEXT_COURSE, CONTEXT_MODULE

◆ $_instanceid

int core\context::$_instanceid
protectedinherited

Id of the item this context is related to e.g.

COURSE_CONTEXT => course.id Can be accessed publicly through $context->instanceid

◆ $_locked

int core\context::$_locked
protectedinherited

Whether this context is locked or not.

Can be accessed publicly through $context->locked.

◆ DEFAULT_CAPABILITY_SORT

string const core\context::DEFAULT_CAPABILITY_SORT = 'contextlevel, component, name'
protectedinherited

Default sorting of capabilities in {.

See also
get_capabilities}

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