Class: TrustLevelAndStaffAndDisabledSetting

Inherits:
TrustLevelAndStaffSetting show all
Defined in:
app/models/trust_level_and_staff_and_disabled_setting.rb

Class Method Summary collapse

Methods inherited from TrustLevelAndStaffSetting

special_group?, special_groups

Methods inherited from TrustLevelSetting

values

Methods inherited from EnumSiteSetting

translate_names?

Class Method Details

.matches?(value, user) ⇒ Boolean

Returns:

  • (Boolean)


20
21
22
23
24
25
26
27
28
29
30
31
# File 'app/models/trust_level_and_staff_and_disabled_setting.rb', line 20

def self.matches?(value, user)
  case value
  when "disabled"
    false
  when "staff"
    user.staff?
  when "admin"
    user.admin?
  else
    user.has_trust_level?(value.to_i) || user.staff?
  end
end

.translation(value) ⇒ Object



12
13
14
15
16
17
18
# File 'app/models/trust_level_and_staff_and_disabled_setting.rb', line 12

def self.translation(value)
  if value == "disabled"
    I18n.t("site_settings.disabled")
  else
    super
  end
end

.valid_value?(val) ⇒ Boolean

Returns:

  • (Boolean)


4
5
6
# File 'app/models/trust_level_and_staff_and_disabled_setting.rb', line 4

def self.valid_value?(val)
  valid_values.include?(val) || (val.to_i.to_s == val.to_s && valid_values.include?(val.to_i))
end

.valid_valuesObject



8
9
10
# File 'app/models/trust_level_and_staff_and_disabled_setting.rb', line 8

def self.valid_values
  ["disabled"] + TrustLevel.valid_range.to_a + special_groups
end