Compare commits
No commits in common. "bec350e9f2099884207f30cf0fe925d5adbd4578" and "470c805880572bf7c67c1d67b5d1992e452bb339" have entirely different histories.
bec350e9f2
...
470c805880
2 changed files with 16 additions and 13 deletions
|
|
@ -71,12 +71,9 @@ class ItemsController < ApplicationController
|
||||||
@basic_colored_pet_types_by_species_id = PetType.special_color_or_basic(@item.special_color).
|
@basic_colored_pet_types_by_species_id = PetType.special_color_or_basic(@item.special_color).
|
||||||
includes_child_translations.group_by(&:species)
|
includes_child_translations.group_by(&:species)
|
||||||
|
|
||||||
trading_closet_hangers = @item.closet_hangers.trading.newest.
|
|
||||||
user_is_active.includes(:user)
|
|
||||||
|
|
||||||
@trading_closet_hangers_by_owned = {
|
@trading_closet_hangers_by_owned = {
|
||||||
true => trading_closet_hangers.filter { |c| c.owned? },
|
true => @item.closet_hangers.owned_trading.newest.includes(:user),
|
||||||
false => trading_closet_hangers.filter { |c| c.wanted? },
|
false => @item.closet_hangers.wanted_trading.newest.includes(:user)
|
||||||
}
|
}
|
||||||
|
|
||||||
if user_signed_in?
|
if user_signed_in?
|
||||||
|
|
|
||||||
|
|
@ -46,10 +46,20 @@ class ClosetHanger < ApplicationRecord
|
||||||
scope :newest, -> { order(arel_table[:created_at].desc) }
|
scope :newest, -> { order(arel_table[:created_at].desc) }
|
||||||
scope :owned_before_wanted, -> { order(arel_table[:owned].desc) }
|
scope :owned_before_wanted, -> { order(arel_table[:owned].desc) }
|
||||||
scope :unlisted, -> { where(:list_id => nil) }
|
scope :unlisted, -> { where(:list_id => nil) }
|
||||||
scope :user_is_active, -> {
|
|
||||||
u = User.arel_table
|
{:owned => true, :wanted => false}.each do |name, owned|
|
||||||
joins(:user).where(u[:last_trade_activity_at].gteq(6.months.ago))
|
scope "#{name}_trading", -> {
|
||||||
}
|
joins(:user).includes(:list).
|
||||||
|
where(:owned => owned).
|
||||||
|
where((
|
||||||
|
arel_table[:list_id].eq(nil).and(
|
||||||
|
User.arel_table["#{name}_closet_hangers_visibility"].gteq(ClosetVisibility[:trading].id)
|
||||||
|
)
|
||||||
|
).or(
|
||||||
|
ClosetList.arel_table[:visibility].gteq(ClosetVisibility[:trading].id)
|
||||||
|
))
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
before_validation :merge_quantities, :set_owned_by_list
|
before_validation :merge_quantities, :set_owned_by_list
|
||||||
|
|
||||||
|
|
@ -64,10 +74,6 @@ class ClosetHanger < ApplicationRecord
|
||||||
possibly_null_closet_list.trading?
|
possibly_null_closet_list.trading?
|
||||||
end
|
end
|
||||||
|
|
||||||
def wanted?
|
|
||||||
!owned?
|
|
||||||
end
|
|
||||||
|
|
||||||
def possibly_null_list_id=(list_id_or_owned)
|
def possibly_null_list_id=(list_id_or_owned)
|
||||||
if list_id_or_owned.to_s == 'true' || list_id_or_owned.to_s == 'false'
|
if list_id_or_owned.to_s == 'true' || list_id_or_owned.to_s == 'false'
|
||||||
self.list_id = nil
|
self.list_id = nil
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue