diff options
-rw-r--r-- | modules/block/block.test | 8 | ||||
-rw-r--r-- | modules/filter/filter.admin.inc | 11 | ||||
-rw-r--r-- | modules/filter/filter.module | 2 | ||||
-rw-r--r-- | modules/filter/filter.test | 8 | ||||
-rw-r--r-- | modules/search/search.test | 8 |
5 files changed, 23 insertions, 14 deletions
diff --git a/modules/block/block.test b/modules/block/block.test index 77057b62f..22d107754 100644 --- a/modules/block/block.test +++ b/modules/block/block.test @@ -20,12 +20,12 @@ class BlockTestCase extends DrupalWebTestCase { function setUp() { parent::setUp(); - // Create and login administrative user having access to Full HTML text - // format. - $fullhtml_format = db_query_range('SELECT * FROM {filter_format} WHERE name = :name', 0, 1, array(':name' => 'Full HTML'))->fetchObject(); + // Create and log in an administrative user having access to the Full HTML + // text format. + $full_html_format = db_query_range('SELECT * FROM {filter_format} WHERE name = :name', 0, 1, array(':name' => 'Full HTML'))->fetchObject(); $admin_user = $this->drupalCreateUser(array( 'administer blocks', - filter_permission_name($fullhtml_format), + filter_permission_name($full_html_format), 'access administration pages', 'access dashboard', )); diff --git a/modules/filter/filter.admin.inc b/modules/filter/filter.admin.inc index f0824838b..257919344 100644 --- a/modules/filter/filter.admin.inc +++ b/modules/filter/filter.admin.inc @@ -124,12 +124,21 @@ function filter_admin_format_form($form, &$form_state, $format) { '#type' => 'checkboxes', '#title' => t('Roles'), '#options' => user_roles(), - '#default_value' => array_keys(filter_get_roles_by_format($format)), '#disabled' => $is_fallback, ); if ($is_fallback) { $form['roles']['#description'] = t('All roles for this text format must be enabled and cannot be changed.'); } + if (!empty($format->format)) { + // If editing an existing text format, pre-select its current permissions. + $form['roles']['#default_value'] = array_keys(filter_get_roles_by_format($format)); + } + elseif ($admin_role = variable_get('user_admin_role', 0)) { + // If adding a new text format and the site has an administrative role, + // pre-select that role so as to grant administrators access to the new + // text format permission by default. + $form['roles']['#default_value'] = array($admin_role); + } // Retrieve available filters and load all configured filters for existing // text formats. diff --git a/modules/filter/filter.module b/modules/filter/filter.module index f2cf72be1..9ab25bc66 100644 --- a/modules/filter/filter.module +++ b/modules/filter/filter.module @@ -273,7 +273,7 @@ function filter_admin_format_title($format) { function filter_permission() { $perms['administer filters'] = array( 'title' => t('Administer text formats and filters'), - 'description' => drupal_placeholder(array('text' => t('Warning: This permission has security implications.'))), + 'description' => drupal_placeholder(array('text' => t('Warning: Give to trusted roles only; this permission has security implications.'))), ); // Generate permissions for each text format. Warn the administrator that any diff --git a/modules/filter/filter.test b/modules/filter/filter.test index 46159b23c..ed7f96eb2 100644 --- a/modules/filter/filter.test +++ b/modules/filter/filter.test @@ -168,12 +168,12 @@ class FilterAdminTestCase extends DrupalWebTestCase { parent::setUp(); // Create users. - $filteredhtml_format = db_query_range('SELECT * FROM {filter_format} WHERE name = :name', 0, 1, array(':name' => 'Filtered HTML'))->fetchObject(); - $fullhtml_format = db_query_range('SELECT * FROM {filter_format} WHERE name = :name', 0, 1, array(':name' => 'Full HTML'))->fetchObject(); + $filtered_html_format = db_query_range('SELECT * FROM {filter_format} WHERE name = :name', 0, 1, array(':name' => 'Filtered HTML'))->fetchObject(); + $full_html_format = db_query_range('SELECT * FROM {filter_format} WHERE name = :name', 0, 1, array(':name' => 'Full HTML'))->fetchObject(); $this->admin_user = $this->drupalCreateUser(array( 'administer filters', - filter_permission_name($filteredhtml_format), - filter_permission_name($fullhtml_format), + filter_permission_name($filtered_html_format), + filter_permission_name($full_html_format), )); $this->web_user = $this->drupalCreateUser(array('create page content', 'edit own page content')); diff --git a/modules/search/search.test b/modules/search/search.test index d0f974ce4..59e8b1fa9 100644 --- a/modules/search/search.test +++ b/modules/search/search.test @@ -490,12 +490,12 @@ class SearchCommentTestCase extends DrupalWebTestCase { function setUp() { parent::setUp('comment', 'search'); - // Create and login administrative user having access to Full HTML text - // format. - $fullhtml_format = db_query_range('SELECT * FROM {filter_format} WHERE name = :name', 0, 1, array(':name' => 'Full HTML'))->fetchObject(); + // Create and log in an administrative user having access to the Full HTML + // text format. + $full_html_format = db_query_range('SELECT * FROM {filter_format} WHERE name = :name', 0, 1, array(':name' => 'Full HTML'))->fetchObject(); $this->admin_user = $this->drupalCreateUser(array( 'administer filters', - filter_permission_name($fullhtml_format), + filter_permission_name($full_html_format), 'administer permissions', 'create page content', 'post comments without approval', |