function system_settings_form
Sets up a form to save information automatically.
This function adds a submit handler and a submit button to a form array. The submit function saves all the data in the form, using variable_set(), to variables named the same as the keys in the form array. Note that this means you should normally prefix your form array keys with your module name, so that they are unique when passed into variable_set().
If you need to manipulate the data in a custom manner, you can either put your own submission handler in the form array before calling this function, or just use your own submission handler instead of calling this function.
Parameters
$form: An associative array containing the structure of the form.
Return value
The form structure.
See also
Related topics
22 calls to system_settings_form()
- book_admin_settings in modules/
book/ book.admin.inc - Form constructor for the book settings form.
- forum_admin_settings in modules/
forum/ forum.admin.inc - Form constructor for the forum settings page.
- locale_language_providers_session_form in modules/
locale/ locale.admin.inc - The URL language provider configuration form.
- locale_language_providers_url_form in modules/
locale/ locale.admin.inc - The URL language provider configuration form.
- menu_configure in modules/
menu/ menu.admin.inc - Menu callback; Build the form presenting menu configuration options.
File
-
modules/
system/ system.module, line 2819
Code
function system_settings_form($form) {
$form['actions']['#type'] = 'actions';
$form['actions']['submit'] = array(
'#type' => 'submit',
'#value' => t('Save configuration'),
);
if (!empty($_POST) && form_get_errors()) {
drupal_set_message(t('The settings have not been saved because of the errors.'), 'error');
}
$form['#submit'][] = 'system_settings_form_submit';
// By default, render the form using theme_system_settings_form().
if (!isset($form['#theme'])) {
$form['#theme'] = 'system_settings_form';
}
return $form;
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.