class Jekyll::AttendeasePlugin::PreZeroPointSixLinkRedirectGenerator

Public Instance Methods

generate(site) click to toggle source
# File lib/jekyll/attendease_plugin/pre_zero_point_six_link_redirect_generator.rb, line 8
def generate(site)
  if site.config['attendease']['generate_schedule_pages'] && site.config['attendease']['redirect_ugly_urls']
    schedule_generator = site.generators.select { |g| g.class == Jekyll::AttendeasePlugin::ScheduleGenerator }.first

    # presenters
    dir = site.config['attendease']['presenters_path_name']
    schedule_generator.schedule_data.presenters.each do |o|
      site.pages << RedirectPage.new(site, site.source, File.join(dir, o['id']), File.join('/', dir, o['slug']))
    end

    # venues
    dir = site.config['attendease']['venues_path_name']
    schedule_generator.schedule_data.venues.each do |o|
      site.pages << RedirectPage.new(site, site.source, File.join(dir, o['id']), File.join('/', dir, o['slug']))
    end

    # sessions
    dir = site.config['attendease']['schedule_path_name']
    schedule_generator.schedule_data.sessions.each do |o|
      site.pages << RedirectPage.new(site, site.source, File.join(dir, o['code']), File.join('/', dir, 'sessions', o['slug']))
    end
  end
end