Skip to content

Commit

Permalink
Add Auto calculating semester in LoadCourse service
Browse files Browse the repository at this point in the history
  • Loading branch information
jhang-jhe-wei committed Jul 24, 2022
1 parent 0aa32ef commit 974a496
Showing 1 changed file with 13 additions and 2 deletions.
15 changes: 13 additions & 2 deletions app/services/load_course.rb
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
class LoadCourse
def initialize(user, semester = 1101)
def initialize(user, semester = nil)
Capybara.default_max_wait_time = 1
Capybara.default_driver = :selenium_chrome_headless
@semester = semester
@semester ||= calculate_semester(Date.today)
@user = user
@user.courses.clear
end
Expand All @@ -26,6 +26,17 @@ def perform
end
private

def calculate_semester(date)
roc_year = (date - 1911.years).year
semester = 1
# 小於 6 月就算第二學期
if date.month < 6
roc_year -= 1
semester = 2
end
return "#{roc_year}#{semester}"
end

def course_urls
@b = Capybara.current_session
@b.visit("#{@user.crosslink_url}/timetable/#{@semester}")
Expand Down

0 comments on commit 974a496

Please sign in to comment.