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

Duration element. More...

Inheritance diagram for MoodleQuickForm_duration:
MoodleQuickForm_group templatable

Public Member Functions

 __construct ($elementName=null, $elementLabel=null, $options=[], $attributes=null)
 constructor
 
 _createElements ()
 Override of standard quickforms method to create this element.
 
 accept (&$renderer, $required=false, $error=null)
 Accepts a renderer.
 
 createFormElement ()
 Creates an element to add to the group Expects the same arguments as MoodleQuickForm\createElement()
 
 export_for_template (renderer_base $output)
 Function to export the renderer data in a format that is suitable for a mustache template.
 
 exportValue (&$submitValues, $assoc=false)
 Output a timestamp.
 
 get_units ()
 Returns time associative array of unit length.
 
 getAttributesForFormElement ()
 Return attributes suitable for passing to {.
 
 getElementTemplateType ()
 Returns element template, nodisplay/static/fieldset.
 
string getHelpButton ()
 template type, would cause problems with client side validation so will leave for now
 
 MoodleQuickForm_duration ($elementName=null, $elementLabel=null, $options=[], $attributes=null)
 Old syntax of class constructor.
 
 MoodleQuickForm_group ($elementName=null, $elementLabel=null, $elements=null, $separator=null, $appendName=true)
 Old syntax of class constructor.
 
 onQuickFormEvent ($event, $arg, &$caller)
 Called by HTML_QuickForm whenever form event is made on this element.
 
 seconds_to_unit ($seconds)
 Converts seconds to the best possible time unit.
 
 setElements ($elements)
 Sets the grouped elements and hides label.
 
 setHiddenLabel ($hiddenLabel)
 Sets label to be hidden.
 
 setMoodleForm ($mform)
 Stores the form this element was added to This object is later used by MoodleQuickForm_group::createElement().
 
 toHtml ()
 Returns HTML for advchecbox form element.
 
 validateSubmitValue ($values)
 Calls the validateSubmitValue function for the containing elements and returns an error string as soon as it finds one.
 

Public Attributes

string $_helpbutton =''
 html for help button, if empty then no help
 

Protected Member Functions

 get_units_used ()
 Get the units to be used for this field.
 

Protected Attributes

bool $_hiddenLabel = false
 if true label will be hidden.
 
MoodleQuickForm $_mform = null
 
array $_options = ['optional' => false, 'defaultunit' => MINSECS]
 Control the field names for form elements optional => if true, show a checkbox beside the element to turn it on (or off) defaultunit => which unit is default when the form is blank (default Minutes).
 
 $_renderedfromtemplate = false
 

Detailed Description

Duration element.

HTML class for a length of time. For example, 30 minutes of 4 days. The values returned to PHP is the duration in seconds (an int rounded to the nearest second).

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

Constructor & Destructor Documentation

◆ __construct()

MoodleQuickForm_duration::__construct ( $elementName = null,
$elementLabel = null,
$options = [],
$attributes = null )

constructor

Parameters
?string$elementNameElement's name
mixed$elementLabelLabel(s) for an element
array$optionsOptions to control the element's display. Recognised values are 'optional' => true/false - whether to display an 'enabled' checkbox next to the element. 'defaultunit' => 1|MINSECS|HOURSECS|DAYSECS|WEEKSECS - the default unit to display when the time is blank. If not specified, minutes is used. 'units' => array containing some or all of 1, MINSECS, HOURSECS, DAYSECS and WEEKSECS which unit choices to offer.
mixed$attributesEither a typical HTML attribute string or an associative array

Member Function Documentation

◆ accept()

MoodleQuickForm_duration::accept ( & $renderer,
$required = false,
$error = null )

Accepts a renderer.

Parameters
HTML_QuickForm_Renderer$rendererAn HTML_QuickForm_Renderer object
bool$requiredWhether a group is required
?string$errorAn error message associated with a group

Reimplemented from MoodleQuickForm_group.

◆ export_for_template()

MoodleQuickForm_group::export_for_template ( renderer_base $output)
inherited

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).
Parameters
renderer_base$outputUsed to do a final render of any components that need to be rendered for export.
Return values
stdClass|array

