diff --git a/app/controllers/photos_controller.rb b/app/controllers/photos_controller.rb index 80d33f721..a4da1e19a 100644 --- a/app/controllers/photos_controller.rb +++ b/app/controllers/photos_controller.rb @@ -33,7 +33,7 @@ class PhotosController < ApplicationController @flickr_auth = current_member.auth('flickr') if @flickr_auth @sets = current_member.flickr_sets - photos = current_member.flickr_photos(page) + photos = current_member.flickr_photos(page, params[:set]) total = photos.instance_of?(FlickRaw::ResponseList) ? photos.total : 0 @photos = WillPaginate::Collection.create(page, 30, total) do |pager| diff --git a/app/models/member.rb b/app/models/member.rb index 1bb0085d8..b984fb9c4 100644 --- a/app/models/member.rb +++ b/app/models/member.rb @@ -150,12 +150,20 @@ class Member < ActiveRecord::Base end # Fetches a collection of photos from Flickr - def flickr_photos(page_num=1) - return flickr.people.getPhotos( - :user_id => 'me', - :page => page_num, - :per_page => 30 - ) + def flickr_photos(page_num=1, set=nil) + if set + return flickr.photosets.getPhotos( + :photoset_id => set, + :page => page_num, + :per_page => 30 + ) + else + return flickr.people.getPhotos( + :user_id => 'me', + :page => page_num, + :per_page => 30 + ) + end end # Returns a hash of Flickr photosets' ids and titles