class RGallery::Photos
Public Class Methods
new(pages = nil, options = {})
click to toggle source
Calls superclass method
RGallery::PhotoConfig::new
# File lib/rails-gallery/rgallery/photos.rb, line 5 def initialize pages = nil, options = {} unless pages.nil? raise ArgumentError, "Must be a Photos::Pages or Array, was: #{pages}" unless valid_pages? pages pages = pages_class.new pages, options if pages.kind_of?(Array) @pages = pages end super options end
Public Instance Methods
all()
click to toggle source
# File lib/rails-gallery/rgallery/photos.rb, line 14 def all pages.inject([]) {|res, page| res += page.photos }.flatten.compact end
page(id)
click to toggle source
# File lib/rails-gallery/rgallery/photos.rb, line 22 def page id raise ArgumentError, "Page id must be one #{valid_page_ids}, was: #{id}" unless valid_page_id? id pages.send(id) end
pages()
click to toggle source
# File lib/rails-gallery/rgallery/photos.rb, line 18 def pages @pages ||= pages_class.new nil, options end
Protected Instance Methods
pages_class()
click to toggle source
# File lib/rails-gallery/rgallery/photos.rb, line 41 def pages_class RGallery::Pages end
valid_page_id?(id)
click to toggle source
# File lib/rails-gallery/rgallery/photos.rb, line 29 def valid_page_id? id [:first].include? id.to_sym end
valid_page_ids()
click to toggle source
# File lib/rails-gallery/rgallery/photos.rb, line 33 def valid_page_ids [:first] end
valid_pages?(pages)
click to toggle source
# File lib/rails-gallery/rgallery/photos.rb, line 37 def valid_pages? pages pages.kind_of?(pages_class) || pages.kind_of?(Array) end