Class: RGallery::Photos
- Inherits:
-
PhotoConfig
- Object
- PhotoConfig
- RGallery::Photos
- Defined in:
- lib/rails-gallery/rgallery/photos.rb
Instance Attribute Summary
Attributes inherited from PhotoConfig
Instance Method Summary collapse
- #all ⇒ Object
-
#initialize(pages = nil, options = {}) ⇒ Photos
constructor
A new instance of Photos.
- #page(id) ⇒ Object
- #pages ⇒ Object
Constructor Details
#initialize(pages = nil, options = {}) ⇒ Photos
Returns a new instance of Photos.
5 6 7 8 9 10 11 12 |
# File 'lib/rails-gallery/rgallery/photos.rb', line 5 def initialize pages = nil, = {} unless pages.nil? raise ArgumentError, "Must be a Photos::Pages or Array, was: #{pages}" unless valid_pages? pages pages = pages_class.new pages, if pages.kind_of?(Array) @pages = pages end super end |
Instance Method Details
#all ⇒ Object
14 15 16 |
# File 'lib/rails-gallery/rgallery/photos.rb', line 14 def all pages.inject([]) {|res, page| res += page.photos }.flatten.compact end |
#page(id) ⇒ Object
22 23 24 25 |
# 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 ⇒ Object
18 19 20 |
# File 'lib/rails-gallery/rgallery/photos.rb', line 18 def pages @pages ||= pages_class.new nil, end |