class Ehpt::GetUserIdFromInitial

Attributes

initial[R]

Public Class Methods

memberships() click to toggle source
# File lib/ehpt/get_user_id_from_initial.rb, line 7
def self.memberships
  @@memberships
end
memberships=(memberships) click to toggle source
# File lib/ehpt/get_user_id_from_initial.rb, line 11
def self.memberships=(memberships)
  @@memberships = memberships
end
new(initial) click to toggle source
Calls superclass method Ehpt::Base::new
# File lib/ehpt/get_user_id_from_initial.rb, line 15
def initialize(initial)
  @initial = initial
  super
end

Public Instance Methods

call() click to toggle source
# File lib/ehpt/get_user_id_from_initial.rb, line 20
def call
  fetch_memberships_from_pt!

  if user.nil?
    add_error("Not found any user with initial #{initial}")
  else
    @data = user.id
  end
rescue StandardError => e
  add_error(eval(e.message)[:body])
end

Private Instance Methods

fetch_memberships_from_pt!() click to toggle source
# File lib/ehpt/get_user_id_from_initial.rb, line 38
def fetch_memberships_from_pt!
  self.class.memberships ||= Ehpt.project.memberships
end
memberships() click to toggle source
# File lib/ehpt/get_user_id_from_initial.rb, line 34
def memberships
  self.class.memberships
end
user() click to toggle source
# File lib/ehpt/get_user_id_from_initial.rb, line 42
def user
  member = memberships.find do |membership|
    membership.person.initials.downcase == initial.downcase
  end
  member && member.person
end