Implements templatable.

Reimplemented in MoodleQuickForm_date_selector, and MoodleQuickForm_date_time_selector.

◆ exportValue()

MoodleQuickForm_duration::exportValue ( & $submitValues,
$assoc = false )

Output a timestamp.

Give it the name of the group. Override of standard quickforms method.

Parameters
array$submitValues
bool$assocwhether to return the value as associative array
Return values
arrayfield name => value. The value is the time interval in seconds.

◆ get_units()

MoodleQuickForm_duration::get_units ( )

Returns time associative array of unit length.

Return values
arrayunit length in seconds => string unit name.

◆ get_units_used()

MoodleQuickForm_duration::get_units_used ( )
protected

Get the units to be used for this field.

The ones specified in the options passed to the constructor, or all by default.

Return values
arraynumber of seconds => lang string.

◆ getAttributesForFormElement()

MoodleQuickForm_group::getAttributesForFormElement ( )
inherited

Return attributes suitable for passing to {.

See also
createFormElement}, comprised of all group attributes without ID in order to ensure uniqueness of that value within the group
Return values
array

◆ getElementTemplateType()

MoodleQuickForm_group::getElementTemplateType ( )
inherited

Returns element template, nodisplay/static/fieldset.

Return values
string

◆ getHelpButton()

string MoodleQuickForm_group::getHelpButton ( )
inherited

template type, would cause problems with client side validation so will leave for now

set html for help button

◆ MoodleQuickForm_duration()

MoodleQuickForm_duration::MoodleQuickForm_duration ( $elementName = null,
$elementLabel = null,
$options = [],
$attributes = null )

Old syntax of class constructor.

Deprecated in PHP7.

Deprecated
since Moodle 3.1

◆ MoodleQuickForm_group()

MoodleQuickForm_group::MoodleQuickForm_group ( $elementName = null,
$elementLabel = null,
$elements = null,
$separator = null,
$appendName = true )
inherited

Old syntax of class constructor.

Deprecated in PHP7.

Deprecated
since Moodle 3.1

◆ onQuickFormEvent()

MoodleQuickForm_duration::onQuickFormEvent ( $event,
$arg,
& $caller )

Called by HTML_QuickForm whenever form event is made on this element.

Parameters
string$eventName of event
mixed$argevent arguments
MoodleQuickForm$callercalling object
Return values
bool

Reimplemented from MoodleQuickForm_group.

◆ seconds_to_unit()

MoodleQuickForm_duration::seconds_to_unit ( $seconds)

Converts seconds to the best possible time unit.

for example 1800 -> [30, MINSECS] = 30 minutes.

Parameters
int$secondsan amout of time in seconds.
Return values
arrayassociative array ($number => $unit)

◆ setElements()

MoodleQuickForm_group::setElements ( $elements)
inherited

Sets the grouped elements and hides label.

Parameters
array$elements

◆ setHiddenLabel()

MoodleQuickForm_group::setHiddenLabel ( $hiddenLabel)
inherited

Sets label to be hidden.

Parameters
bool$hiddenLabelsets if label should be hidden

◆ setMoodleForm()

MoodleQuickForm_group::setMoodleForm ( $mform)
inherited

Stores the form this element was added to This object is later used by MoodleQuickForm_group::createElement().

Parameters
null | MoodleQuickForm$mform

◆ toHtml()

MoodleQuickForm_duration::toHtml ( )

Returns HTML for advchecbox form element.

Return values
string

◆ validateSubmitValue()

MoodleQuickForm_group::validateSubmitValue ( $values)
inherited

Calls the validateSubmitValue function for the containing elements and returns an error string as soon as it finds one.

Parameters
array$valuesValues of the containing elements.
Return values
string|nullValidation error message or null.

Reimplemented in MoodleQuickForm_filetypes.


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