module Booker::CommonREST
Constants
- DEFAULT_PAGINATION_PARAMS
Public Instance Methods
confirm_appointment(appointment_id:)
click to toggle source
# File lib/booker/common_rest.rb, line 14 def confirm_appointment(appointment_id:) put '/appointment/confirm', build_params('ID' => appointment_id), Booker::Models::Appointment end
get_location(booker_location_id:)
click to toggle source
# File lib/booker/common_rest.rb, line 18 def get_location(booker_location_id:) response = get("/location/#{booker_location_id}", build_params) Booker::Models::Location.from_hash(response) end
get_online_booking_settings(booker_location_id:)
click to toggle source
# File lib/booker/common_rest.rb, line 9 def get_online_booking_settings(booker_location_id:) response = get("/location/#{booker_location_id}/online_booking_settings", build_params) Booker::Models::OnlineBookingSettings.from_hash(response['OnlineBookingSettings']) end
Private Instance Methods
build_params(default_params={}, overrides={}, paginated=false)
click to toggle source
# File lib/booker/common_rest.rb, line 25 def build_params(default_params={}, overrides={}, paginated=false) # merged = default_params.merge(overrides) # merged.merge({"access_token" => access_token}) unless merged.has_key?("access_token") original = {} unless overrides.has_key?(:access_token) original[:access_token] = access_token end merged = original.merge(default_params.merge(overrides)) merged.each do |k, v| if v.is_a?(Time) || v.is_a?(DateTime) merged[k] = Booker::Models::Model.time_to_booker_datetime(v) elsif v.is_a?(Date) merged[k] = Booker::Models::Model.time_to_booker_datetime(v.in_time_zone) end end if paginated DEFAULT_PAGINATION_PARAMS.merge(merged) else merged end end