Moodle APIs 4.3
Moodle 4.3.6 (Build: 20240812)
admin_setting_configduration_with_advanced Class Reference

Seconds duration setting with an advanced checkbox, that controls a additional $name. More...

Inheritance diagram for admin_setting_configduration_with_advanced:

Public Member Functions

 __construct ($name, $visiblename, $description, $defaultsetting, $defaultunit=86400)
 Constructor.
 
 add_dependent_on ($dependenton)
 Add a setting to the list of those that could cause this one to be hidden.
 
 config_read ($name)
 Returns the config if possible.
 
 config_write ($name, $value)
 Used to set a config pair and log change.
 
 get_defaultsetting ()
 Returns default setting if exists.
 
 get_dependent_on ()
 Get a list of the settings that could cause this one to be hidden.
 
 get_force_ltr ()
 Get whether this should be displayed in LTR mode.
 
 get_full_name ()
 Returns the fullname prefixed by the plugin.
 
 get_id ()
 Returns the ID string based on plugin and name.
 
 get_setting ()
 Get the selected duration as array.
 
 get_setting_flag_defaults (& $defaults)
 Get the list of defaults for the flags on this setting.
 
 get_setting_flag_value (admin_setting_flag $flag)
 Get the currently saved value for a setting flag.
 
 has_custom_form_control ()
 Whether this setting uses a custom form control.
 
 is_forceable ()
 Whether the setting can be overridden in config.php.
 
 is_readonly ()
 Is this option forced in config.php?
 
 is_related ($query)
 Is setting related to query text - used when searching.
 
 output_html ($data, $query='')
 Returns duration text+select fields.
 
 output_setting_flags ()
 Output the input fields for the advanced and locked flags on this setting.
 
 post_write_settings ($original)
 Execute postupdatecallback if necessary.
 
 set_advanced_flag_options ($enabled, $default)
 Set the advanced options flag on this admin setting.
 
 set_affects_modinfo ($affectsmodinfo)
 
 set_enabled_flag_options ($enabled, $default)
 Set the enabled options flag on this admin setting.
 
 set_force_ltr ($value)
 Set whether to force LTR or not.
 
 set_locked_flag_options ($enabled, $default)
 Set the locked options flag on this admin setting.
 
 set_max_duration (?int $duration)
 Set the maximum allowed value.
 
 set_min_duration (int $duration)
 Set the minimum allowed value.
 
 set_required_flag_options ($enabled, $default)
 Set the required options flag on this admin setting.
 
 set_updatedcallback ($functionname)
 Function called if setting updated - cleanup, cache reset, etc.
 
 set_validate_function (?callable $validatefunction=null)
 Sets a validate function.
 
 write_setting ($data)
 Store the duration as seconds.
 
 write_setting_flags ($data)
 Write the values of the flags for this admin setting.
 

Public Attributes

bool $affectsmodinfo = false
 if set, indicates that a change to this setting requires rebuild course cache
 
mixed $defaultsetting
 Can be string or array of string.
 
string $description
 localised long description in Markdown format
 
string $name
 unique ascii name, either 'mysetting' for settings that in config, or 'myplugin/mysetting' for ones in config_plugins.
 
bool $nosave = false
 true indicates this setting does not actually save anything, just information
 
mixed $paramtype
 int means PARAM_XXX type, string is a allowed format in regex
 
mixed $plugin
 can be String or Null.
 
string $updatedcallback
 
lang_string string $visiblename
 localised name
 

Protected Member Functions

 add_to_config_log ($name, $oldvalue, $value)
 Log config changes if necessary.
 
 set_flag_options ($enabled, $default, $shortname, $displayname)
 Generic function to add a flag to this admin setting.
 
 validate_setting (int $data)
 Validate the setting.
 

Static Protected Member Functions

static get_duration_text (int $seconds, ?string $emptyvalue=null)
 Converts seconds to some more user friendly string.
 
static get_units ()
 Returns selectable units.
 
static parse_seconds ($seconds)
 Finds suitable units for given duration.
 

Protected Attributes

bool $customcontrol = false
 Whether this setting uses a custom form control.
 
int $defaultunit
 default duration unit
 
null int null int $maxduration = null
 The maximum allowed value.
 
int int $minduration = 0
 The minimum allowed value.
 
callable null $validatefunction = null
 Validation function.
 

Detailed Description

Seconds duration setting with an advanced checkbox, that controls a additional $name.

'_adv' setting.

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

Constructor & Destructor Documentation

◆ __construct()

