Moodle APIs
3.8
Moodle 3.8.6 (Build: 20201109)
|
Search area base class for messages. More...
Public Member Functions | |
attach_files ($document) | |
Files related to the current document are attached, to the document object ready for indexing by Global Search. More... | |
check_access ($id) | |
Can the current user see the document. More... | |
get_area_id () | |
Returns the area id. More... | |
get_category_names () | |
Returns a list of category names associated with the area. More... | |
get_component_name () | |
Returns the moodle component name. More... | |
get_component_type () | |
Returns the component type. More... | |
get_config () | |
Returns all the search area configuration. More... | |
get_config_var_name () | |
Returns the config var name. More... | |
get_context_url (\core_search\document $doc) | |
Link to the conversation. More... | |
get_context_url (\core_search\document $doc) | |
Returns a url to the document context. More... | |
get_contexts_to_reindex () | |
Gets a list of all contexts to reindex when reindexing this search area. More... | |
get_doc_icon (\core_search\document $doc) | |
Returns an icon instance for the document. More... | |
get_doc_icon (document $doc) | |
Returns an icon instance for the document. More... | |
get_doc_url (\core_search\document $doc) | |
Link to the message. More... | |
get_doc_url (\core_search\document $doc) | |
Returns a url to the document, it might match self::get_context_url(). More... | |
get_document ($record, $options=array()) | |
Returns the document associated with this message record. More... | |
get_document_display_title (\core_search\document $doc) | |
Returns the document title to display. More... | |
get_document_recordset ($modifiedfrom=0, context $context=null) | |
Returns a recordset containing all items from this area, optionally within the given context, and including only items modifed from (>=) the specified time. More... | |
get_last_indexing_duration () | |
Gets the length of time spent indexing this area (the last time it was indexed). More... | |
get_recordset_by_timestamp ($modifiedfrom=0) | |
Returns a recordset ordered by modification date ASC. More... | |
get_search_fileareas () | |
Return the context info required to index files for this search area. More... | |
get_visible_name ($lazyload=false) | |
Returns the area visible name. More... | |
is_enabled () | |
Is the search component enabled by the system administrator? More... | |
set_enabled ($isenabled) | |
supports_get_document_recordset () | |
Checks if get_document_recordset is supported for this search area. More... | |
uses_file_indexing () | |
Returns true if this area uses file indexing. More... | |
Static Public Member Functions | |
static | get_levels () |
Returns context levels property. More... | |
static | get_settingnames () |
Return a list of all required setting names. More... | |
Protected Member Functions | |
get_course_level_context_restriction_sql (\context $context=null, $coursetable, $paramtype=SQL_PARAMS_QM) | |
Helper function that gets SQL useful for restricting a search query given a passed-in context, for data stored at course level. More... | |
get_current_other_users ($doc) | |
Sorting the current(user1) and other(user2) user in the conversation. More... | |
get_document_recordset_helper ($modifiedfrom, context $context=null, $userfield) | |
Helper function to implement get_document_recordset for subclasses. More... | |
Protected Attributes | |
string | $areaname = null |
The area name as defined in the class name. | |
string | $componentname = null |
The component frankenstyle name. | |
string | $componenttype = null |
The component type (core or the plugin type). | |
Static Protected Attributes | |
static array | $levels = [CONTEXT_USER] |
The context levels the search area is working on. | |
Search area base class for messages.
|
inherited |
Files related to the current document are attached, to the document object ready for indexing by Global Search.
The default implementation retrieves all files for the file areas returned by get_search_fileareas(). If you need to filter files to specific items per file area, you will need to override this method and explicitly provide the items.
document | $document | The current document |
void |
Reimplemented in core_search\base_activity, mod_forum\search\post, block_html\search\content, and mod_data\search\entry.
|
abstractinherited |
Can the current user see the document.
int | $id | The internal search area entity id. |
int | manager:ACCESS_xx constant |
Reimplemented in core_user\search\user, core_search\base_block, core_search\base_activity, mod_wiki\search\collaborative_page, mod_glossary\search\entry, mod_forum\search\post, mod_data\search\entry, mod_book\search\chapter, core_message\search\message_sent, core_message\search\message_received, core_course\search\section, core_course\search\customfield, and core_course\search\course.
|
inherited |
Returns the area id.
string |
core_message\search\base_message::get_category_names | ( | ) |
Returns a list of category names associated with the area.
array |
Reimplemented from core_search\base.
|
inherited |
Returns the moodle component name.
It might be the plugin name (whole frankenstyle name) or the core subsystem name.
string |
Reimplemented in core_user\search\user, core_course\search\section, core_course\search\customfield, and core_course\search\course.
|
inherited |
Returns the component type.
It might be a plugintype or 'core' for core subsystems.
string |
|
inherited |
Returns all the search area configuration.
array |
|
inherited |
Returns the config var name.
It depends on whether it is a moodle subsystem or a plugin as plugin-related config should remain in their own scope.
string | Config var path including the plugin (or component) and the varname |
core_message\search\base_message::get_context_url | ( | \core_search\document | $doc | ) |
|
abstractinherited |
Returns a url to the document context.
core_search\document | $doc |
moodle_url |
Reimplemented in core_search\base_block, and core_search\base_activity.
|
inherited |
Gets a list of all contexts to reindex when reindexing this search area.
The list should be returned in an order that is likely to be suitable when reindexing, for example with newer contexts first.
The default implementation simply returns the system context, which will result in reindexing everything in normal date order (oldest first).
Iterator | Iterator of contexts to reindex |
Reimplemented in core_search\base_mod, and core_search\base_block.
|
protectedinherited |
Helper function that gets SQL useful for restricting a search query given a passed-in context, for data stored at course level.
The SQL returned will be zero or more JOIN statements, surrounded by whitespace, which act as restrictions on the query based on the rows in a module table.
You can pass in a null or system context, which will both return an empty string and no params.
Returns an array with two nulls if there can be no results for a course within this context.
If named parameters are used, these will be named gclcrs0, gclcrs1, etc. The table aliases used in SQL also all begin with gclcrs, to avoid conflicts.
context | null | $context | Context to restrict the query |
string | $coursetable | Name of alias for course table e.g. 'c' |
int | $paramtype | Type of SQL parameters to use (default question mark) |
array | Array with SQL and parameters; both null if no need to query |
coding_exception | If called with invalid params |
|
protected |
Sorting the current(user1) and other(user2) user in the conversation.
core_search\document | $doc |
array() |
core_message\search\base_message::get_doc_icon | ( | \core_search\document | $doc | ) |
Returns an icon instance for the document.
core_search\document | $doc |
core_search |
|
inherited |
Returns an icon instance for the document.
core_search\document | $doc |
core_search |
Reimplemented in core_search\base_mod, and core_search\base_block.
core_message\search\base_message::get_doc_url | ( | \core_search\document | $doc | ) |
|
abstractinherited |
Returns a url to the document, it might match self::get_context_url().
core_search\document | $doc |
moodle_url |
Reimplemented in core_search\base_block, and core_search\base_activity.
core_message\search\base_message::get_document | ( | $record, | |
$options = array() |
|||
) |
Returns the document associated with this message record.
stdClass | $record | |
array | $options |
core_search |
Reimplemented from core_search\base.
Reimplemented in core_message\search\message_sent, and core_message\search\message_received.
|
inherited |
Returns the document title to display.
Allow to customize the document title string to display.
core_search\document | $doc |
string | Document title to display in the search results page |
|
inherited |
Returns a recordset containing all items from this area, optionally within the given context, and including only items modifed from (>=) the specified time.
The recordset must be ordered in ascending order of modified time.
Each record can include any data self::get_document might need. It must include an 'id' field,a unique identifier (in this area's scope) of a document to index in the search engine. If the indexed content field can contain embedded files, the 'id' value should match the filearea itemid.
The return value can be a recordset, null (if this area does not provide any results in the given context and there is no need to do a database query to find out), or false (if this facility is not currently supported by this search area).
If this function returns false, then:
The default implementation returns false, indicating that this facility is not supported and the older get_recordset_by_timestamp function should be used.
This function must accept all possible values for the $context parameter. For example, if you are implementing this function for the forum module, it should still operate correctly if called with the context for a glossary module, or for the HTML block. (In these cases where it will not return any data, it may return null.)
The $context parameter can also be null or the system context; both of these indicate that all data, without context restriction, should be returned.
int | $modifiedfrom | Return only records modified after this date |
context | null | $context | Context (null means no context restriction) |
moodle_recordset|null|false | Recordset / null if no results / false if not supported |
Reimplemented in core_user\search\user, core_search\base_block, core_search\base_activity, mod_wiki\search\collaborative_page, mod_survey\search\activity, mod_glossary\search\entry, mod_forum\search\post, mod_data\search\entry, mod_book\search\chapter, core_message\search\message_sent, core_message\search\message_received, core_course\search\section, core_course\search\customfield, and core_course\search\course.
|
protected |
Helper function to implement get_document_recordset for subclasses.
int | $modifiedfrom | Modified from date |
context | null | $context | Context or null |
string | $userfield | Name of user field (from or to) being considered |
moodle_recordset|null | Recordset or null if no results possible |
coding_exception | If context invalid |
|
inherited |
Gets the length of time spent indexing this area (the last time it was indexed).
int|bool | Time in seconds spent indexing this area last time, false if never indexed |
|
staticinherited |
Returns context levels property.
int |
|
inherited |
Returns a recordset ordered by modification date ASC.
Each record can include any data self::get_document might need but it must:
Since Moodle 3.4, subclasses should instead implement get_document_recordset, which has an additional context parameter. This function continues to work for implementations which haven't been updated, or where the context parameter is not required.
int | $modifiedfrom |
moodle_recordset |
|
inherited |
Return the context info required to index files for this search area.
Should be onerridden by each search area.
array |
Reimplemented in core_user\search\user, core_search\base_activity, mod_workshop\search\activity, mod_wiki\search\collaborative_page, mod_resource\search\activity, mod_page\search\activity, mod_lesson\search\activity, mod_glossary\search\entry, mod_forum\search\post, mod_folder\search\activity, mod_book\search\chapter, mod_assign\search\activity, core_course\search\section, and core_course\search\course.
|
staticinherited |
Return a list of all required setting names.
array |
|
inherited |
Returns the area visible name.
bool | $lazyload | Usually false, unless when in admin settings. |
string |
|
inherited |
Is the search component enabled by the system administrator?
bool |
|
inherited |
Checks if get_document_recordset is supported for this search area.
For many uses you can simply call get_document_recordset and see if it returns false, but this function is useful when you don't want to actually call the function right away.
|
inherited |
Returns true if this area uses file indexing.
bool |
Reimplemented in core_user\search\user, mod_workshop\search\activity, mod_wiki\search\collaborative_page, mod_wiki\search\activity, mod_url\search\activity, mod_survey\search\activity, mod_scorm\search\activity, mod_resource\search\activity, mod_quiz\search\activity, mod_page\search\activity, mod_lti\search\activity, mod_lesson\search\activity, mod_label\search\activity, mod_imscp\search\activity, mod_glossary\search\entry, mod_glossary\search\activity, mod_forum\search\post, mod_forum\search\activity, mod_folder\search\activity, mod_feedback\search\activity, mod_data\search\entry, mod_data\search\activity, mod_choice\search\activity, mod_chat\search\activity, mod_book\search\chapter, mod_book\search\activity, mod_assign\search\activity, core_course\search\section, core_course\search\course, and block_html\search\content.