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.rb14
1 files changed, 14 insertions, 0 deletions
diff --git a/app/models/member.rb b/app/models/member.rb
index d8cc65ca6cb..2421222eaa2 100644
--- a/app/models/member.rb
+++ b/app/models/member.rb
@@ -76,6 +76,16 @@ class Member < ActiveRecord::Base
saved
end
+ def decline_invite!
+ return false unless invite?
+
+ destroyed = self.destroy
+
+ after_decline_invite if destroyed
+
+ destroyed
+ end
+
def generate_invite_token
raw, enc = Devise.token_generator.generate(self.class, :invite_token)
@raw_invite_token = raw
@@ -116,6 +126,10 @@ class Member < ActiveRecord::Base
post_create_hook
end
+ def after_decline_invite
+ # override in subclass
+ end
+
def system_hook_service
SystemHooksService.new
end