You are here

function instance_settings_instance_settings_apply in Instance settings 7.2

Same name and namespace in other branches
  1. 7 instance_settings.module \instance_settings_instance_settings_apply()

Implements hook_instance_settings_apply().

File

./instance_settings.module, line 111
Instance settings.

Code

function instance_settings_instance_settings_apply() {
  $verbose_mode = variable_get('instance_settings_verbose_mode', 0);
  $rebuild = FALSE;

  // Check if we have modules to disable.
  if ($disable_modules = variable_get('instance_settings_disable_modules')) {
    $rebuild = instance_settings_module_disable($disable_modules) || $rebuild;
  }

  // Check if we have modules to enable.
  if ($enable_modules = variable_get('instance_settings_enable_modules')) {
    if (!empty($enable_modules)) {
      $rebuild = instance_settings_module_enable(array_combine($enable_modules, $enable_modules)) || $rebuild;
    }
  }
  if ($variables = variable_get('instance_settings_variables')) {
    foreach ($variables as $name => $value) {
      variable_set($name, $value);
      if ($verbose_mode) {
        drupal_set_message(t('Variable "@name" set to "@value".', array(
          '@name' => $name,
          '@value' => $value,
        )));
      }
    }
    drupal_set_message(t('Variables updated.'));
  }
  if ($rebuild) {
    cache_clear_all();
    menu_rebuild();
  }
  return TRUE;
}