Commit 3fc192fcf0021154b544386b3ffad9ecd69b45fb
Committed by
Daniela Feitosa
1 parent
fdf61a5a
Exists in
master
and in
29 other branches
[multiple-templates] Adding manage_environment_templates permission
(ActionItem2378)
Showing
4 changed files
with
21 additions
and
1 deletions
Show diff stats
app/models/environment.rb
... | ... | @@ -24,6 +24,7 @@ class Environment < ActiveRecord::Base |
24 | 24 | 'manage_environment_roles' => N_('Manage environment roles'), |
25 | 25 | 'manage_environment_validators' => N_('Manage environment validators'), |
26 | 26 | 'manage_environment_users' => N_('Manage environment users'), |
27 | + 'manage_environment_templates' => N_('Manage environment templates'), | |
27 | 28 | } |
28 | 29 | |
29 | 30 | module Roles | ... | ... |
db/migrate/20120718145131_add_manage_environment_templates_to_admin_role.rb
0 → 100644
... | ... | @@ -0,0 +1,17 @@ |
1 | +class AddManageEnvironmentTemplatesToAdminRole < ActiveRecord::Migration | |
2 | + def self.up | |
3 | + Environment.all.map(&:id).each do |id| | |
4 | + role = Environment::Roles.admin(id) | |
5 | + role.permissions << 'manage_environment_templates' | |
6 | + role.save! | |
7 | + end | |
8 | + end | |
9 | + | |
10 | + def self.down | |
11 | + Environment.all.map(&:id).each do |id| | |
12 | + role = Environment::Roles.admin(id) | |
13 | + role.permissions -= ['manage_environment_templates'] | |
14 | + role.save! | |
15 | + end | |
16 | + end | |
17 | +end | ... | ... |
test/factories.rb
... | ... | @@ -58,7 +58,7 @@ module Noosfero::Factory |
58 | 58 | ###### old stuff to be rearranged |
59 | 59 | def create_admin_user(env) |
60 | 60 | admin_user = User.find_by_login('adminuser') || create_user('adminuser', :email => 'adminuser@noosfero.org', :password => 'adminuser', :password_confirmation => 'adminuser', :environment => env) |
61 | - admin_role = Role.find_by_name('admin_role') || Role.create!(:name => 'admin_role', :permissions => ['view_environment_admin_panel','edit_environment_features', 'edit_environment_design', 'manage_environment_categories', 'manage_environment_roles', 'manage_environment_validators', 'manage_environment_users']) | |
61 | + admin_role = Role.find_by_name('admin_role') || Role.create!(:name => 'admin_role', :permissions => ['view_environment_admin_panel','edit_environment_features', 'edit_environment_design', 'manage_environment_categories', 'manage_environment_roles', 'manage_environment_validators', 'manage_environment_users', 'manage_environment_templates']) | |
62 | 62 | RoleAssignment.create!(:accessor => admin_user.person, :role => admin_role, :resource => env) unless admin_user.person.role_assignments.map{|ra|[ra.role, ra.accessor, ra.resource]}.include?([admin_role, admin_user, env]) |
63 | 63 | admin_user.login |
64 | 64 | end | ... | ... |
test/fixtures/roles.yml
... | ... | @@ -34,6 +34,7 @@ four: |
34 | 34 | - moderate_comments |
35 | 35 | - perform_task |
36 | 36 | - manage_environment_users |
37 | + - manage_environment_templates | |
37 | 38 | profile_admin: |
38 | 39 | id: 5 |
39 | 40 | environment_id: 1 |
... | ... | @@ -86,3 +87,4 @@ environment_administrator: |
86 | 87 | - manage_environment_users |
87 | 88 | - edit_profile |
88 | 89 | - destroy_profile |
90 | + - manage_environment_templates | ... | ... |