Class: YiffSpace::User::Current
- Inherits:
-
ActiveSupport::CurrentAttributes
- Object
- ActiveSupport::CurrentAttributes
- YiffSpace::User::Current
- Defined in:
- lib/yiffspace/user/current.rb
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize ⇒ Current
constructor
A new instance of Current.
- #user ⇒ Object
- #user=(value) ⇒ Object
Constructor Details
#initialize ⇒ Current
Returns a new instance of Current.
8 9 10 11 |
# File 'lib/yiffspace/user/current.rb', line 8 def initialize super reset end |
Class Method Details
.as_system ⇒ Object
38 39 40 |
# File 'lib/yiffspace/user/current.rb', line 38 def self.as_system(&) scoped(YiffSpace.config.system_user_getter.call, &) end |
.scoped(user, ip_addr = YiffSpace.config.default_ip_address) ⇒ Object
34 35 36 |
# File 'lib/yiffspace/user/current.rb', line 34 def self.scoped(user, ip_addr = YiffSpace.config.default_ip_address, &) set(user: user, ip_addr: ip_addr, &) end |
Instance Method Details
#user ⇒ Object
18 19 20 21 22 23 24 |
# File 'lib/yiffspace/user/current.rb', line 18 def user value = super return value if value.is_a?(YiffSpace.config.user_resolvable_class) || !value.is_a?(YiffSpace.config.user_class) return YiffSpace.config.user_resolvable_class.new(value, ip_addr) if ip_addr.present? value end |
#user=(value) ⇒ Object
26 27 28 29 30 31 32 |
# File 'lib/yiffspace/user/current.rb', line 26 def user=(value) if value.is_a?(YiffSpace.config.user_resolvable_class) self.ip_addr = value.ip_addr value = value.user end super end |