function system_update_7067 in Drupal 7
Grant administrators permission to view the administration theme.
Related topics
File
- modules/
system/ system.install, line 3106 - Install, update and uninstall functions for the system module.
Code
function system_update_7067() {
// Users with access to administration pages already see the administration
// theme in some places (if one is enabled on the site), so we want them to
// continue seeing it.
$admin_roles = user_roles(FALSE, 'access administration pages');
foreach (array_keys($admin_roles) as $rid) {
_update_7000_user_role_grant_permissions($rid, array(
'view the administration theme',
), 'system');
}
// The above check is not guaranteed to reach all administrative users of the
// site, so if the site is currently using an administration theme, display a
// message also.
if (variable_get('admin_theme')) {
if (empty($admin_roles)) {
drupal_set_message('The new "View the administration theme" permission is required in order to view your site\'s administration theme. You can grant this permission to your site\'s administrators on the <a href="' . url('admin/people/permissions', array(
'fragment' => 'module-system',
)) . '">permissions page</a>.');
}
else {
drupal_set_message('The new "View the administration theme" permission is required in order to view your site\'s administration theme. This permission has been automatically granted to the following roles: <em>' . check_plain(implode(', ', $admin_roles)) . '</em>. You can grant this permission to other roles on the <a href="' . url('admin/people/permissions', array(
'fragment' => 'module-system',
)) . '">permissions page</a>.');
}
}
}