function commerce_extra_settings_submit in Commerce Extra 7
Form submission callback for module settings.
File
- ./
commerce_extra.admin.inc, line 65 - Commerce Extra settings for admins.
Code
function commerce_extra_settings_submit($form, &$form_state) {
// We need this for finding out which submodules are enabled/disabled
$module_list = module_list();
$enable = array();
$disable = array();
// Loop thru
foreach (_commerce_extra_features() as $feature => $info) {
// If module was enabled
// TODO: Should probably call for features which are going to be enabled
// but aren't currently enabled yet.
if (isset($module_list[$feature])) {
// Invoke submission callback
$function = $feature . '_commerce_extra_configure_submit';
if (function_exists($function)) {
$function($form, $form_state);
}
}
// If new settings differs from current state
if ($form_state['values'][$feature . '_enable'] != isset($module_list[$feature])) {
if ($form_state['values'][$feature . '_enable']) {
// We want enable the submodule
$enable[] = $feature;
}
else {
// We want disable the submodule
$disable[] = $feature;
}
}
}
// Enable/disable possible modules
if (count($enable) > 0) {
module_enable($enable);
}
if (count($disable) > 0) {
module_disable($disable);
}
}