1.20.x system.admin.inc system_theme_enable()

Menu callback; Enables a theme.

File

modules/system/system.admin.inc, line 277
Admin page callbacks for the System module.

Code

function system_theme_enable() {
  if (isset($_REQUEST['theme']) && isset($_REQUEST['token']) && backdrop_valid_token($_REQUEST['token'], 'system-theme-operation-link')) {
    $theme = $_REQUEST['theme'];
    // Get current list of themes.
    $themes = list_themes();

    // Check if the specified theme is one recognized by the system.
    if (!empty($themes[$theme])) {
      theme_enable(array($theme));
      backdrop_set_message(t('The %theme theme has been enabled.', array('%theme' => $themes[$theme]->info['name'])));
    }
    else {
      backdrop_set_message(t('The %theme theme was not found.', array('%theme' => $theme)), 'error');
    }
    backdrop_goto('admin/appearance');
  }
  return MENU_ACCESS_DENIED;
}