class Alma::RenewalResponse

Public Class Methods

new(response) click to toggle source
# File lib/alma/renewal_response.rb, line 5
def initialize(response)
  @raw_response = response
  @response = response.parsed_response
  @success  = response.has_key?("loan_id")
end

Public Instance Methods

due_date() click to toggle source
# File lib/alma/renewal_response.rb, line 24
def due_date
  @response.fetch("due_date", "")
end
due_date_pretty() click to toggle source
# File lib/alma/renewal_response.rb, line 29
def due_date_pretty
  Time.parse(due_date).strftime("%m-%e-%y %H:%M")
end
error_message() click to toggle source
# File lib/alma/renewal_response.rb, line 49
def error_message
  @response unless renewed?
end
has_error?() click to toggle source
# File lib/alma/renewal_response.rb, line 20
def has_error?
  !renewed?
end
item_title() click to toggle source
# File lib/alma/renewal_response.rb, line 33
def item_title
  if renewed?
    @response["title"]
  else
    "This Item"
  end
end
loggable() click to toggle source
# File lib/alma/renewal_response.rb, line 11
def loggable
  { uri: @raw_response&.request&.uri.to_s
  }.select { |k, v| !(v.nil? || v.empty?) }
end
message() click to toggle source
# File lib/alma/renewal_response.rb, line 41
def message
  if renewed?
    "#{item_title} is now due #{due_date}"
  else
    "#{item_title} could not be renewed."
  end
end
renewed?() click to toggle source
# File lib/alma/renewal_response.rb, line 16
def renewed?
  @success
end