mirror of
https://github.com/codeninjasllc/discourse.git
synced 2024-11-30 19:08:10 -05:00
Refactor: Topic#invite_by_email
Extract Topic#email_already_existas_for? and Topic#grant_permission_to_user Fix failing spec due to missing variable in extracted method
This commit is contained in:
parent
db1f8370ee
commit
3a1e1e046b
1 changed files with 10 additions and 5 deletions
|
@ -426,11 +426,7 @@ class Topic < ActiveRecord::Base
|
||||||
invite = Invite.create(invited_by: invited_by, email: lower_email)
|
invite = Invite.create(invited_by: invited_by, email: lower_email)
|
||||||
unless invite.valid?
|
unless invite.valid?
|
||||||
|
|
||||||
# If the email already exists, grant permission to that user
|
grant_permission_to_user(lower_email) if email_already_exists_for?(invite)
|
||||||
if invite.email_already_exists and private_message?
|
|
||||||
user = User.where(email: lower_email).first
|
|
||||||
topic_allowed_users.create!(user_id: user.id)
|
|
||||||
end
|
|
||||||
|
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
@ -444,6 +440,15 @@ class Topic < ActiveRecord::Base
|
||||||
invite
|
invite
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def email_already_exists_for?(invite)
|
||||||
|
invite.email_already_exists and private_message?
|
||||||
|
end
|
||||||
|
|
||||||
|
def grant_permission_to_user(lower_email)
|
||||||
|
user = User.where(email: lower_email).first
|
||||||
|
topic_allowed_users.create!(user_id: user.id)
|
||||||
|
end
|
||||||
|
|
||||||
def max_post_number
|
def max_post_number
|
||||||
posts.maximum(:post_number).to_i
|
posts.maximum(:post_number).to_i
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue