class Jekyll::FlickrPageGenerator
Public Instance Methods
generate(site)
click to toggle source
# File lib/badpixxel-jekyll-flickr.rb, line 82 def generate(site) Jekyll::flickr_setup(site) cache_dir = site.config['flickr']['cache_dir'] file_photosets = Dir.glob(File.join(cache_dir, '*.yml')) file_photosets.each_with_index do |file_photoset, pos| photoset = Photoset.new(site, file_photoset) if site.config['flickr']['generate_photosets'].include? photoset.title # generate photo pages if requested if site.config['flickr']['generate_posts'] file_photos = Dir.glob(File.join(photoset.cache_dir, '*.yml')) file_photos.each do |file_photo, pos| photo = Photo.new(site, photoset, file_photo, pos) page_photo = PhotoPost.new(site, site.source, '', photo) # posts need to be in a _posts directory, but this means Jekyll has already # read in photo posts from any previous run... so for each photo, update # its associated post if it already exists, otherwise create a new post site.posts.each_with_index do |post, pos| if post.data['slug'] == photo.slug site.posts.delete_at(pos) end end site.posts << page_photo end end end end # re-sort posts by date site.posts.sort! {|left, right| left.date <=> right.date} end