lib/jekyll-indico/generator.rb in jekyll-indico-0.3.0 vs lib/jekyll-indico/generator.rb in jekyll-indico-0.4.0
- old
+ new
@@ -4,27 +4,36 @@
require 'jekyll'
require 'jekyll-indico/core'
+require 'net/http'
+
module JekyllIndico
# This is a Jekyll Generator
class GetIndico < Jekyll::Generator
# Main entry point for Jekyll
def generate(site)
@site = site
@cache_msg = @site.config.dig('indico', 'cache-command')
- meeting_ids = Meetings.meeting_ids(@site.config)
+ timeout = @site.config.dig('indico', 'timeout')
+ Net::HTTP.read_timeout = timeout if timeout
+
+ meeting_ids = @site.config.dig('indico', 'ids')
+ raise MissingIDs('indico: ids: MISSING from your config!') unless meeting_ids
+ raise MissingIDs('indico: ids: must be a list!') unless meeting_ids.is_a?(Array)
+
meeting_ids.each do |name, number|
collect_meeting(name.to_s, number)
end
end
private
def collect_meeting(name, number)
- base_url = Meetings.base_url(@site.config)
+ base_url = @site.config.dig('indico', 'url')
+ raise MissingURL('indico: url: MISSING from your config!') unless url
data_path = @site.config.dig('indico', 'data') || 'indico'
@site.data[data_path] = {} unless @site.data.key? data_path
# Do nothing if already downloaded