Project

General

Profile

Patch #19982 » 0003-Replace-tabs-with-spaces-at-app-models-member.rb-19707.diff

Mischa The Evil, 2015-06-02 03:34

View differences:

app/models/member.rb
76 76
    end
77 77
  end
78 78

  
79
	# Set member role ids ignoring any change to roles that
80
	# user is not allowed to manage
79
  # Set member role ids ignoring any change to roles that
80
  # user is not allowed to manage
81 81
  def set_editable_role_ids(ids, user=User.current)
82 82
    ids = (ids || []).collect(&:to_i) - [0]
83 83
    editable_role_ids = user.managed_roles(project).map(&:id)
......
86 86
    self.role_ids = untouched_role_ids + touched_role_ids
87 87
  end
88 88

  
89
	# Returns true if one of the member roles is inherited
89
  # Returns true if one of the member roles is inherited
90 90
  def any_inherited_role?
91 91
    member_roles.any? {|mr| mr.inherited_from}
92 92
  end
93 93

  
94
	# Returns true if the member has the role and if it's inherited
94
  # Returns true if the member has the role and if it's inherited
95 95
  def has_inherited_role?(role)
96 96
    member_roles.any? {|mr| mr.role_id == role.id && mr.inherited_from.present?}
97 97
  end
98 98

  
99
	# Returns true if the member's role is editable by user
99
  # Returns true if the member's role is editable by user
100 100
  def role_editable?(role, user=User.current)
101 101
    if has_inherited_role?(role)
102 102
      false
......
105 105
    end
106 106
  end
107 107

  
108
	# Returns true if the member is deletable by user
108
  # Returns true if the member is deletable by user
109 109
  def deletable?(user=User.current)
110 110
    if any_inherited_role?
111 111
      false
......
114 114
    end
115 115
  end
116 116

  
117
	# Destroys the member
117
  # Destroys the member
118 118
  def destroy
119 119
    member_roles.reload.each(&:destroy_without_member_removal)
120 120
    super
121 121
  end
122 122

  
123
	# Returns true if the member is user or is a group
124
	# that includes user
123
  # Returns true if the member is user or is a group
124
  # that includes user
125 125
  def include?(user)
126 126
    if principal.is_a?(Group)
127 127
      !user.nil? && user.groups.include?(principal)
(6-6/6)