function mobile_codes_settings_form in Mobile Codes 7.2
Same name and namespace in other branches
- 5 mobile_codes.admin.inc \mobile_codes_settings_form()
- 6.2 includes/mobile_codes.admin.inc \mobile_codes_settings_form()
- 6 mobile_codes.admin.inc \mobile_codes_settings_form()
Settings form callback.
1 call to mobile_codes_settings_form()
- mobile_codes_variable_element_mobile_codes_settings in includes/
variable.inc - Element callback for Mobile Ocdes settings variable type.
1 string reference to 'mobile_codes_settings_form'
- mobile_codes_mobile_codes_menu_alter in ./
mobile_codes.module - Implements hook_mobile_codes_menu_alter().
File
- ./
mobile_codes.admin.inc, line 10 - Administration functions for the Mobile Codes module.
Code
function mobile_codes_settings_form($form, &$form_state) {
$form['#tree'] = TRUE;
$defaults = mobile_codes_defaults();
$settings = array();
drupal_alter('mobile_codes_settings', $settings);
foreach ($settings as $type => $setting) {
$form['settings'][$type] = array(
'#type' => 'fieldset',
'#title' => t('@type settings', array(
'@type' => drupal_strtoupper($type),
)),
);
$order = array();
if (is_array($settings[$type]) && count($settings[$type]) > 0) {
foreach ($settings[$type] as $setting => $values) {
$weight = isset($values['weight']) ? $values['weight'] : 0;
$order[$weight] = isset($order[$weight]) ? $order[$weight] : array();
$order[$weight][] = $setting;
}
ksort($order);
foreach ($order as $order_settings) {
sort($order_settings);
foreach ($order_settings as $setting) {
$form['settings'][$type][$setting] = array(
'#type' => 'checkbox',
'#title' => check_plain($settings[$type][$setting]['label']),
'#description' => check_plain($settings[$type][$setting]['description']),
'#default_value' => isset($defaults[$type][$setting]) ? $defaults[$type][$setting] : FALSE,
);
if (isset($settings[$type][$setting]['form']) && is_array($settings[$type][$setting]['form'])) {
$form['settings'][$type][$setting] = $settings[$type][$setting]['form'] + $form['settings'][$type][$setting];
}
}
}
}
}
$form['submit'] = array(
'#type' => 'submit',
'#value' => t('Save settings'),
);
return $form;
}