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
@item = Item.find params[:id]
@trading_closet_hangers_by_owned = {
true => @item.closet_hangers.owned_trading.newest.includes(:user),
false => @item.closet_hangers.wanted_trading.newest.includes(:user)
}
respond_to do |format|
format.html do
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
@trading_closet_hangers_by_owned = {
true => @item.closet_hangers.owned_trading.newest.includes(:user),
false => @item.closet_hangers.wanted_trading.newest.includes(:user)
}
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

View file

@ -73,6 +73,21 @@ module ClosetHangersHelper
item.name.gsub(/ on/i, ' o<b></b>n')
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?
@public_perspective
end

View file

@ -1,5 +1,5 @@
%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?
= image_tag nc_icon_url, :alt => 'NC', :class => 'dti-item-nc', :title => 'This is an NC Mall 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.
config.filter_parameters << :password
Mime::Type.register "image/gif", :gif
end
end