module Negroni::Models::Lockable::ClassMethods
Class Methods for Lockable
Constants
- BOTH_STRATEGIES
@private
Public Instance Methods
lock_strategy_enabled?(strategy)
click to toggle source
@param strategy [Symbol] the name of the strategy.
@return [Boolean] if the strategy is enabled.
# File lib/negroni/models/lockable.rb, line 200 def lock_strategy_enabled?(strategy) lock_strategy == strategy end
send_unlock_instructions(attributes = {})
click to toggle source
Attempt to find a user by its unlock keys. If a record is found, send new unlock instructions to it. If not user is found, returns a new user with an email not found error. Options must contain the user's unlock keys Checks if a given lock strategy is enabled.
# File lib/negroni/models/lockable.rb, line 175 def send_unlock_instructions(attributes = {}) lockable = find_or_initialize_with_errors( unlock_keys, attributes, :not_found ) lockable.resend_unlock_instructions if lockable.persisted? lockable end
unlock_access_by_token(token)
click to toggle source
Find a user by its unlock token and try to unlock it. If no user is found, returns a new user with an error. If the user is not locked, creates an error for the user Options must have the unlock_token
# File lib/negroni/models/lockable.rb, line 187 def unlock_access_by_token(token) orig = token token = Negroni.token_generator.digest(self, :unlock_token, token) lockable = find_or_initialize_with_error_by(:unlock_token, token) lockable.unlock_access! if lockable.persisted? lockable.unlock_token = orig lockable end
unlock_strategy_enabled?(strategy)
click to toggle source
Checks if a given unlock strategy is enabled.
@param strategy [Symbol] the name of the strategy.
@return [Boolean] if the strategy is enabled.
# File lib/negroni/models/lockable.rb, line 209 def unlock_strategy_enabled?(strategy) unlock_strategy == strategy || (unlock_strategy == :both && BOTH_STRATEGIES.include?(strategy)) end