diff options
author | Dries Buytaert <dries@buytaert.net> | 2009-12-01 22:30:31 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2009-12-01 22:30:31 +0000 |
commit | bdf018696fa40eef6f20316a5c1927bfb240f0eb (patch) | |
tree | a8b4b0a1ca587a1e41c5cefdb2e2f896c3dd5c29 /modules | |
parent | 48377c459b7663cc29e137573d4357823c6a6d98 (diff) | |
download | brdo-bdf018696fa40eef6f20316a5c1927bfb240f0eb.tar.gz brdo-bdf018696fa40eef6f20316a5c1927bfb240f0eb.tar.bz2 |
- Patch #446666 by cweagans: split 'administer site configuration' into more granular permissions.
Diffstat (limited to 'modules')
-rw-r--r-- | modules/block/block.test | 6 | ||||
-rw-r--r-- | modules/color/color.test | 2 | ||||
-rw-r--r-- | modules/system/system.module | 26 | ||||
-rw-r--r-- | modules/system/system.test | 9 | ||||
-rw-r--r-- | modules/update/update.test | 2 | ||||
-rw-r--r-- | modules/user/user.test | 2 |
6 files changed, 27 insertions, 20 deletions
diff --git a/modules/block/block.test b/modules/block/block.test index 60f994a84..08ef8082d 100644 --- a/modules/block/block.test +++ b/modules/block/block.test @@ -235,7 +235,7 @@ class NonDefaultBlockAdmin extends DrupalWebTestCase { * Test non-default theme admin. */ function testNonDefaultBlockAdmin() { - $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer site configuration')); + $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer themes')); $this->drupalLogin($admin_user); theme_enable(array('stark')); $this->drupalGet('admin/structure/block/list/stark'); @@ -259,7 +259,7 @@ class NewDefaultThemeBlocks extends DrupalWebTestCase { */ function testNewDefaultThemeBlocks() { // Create administrative user. - $admin_user = $this->drupalCreateUser(array('administer site configuration')); + $admin_user = $this->drupalCreateUser(array('administer themes')); $this->drupalLogin($admin_user); // Ensure no other theme's blocks are in the block table yet. @@ -304,7 +304,7 @@ class BlockAdminThemeTestCase extends DrupalWebTestCase { */ function testAdminTheme() { // Create administrative user. - $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer site configuration')); + $admin_user = $this->drupalCreateUser(array('administer blocks', 'administer themes')); $this->drupalLogin($admin_user); // Ensure that access to block admin page is denied when theme is disabled. diff --git a/modules/color/color.test b/modules/color/color.test index caaa92557..7b01b80b9 100644 --- a/modules/color/color.test +++ b/modules/color/color.test @@ -23,7 +23,7 @@ class ColorTestCase extends DrupalWebTestCase { function setUp() { parent::setUp('color'); // Create users. - $this->big_user = $this->drupalCreateUser(array('administer site configuration')); + $this->big_user = $this->drupalCreateUser(array('administer themes')); } /** diff --git a/modules/system/system.module b/modules/system/system.module index e960d83a2..67c54e7ec 100644 --- a/modules/system/system.module +++ b/modules/system/system.module @@ -204,9 +204,15 @@ function system_theme() { */ function system_permission() { return array( + 'administer modules' => array( + 'title' => t('Administer modules'), + ), 'administer site configuration' => array( 'title' => t('Administer site configuration'), ), + 'administer themes' => array( + 'title' => t('Administer themes'), + ), 'administer software updates' => array( 'title' => t('Run software updates'), ), @@ -582,7 +588,7 @@ function system_menu() { 'title' => 'Appearance', 'description' => 'Select and configure your site theme.', 'page callback' => 'system_themes_page', - 'access arguments' => array('administer site configuration'), + 'access arguments' => array('administer themes'), 'position' => 'left', 'weight' => -6, 'file' => 'system.admin.inc', @@ -597,21 +603,21 @@ function system_menu() { $items['admin/appearance/enable'] = array( 'title' => 'Enable theme', 'page callback' => 'system_theme_enable', - 'access arguments' => array('administer site configuration'), + 'access arguments' => array('administer themes'), 'type' => MENU_CALLBACK, 'file' => 'system.admin.inc', ); $items['admin/appearance/disable'] = array( 'title' => 'Disable theme', 'page callback' => 'system_theme_disable', - 'access arguments' => array('administer site configuration'), + 'access arguments' => array('administer themes'), 'type' => MENU_CALLBACK, 'file' => 'system.admin.inc', ); $items['admin/appearance/default'] = array( 'title' => 'Set default theme', 'page callback' => 'system_theme_default', - 'access arguments' => array('administer site configuration'), + 'access arguments' => array('administer themes'), 'type' => MENU_CALLBACK, 'file' => 'system.admin.inc', ); @@ -620,7 +626,7 @@ function system_menu() { 'description' => 'Configure default and theme specific settings.', 'page callback' => 'drupal_get_form', 'page arguments' => array('system_theme_settings'), - 'access arguments' => array('administer site configuration'), + 'access arguments' => array('administer themes'), 'type' => MENU_LOCAL_TASK, 'file' => 'system.admin.inc', ); @@ -661,7 +667,7 @@ function system_menu() { 'description' => 'Enable or disable add-on modules for your site.', 'page callback' => 'drupal_get_form', 'page arguments' => array('system_modules'), - 'access arguments' => array('administer site configuration'), + 'access arguments' => array('administer modules'), 'file' => 'system.admin.inc', 'type' => MENU_LOCAL_TASK, 'weight' => 10, @@ -672,19 +678,19 @@ function system_menu() { ); $items['admin/config/modules/list/confirm'] = array( 'title' => 'List', - 'access arguments' => array('administer site configuration'), + 'access arguments' => array('administer modules'), 'type' => MENU_CALLBACK, ); $items['admin/config/modules/uninstall'] = array( 'title' => 'Uninstall', 'page arguments' => array('system_modules_uninstall'), - 'access arguments' => array('administer site configuration'), + 'access arguments' => array('administer modules'), 'type' => MENU_LOCAL_TASK, 'file' => 'system.admin.inc', ); $items['admin/config/modules/uninstall/confirm'] = array( 'title' => 'Uninstall', - 'access arguments' => array('administer site configuration'), + 'access arguments' => array('administer modules'), 'type' => MENU_CALLBACK, 'file' => 'system.admin.inc', ); @@ -1471,7 +1477,7 @@ function blocked_ip_load($iid) { * Menu item access callback - only admin or enabled themes can be accessed. */ function _system_themes_access($theme) { - return user_access('administer site configuration') && drupal_theme_access($theme); + return user_access('administer themes') && drupal_theme_access($theme); } /** diff --git a/modules/system/system.test b/modules/system/system.test index 27c327675..ff43b97ec 100644 --- a/modules/system/system.test +++ b/modules/system/system.test @@ -10,7 +10,7 @@ class ModuleTestCase extends DrupalWebTestCase { function setUp() { parent::setUp('system_test'); - $this->admin_user = $this->drupalCreateUser(array('access administration pages', 'administer site configuration')); + $this->admin_user = $this->drupalCreateUser(array('access administration pages', 'administer modules')); $this->drupalLogin($this->admin_user); } @@ -1023,6 +1023,7 @@ class SystemMainContentFallback extends DrupalWebTestCase { $this->admin_user = $this->drupalCreateUser(array( 'access administration pages', 'administer site configuration', + 'administer modules', 'administer blocks', 'administer nodes', )); @@ -1050,7 +1051,7 @@ class SystemMainContentFallback extends DrupalWebTestCase { // At this point, no region is filled and fallback should be triggered. $this->drupalGet('admin/config/system/site-information'); - $this->assertField('site_name', t('Admin interface still availble.')); + $this->assertField('site_name', t('Admin interface still available.')); // Fallback should not trigger when another module is handling content. $this->drupalGet('system-test/main-content-handling'); @@ -1071,7 +1072,7 @@ class SystemMainContentFallback extends DrupalWebTestCase { // Request a user* page and see if it is displayed. $this->drupalLogin($this->web_user); $this->drupalGet('user/' . $this->web_user->uid . '/edit'); - $this->assertField('mail', t('User interface still availble.')); + $this->assertField('mail', t('User interface still available.')); // Enable the block module again. $this->drupalLogin($this->admin_user); @@ -1176,7 +1177,7 @@ class SystemThemeFunctionalTest extends DrupalWebTestCase { function setUp() { parent::setUp(); - $this->admin_user = $this->drupalCreateUser(array('access administration pages', 'administer site configuration', 'bypass node access')); + $this->admin_user = $this->drupalCreateUser(array('access administration pages', 'administer themes', 'bypass node access')); $this->drupalLogin($this->admin_user); $this->node = $this->drupalCreateNode(); } diff --git a/modules/update/update.test b/modules/update/update.test index 98e6329fc..4eda46e76 100644 --- a/modules/update/update.test +++ b/modules/update/update.test @@ -63,7 +63,7 @@ class UpdateCoreTestCase extends UpdateTestHelper { function setUp() { parent::setUp('update_test', 'update'); - $admin_user = $this->drupalCreateUser(array('administer site configuration')); + $admin_user = $this->drupalCreateUser(array('administer site configuration', 'administer modules')); $this->drupalLogin($admin_user); } diff --git a/modules/user/user.test b/modules/user/user.test index 47727f8a6..3ee3f15f6 100644 --- a/modules/user/user.test +++ b/modules/user/user.test @@ -872,7 +872,7 @@ class UserPermissionsTestCase extends DrupalWebTestCase { function setUp() { parent::setUp(); - $this->admin_user = $this->drupalCreateUser(array('administer permissions', 'access user profiles', 'administer site configuration', 'administer users')); + $this->admin_user = $this->drupalCreateUser(array('administer permissions', 'access user profiles', 'administer site configuration', 'administer modules', 'administer users')); // Find the new role ID - it must be the maximum. $all_rids = array_keys($this->admin_user->roles); |