Module: Sufia::User::ClassMethods

Defined in:
app/models/concerns/sufia/user.rb

Instance Method Summary collapse

Instance Method Details

#audit_userObject Also known as: audituser

Override this method if you aren’t using email/password



125
126
127
# File 'app/models/concerns/sufia/user.rb', line 125

def audit_user
  find_or_create_system_user(audit_user_key)
end

#audit_user_keyObject



132
133
134
# File 'app/models/concerns/sufia/user.rb', line 132

def audit_user_key
  Sufia.config.audit_user_key
end

#batch_userObject Also known as: batchuser

Override this method if you aren’t using email/password



137
138
139
# File 'app/models/concerns/sufia/user.rb', line 137

def batch_user
  find_or_create_system_user(batch_user_key)
end

#batch_user_keyObject



144
145
146
# File 'app/models/concerns/sufia/user.rb', line 144

def batch_user_key
  Sufia.config.batch_user_key
end

#find_or_create_system_user(user_key) ⇒ Object



148
149
150
# File 'app/models/concerns/sufia/user.rb', line 148

def find_or_create_system_user(user_key)
  User.find_by_user_key(user_key) || User.create!(Devise.authentication_keys.first => user_key, password: Devise.friendly_token[0, 20])
end

#from_url_component(component) ⇒ Object



152
153
154
# File 'app/models/concerns/sufia/user.rb', line 152

def from_url_component(component)
  User.find_by_user_key(component.gsub(/-dot-/, '.'))
end

#recent_users(start_date, end_date = nil) ⇒ Object



156
157
158
159
# File 'app/models/concerns/sufia/user.rb', line 156

def recent_users(start_date, end_date = nil)
  end_date ||= DateTime.current # doing or eq here so that if the user passes nil we still get now
  User.where(created_at: start_date..end_date)
end