Class: HomePageConstraint

Inherits:
Object
  • Object
show all
Defined in:
lib/homepage_constraint.rb

Instance Method Summary collapse

Constructor Details

#initialize(filter) ⇒ HomePageConstraint

Returns a new instance of HomePageConstraint.



4
5
6
# File 'lib/homepage_constraint.rb', line 4

def initialize(filter)
  @filter = filter
end

Instance Method Details

#matches?(request) ⇒ Boolean

Returns:

  • (Boolean)


8
9
10
11
12
13
14
15
16
# File 'lib/homepage_constraint.rb', line 8

def matches?(request)
  return @filter == "finish_installation" if SiteSetting.

  current_user = CurrentUser.lookup_from_env(request.env)
  homepage = current_user&.user_option&.homepage || SiteSetting.anonymous_homepage
  homepage == @filter
rescue Discourse::InvalidAccess, Discourse::ReadOnly
  false
end