29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
# File 'lib/martlet/cli.rb', line 29
def courses(semester = nil, year = nil)
if semester.nil? || year.nil?
semester, year = current_semester_and_year
end
puts 'Fetching courses...'
schedule = client.schedule(semester, year)
courses = schedule.fetch_courses
course_name_size = courses.map { |c| c.name.length }.max
puts "#{semester.capitalize} #{year} courses"
courses.each do |course|
course_row_format = "%-11s %-#{course_name_size}s @ %s\n"
printf course_row_format, "#{course.number}", course.name, course.location
end
puts 'No courses found' if courses.empty?
if options[:export] && !courses.empty?
filename = "#{semester}_#{year}.ics"
puts "Exporting courses to #{filename}..."
client.export_calendar(filename, courses)
end
end
|