This commit is contained in:
Seth Call 2020-04-21 09:04:30 -05:00
parent 3e74386345
commit 3e34a28588
3 changed files with 13 additions and 12 deletions

View File

@ -35,7 +35,7 @@ module JamRuby
query = Feed.joins("LEFT OUTER JOIN recordings ON recordings.id = feeds.recording_id")
.joins("LEFT OUTER JOIN music_sessions ON music_sessions.id = feeds.music_session_id")
.limit(limit)
.where('recordings is NULL OR (recordings.all_discarded = false AND recordings.deleted = false)') # remove any 'all_discarded recordings from the search results' or 'deleted'
.where('feeds.recording_id is NULL OR (recordings.all_discarded = false AND recordings.deleted = false)') # remove any 'all_discarded recordings from the search results' or 'deleted'
# handle sort
if sort == 'date'
@ -65,31 +65,31 @@ module JamRuby
if target_user
query = query.joins("LEFT OUTER JOIN claimed_recordings ON recordings.id = claimed_recordings.recording_id AND claimed_recordings.discarded = FALSE AND (claimed_recordings.user_id = '#{target_user}' OR (recordings.band_id IN (SELECT band_id FROM bands_musicians where user_id='#{target_user}')))")
query = query.joins("LEFT OUTER JOIN music_sessions_user_history ON music_sessions.id = music_sessions_user_history.music_session_id AND music_sessions_user_history.user_id = '#{target_user}'")
query = query.group("feeds.id, feeds.recording_id, feeds.music_session_id, feeds.created_at, feeds.updated_at, recordings.id, music_sessions.id")
query = query.group("feeds.id")
if sort == 'plays'
query = query.group("COALESCE(recordings.play_count, music_sessions.play_count)")
elsif sort == 'likes'
query = query.group("COALESCE(recordings.like_count, music_sessions.like_count)")
end
query = query.where('recordings.id is NULL OR claimed_recordings.id IS NOT NULL')
query = query.where('music_sessions.id is NULL OR music_sessions_user_history.id IS NOT NULL')
query = query.where('feeds.recording_id is NULL OR claimed_recordings.id IS NOT NULL')
query = query.where('feeds.music_session_id is NULL OR music_sessions_user_history.id IS NOT NULL')
elsif target_band
query = query.joins("LEFT OUTER JOIN claimed_recordings ON recordings.id = claimed_recordings.recording_id AND claimed_recordings.discarded = FALSE AND recordings.band_id = '#{target_band}'")
query = query.where("music_sessions IS NULL OR music_sessions.band_id = '#{target_band}'")
query = query.group("feeds.id, feeds.recording_id, feeds.music_session_id, feeds.created_at, feeds.updated_at, recordings.id, music_sessions.id")
query = query.joins("LEFT OUTER JOIN claimed_recordings ON feeds.recording_id = claimed_recordings.recording_id AND claimed_recordings.discarded = FALSE AND recordings.band_id = '#{target_band}'")
query = query.where("feeds.music_session_id IS NULL OR music_sessions.band_id = '#{target_band}'")
query = query.group("feeds.id")
if sort == 'plays'
query = query.group("COALESCE(recordings.play_count, music_sessions.play_count)")
elsif sort == 'likes'
query = query.group("COALESCE(recordings.like_count, music_sessions.like_count)")
end
query = query.where('recordings.id is NULL OR claimed_recordings.id IS NOT NULL')
query = query.where('feeds.recording_id is NULL OR claimed_recordings.id IS NOT NULL')
#query = query.where('music_sessions.id is NULL OR music_sessions_user_history.id IS NOT NULL')
else
query = query.joins('LEFT OUTER JOIN claimed_recordings ON recordings.id = claimed_recordings.recording_id AND claimed_recordings.discarded = FALSE')
query = query.joins('LEFT OUTER JOIN claimed_recordings ON feeds.recording_id = claimed_recordings.recording_id AND claimed_recordings.discarded = FALSE')
query = query.joins("LEFT OUTER JOIN music_sessions_user_history ON music_sessions.id = music_sessions_user_history.music_session_id")
query = query.group("feeds.id, feeds.recording_id, feeds.music_session_id, feeds.created_at, feeds.updated_at, recordings.id, music_sessions.id")
query = query.group("feeds.id")
if sort == 'plays'
query = query.group("COALESCE(recordings.play_count, music_sessions.play_count)")
elsif sort == 'likes'
@ -124,4 +124,4 @@ module JamRuby
end
end
end
end
end

View File

@ -13,7 +13,7 @@
var userId = null;
var bandId = null;
var currentFeedPage = 0;
var feedBatchSize = 10;
var feedBatchSize = 100;
var $screen = null;
var $scroller = null;
var $content = null;

View File

@ -17,6 +17,7 @@ else
gem 'jam_ruby', "0.1.#{ENV["BUILD_NUMBER"]}"
ENV['NOKOGIRI_USE_SYSTEM_LIBRARIES'] ||= "true"
end
gem 'activerecord', '> 4.2'
gem 'actionpack', '> 4.2'
gem 'actionmailer', '> 4.2'