class Umd::UMD
Public Class Methods
corrected_options_hash(opts)
click to toggle source
# File lib/umd.rb, line 10 def self.corrected_options_hash(opts) options_hash = opts if options_hash[:departments].is_a?(Array) options_hash[:departments] = options_hash[:departments].join(',') end # This must remain beneath the flattening of the array into a string if options_hash[:departments].is_a?(String) options_hash[:departments].upcase! end if options_hash[:sort] options_hash[:sort] = self.formatted_sort_hash(options_hash[:sort]) end options_hash end
course_list(options={})
click to toggle source
# File lib/umd.rb, line 76 def self.course_list(options={}) final_options = corrected_options_hash(options) self.get('/courses/list', {query: final_options}) end
courses(course_ids=nil, options={})
click to toggle source
def self.courses
self.courses(nil)
end
# def self.courses(options = {}) # final_options = corrected_options_hash
(options) # # self.get('/courses', {query: final_options}) # end
# File lib/umd.rb, line 53 def self.courses(course_ids=nil, options={}) if course_ids.is_a?(Hash) options = course_ids course_ids = nil end final_options = corrected_options_hash(options) path = '/courses' if !course_ids.nil? path = '/courses/' if course_ids.is_a?(Array) path = path + course_ids.map { |s| s.to_s.downcase }.join(',') else path = path + course_ids.downcase end end self.get(path, {query: final_options}) end
departments(options={})
click to toggle source
# File lib/umd.rb, line 96 def self.departments(options={}) self.get('/courses/departments', {query: corrected_options_hash(options)}) end
formatted_sort_hash(sort_hash)
click to toggle source
# File lib/umd.rb, line 29 def self.formatted_sort_hash(sort_hash) final_string = "" if sort_hash[:asc] final_string = sort_hash[:asc].map { |attribute| attribute.to_s }.join(',') + "," end if sort_hash[:desc] final_string = final_string + sort_hash[:desc].map { |attribute| "-#{attribute}" }.join(',') end final_string end
professors(options={})
click to toggle source
# File lib/umd.rb, line 100 def self.professors(options={}) final_options = corrected_options_hash(options) self.get('/professors', {query: final_options}) end
sections(section_ids, options={})
click to toggle source
# File lib/umd.rb, line 82 def self.sections(section_ids, options={}) final_options = corrected_options_hash(options) path = '/sections/' if section_ids.is_a?(Array) path = path + section_ids.map { |s| s.to_s.downcase }.join(',') else path = path + section_ids.downcase end self.get(path, {query: final_options}) end