Commit d839f6c52571e3b873a05779b1131f7b00670b31
Committed by
Dmitriy Zaporozhets
1 parent
e52fec9c
Exists in
master
and in
4 other branches
Remove simple code duplication in members controllers
Showing
3 changed files
with
3 additions
and
4 deletions
Show diff stats
app/controllers/admin/teams/members_controller.rb
1 | 1 | class Admin::Teams::MembersController < Admin::Teams::ApplicationController |
2 | 2 | def new |
3 | - @users = User.active | |
4 | - @users = @users.not_in_team(user_team) if user_team.members.any? | |
3 | + @users = User.potential_team_members(user_team) | |
5 | 4 | @users = UserDecorator.decorate @users |
6 | 5 | end |
7 | 6 | ... | ... |
app/controllers/teams/members_controller.rb
... | ... | @@ -7,8 +7,7 @@ class Teams::MembersController < Teams::ApplicationController |
7 | 7 | end |
8 | 8 | |
9 | 9 | def new |
10 | - @users = User.active | |
11 | - @users = @users.not_in_team(user_team) if user_team.members.any? | |
10 | + @users = User.potential_team_members(user_team) | |
12 | 11 | @users = UserDecorator.decorate @users |
13 | 12 | end |
14 | 13 | ... | ... |
app/models/user.rb
... | ... | @@ -91,6 +91,7 @@ class User < ActiveRecord::Base |
91 | 91 | scope :alphabetically, order('name ASC') |
92 | 92 | scope :in_team, ->(team){ where(id: team.member_ids) } |
93 | 93 | scope :not_in_team, ->(team){ where('users.id NOT IN (:ids)', ids: team.member_ids) } |
94 | + scope :potential_team_members, ->(team) { team.members.any? ? active : active.not_in_team(team) } | |
94 | 95 | |
95 | 96 | # |
96 | 97 | # Class methods | ... | ... |