function system_theme_disable
7.x system.admin.inc | system_theme_disable() |
Menu callback; Disables a theme.
1 string reference to 'system_theme_disable'
- system_menu in drupal-7.x/
modules/ system/ system.module - Implements hook_menu().
File
- drupal-7.x/
modules/ system/ system.admin.inc, line 318 - Admin page callbacks for the system module.
Code
function system_theme_disable() {
if (isset($_REQUEST['theme']) && isset($_REQUEST['token']) && drupal_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])) {
if ($theme == variable_get('theme_default', 'bartik')) {
// Don't disable the default theme.
drupal_set_message(t('%theme is the default theme and cannot be disabled.', array('%theme' => $themes[$theme]->info['name'])), 'error');
}
else {
theme_disable(array($theme));
drupal_set_message(t('The %theme theme has been disabled.', array('%theme' => $themes[$theme]->info['name'])));
}
}
else {
drupal_set_message(t('The %theme theme was not found.', array('%theme' => $theme)), 'error');
}
drupal_goto('admin/appearance');
}
return MENU_ACCESS_DENIED;
}