class Picturama::Album
Public Class Methods
new(args)
click to toggle source
# File lib/picturama/album.rb, line 6 def initialize(args) @folder = args[:folder] @thumbnails = "#{@folder}/thumbnails" @resized = "#{@folder}/resized" end
Public Instance Methods
count_pictures()
click to toggle source
# File lib/picturama/album.rb, line 37 def count_pictures pictures.size end
folder()
click to toggle source
# File lib/picturama/album.rb, line 21 def folder File.basename(@folder) end
has_broken_thumbnails?()
click to toggle source
# File lib/picturama/album.rb, line 49 def has_broken_thumbnails? thumbnails_found = Dir["#{@thumbnails}/*.{#{Picturama::config['allowed_formats'].join(',')}}"].size !has_thumbnails? || thumbnails_found < count_pictures end
has_resized?()
click to toggle source
# File lib/picturama/album.rb, line 45 def has_resized? File.directory?(@resized) end
has_thumbnails?()
click to toggle source
# File lib/picturama/album.rb, line 41 def has_thumbnails? File.directory?(@thumbnails) end
info()
click to toggle source
# File lib/picturama/album.rb, line 62 def info YAML.load_file("#{@folder}/.info.yml") if File.exists?("#{@folder}/.info.yml") end
init_resized()
click to toggle source
# File lib/picturama/album.rb, line 58 def init_resized FileUtils.mkdir_p("#{@resized}", :mode => 0775) unless has_resized? end
init_thumbnails()
click to toggle source
# File lib/picturama/album.rb, line 54 def init_thumbnails FileUtils.mkdir_p("#{@thumbnails}", :mode => 0775) unless has_thumbnails? end
name()
click to toggle source
# File lib/picturama/album.rb, line 25 def name (info.nil?) ? name! : info['album']['title'] end
name!()
click to toggle source
# File lib/picturama/album.rb, line 29 def name! folder.humanize end
pictures(order = :basename)
click to toggle source
# File lib/picturama/album.rb, line 12 def pictures(order = :basename) [].tap do |list| filter = "#{@folder}/*.{#{Picturama::config['allowed_formats'].join(',')}}" Dir[filter].sort_by{ |filename| File.send(order, "#{filename}") }.each { |picture| list << Picturama::Picture.new(picture) } end end
slug()
click to toggle source
# File lib/picturama/album.rb, line 33 def slug name!.to_url end
valid?()
click to toggle source
# File lib/picturama/album.rb, line 66 def valid? has_thumbnails? && !info.nil? end