Moodle PHP Documentation 4.2
Moodle 4.2.8 (Build: 20240610) (2d41ac46f45)
admin_setting_configselect Class Reference

Select one value from list. More...

Inheritance diagram for admin_setting_configselect:
admin_setting admin_setting_bloglevel admin_setting_configmultiselect admin_setting_configselect_autocomplete admin_setting_configselect_with_advanced admin_setting_configselect_with_lock admin_setting_configthemepreset admin_setting_forcetimezone admin_setting_grade_profilereport admin_setting_my_grades_report admin_setting_question_behaviour admin_setting_servertimezone admin_setting_sitesetselect admin_setting_special_debug admin_setting_special_grademinmaxtouse admin_setting_special_registerauth admin_setting_special_selectsetup admin_settings_country_select admin_settings_h5plib_handler_select admin_settings_num_course_sections admin_settings_sitepolicy_handler_select antivirus_clamav_runningmethod_setting auth_shibboleth_admin_setting_special_wayf_select core_analytics\admin_setting_predictor enrol_ldap_admin_setting_category format_singleactivity_admin_setting_activitytype qtype_multichoice_admin_setting_answernumbering

Public Member Functions

 __construct ($name, $visiblename, $description, $defaultsetting, $choices)
 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 ()
 Return the setting.
 
 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)
 Check if this is $query is related to a choice.
 
 load_choices ()
 This function may be used in ancestors for lazy loading of choices.
 
 output_html ($data, $query='')
 Returns XHTML select field and wrapping div(s)
 
 output_select_html ($data, $current, $default, $extraname='')
 Returns XHTML select field.
 
 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_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)
 Save a setting.
 
 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
 
array $choices
 Array of choices value=>label.
 
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
 
array $optgroups
 Array of choices grouped using optgroups.
 
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 (string $data)
 Validate the setting.
 

Protected Attributes

callable null $choiceloader = null
 Loader function for choices.
 
bool $customcontrol = false
 Whether this setting uses a custom form control.
 
callable null $validatefunction = null
 Validation function.
 

Detailed Description

Select one value from list.

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

Constructor & Destructor Documentation

◆ __construct()

admin_setting_configselect::__construct ( $name,
$visiblename,
$description,
$defaultsetting,
$choices )

Constructor.

If you want to lazy-load the choices, pass a callback function that returns a choice array for the $choices parameter.

Parameters
string$nameunique ascii name, either 'mysetting' for settings that in config, or 'myplugin/mysetting' for ones in config_plugins.
string$visiblenamelocalised
string$descriptionlong localised info
string | int$defaultsetting
array | callable | null$choicesarray of $value=>$label for each selection, or callback

Reimplemented in admin_setting_configmultiselect, admin_setting_configmultiselect_modules, admin_setting_configselect_with_advanced, admin_setting_configselect_with_lock, and admin_settings_country_select.

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_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_configselect::get_setting ( )

Return the setting.

Return values
mixedreturns config if successful else null

Reimplemented from admin_setting.

Reimplemented in admin_setting_configmultiselect, admin_setting_sitesetselect, admin_setting_special_selectsetup, admin_setting_users_with_capability, and core_admin\local\settings\autocomplete.

◆ 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

◆ 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()

admin_setting_configselect::is_related ( $query)

Check if this is $query is related to a choice.

Parameters
string$query
Return values
booltrue if related, false if not

Reimplemented from admin_setting.

Reimplemented in admin_setting_configmultiselect.

◆ load_choices()

◆ output_html()

admin_setting_configselect::output_html ( $data,
$query = '' )

Returns XHTML select field and wrapping div(s)

See also
output_select_html()
Parameters
string$datathe option to show as selected
string$query
Return values
stringXHTML field and wrapping div

Reimplemented from admin_setting.

Reimplemented in admin_setting_configmultiselect, admin_setting_configselect_autocomplete, and core_admin\local\settings\autocomplete.

◆ output_select_html()

admin_setting_configselect::output_select_html ( $data,
$current,
$default,
$extraname = '' )

Returns XHTML select field.

Ensure the options are loaded, and generate the XHTML for the select element and any warning message. Separating this out from output_html makes it easier to subclass this class.

Parameters
string$datathe option to show as selected.
string$currentthe currently selected option in the database, null if none.
string$defaultthe default selected option.
Return values
arraythe HTML for the select element, and a warning message.
Deprecated
since Moodle 3.2

◆ 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.

◆ 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_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_configselect::set_validate_function ( ?callable $validatefunction = null)

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_configselect::validate_setting ( string $data)
protected

Validate the setting.

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

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

◆ write_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: