Added permissions to view a rate. #2031

This commit is contained in:
Eric Davis
2009-01-26 14:40:03 -08:00
parent 55a3a4dbce
commit ba0ee9b6f8
3 changed files with 9 additions and 2 deletions

View File

@@ -15,4 +15,7 @@ Redmine::Plugin.register :redmine_rate do
version '0.1.0'
requires_redmine :version_or_higher => '0.8.0'
permission :view_rate, { }
permission :edit_rate, { }
end

View File

@@ -11,6 +11,7 @@ class RateProjectHook < Redmine::Hook::ViewListener
# * :project => Current project
#
def view_projects_settings_members_table_header(context ={ })
return '' unless (User.current.allowed_to?(:view_rate, context[:project]) || User.current.admin?)
return "<th>#{l(:rate_label_rate)} #{l(:rate_label_currency)}</td>"
end
@@ -24,6 +25,9 @@ class RateProjectHook < Redmine::Hook::ViewListener
def view_projects_settings_members_table_row(context = { })
member = context[:member]
project = context[:project]
return '' unless (User.current.allowed_to?(:view_rate, project) || User.current.admin?)
rate = Rate.for(member.user, project)
content = ''

View File

@@ -35,7 +35,7 @@ describe RatesController, "as regular user" do
end
before(:each) do
@user = mock_model(User, :logged? => true, :admin? => false, :anonymous? => false, :name => "Normal User", :memberships => [])
@user = mock_model(User, :logged? => true, :admin? => false, :anonymous? => false, :name => "Normal User", :memberships => [], :allowed_to? => true)
User.stub!(:current).and_return(@user)
end
@@ -130,7 +130,7 @@ describe RatesController, "as an administrator" do
end
before(:each) do
@user = mock_model(User, :logged? => true, :admin? => true, :anonymous? => false, :name => "Admin User", :memberships => [])
@user = mock_model(User, :logged? => true, :admin? => true, :anonymous? => false, :name => "Admin User", :memberships => [], :allowed_to? => true)
User.stub!(:current).and_return(@user)
end