Skip to content
Snippets Groups Projects
Commit 8f6cadbf authored by Tim Steiner's avatar Tim Steiner
Browse files

[gh-128] Merging from testing into staging

git-svn-id: file:///tmp/wdn_thm_drupal/branches/drupal-7.x/staging@799 20a16fea-79d4-4915-8869-1ea9d5ebf173
parent a1755dad
No related branches found
No related tags found
No related merge requests found
......@@ -216,6 +216,8 @@ EOF;
// shared tables across all sites
'filter' => $shared_prefix,
'filter_format' => $shared_prefix,
'role' => $shared_prefix,
'role_permission' => $shared_prefix,
'unl_cas_settings' => $shared_prefix,
'wysiwyg' => $shared_prefix,
);
......@@ -267,43 +269,6 @@ EOF;
. "WHERE name='filter_fallback_format' "
);
// Create the Site Admin role
$site_admin_role = new stdClass();
$site_admin_role->name = 'Site Admin';
$site_admin_role->weight = 2;
user_role_save($site_admin_role);
// Assign most permissions to the Site Admin role.
$all_permissions = module_invoke_all('permission');
$all_filter_permissions = array_keys(module_invoke('filter', 'permission'));
unset($all_permissions['unl site creation']);
unset($all_permissions['unl grant all permissions']);
unset($all_permissions['unl administer administrator permissions']);
unset($all_permissions['administer modules']);
unset($all_permissions['administer themes']);
unset($all_permissions['administer software updates']);
unset($all_permissions['administer imce']);
unset($all_permissions['administer filters']);
foreach ($all_filter_permissions as $permission) {
unset($all_permissions[$permission]);
}
user_role_grant_permissions($site_admin_role->rid, array_keys($all_permissions));
// Text Format/WYSIWYG specific permissions.
db_query("DELETE FROM {$new_prefix}role_permission WHERE permission LIKE :permission", array('permission' => 'use text format%'));
$wysiwyg_permissions = array();
$data = db_query("SELECT DISTINCT permission FROM {$shared_prefix}role_permission WHERE permission LIKE :permission", array('permission' => 'use text format%'));
foreach ($data as $row) {
if (!in_array($row->permission, $all_filter_permissions)) {
continue;
}
$wysiwyg_permissions[] = $row->permission;
}
user_role_grant_permissions(DRUPAL_AUTHENTICATED_RID, $wysiwyg_permissions);
user_role_grant_permissions(variable_get('user_admin_role'), $wysiwyg_permissions);
user_role_grant_permissions($site_admin_role->rid, $wysiwyg_permissions);
// If a site admin has been specified, add that user and add them to the Site Admin role.
$data = db_query(
"SELECT * "
......@@ -323,6 +288,7 @@ EOF;
);
foreach ($data as $row) {
if ($row->site_admin) {
$site_admin_role = user_role_load_by_name('Site Admin');
$account = unl_cas_import_user($row->site_admin);
$userData = array(
'roles' => array($site_admin_role->rid => $site_admin_role->name),
......
......@@ -434,7 +434,7 @@ function unl_form_alter(&$form, $form_state, $form_id) {
}
// Add the Roles checkboxes to the user edit form for users with ability to 'Administer users' but not 'Administer permissions' (Code below partially taken from user.module)
if (in_array($form_id, array('user_register_form', 'user_profile_form')) && !user_access('administer permissions')) {
if (in_array($form_id, array('user_register_form', 'user_profile_form')) && user_access('administer users') && !user_access('administer permissions')) {
$register = ($form['#user']->uid > 0 ? FALSE : TRUE);
$account = $form['#user'];
$roles = array_map('check_plain', user_roles(TRUE));
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment