Module: Mongoid::Userstamp

Extended by:
ActiveSupport::Concern
Defined in:
lib/mongoid/userstamp.rb,
lib/mongoid/userstamp/user.rb,
lib/mongoid/userstamp/config.rb,
lib/mongoid/userstamp/railtie.rb,
lib/mongoid/userstamp/version.rb

Defined Under Namespace

Modules: User, Version Classes: Config, Railtie

Class Method Summary collapse

Class Method Details

.config(&block) ⇒ Object Also known as: configure



44
45
46
47
48
49
50
# File 'lib/mongoid/userstamp.rb', line 44

def config(&block)
  if block_given?
    @@config = Userstamp::Config.new(&block)
  else
    @@config ||= Userstamp::Config.new
  end
end

.current_userObject



63
64
65
# File 'lib/mongoid/userstamp.rb', line 63

def current_user
  config.user_model.try(:current)
end

.extract_bson_id(value) ⇒ Object



67
68
69
70
71
72
73
74
75
# File 'lib/mongoid/userstamp.rb', line 67

def extract_bson_id(value)
  if value.respond_to?(:_id)
    value.try(:_id)
  elsif value.present?
    ::Moped::BSON::ObjectId.from_string(value.to_s)
  else
    nil
  end
end

.field_opts(opts) ⇒ Object



55
56
57
# File 'lib/mongoid/userstamp.rb', line 55

def field_opts(opts)
  {type: ::Moped::BSON::ObjectId}.reverse_merge(opts || {})
end

.find_user(user_id) ⇒ Object



77
78
79
80
81
82
83
# File 'lib/mongoid/userstamp.rb', line 77

def find_user(user_id)
  begin
    user_id ? Userstamp.config.user_model.unscoped.find(user_id) : nil
  rescue Mongoid::Errors::DocumentNotFound => e
    nil
  end
end

.has_current_user?Boolean

Returns:

  • (Boolean)


59
60
61
# File 'lib/mongoid/userstamp.rb', line 59

def has_current_user?
  config.user_model.respond_to?(:current)
end