jam-cloud/ruby/lib/jam_ruby/models/feed.rb

32 lines
860 B
Ruby
Raw Normal View History

module JamRuby
class Feed < ActiveRecord::Base
belongs_to :recording, class_name: "JamRuby::Recording", inverse_of: :feed, foreign_key: 'recording_id'
belongs_to :music_session_history, class_name: "JamRuby::MusicSessionHistory", inverse_of: :feed, foreign_key: 'music_session_id'
2014-02-17 23:26:17 +00:00
def self.index(params = {start:0, limit:20, sort: 'date'})
start = params[:start]
start ||= 0
limit = params[:limit]
limit ||= 20
# validate sort
sort = params[:sort]
sort ||= 'date'
raise "not valid sort #{sort}" unless ['date', 'plays', 'likes'].include?(sort)
query = Feed.includes(:recording).includes(:music_session_history).offset(start).limit(limit)
if sort == 'date'
query = query.order('id DESC')
else
throw "not implemented"
end
query
end
end
end