diff options
author | Dries Buytaert <dries@buytaert.net> | 2009-08-27 20:25:29 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2009-08-27 20:25:29 +0000 |
commit | ee64752e10aed9d54674f5acacbd759e47d96467 (patch) | |
tree | 40a09a1d7103818457fce75ffa30e145794a1d39 /profiles | |
parent | c9e82a3b7f81833878433b07cee19a527536133d (diff) | |
download | brdo-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.install | 22 | ||||
-rw-r--r-- | profiles/expert/expert.install | 4 |
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')); } |