drop in redirect image url for urls blocked on petpages

This commit is contained in:
Emi Matchu 2011-08-02 20:01:48 -04:00
parent 8bf9872fbe
commit 374e85f9d0
4 changed files with 39 additions and 10 deletions

View file

@ -41,16 +41,27 @@ class ItemsController < ApplicationController
def show def show
@item = Item.find params[:id] @item = Item.find params[:id]
@trading_closet_hangers_by_owned = { respond_to do |format|
true => @item.closet_hangers.owned_trading.newest.includes(:user), format.html do
false => @item.closet_hangers.wanted_trading.newest.includes(:user)
}
if user_signed_in? @trading_closet_hangers_by_owned = {
@current_user_hangers = [true, false].map do |owned| true => @item.closet_hangers.owned_trading.newest.includes(:user),
hanger = current_user.closet_hangers.find_or_initialize_by_item_id_and_owned(@item.id, owned) false => @item.closet_hangers.wanted_trading.newest.includes(:user)
hanger.quantity ||= 1 }
hanger
if user_signed_in?
@current_user_hangers = [true, false].map do |owned|
hanger = current_user.closet_hangers.find_or_initialize_by_item_id_and_owned(@item.id, owned)
hanger.quantity ||= 1
hanger
end
end
end
format.gif do
expires_in 1.month
redirect_to @item.thumbnail_url
end end
end end
end end

View file

@ -73,6 +73,21 @@ module ClosetHangersHelper
item.name.gsub(/ on/i, ' o<b></b>n') item.name.gsub(/ on/i, ' o<b></b>n')
end end
PETPAGE_IMAGE_URL_BLACKLIST = %w(window. ondrop)
def petpage_item_thumbnail_url(item)
url = item.thumbnail_url
# If the URL includes any of the blacklisted terms, use our redirect URL
PETPAGE_IMAGE_URL_BLACKLIST.each do |term|
if url.include?(term)
url = item_url(item, :format => :gif)
break
end
end
url
end
def public_perspective? def public_perspective?
@public_perspective @public_perspective
end end

View file

@ -1,5 +1,5 @@
%div.dti-item %div.dti-item
= image_tag hanger.item.thumbnail_url, :alt => nil, :class => 'dti-item-thumbnail' = image_tag petpage_item_thumbnail_url(hanger.item), :alt => nil, :class => 'dti-item-thumbnail'
- if hanger.item.nc? - if hanger.item.nc?
= image_tag nc_icon_url, :alt => 'NC', :class => 'dti-item-nc', :title => 'This is an NC Mall item' = image_tag nc_icon_url, :alt => 'NC', :class => 'dti-item-nc', :title => 'This is an NC Mall item'
%span= petpage_item_name hanger.item %span= petpage_item_name hanger.item

View file

@ -39,5 +39,8 @@ module OpenneoImpressItems
# Configure sensitive parameters which will be filtered from the log file. # Configure sensitive parameters which will be filtered from the log file.
config.filter_parameters << :password config.filter_parameters << :password
Mime::Type.register "image/gif", :gif
end end
end end