class User

Attributes

user[R]

Public Class Methods

new(user_response) click to toggle source
# File lib/ft_42.rb, line 248
def initialize(user_response)
  @user = user_response
end

Public Instance Methods

cadet?() click to toggle source
# File lib/ft_42.rb, line 294
def cadet?
  !pisciner?
end
correction_points() click to toggle source
# File lib/ft_42.rb, line 272
def correction_points
  user["correction_point"]
end
current_projects() click to toggle source
# File lib/ft_42.rb, line 252
def current_projects
  if projects_in_progress.empty?
    return ["something, maybe..."]
  else
    return projects_in_progress.map { |in_prog| in_prog["project"]["name"] }
  end
end
first_name() click to toggle source
# File lib/ft_42.rb, line 260
def first_name
  user["first_name"]
end
full_name() click to toggle source
# File lib/ft_42.rb, line 268
def full_name
  "#{first_name} #{last_name}"
end
last_name() click to toggle source
# File lib/ft_42.rb, line 264
def last_name
  user["last_name"]
end
level() click to toggle source
# File lib/ft_42.rb, line 276
def level
  if pisciner?
    cursus("Piscine C").first["level"] if pisciner?
  elsif cadet?
    cursus("42").first["level"]
  else
    0
  end
end
phone() click to toggle source
# File lib/ft_42.rb, line 286
def phone
  %x(ldapsearch -Q uid=#{username} | grep mobile).split.last
end
pisciner?() click to toggle source
# File lib/ft_42.rb, line 290
def pisciner?
  cursus("42").empty?
end

Private Instance Methods

cursus(name) click to toggle source
# File lib/ft_42.rb, line 300
def cursus(name)
  user['cursus_users'].select { |cursus| cursus['cursus']['name'] == name }
end
projects_in_progress() click to toggle source
# File lib/ft_42.rb, line 304
def projects_in_progress
  user["projects_users"].select { |project| project["status"] == "in_progress" }
end