Search moodle.org's
Developer Documentation

  • Bug fixes for general core bugs in 3.11.x will end 9 May 2022 (12 months).
  • Bug fixes for security issues in 3.11.x will end 14 November 2022 (18 months).
  • PHP version: minimum PHP 7.3.0 Note: minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is supported too.
  • Differences Between: [Versions 310 and 311] [Versions 35 and 311] [Versions 36 and 311] [Versions 37 and 311] [Versions 38 and 311] [Versions 39 and 311]

    Classes representing HTML elements, used by $OUTPUT methods Please see http://docs.moodle.org/en/Developement:How_Moodle_outputs_HTML for an overview.

    Copyright: 2009 Tim Hunt
    License: http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
    File Size: 5031 lines (165 kb)
    Included or required: 2 times
    Referenced: 0 times
    Includes or requires: 0 files

    Defines 36 classes

    renderable:: (0 methods):

    templatable:: (1 method):
      export_for_template()

    file_picker:: (1 method):
      __construct()

    user_picture:: (4 methods):
      __construct()
      fields()
      unalias()
      get_url()

    help_icon:: (3 methods):
      __construct()
      diag_strings()
      export_for_template()

    pix_icon_font:: (3 methods):
      __construct()
      is_mapped()
      export_for_template()

    pix_icon_fontawesome:: (0 methods):

    pix_icon:: (3 methods):
      __construct()
      export_for_template()
      export_for_pix()

    image_icon:: (0 methods):

    pix_emoticon:: (1 method):
      __construct()

    single_button:: (5 methods):
      __construct()
      add_confirm_action()
      add_action()
      set_attribute()
      export_for_template()

    single_select:: (7 methods):
      __construct()
      add_confirm_action()
      add_action()
      set_old_help_icon()
      set_help_icon()
      set_label()
      export_for_template()

    url_select:: (7 methods):
      __construct()
      set_old_help_icon()
      set_help_icon()
      set_label()
      clean_url()
      flatten_options()
      export_for_template()

    action_link:: (6 methods):
      __construct()
      add_action()
      add_class()
      has_class()
      get_icon_html()
      export_for_template()

    html_writer:: (28 methods):
      tag()
      start_tag()
      end_tag()
      empty_tag()
      nonempty_tag()
      attribute()
      attributes()
      img()
      random_id()
      link()
      checkbox()
      select_yes_no()
      select()
      select_option()
      select_optgroup()
      select_time()
      alist()
      input_hidden_params()
      script()
      table()
      label()
      add_class()
      div()
      start_div()
      end_div()
      span()
      start_span()
      end_span()

    js_writer:: (5 methods):
      function_call()
      function_call_with_Y()
      object_init()
      set_variable()
      event_handler()

    html_table:: (1 method):
      __construct()

    html_table_row:: (1 method):
      __construct()

    html_table_cell:: (1 method):
      __construct()

    paging_bar:: (3 methods):
      __construct()
      prepare()
      export_for_template()

    initials_bar:: (2 methods):
      __construct()
      export_for_template()

    block_contents:: (3 methods):
      __construct()
      add_class()
      is_fake()

    block_move_target:: (1 method):
      __construct()

    custom_menu_item:: (15 methods):
      __construct()
      add()
      remove_child()
      get_text()
      get_url()
      get_title()
      get_children()
      get_sort_order()
      get_parent()
      sort()
      has_children()
      set_text()
      set_title()
      set_url()
      export_for_template()

    custom_menu:: (4 methods):
      __construct()
      override_children()
      convert_text_to_menu_nodes()
      sort_custom_menu_items()

    tabobject:: (5 methods):
      __construct()
      set_selected()
      find()
      set_level()
      export_for_template()

    context_header:: (2 methods):
      __construct()
      format_button_images()

    tabtree:: (2 methods):
      __construct()
      export_for_template()

    action_menu:: (18 methods):
      __construct()
      set_action_label()
      set_menu_trigger()
      is_empty()
      initialise_js()
      add()
      add_primary_action()
      add_secondary_action()
      get_primary_actions()
      get_secondary_actions()
      set_owner_selector()
      set_alignment()
      get_align_string()
      set_constraint()
      do_not_enhance()
      will_be_enhanced()
      set_nowrap_on_items()
      export_for_template()

    action_menu_filler:: (1 method):
      __construct()

    action_menu_link:: (2 methods):
      __construct()
      export_for_template()

    action_menu_link_primary:: (1 method):
      __construct()

    action_menu_link_secondary:: (1 method):
      __construct()

    preferences_groups:: (1 method):
      __construct()

    preferences_group:: (1 method):
      __construct()

    progress_bar:: (9 methods):
      __construct()
      get_id()
      create()
      _update()
      estimate()
      update_full()
      update()
      restart()
      export_for_template()


    Interface: renderable  - X-Ref

    Interface marking other classes as suitable for renderer_base::render()

    Interface: templatable  - X-Ref

    Interface marking other classes having the ability to export their data for use by templates.

    export_for_template(renderer_base $output)   X-Ref
    Function to export the renderer data in a format that is suitable for a
    mustache template. This means:
    1. No complex types - only stdClass, array, int, string, float, bool
    2. Any additional info that is required for the template is pre-calculated (e.g. capability checks).

    return: stdClass|array
    param: renderer_base $output Used to do a final render of any components that need to be rendered for export.

    Class: file_picker  - X-Ref

    Data structure representing a file picker.

    __construct(stdClass $options)   X-Ref
    Constructs a file picker object.

    The following are possible options for the filepicker:
    - accepted_types  (*)
    - return_types    (FILE_INTERNAL)
    - env             (filepicker)
    - client_id       (uniqid)
    - itemid          (0)
    - maxbytes        (-1)
    - maxfiles        (1)
    - buttonname      (false)

    param: stdClass $options An object containing options for the file picker.

    Class: user_picture  - X-Ref

    Data structure representing a user picture.

    __construct(stdClass $user)   X-Ref
    User picture constructor.

    param: stdClass $user user record with at least id, picture, imagealt, firstname and lastname set.

    fields($tableprefix = '', array $extrafields = NULL, $idalias = 'id', $fieldprefix = '')   X-Ref
    Returns a list of required user fields, useful when fetching required user info from db.

    In some cases we have to fetch the user data together with some other information,
    the idalias is useful there because the id would otherwise override the main
    id of the result record. Please note it has to be converted back to id before rendering.

    return: string
    param: string $tableprefix name of database table prefix in query
    param: array $extrafields extra fields to be included in result (do not include TEXT columns because it would break SELECT DISTINCT in MSSQL and ORACLE)
    param: string $idalias alias of id field
    param: string $fieldprefix prefix to add to all columns in their aliases, does not apply to 'id'

    unalias(stdClass $record, array $extrafields = null, $idalias = 'id', $fieldprefix = '')   X-Ref
    Extract the aliased user fields from a given record

    Given a record that was previously obtained using {@link self::fields()} with aliases,
    this method extracts user related unaliased fields.

    return: stdClass object with unaliased user fields
    param: stdClass $record containing user picture fields
    param: array $extrafields extra fields included in the $record
    param: string $idalias alias of the id field
    param: string $fieldprefix prefix added to all columns in their aliases, does not apply to 'id'

    get_url(moodle_page $page, renderer_base $renderer = null)   X-Ref
    Works out the URL for the users picture.

    This method is recommended as it avoids costly redirects of user pictures
    if requests are made for non-existent files etc.

    return: moodle_url
    param: moodle_page $page
    param: renderer_base $renderer

    Class: help_icon  - X-Ref

    Data structure representing a help icon.

    __construct($identifier, $component)   X-Ref
    Constructor

    param: string $identifier string for help page title,
    param: string $component

    diag_strings()   X-Ref
    Verifies that both help strings exists, shows debug warnings if not


    export_for_template(renderer_base $output)   X-Ref
    Export this data so it can be used as the context for a mustache template.

    return: array
    param: renderer_base $output Used to do a final render of any components that need to be rendered for export.

    Class: pix_icon_font  - X-Ref

    Data structure representing an icon font.

    __construct(pix_icon $pixicon)   X-Ref
    Constructor

    param: pix_icon $pixicon The original icon

    is_mapped()   X-Ref
    Return true if this pix_icon was successfully mapped to an icon font.

    return: bool

    export_for_template(renderer_base $output)   X-Ref
    Export this data so it can be used as the context for a mustache template.

    return: array
    param: renderer_base $output Used to do a final render of any components that need to be rendered for export.

    Class: pix_icon_fontawesome  - X-Ref

    Data structure representing an icon subtype.

    Class: pix_icon  - X-Ref

    Data structure representing an icon.

    __construct($pix, $alt, $component='moodle', array $attributes = null)   X-Ref
    Constructor

    param: string $pix short icon name
    param: string $alt The alt text to use for the icon
    param: string $component component name
    param: array $attributes html attributes

    export_for_template(renderer_base $output)   X-Ref
    Export this data so it can be used as the context for a mustache template.

    return: array
    param: renderer_base $output Used to do a final render of any components that need to be rendered for export.

    export_for_pix()   X-Ref
    Much simpler version of export that will produce the data required to render this pix with the
    pix helper in a mustache tag.

    return: array

    Class: image_icon  - X-Ref

    Data structure representing an activity icon.

    The difference is that activity icons will always render with the standard icon system (no font icons).

    Class: pix_emoticon  - X-Ref

    Data structure representing an emoticon image

    __construct($pix, $alt, $component = 'moodle', array $attributes = array()   X-Ref
    Constructor

    param: string $pix short icon name
    param: string $alt alternative text
    param: string $component emoticon image provider
    param: array $attributes explicit HTML attributes

    Class: single_button  - X-Ref

    Data structure representing a simple form with only one button.

    __construct(moodle_url $url, $label, $method='post', $primary=false, $attributes = [])   X-Ref
    Constructor

    param: moodle_url $url
    param: string $label button text
    param: string $method get or post submit method
    param: array $attributes Attributes for the HTML button tag

    add_confirm_action($confirmmessage)   X-Ref
    Shortcut for adding a JS confirm dialog when the button is clicked.
    The message must be a yes/no question.

    param: string $confirmmessage The yes/no confirmation question. If "Yes" is clicked, the original action will occur.

    add_action(component_action $action)   X-Ref
    Add action to the button.

    param: component_action $action

    set_attribute($name, $value)   X-Ref
    Sets an attribute for the HTML button tag.

    return: null
    param: string $name  The attribute name
    param: mixed  $value The value

    export_for_template(renderer_base $output)   X-Ref
    Export data.

    return: stdClass
    param: renderer_base $output Renderer.

    Class: single_select  - X-Ref

    Simple form with just one select field that gets submitted automatically.

    If JS not enabled small go button is printed too.

    __construct(moodle_url $url, $name, array $options, $selected = '', $nothing = array('' => 'choosedots')   X-Ref
    Constructor

    param: moodle_url $url form action target, includes hidden fields
    param: string $name name of selection field - the changing parameter in url
    param: array $options list of options
    param: string $selected selected element
    param: array $nothing
    param: string $formid

    add_confirm_action($confirmmessage)   X-Ref
    Shortcut for adding a JS confirm dialog when the button is clicked.
    The message must be a yes/no question.

    param: string $confirmmessage The yes/no confirmation question. If "Yes" is clicked, the original action will occur.

    add_action(component_action $action)   X-Ref
    Add action to the button.

    param: component_action $action

    set_old_help_icon($helppage, $title, $component = 'moodle')   X-Ref
    Adds help icon.


    set_help_icon($identifier, $component = 'moodle')   X-Ref
    Adds help icon.

    param: string $identifier The keyword that defines a help page
    param: string $component

    set_label($label, $attributes = array()   X-Ref
    Sets select's label

    param: string $label
    param: array $attributes (optional)

    export_for_template(renderer_base $output)   X-Ref
    Export data.

    return: stdClass
    param: renderer_base $output Renderer.

    Class: url_select  - X-Ref

    Simple URL selection widget description.

    __construct(array $urls, $selected = '', $nothing = array('' => 'choosedots')   X-Ref
    Constructor

    param: array $urls list of options
    param: string $selected selected element
    param: array $nothing
    param: string $formid
    param: string $showbutton Set to text of button if it should be visible

    set_old_help_icon($helppage, $title, $component = 'moodle')   X-Ref
    Adds help icon.


    set_help_icon($identifier, $component = 'moodle')   X-Ref
    Adds help icon.

    param: string $identifier The keyword that defines a help page
    param: string $component

    set_label($label, $attributes = array()   X-Ref
    Sets select's label

    param: string $label
    param: array $attributes (optional)

    clean_url($value)   X-Ref
    Clean a URL.

    return: The cleaned URL.
    param: string $value The URL.

    flatten_options($options, $nothing)   X-Ref
    Flatten the options for Mustache.

    This also cleans the URLs.

    return: array
    param: array $options The options.
    param: array $nothing The nothing option.

    export_for_template(renderer_base $output)   X-Ref
    Export for template.

    return: stdClass
    param: renderer_base $output Renderer.

    Class: action_link  - X-Ref

    Data structure describing html link with special action attached.

    __construct(moodle_url $url,$text,component_action $action=null,array $attributes=null,pix_icon $icon=null)   X-Ref
    Constructor

    param: moodle_url $url
    param: string $text HTML fragment
    param: component_action $action
    param: array $attributes associative array of html link attributes + disabled
    param: pix_icon $icon optional pix_icon to render with the link text

    add_action(component_action $action)   X-Ref
    Add action to the link.

    param: component_action $action

    add_class($class)   X-Ref
    Adds a CSS class to this action link object

    param: string $class

    has_class($class)   X-Ref
    Returns true if the specified class has been added to this link.

    return: bool
    param: string $class

    get_icon_html()   X-Ref
    Return the rendered HTML for the icon. Useful for rendering action links in a template.

    return: string

    export_for_template(renderer_base $output)   X-Ref
    Export for template.

    return: stdClass
    param: renderer_base $output The renderer.

    Class: html_writer  - X-Ref

    Simple html output class

    tag($tagname, $contents, array $attributes = null)   X-Ref
    Outputs a tag with attributes and contents

    return: string HTML fragment
    param: string $tagname The name of tag ('a', 'img', 'span' etc.)
    param: string $contents What goes between the opening and closing tags
    param: array $attributes The tag attributes (array('src' => $url, 'class' => 'class1') etc.)

    start_tag($tagname, array $attributes = null)   X-Ref
    Outputs an opening tag with attributes

    return: string HTML fragment
    param: string $tagname The name of tag ('a', 'img', 'span' etc.)
    param: array $attributes The tag attributes (array('src' => $url, 'class' => 'class1') etc.)

    end_tag($tagname)   X-Ref
    Outputs a closing tag

    return: string HTML fragment
    param: string $tagname The name of tag ('a', 'img', 'span' etc.)

    empty_tag($tagname, array $attributes = null)   X-Ref
    Outputs an empty tag with attributes

    return: string HTML fragment
    param: string $tagname The name of tag ('input', 'img', 'br' etc.)
    param: array $attributes The tag attributes (array('src' => $url, 'class' => 'class1') etc.)

    nonempty_tag($tagname, $contents, array $attributes = null)   X-Ref
    Outputs a tag, but only if the contents are not empty

    return: string HTML fragment
    param: string $tagname The name of tag ('a', 'img', 'span' etc.)
    param: string $contents What goes between the opening and closing tags
    param: array $attributes The tag attributes (array('src' => $url, 'class' => 'class1') etc.)

    attribute($name, $value)   X-Ref
    Outputs a HTML attribute and value

    return: string HTML fragment
    param: string $name The name of the attribute ('src', 'href', 'class' etc.)
    param: string $value The value of the attribute. The value will be escaped with {@link s()}

    attributes(array $attributes = null)   X-Ref
    Outputs a list of HTML attributes and values

    return: string HTML fragment
    param: array $attributes The tag attributes (array('src' => $url, 'class' => 'class1') etc.)

    img($src, $alt, array $attributes = null)   X-Ref
    Generates a simple image tag with attributes.

    return: string HTML fragment
    param: string $src The source of image
    param: string $alt The alternate text for image
    param: array $attributes The tag attributes (array('height' => $max_height, 'class' => 'class1') etc.)

    random_id($base='random')   X-Ref
    Generates random html element id.

    return: string A unique ID
    param: string $base A string fragment that will be included in the random ID.

    link($url, $text, array $attributes = null)   X-Ref
    Generates a simple html link

    return: string HTML fragment
    param: string|moodle_url $url The URL
    param: string $text The text
    param: array $attributes HTML attributes

    checkbox($name, $value, $checked = true, $label = '',array $attributes = null, array $labelattributes = null)   X-Ref
    Generates a simple checkbox with optional label

    return: string html fragment
    param: string $name The name of the checkbox
    param: string $value The value of the checkbox
    param: bool $checked Whether the checkbox is checked
    param: string $label The label for the checkbox
    param: array $attributes Any attributes to apply to the checkbox
    param: array $labelattributes Any attributes to apply to the label, if present

    select_yes_no($name, $selected=true, array $attributes = null)   X-Ref
    Generates a simple select yes/no form field

    return: string HTML fragment
    param: string $name name of select element
    param: bool $selected
    param: array $attributes - html select element attributes

    select(array $options, $name, $selected = '', $nothing = array('' => 'choosedots')   X-Ref
    Generates a simple select form field

    Note this function does HTML escaping on the optgroup labels, but not on the choice labels.

    return: string HTML fragment
    param: array $options associative array value=>label ex.:
    param: string $name name of select element
    param: string|array $selected value or array of values depending on multiple attribute
    param: array|bool $nothing add nothing selected option, or false of not added
    param: array $attributes html select element attributes

    select_option($label, $value, array $selected)   X-Ref
    Returns HTML to display a select box option.

    return: string HTML fragment
    param: string $label The label to display as the option.
    param: string|int $value The value the option represents
    param: array $selected An array of selected options

    select_optgroup($groupname, $options, array $selected)   X-Ref
    Returns HTML to display a select box option group.

    return: string HTML fragment.
    param: string $groupname The label to use for the group
    param: array $options The options in the group
    param: array $selected An array of selected values.

    select_time($type, $name, $currenttime = 0, $step = 5, array $attributes = null)   X-Ref
    This is a shortcut for making an hour selector menu.

    return: HTML fragment
    param: string $type The type of selector (years, months, days, hours, minutes)
    param: string $name fieldname
    param: int $currenttime A default timestamp in GMT
    param: int $step minute spacing
    param: array $attributes - html select element attributes

    alist(array $items, array $attributes = null, $tag = 'ul')   X-Ref
    Shortcut for quick making of lists

    Note: 'list' is a reserved keyword ;-)

    return: string
    param: array $items
    param: array $attributes
    param: string $tag ul or ol

    input_hidden_params(moodle_url $url, array $exclude = null)   X-Ref
    Returns hidden input fields created from url parameters.

    return: string HTML fragment
    param: moodle_url $url
    param: array $exclude list of excluded parameters

    script($jscode, $url=null)   X-Ref
    Generate a script tag containing the the specified code.

    return: string HTML, the code wrapped in <script> tags.
    param: string $jscode the JavaScript code
    param: moodle_url|string $url optional url of the external script, $code ignored if specified

    table(html_table $table)   X-Ref
    Renders HTML table

    This method may modify the passed instance by adding some default properties if they are not set yet.
    If this is not what you want, you should make a full clone of your data before passing them to this
    method. In most cases this is not an issue at all so we do not clone by default for performance
    and memory consumption reasons.

    return: string HTML code
    param: html_table $table data to be rendered

    label($text, $for, $colonize = true, array $attributes=array()   X-Ref
    Renders form element label

    By default, the label is suffixed with a label separator defined in the
    current language pack (colon by default in the English lang pack).
    Adding the colon can be explicitly disabled if needed. Label separators
    are put outside the label tag itself so they are not read by
    screenreaders (accessibility).

    Parameter $for explicitly associates the label with a form control. When
    set, the value of this attribute must be the same as the value of
    the id attribute of the form control in the same document. When null,
    the label being defined is associated with the control inside the label
    element.

    return: string HTML of the label element
    param: string $text content of the label tag
    param: string|null $for id of the element this label is associated with, null for no association
    param: bool $colonize add label separator (colon) to the label text, if it is not there yet
    param: array $attributes to be inserted in the tab, for example array('accesskey' => 'a')

    add_class($class = '', array $attributes = null)   X-Ref
    Combines a class parameter with other attributes. Aids in code reduction
    because the class parameter is very frequently used.

    If the class attribute is specified both in the attributes and in the
    class parameter, the two values are combined with a space between.

    return: array Attributes (or null if still none)
    param: string $class Optional CSS class (or classes as space-separated list)
    param: array $attributes Optional other attributes as array

    div($content, $class = '', array $attributes = null)   X-Ref
    Creates a <div> tag. (Shortcut function.)

    return: string HTML code for div
    param: string $content HTML content of tag
    param: string $class Optional CSS class (or classes as space-separated list)
    param: array $attributes Optional other attributes as array

    start_div($class = '', array $attributes = null)   X-Ref
    Starts a <div> tag. (Shortcut function.)

    return: string HTML code for open div tag
    param: string $class Optional CSS class (or classes as space-separated list)
    param: array $attributes Optional other attributes as array

    end_div()   X-Ref
    Ends a <div> tag. (Shortcut function.)

    return: string HTML code for close div tag

    span($content, $class = '', array $attributes = null)   X-Ref
    Creates a <span> tag. (Shortcut function.)

    return: string HTML code for span
    param: string $content HTML content of tag
    param: string $class Optional CSS class (or classes as space-separated list)
    param: array $attributes Optional other attributes as array

    start_span($class = '', array $attributes = null)   X-Ref
    Starts a <span> tag. (Shortcut function.)

    return: string HTML code for open span tag
    param: string $class Optional CSS class (or classes as space-separated list)
    param: array $attributes Optional other attributes as array

    end_span()   X-Ref
    Ends a <span> tag. (Shortcut function.)

    return: string HTML code for close span tag

    Class: js_writer  - X-Ref

    Simple javascript output class

    function_call($function, array $arguments = null, $delay=0)   X-Ref
    Returns javascript code calling the function

    return: string JS code fragment
    param: string $function function name, can be complex like Y.Event.purgeElement
    param: array $arguments parameters
    param: int $delay execution delay in seconds

    function_call_with_Y($function, array $extraarguments = null)   X-Ref
    Special function which adds Y as first argument of function call.

    return: string Some JS code
    param: string $function The function to call
    param: array $extraarguments Any arguments to pass to it

    object_init($var, $class, array $arguments = null, array $requirements = null, $delay=0)   X-Ref
    Returns JavaScript code to initialise a new object

    return: string Some JS code
    param: string $var If it is null then no var is assigned the new object.
    param: string $class The class to initialise an object for.
    param: array $arguments An array of args to pass to the init method.
    param: array $requirements Any modules required for this class.
    param: int $delay The delay before initialisation. 0 = no delay.

    set_variable($name, $value, $usevar = true)   X-Ref
    Returns code setting value to variable

    return: string JS code fragment
    param: string $name
    param: mixed $value json serialised value
    param: bool $usevar add var definition, ignored for nested properties

    event_handler($selector, $event, $function, array $arguments = null)   X-Ref
    Writes event handler attaching code

    return: string JS code fragment
    param: array|string $selector standard YUI selector for elements, may be
    param: string $event A valid DOM event (click, mousedown, change etc.)
    param: string $function The name of the function to call
    param: array $arguments An optional array of argument parameters to pass to the function

    Class: html_table  - X-Ref

    Holds all the information required to render a <table> by {@link core_renderer::table()}

    Example of usage:
    $t = new html_table();
    ... // set various properties of the object $t as described below
    echo html_writer::table($t);

    __construct()   X-Ref
    Constructor


    Class: html_table_row  - X-Ref

    Component representing a table row.

    __construct(array $cells=null)   X-Ref
    Constructor

    param: array $cells

    Class: html_table_cell  - X-Ref

    Component representing a table cell.

    __construct($text = null)   X-Ref
    Constructs a table cell

    param: string $text

    Class: paging_bar  - X-Ref

    Component representing a paging bar.

    __construct($totalcount, $page, $perpage, $baseurl, $pagevar = 'page')   X-Ref
    Constructor paging_bar with only the required params.

    param: int $totalcount The total number of entries available to be paged through
    param: int $page The page you are currently viewing
    param: int $perpage The number of entries that should be shown per page
    param: string|moodle_url $baseurl url of the current page, the $pagevar parameter is added
    param: string $pagevar name of page parameter that holds the page number

    prepare(renderer_base $output, moodle_page $page, $target)   X-Ref
    Prepares the paging bar for output.

    This method validates the arguments set up for the paging bar and then
    produces fragments of HTML to assist display later on.

    param: renderer_base $output
    param: moodle_page $page
    param: string $target

    export_for_template(renderer_base $output)   X-Ref
    Export for template.

    return: stdClass
    param: renderer_base $output The renderer.

    Class: initials_bar  - X-Ref

    Component representing initials bar.

    __construct($current, $class, $title, $urlvar, $url, $alpha = null)   X-Ref
    Constructor initials_bar with only the required params.

    param: string $current the currently selected letter.
    param: string $class class name to add to this initial bar.
    param: string $title the name to put in front of this initial bar.
    param: string $urlvar URL parameter name for this initial.
    param: string $url URL object.
    param: array $alpha of letters in the alphabet.

    export_for_template(renderer_base $output)   X-Ref
    Export for template.

    return: stdClass
    param: renderer_base $output The renderer.

    Class: block_contents  - X-Ref

    This class represents how a block appears on a page.

    During output, each block instance is asked to return a block_contents object,
    those are then passed to the $OUTPUT->block function for display.

    contents should probably be generated using a moodle_block_..._renderer.

    Other block-like things that need to appear on the page, for example the
    add new block UI, are also represented as block_contents objects.

    __construct(array $attributes = null)   X-Ref
    Create new instance of block content

    param: array $attributes

    add_class($class)   X-Ref
    Add html class to block

    param: string $class

    is_fake()   X-Ref
    Check if the block is a fake block.

    return: boolean

    Class: block_move_target  - X-Ref

    This class represents a target for where a block can go when it is being moved.

    This needs to be rendered as a form with the given hidden from fields, and
    clicking anywhere in the form should submit it. The form action should be
    $PAGE->url.

    __construct(moodle_url $url)   X-Ref
    Constructor

    param: moodle_url $url

    Class: custom_menu_item  - X-Ref

    Custom menu item

    This class is used to represent one item within a custom menu that may or may
    not have children.

    __construct($text, moodle_url $url=null, $title=null, $sort = null, custom_menu_item $parent = null)   X-Ref
    Constructs the new custom menu item

    param: string $text
    param: moodle_url $url A moodle url to apply as the link for this item [Optional]
    param: string $title A title to apply to this item [Optional]
    param: int $sort A sort or to use if we need to sort differently [Optional]
    param: custom_menu_item $parent A reference to the parent custom_menu_item this child

    add($text, moodle_url $url = null, $title = null, $sort = null)   X-Ref
    Adds a custom menu item as a child of this node given its properties.

    return: custom_menu_item
    param: string $text
    param: moodle_url $url
    param: string $title
    param: int $sort

    remove_child(custom_menu_item $menuitem)   X-Ref
    Removes a custom menu item that is a child or descendant to the current menu.

    Returns true if child was found and removed.

    return: bool
    param: custom_menu_item $menuitem

    get_text()   X-Ref
    Returns the text for this item

    return: string

    get_url()   X-Ref
    Returns the url for this item

    return: moodle_url

    get_title()   X-Ref
    Returns the title for this item

    return: string

    get_children()   X-Ref
    Sorts and returns the children for this item

    return: array

    get_sort_order()   X-Ref
    Gets the sort order for this child

    return: int

    get_parent()   X-Ref
    Gets the parent this child belong to

    return: custom_menu_item

    sort()   X-Ref
    Sorts the children this item has


    has_children()   X-Ref
    Returns true if this item has any children

    return: bool

    set_text($text)   X-Ref
    Sets the text for the node

    param: string $text

    set_title($title)   X-Ref
    Sets the title for the node

    param: string $title

    set_url(moodle_url $url)   X-Ref
    Sets the url for the node

    param: moodle_url $url

    export_for_template(renderer_base $output)   X-Ref
    Export this data so it can be used as the context for a mustache template.

    return: array
    param: renderer_base $output Used to do a final render of any components that need to be rendered for export.

    Class: custom_menu  - X-Ref

    Custom menu class

    This class is used to operate a custom menu that can be rendered for the page.
    The custom menu is built using $CFG->custommenuitems and is a structured collection
    of custom_menu_item nodes that can be rendered by the core renderer.

    To configure the custom menu:
    Settings: Administration > Appearance > Themes > Theme settings

    __construct($definition = '', $currentlanguage = null)   X-Ref
    Creates the custom menu

    param: string $definition the menu items definition in syntax required by {@link convert_text_to_menu_nodes()}
    param: string $currentlanguage the current language code, null disables multilang support

    override_children(array $children)   X-Ref
    Overrides the children of this custom menu. Useful when getting children
    from $CFG->custommenuitems

    param: array $children

    convert_text_to_menu_nodes($text, $language = null)   X-Ref
    Converts a string into a structured array of custom_menu_items which can
    then be added to a custom menu.

    Structure:
    text|url|title|langs
    The number of hyphens at the start determines the depth of the item. The
    languages are optional, comma separated list of languages the line is for.

    Example structure:
    First level first item|http://www.moodle.com/
    -Second level first item|http://www.moodle.com/partners/
    -Second level second item|http://www.moodle.com/hq/
    --Third level first item|http://www.moodle.com/jobs/
    -Second level third item|http://www.moodle.com/development/
    First level second item|http://www.moodle.com/feedback/
    First level third item
    English only|http://moodle.com|English only item|en
    German only|http://moodle.de|Deutsch|de,de_du,de_kids


    return: array
    param: string $text the menu items definition
    param: string $language the language code, null disables multilang support

    sort_custom_menu_items(custom_menu_item $itema, custom_menu_item $itemb)   X-Ref
    Sorts two custom menu items

    This function is designed to be used with the usort method
    usort($this->children, array('custom_menu','sort_custom_menu_items'));

    return: int
    param: custom_menu_item $itema
    param: custom_menu_item $itemb

    Class: tabobject  - X-Ref

    Stores one tab

    __construct($id, $link = null, $text = '', $title = '', $linkedwhenselected = false)   X-Ref
    Constructor

    param: string $id unique id of the tab in this tree, it is used to find selected and/or inactive tabs
    param: string|moodle_url $link
    param: string $text text on the tab
    param: string $title title under the link, by defaul equals to text
    param: bool $linkedwhenselected whether to display a link under the tab name when it's selected

    set_selected($selected)   X-Ref
    Travels through tree and finds the tab to mark as selected, all parents are automatically marked as activated

    return: bool whether this tab is selected or contains selected tab in its subtree
    param: string $selected the id of the selected tab (whatever row it's on),

    find($id)   X-Ref
    Travels through tree and finds a tab with specified id

    return: tabtree|null
    param: string $id

    set_level($level)   X-Ref
    Allows to mark each tab's level in the tree before rendering.

    param: int $level

    export_for_template(renderer_base $output)   X-Ref
    Export for template.

    return: object
    param: renderer_base $output Renderer.

    Class: context_header  - X-Ref

    Renderable for the main page header.

    __construct($heading = null, $headinglevel = 1, $imagedata = null, $additionalbuttons = null)   X-Ref
    Constructor.

    param: string $heading Main heading data.
    param: int $headinglevel Main heading 'h' tag level.
    param: string|null $imagedata HTML code for the picture in the page header.
    param: string $additionalbuttons Buttons for the header e.g. Messaging button for the user header.

    format_button_images()   X-Ref
    Adds an array element for a formatted image.


    Class: tabtree  - X-Ref

    Stores tabs list

    Example how to print a single line tabs:
    $rows = array(
    new tabobject(...),
    new tabobject(...)
    );
    echo $OUTPUT->tabtree($rows, $selectedid);

    Multiple row tabs may not look good on some devices but if you want to use them
    you can specify ->subtree for the active tabobject.

    __construct($tabs, $selected = null, $inactive = null)   X-Ref
    Constuctor

    It is highly recommended to call constructor when list of tabs is already
    populated, this way you ensure that selected and inactive tabs are located
    and attribute level is set correctly.

    param: array $tabs array of tabs, each of them may have it's own ->subtree
    param: string|null $selected which tab to mark as selected, all parent tabs will
    param: array|string|null $inactive list of ids of inactive tabs, regardless of

    export_for_template(renderer_base $output)   X-Ref
    Export for template.

    return: object
    param: renderer_base $output Renderer.

    Class: action_menu  - X-Ref

    An action menu.

    This action menu component takes a series of primary and secondary actions.
    The primary actions are displayed permanently and the secondary attributes are displayed within a drop
    down menu.

    __construct(array $actions = array()   X-Ref
    Constructs the action menu with the given items.

    param: array $actions An array of actions (action_menu_link|pix_icon|string).

    set_action_label($label)   X-Ref
    Sets the label for the menu trigger.

    param: string $label The text

    set_menu_trigger($trigger, $extraclasses = '')   X-Ref
    Sets the menu trigger text.

    param: string $trigger The text
    param: string $extraclasses Extra classes to style the secondary menu toggle.

    is_empty()   X-Ref
    Return true if there is at least one visible link in the menu.

    return: bool

    initialise_js(moodle_page $page)   X-Ref
    Initialises JS required fore the action menu.
    The JS is only required once as it manages all action menu's on the page.

    param: moodle_page $page

    add($action)   X-Ref
    Adds an action to this action menu.

    param: action_menu_link|pix_icon|string $action

    add_primary_action($action)   X-Ref
    Adds a primary action to the action menu.

    param: action_menu_link|action_link|pix_icon|string $action

    add_secondary_action($action)   X-Ref
    Adds a secondary action to the action menu.

    param: action_link|pix_icon|string $action

    get_primary_actions(core_renderer $output = null)   X-Ref
    Returns the primary actions ready to be rendered.

    return: array
    param: core_renderer $output The renderer to use for getting icons.

    get_secondary_actions()   X-Ref
    Returns the secondary actions ready to be rendered.

    return: array

    set_owner_selector($selector)   X-Ref
    Sets the selector that should be used to find the owning node of this menu.

    param: string $selector A CSS/YUI selector to identify the owner of the menu.

    set_alignment($dialogue, $button)   X-Ref
    Sets the alignment of the dialogue in relation to button used to toggle it.

    param: int $dialogue One of action_menu::TL, action_menu::TR, action_menu::BL, action_menu::BR.
    param: int $button One of action_menu::TL, action_menu::TR, action_menu::BL, action_menu::BR.

    get_align_string($align)   X-Ref
    Returns a string to describe the alignment.

    return: string
    param: int $align One of action_menu::TL, action_menu::TR, action_menu::BL, action_menu::BR.

    set_constraint($ancestorselector)   X-Ref
    Sets a constraint for the dialogue.

    The constraint is applied when the dialogue is shown and limits the display of the dialogue to within the
    element the constraint identifies.

    This is required whenever the action menu is displayed inside any CSS element with the .no-overflow class
    (flexible_table and any of it's child classes are a likely candidate).

    param: string $ancestorselector A snippet of CSS used to identify the ancestor to contrain the dialogue to.

    do_not_enhance()   X-Ref
    If you call this method the action menu will be displayed but will not be enhanced.

    By not displaying the menu enhanced all items will be displayed in a single row.


    will_be_enhanced()   X-Ref
    Returns true if this action menu will be enhanced.

    return: bool

    set_nowrap_on_items($value = true)   X-Ref
    Sets nowrap on items. If true menu items should not wrap lines if they are longer than the available space.

    This property can be useful when the action menu is displayed within a parent element that is either floated
    or relatively positioned.
    In that situation the width of the menu is determined by the width of the parent element which may not be large
    enough for the menu items without them wrapping.
    This disables the wrapping so that the menu takes on the width of the longest item.

    param: bool $value If true nowrap gets set, if false it gets removed. Defaults to true.

    export_for_template(renderer_base $output)   X-Ref
    Export for template.

    return: stdClass
    param: renderer_base $output The renderer.

    Class: action_menu_filler  - X-Ref

    An action menu filler

    __construct()   X-Ref
    Constructs the object.


    Class: action_menu_link  - X-Ref

    An action menu action

    __construct(moodle_url $url, pix_icon $icon = null, $text, $primary = true, array $attributes = array()   X-Ref
    Constructs the object.

    param: moodle_url $url The URL for the action.
    param: pix_icon $icon The icon to represent the action.
    param: string $text The text to represent the action.
    param: bool $primary Whether this is a primary action or not.
    param: array $attributes Any attribtues associated with the action.

    export_for_template(renderer_base $output)   X-Ref
    Export for template.

    return: stdClass
    param: renderer_base $output The renderer.

    Class: action_menu_link_primary  - X-Ref

    A primary action menu action

    __construct(moodle_url $url, pix_icon $icon = null, $text, array $attributes = array()   X-Ref
    Constructs the object.

    param: moodle_url $url
    param: pix_icon $icon
    param: string $text
    param: array $attributes

    Class: action_menu_link_secondary  - X-Ref

    A secondary action menu action

    __construct(moodle_url $url, pix_icon $icon = null, $text, array $attributes = array()   X-Ref
    Constructs the object.

    param: moodle_url $url
    param: pix_icon $icon
    param: string $text
    param: array $attributes

    Class: preferences_groups  - X-Ref

    Represents a set of preferences groups.

    __construct($groups)   X-Ref
    Constructor.

    param: array $groups of preferences_group

    Class: preferences_group  - X-Ref

    Represents a group of preferences page link.

    __construct($title, $nodes)   X-Ref
    Constructor.

    param: string $title The title.
    param: array $nodes of navigation_node.

    Class: progress_bar  - X-Ref

    Progress bar class.

    Manages the display of a progress bar.

    To use this class.
    - construct
    - call create (or use the 3rd param to the constructor)
    - call update or update_full() or update() repeatedly

    __construct($htmlid = '', $width = 500, $autostart = false)   X-Ref
    Constructor

    Prints JS code if $autostart true.

    param: string $htmlid The container ID.
    param: int $width The suggested width.
    param: bool $autostart Whether to start the progress bar right away.

    get_id()   X-Ref
    Getter for ID

    return: string id

    create()   X-Ref
    Create a new progress bar, this function will output html.

    return: void Echo's output

    _update($percent, $msg)   X-Ref
    Update the progress bar.

    return: void Echo's output
    param: int $percent From 1-100.
    param: string $msg The message.

    estimate($pt)   X-Ref
    Estimate how much time it is going to take.

    return: mixed Null (unknown), or int.
    param: int $pt From 1-100.

    update_full($percent, $msg)   X-Ref
    Update progress bar according percent.

    param: int $percent From 1-100.
    param: string $msg The message needed to be shown.

    update($cur, $total, $msg)   X-Ref
    Update progress bar according the number of tasks.

    param: int $cur Current task number.
    param: int $total Total task number.
    param: string $msg The message needed to be shown.

    restart()   X-Ref
    Restart the progress bar.


    export_for_template(renderer_base $output)   X-Ref
    Export for template.

    return: array
    param: renderer_base $output The renderer.