lib/atcoder_greedy/lib/contest.rb in atcoder_greedy-0.5.0 vs lib/atcoder_greedy/lib/contest.rb in atcoder_greedy-0.6.0
- old
+ new
@@ -3,11 +3,11 @@
require 'atcoder_greedy/lib/atcoder'
require 'atcoder_greedy'
require 'atcoder_greedy/lib/greedy_template'
class Contest
- attr_accessor :name, :url, :dir, :problems
+ attr_accessor :name, :url, :dir, :problems, :date
def initialize(url, **options)
if options[:language] != ''
@language = options[:language]
else
@@ -34,10 +34,11 @@
def set_contest_info(option_problems)
print 'Set contest info ... '
@name = URI.parse(@url).host.split('.').first
html = @agent.get(@url + '/assignments').content.toutf8
doc = Nokogiri::HTML.parse(html, nil, 'utf8')
+ @date = Date.parse(doc.xpath('//time').first.text)
all_problems = []
task_ids = []
doc.xpath('//tbody').each do |tbody|
tbody.xpath('.//a[starts-with(@href,"/submit")]').each do |a|
@@ -89,16 +90,16 @@
puts 'Done!'
end
def create_templates(option_template)
print 'Create Templates ... '
- if option_template == ''
- # use user default or system default template
- if AtcoderGreedy.config[:default_template][:"#{@language}"] != ''
- solve_template = open(AtcoderGreedy.config[:default_template][:"#{@language}"], &:read)
- else
+ if option_template.to_s == ''
+ # use system default or user default template
+ if AtcoderGreedy.config[:default_template][:"#{@language}"].nil? || AtcoderGreedy.config[:default_template][:"#{@language}"].to_s == ''
solve_template = open(File.dirname(__dir__) + '/templates' + "/#{@language}/solve.#{@language}", &:read)
+ else
+ solve_template = open(AtcoderGreedy.config[:default_template][:"#{@language}"], &:read)
end
else
# use option_template
template_path = GreedyTemplate.get_template_path(option_template)
if template_path.nil?
@@ -120,10 +121,10 @@
puts 'Done!'
end
def set_directories(directory)
print 'Set contest directory ... '
- if directory == ''
+ if directory.to_s == ''
FileUtils.mkdir(@name)
@dir = "./#{@name}"
else
if Dir.exists?(directory)
@dir = directory
\ No newline at end of file