class Martlet::Client

Attributes

email[R]

Public Class Methods

new(email, password) click to toggle source
# File lib/martlet/client.rb, line 7
def initialize(email, password)
  @agent = Mechanize.new
  @email = email.include?('@') ? email : "#{email}@mail.mcgill.ca"
  
  authenticator = Authenticator.new(@agent)
  authenticator.authenticate(@email, password)
end

Public Instance Methods

courses(semester, year) click to toggle source
# File lib/martlet/client.rb, line 24
def courses(semester, year)
  schedule(semester, year).fetch_courses
end
export_calendar(filename, courses) click to toggle source
# File lib/martlet/client.rb, line 28
def export_calendar(filename, courses)
  exporter = CalendarExporter.new(filename, courses)
  exporter.export
end
grades() click to toggle source
# File lib/martlet/client.rb, line 15
def grades
  transcript = Transcript.new(@agent)
  transcript.fetch_grades
end
schedule(semester, year) click to toggle source
# File lib/martlet/client.rb, line 20
def schedule(semester, year)
  Schedule.new(@agent, semester, year)
end