Feature #42589 » optimize-watchers_list-v2.patch
app/helpers/watchers_helper.rb | ||
---|---|---|
48 | 48 |
def watchers_list(object) |
49 | 49 |
remove_allowed = User.current.allowed_to?(:"delete_#{object.class.name.underscore}_watchers", object.project) |
50 | 50 |
content = ''.html_safe |
51 |
lis = object.watcher_users.sorted.collect do |user| |
|
51 |
scope = object.watcher_users |
|
52 |
scope = scope.includes(:email_address) if Setting.gravatar_enabled? |
|
53 |
lis = scope.sorted.collect do |user| |
|
52 | 54 |
s = ''.html_safe |
53 | 55 |
s << avatar(user, :size => "16").to_s if user.is_a?(User) |
54 | 56 |
s << link_to_principal(user, class: user.class.to_s.downcase) |
app/models/principal.rb | ||
---|---|---|
35 | 35 |
:foreign_key => 'user_id' |
36 | 36 |
has_many :projects, :through => :memberships |
37 | 37 |
has_many :issue_categories, :foreign_key => 'assigned_to_id', :dependent => :nullify |
38 |
# Always returns nil for groups |
|
39 |
has_one :email_address, lambda {where :is_default => true}, :autosave => true, :foreign_key => 'user_id' |
|
38 | 40 | |
39 | 41 |
validate :validate_status |
40 | 42 |
app/models/user.rb | ||
---|---|---|
91 | 91 |
has_one :preference, :dependent => :destroy, :class_name => 'UserPreference' |
92 | 92 |
has_one :atom_token, lambda {where "action='feeds'"}, :class_name => 'Token' |
93 | 93 |
has_one :api_token, lambda {where "action='api'"}, :class_name => 'Token' |
94 |
has_one :email_address, lambda {where :is_default => true}, :autosave => true |
|
95 | 94 |
has_many :email_addresses, :dependent => :delete_all |
96 | 95 |
belongs_to :auth_source |
97 | 96 |
- « Previous
- 1
- 2
- Next »