Module: WithTermsAcceptance

Included in:
User
Defined in:
app/models/concerns/with_terms_acceptance.rb

Instance Method Summary collapse

Instance Method Details

#accept_forum_terms!Object



30
31
32
# File 'app/models/concerns/with_terms_acceptance.rb', line 30

def accept_forum_terms!
  accept_terms! forum_terms
end

#accept_profile_terms!Object



26
27
28
# File 'app/models/concerns/with_terms_acceptance.rb', line 26

def accept_profile_terms!
  accept_terms! profile_terms
end

#forum_termsObject



18
19
20
# File 'app/models/concerns/with_terms_acceptance.rb', line 18

def forum_terms
  @forum_terms ||= Term.forum_related_terms
end

#has_accepted?(term) ⇒ Boolean

Returns:

  • (Boolean)


34
35
36
# File 'app/models/concerns/with_terms_acceptance.rb', line 34

def has_accepted?(term)
  term_accepted_at_for(term.scope).try { |it| it > term.updated_at }.present?
end

#has_forum_terms_to_accept?Boolean

Returns:

  • (Boolean)


2
3
4
# File 'app/models/concerns/with_terms_acceptance.rb', line 2

def has_forum_terms_to_accept?
  !has_accepted_all?(forum_terms)
end

#has_profile_terms_to_accept?Boolean

Returns:

  • (Boolean)


6
7
8
# File 'app/models/concerns/with_terms_acceptance.rb', line 6

def has_profile_terms_to_accept?
  !has_accepted_all?(profile_terms)
end

#has_role_terms_to_accept?Boolean

Returns:

  • (Boolean)


10
11
12
# File 'app/models/concerns/with_terms_acceptance.rb', line 10

def has_role_terms_to_accept?
  !has_accepted_all?(role_specific_terms)
end

#profile_termsObject



22
23
24
# File 'app/models/concerns/with_terms_acceptance.rb', line 22

def profile_terms
  @profile_terms ||= Term.profile_terms_for(self)
end

#role_specific_termsObject



14
15
16
# File 'app/models/concerns/with_terms_acceptance.rb', line 14

def role_specific_terms
  @role_specific_terms ||= Term.role_specific_terms_for(self)
end