admin_setting_configduration_with_advanced::__construct ( $name,
$visiblename,
$description,
$defaultsetting,
$defaultunit = 86400 )

Constructor.

Parameters
string$nameunique ascii name, either 'mysetting' for settings that in config, or 'myplugin/mysetting' for ones in config_plugins.
string$visiblenamelocalised name
string$descriptionlocalised long description
array$defaultsettingarray of int value, and bool whether it is is advanced by default.
int$defaultunit- day, week, etc. (in seconds)

Reimplemented from admin_setting_configduration.

Member Function Documentation

◆ add_dependent_on()

admin_setting::add_dependent_on ( $dependenton)
inherited

Add a setting to the list of those that could cause this one to be hidden.

Parameters
string$dependenton

◆ add_to_config_log()

admin_setting::add_to_config_log ( $name,
$oldvalue,
$value )
protectedinherited

Log config changes if necessary.

Parameters
string$name
string$oldvalue
string$value

Reimplemented in admin_setting_configpasswordunmask.

◆ config_read()

admin_setting::config_read ( $name)
inherited

Returns the config if possible.

Return values
mixedreturns config if successful else null

Reimplemented in enrol_flatfile_role_setting.

◆ config_write()

admin_setting::config_write ( $name,
$value )
inherited

Used to set a config pair and log change.

Parameters
string$name
mixed$valueGets converted to string if not null
Return values
boolWrite setting to config table

Reimplemented in enrol_flatfile_role_setting.

◆ get_defaultsetting()

◆ get_dependent_on()

admin_setting::get_dependent_on ( )
inherited

Get a list of the settings that could cause this one to be hidden.

Return values
array

◆ get_duration_text()

static admin_setting_configduration::get_duration_text ( int $seconds,
?string $emptyvalue = null )
staticprotectedinherited

Converts seconds to some more user friendly string.

Parameters
int$seconds
null|stringThe value to use when the duration is empty. If not specified, a "None" value is used.
Return values
string

◆ get_force_ltr()

admin_setting::get_force_ltr ( )
inherited

Get whether this should be displayed in LTR mode.

Return values
bool|null

Reimplemented in admin_setting_configtext, and admin_setting_filetypes.

◆ get_full_name()

admin_setting::get_full_name ( )
inherited

Returns the fullname prefixed by the plugin.

Return values
string

Reimplemented in admin_setting_managerepository.

◆ get_id()

admin_setting::get_id ( )
inherited

Returns the ID string based on plugin and name.

Return values
string

◆ get_setting()

admin_setting_configduration::get_setting ( )
inherited

Get the selected duration as array.

Return values
mixedAn array containing 'v'=>xx, 'u'=>xx, or null if not set

Reimplemented from admin_setting.

◆ get_setting_flag_defaults()

admin_setting::get_setting_flag_defaults ( & $defaults)
inherited

Get the list of defaults for the flags on this setting.

Parameters
arrayof strings describing the defaults for this setting. This is appended to by this function.

◆ get_setting_flag_value()

admin_setting::get_setting_flag_value ( admin_setting_flag $flag)
inherited

Get the currently saved value for a setting flag.

Parameters
admin_setting_flag$flag- One of the admin_setting_flag for this admin_setting.
Return values
bool

◆ get_units()

static admin_setting_configduration::get_units ( )
staticprotectedinherited

Returns selectable units.

Return values
array

◆ has_custom_form_control()

admin_setting::has_custom_form_control ( )
inherited

Whether this setting uses a custom form control.

This function is especially useful to decide if we should render a label element for this setting or not.

Return values
bool

◆ is_forceable()

admin_setting::is_forceable ( )
inherited

Whether the setting can be overridden in config.php.

Returning true will allow the setting to be defined and overridden in config.php. Returning false will prevent the config setting from being overridden even when it gets defined in config.php.

Return values
bool

Reimplemented in admin_setting_sitesetcheckbox, admin_setting_sitesetselect, admin_setting_sitesettext, and admin_setting_special_frontpagedesc.

◆ is_readonly()

admin_setting::is_readonly ( )
inherited

Is this option forced in config.php?

Return values
bool

◆ is_related()

◆ output_html()

admin_setting_configduration::output_html ( $data,
$query = '' )
inherited

Returns duration text+select fields.

Parameters
array$dataMust be form 'v'=>xx, 'u'=>xx
string$query
Return values
stringduration text+select fields and wrapping div(s)

Reimplemented from admin_setting.

◆ output_setting_flags()

admin_setting::output_setting_flags ( )
inherited

Output the input fields for the advanced and locked flags on this setting.

Parameters
bool$adv- The current value of the advanced flag.
bool$locked- The current value of the locked flag.
Return values
string\$output- The html for the flags.

◆ parse_seconds()

static admin_setting_configduration::parse_seconds ( $seconds)
staticprotectedinherited

Finds suitable units for given duration.

Parameters
int$seconds
Return values
array

◆ post_write_settings()

admin_setting::post_write_settings ( $original)
inherited

Execute postupdatecallback if necessary.

Parameters
mixed$originaloriginal value before write_setting()
Return values
booltrue if changed, false if not.

Reimplemented in admin_setting_configstoredfile.

◆ set_advanced_flag_options()

admin_setting::set_advanced_flag_options ( $enabled,
$default )
inherited

Set the advanced options flag on this admin setting.

Parameters
bool$enabled- One of self\OPTION_ENABLED or self\OPTION_DISABLED
bool$default- The default for the flag

◆ set_affects_modinfo()

admin_setting::set_affects_modinfo ( $affectsmodinfo)
inherited
Parameters
bool$affectsmodinfoIf true, changes to this setting will cause the course cache to be rebuilt

◆ set_enabled_flag_options()

admin_setting::set_enabled_flag_options ( $enabled,
$default )
inherited

Set the enabled options flag on this admin setting.

Parameters
bool$enabled- One of self\OPTION_ENABLED or self\OPTION_DISABLED
bool$default- The default for the flag

◆ set_flag_options()

admin_setting::set_flag_options ( $enabled,
$default,
$shortname,
$displayname )
protectedinherited

Generic function to add a flag to this admin setting.

Parameters
bool$enabled- One of self\OPTION_ENABLED or self\OPTION_DISABLED
bool$default- The default for the flag
string$shortname- The shortname for this flag. Used as a suffix for the setting name.
string$displayname- The display name for this flag. Used as a label next to the checkbox.

◆ set_force_ltr()

admin_setting::set_force_ltr ( $value)
inherited

Set whether to force LTR or not.

Parameters
bool$valueTrue when forced, false when not force, null when unknown.

◆ set_locked_flag_options()

admin_setting::set_locked_flag_options ( $enabled,
$default )
inherited

Set the locked options flag on this admin setting.

Parameters
bool$enabled- One of self\OPTION_ENABLED or self\OPTION_DISABLED
bool$default- The default for the flag

◆ set_max_duration()

admin_setting_configduration::set_max_duration ( ?int $duration)
inherited

Set the maximum allowed value.

A value of null will disable the maximum duration value.

Parameters
int | null$duration

◆ set_min_duration()

admin_setting_configduration::set_min_duration ( int $duration)
inherited

Set the minimum allowed value.

This must be at least 0.

Parameters
int$duration

◆ set_required_flag_options()

admin_setting::set_required_flag_options ( $enabled,
$default )
inherited

Set the required options flag on this admin setting.

Parameters
bool$enabled- One of self\OPTION_ENABLED or self\OPTION_DISABLED.
bool$default- The default for the flag.

◆ set_updatedcallback()

admin_setting::set_updatedcallback ( $functionname)
inherited

Function called if setting updated - cleanup, cache reset, etc.

Parameters
string$functionnameSets the function name
Return values
void

◆ set_validate_function()

admin_setting_configduration::set_validate_function ( ?callable $validatefunction = null)
inherited

Sets a validate function.

The callback will be passed one parameter, the new setting value, and should return either an empty string '' if the value is OK, or an error message if not.

Parameters
callable | null$validatefunctionValidate function or null to clear
Since
Moodle 3.10

◆ validate_setting()

admin_setting_configduration::validate_setting ( int $data)
protectedinherited

Validate the setting.

This uses the callback function if provided; subclasses could override to carry out validation directly in the class.

Parameters
int$dataNew value being set
Return values
stringEmpty string if valid, or error message text
Since
Moodle 3.10

◆ write_setting()

admin_setting_configduration::write_setting ( $data)
inherited

Store the duration as seconds.

Parameters
array$dataMust be form 'h'=>xx, 'm'=>xx
Return values
booltrue if success, false if not

Reimplemented from admin_setting.

◆ write_setting_flags()

admin_setting::write_setting_flags ( $data)
inherited

Write the values of the flags for this admin setting.

Parameters
array$data- The data submitted from the form or null to set the default value for new installs.
Return values
bool- true if successful.

Member Data Documentation

◆ $plugin

mixed admin_setting::$plugin
inherited

can be String or Null.

Null means main config table


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