summaryrefslogtreecommitdiff
path: root/app/models/member.rb
diff options
context:
space:
mode:
Diffstat (limited to 'app/models/member.rb')
-rw-r--r--app/models/member.rb53
1 files changed, 6 insertions, 47 deletions
diff --git a/app/models/member.rb b/app/models/member.rb
index cea6d259760..d3060f07fc0 100644
--- a/app/models/member.rb
+++ b/app/models/member.rb
@@ -26,28 +26,20 @@ class Member < ActiveRecord::Base
allow_nil: true
}
- scope :invite, -> { where.not(invite_token: nil) }
- scope :non_invite, -> { where(invite_token: nil) }
- scope :request, -> { where.not(requested_at: nil) }
- scope :non_request, -> { where(requested_at: nil) }
- scope :non_pending, -> { non_request.non_invite }
-
+ scope :invite, -> { where(user_id: nil) }
+ scope :non_invite, -> { where("user_id IS NOT NULL") }
scope :guests, -> { where(access_level: GUEST) }
scope :reporters, -> { where(access_level: REPORTER) }
scope :developers, -> { where(access_level: DEVELOPER) }
scope :masters, -> { where(access_level: MASTER) }
scope :owners, -> { where(access_level: OWNER) }
- scope :owners_and_masters, -> { where(access_level: [OWNER, MASTER]) }
before_validation :generate_invite_token, on: :create, if: -> (member) { member.invite_email.present? }
-
after_create :send_invite, if: :invite?
- after_create :send_request, if: :request?
- after_create :create_notification_setting, unless: :pending?
- after_create :post_create_hook, unless: :pending?
- after_update :post_update_hook, unless: :pending?
- after_destroy :post_destroy_hook, unless: :pending?
- after_destroy :post_decline_request, if: :request?
+ after_create :create_notification_setting, unless: :invite?
+ after_create :post_create_hook, unless: :invite?
+ after_update :post_update_hook, unless: :invite?
+ after_destroy :post_destroy_hook, unless: :invite?
delegate :name, :username, :email, to: :user, prefix: true
@@ -104,31 +96,10 @@ class Member < ActiveRecord::Base
end
end
- def real_source_type
- source_type
- end
-
def invite?
self.invite_token.present?
end
- def request?
- requested_at.present?
- end
-
- def pending?
- invite? || request?
- end
-
- def accept_request
- return false unless request?
-
- updated = self.update(requested_at: nil)
- after_accept_request if updated
-
- updated
- end
-
def accept_invite!(new_user)
return false unless invite?
@@ -186,10 +157,6 @@ class Member < ActiveRecord::Base
# override in subclass
end
- def send_request
- # override in subclass
- end
-
def post_create_hook
system_hook_service.execute_hooks_for(self, :create)
end
@@ -210,14 +177,6 @@ class Member < ActiveRecord::Base
# override in subclass
end
- def after_accept_request
- post_create_hook
- end
-
- def post_decline_request
- # override in subclass
- end
-
def system_hook_service
SystemHooksService.new
end