summaryrefslogtreecommitdiff
path: root/profiles
diff options
context:
space:
mode:
authorDries Buytaert <dries@buytaert.net>2009-08-27 20:25:29 +0000
committerDries Buytaert <dries@buytaert.net>2009-08-27 20:25:29 +0000
commitee64752e10aed9d54674f5acacbd759e47d96467 (patch)
tree40a09a1d7103818457fce75ffa30e145794a1d39 /profiles
parentc9e82a3b7f81833878433b07cee19a527536133d (diff)
downloadbrdo-ee64752e10aed9d54674f5acacbd759e47d96467.tar.gz
brdo-ee64752e10aed9d54674f5acacbd759e47d96467.tar.bz2
- Patch #300993 by dropcube, Dave Reid: user roles and permission API. Great patch.
Diffstat (limited to 'profiles')
-rw-r--r--profiles/default/default.install22
-rw-r--r--profiles/expert/expert.install4
2 files changed, 14 insertions, 12 deletions
diff --git a/profiles/default/default.install b/profiles/default/default.install
index 7a81aecd5..60e5d012e 100644
--- a/profiles/default/default.install
+++ b/profiles/default/default.install
@@ -183,20 +183,18 @@ function default_install() {
))->execute();
db_insert('taxonomy_vocabulary_node_type')->fields(array('vid' => $vid, 'type' => 'article'))->execute();
- // Create a default role for site administrators.
- $rid = db_insert('role')->fields(array('name' => 'administrator'))->execute();
+ // Enable default permissions for system roles.
+ user_role_set_permissions(DRUPAL_ANONYMOUS_RID, array('access content'));
+ user_role_set_permissions(DRUPAL_AUTHENTICATED_RID, array('access content', 'access comments', 'post comments', 'post comments without approval'));
+
+ // Create a default role for site administrators, with all available permissions assigned.
+ $admin_role = new stdClass();
+ $admin_role->name = 'administrator';
+ user_role_save($admin_role);
+ user_role_set_permissions($admin_role->name, array_keys(module_invoke_all('permission')));
// Set this as the administrator role.
- variable_set('user_admin_role', $rid);
-
- // Assign all available permissions to this role.
- foreach (module_invoke_all('permission') as $key => $value) {
- db_insert('role_permission')
- ->fields(array(
- 'rid' => $rid,
- 'permission' => $key,
- ))->execute();
- }
+ variable_set('user_admin_role', $admin_role->rid);
// Update the menu router information.
menu_rebuild();
diff --git a/profiles/expert/expert.install b/profiles/expert/expert.install
index bcb6cfff8..4693b84b4 100644
--- a/profiles/expert/expert.install
+++ b/profiles/expert/expert.install
@@ -66,6 +66,10 @@ function expert_install() {
$query->values($record);
}
$query->execute();
+
+ // Enable default permissions for system roles.
+ user_role_set_permissions(DRUPAL_ANONYMOUS_RID, array('access content'));
+ user_role_set_permissions(DRUPAL_AUTHENTICATED_RID, array('access content', 'access comments', 'post comments', 'post comments without approval'));
}