class FlickrController < ApplicationController FlickrawOptions = { :lazyload => true, :timeout => 2 } require 'flickraw' @@flickr_id = "13827925@N00" def photo @pid = params[:id] begin @pinfo = flickr.photos.getInfo :photo_id => @pid rescue => e flash[:error] = "Photo " + params[:id].to_s + " could not be found. Random photo displayed." @pid = flickr.photos.search(:user_id => @@flickr_id).rand.id @pinfo = flickr.photos.getInfo :photo_id => @pid end @psize = flickr.photos.getSizes(:photo_id => @pid).find{|m| m.label == "Medium"} respond_to do |format| format.html format.xml end end def home @pid = flickr.photos.search(:user_id => @@flickr_id).rand.id @pinfo = flickr.photos.getInfo(:photo_id => @pid) @psize = flickr.photos.getSizes(:photo_id => @pid).find{|m| m.label == "Medium"} respond_to do |format| format.html end end def interesting @parray = Array.new result = flickr.photos.search(:user_id => @@flickr_id, :per_page => 20, :sort => "interestingness-desc") for r in result do @parray += [:id => r.id, :source => flickr.photos.getSizes(:photo_id => r.id).find{|m| m.label == "Thumbnail"}.source] end respond_to do |format| format.html end end def recent @parray = Array.new result = flickr.photos.search(:user_id => @@flickr_id, :per_page => 20) for r in result do @parray += [:id => r.id, :source => flickr.photos.getSizes(:photo_id => r.id).find{|m| m.label == "Thumbnail"}.source] end respond_to do |format| format.html end end end