From: Jean-Philippe Lang Date: Thu, 11 Jul 2013 19:35:40 +0000 (+0000) Subject: Adds 'assigned-to-my-group' css class to issues that are assigned to a user's group... X-Git-Tag: 2.4.0~218 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=80b1a73ccf5b536db55ffe4e88833e1d4c78bccb;p=redmine.git Adds 'assigned-to-my-group' css class to issues that are assigned to a user's group (#12681). git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@12006 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- diff --git a/app/models/issue.rb b/app/models/issue.rb index e68dc02f7..ccedcfd4c 100644 --- a/app/models/issue.rb +++ b/app/models/issue.rb @@ -1041,15 +1041,18 @@ class Issue < ActiveRecord::Base end # Returns a string of css classes that apply to the issue - def css_classes + def css_classes(user=User.current) s = "issue tracker-#{tracker_id} status-#{status_id} #{priority.try(:css_classes)}" s << ' closed' if closed? s << ' overdue' if overdue? s << ' child' if child? s << ' parent' unless leaf? s << ' private' if is_private? - s << ' created-by-me' if User.current.logged? && author_id == User.current.id - s << ' assigned-to-me' if User.current.logged? && assigned_to_id == User.current.id + if user.logged? + s << ' created-by-me' if author_id == user.id + s << ' assigned-to-me' if assigned_to_id == user.id + s << ' assigned-to-my-group' if user.groups.any? {|g| g.id = assigned_to_id} + end s end diff --git a/test/unit/issue_test.rb b/test/unit/issue_test.rb index ecebb262e..ce5c50ac7 100644 --- a/test/unit/issue_test.rb +++ b/test/unit/issue_test.rb @@ -2169,6 +2169,18 @@ class IssueTest < ActiveSupport::TestCase assert_include 'priority-highest', classes end + def test_css_classes_should_include_user_assignment + issue = Issue.generate(:assigned_to_id => 2) + assert_include 'assigned-to-me', issue.css_classes(User.find(2)) + assert_not_include 'assigned-to-me', issue.css_classes(User.find(3)) + end + + def test_css_classes_should_include_user_group_assignment + issue = Issue.generate(:assigned_to_id => 10) + assert_include 'assigned-to-my-group', issue.css_classes(Group.find(10).users.first) + assert_not_include 'assigned-to-my-group', issue.css_classes(User.find(3)) + end + def test_save_attachments_with_hash_should_save_attachments_in_keys_order set_tmp_attachments_directory issue = Issue.generate!