Class: Team
- Inherits:
-
Object
- Object
- Team
- Defined in:
- lib/artisan/team.rb
Instance Attribute Summary collapse
-
#project ⇒ Object
readonly
Returns the value of attribute project.
Instance Method Summary collapse
- #add_team_member(user) ⇒ Object
- #add_team_owner(user) ⇒ Object
-
#initialize(project, current_user) ⇒ Team
constructor
A new instance of Team.
- #owner?(user) ⇒ Boolean
- #owners ⇒ Object
- #remove_user(user) ⇒ Object
- #user?(user) ⇒ Boolean
Constructor Details
#initialize(project, current_user) ⇒ Team
Returns a new instance of Team.
8 9 10 |
# File 'lib/artisan/team.rb', line 8 def initialize(project, current_user) @project = project end |
Instance Attribute Details
#project ⇒ Object (readonly)
Returns the value of attribute project.
6 7 8 |
# File 'lib/artisan/team.rb', line 6 def project @project end |
Instance Method Details
#add_team_member(user) ⇒ Object
12 13 14 |
# File 'lib/artisan/team.rb', line 12 def add_team_member(user) add_member(user, false) end |
#add_team_owner(user) ⇒ Object
16 17 18 |
# File 'lib/artisan/team.rb', line 16 def add_team_owner(user) add_member(user, true) end |
#owner?(user) ⇒ Boolean
20 21 22 23 |
# File 'lib/artisan/team.rb', line 20 def owner?(user) return false if project.nil? || !user?(user) project_repo.is_owner?(project, user) end |
#owners ⇒ Object
36 37 38 |
# File 'lib/artisan/team.rb', line 36 def owners project_repo.owners(project) end |
#remove_user(user) ⇒ Object
29 30 31 32 33 34 |
# File 'lib/artisan/team.rb', line 29 def remove_user(user) project_repo.remove_member(project, user) if !user.nil? Artisan::Member.new(OpenStruct.new(:user => user, :project => project)).remove_from_email_lists end end |
#user?(user) ⇒ Boolean
25 26 27 |
# File 'lib/artisan/team.rb', line 25 def user?(user) project_repo.is_member?(project, user) end |