31 lines
769 B
Ruby
31 lines
769 B
Ruby
object @jam_track
|
|
|
|
attributes :id, :name, :description, :recording_type, :original_artist, :songwriter, :publisher, :sales_region, :price, :version, :duration
|
|
|
|
node :genres do |item|
|
|
item.genres.select(:description).map(&:description)
|
|
end
|
|
|
|
node :added_cart do |item|
|
|
any_user.shopping_carts.where(cart_id: item.id).count != 0
|
|
end
|
|
|
|
node :purchased do |item|
|
|
!!item.right_for_user(current_user)
|
|
end
|
|
|
|
child(:jam_track_tracks => :tracks) {
|
|
attributes :id, :part, :instrument, :track_type, :position
|
|
|
|
node do |track|
|
|
{
|
|
preview_mp3_url: track.preview_public_url('mp3'),
|
|
preview_ogg_url: track.preview_public_url('ogg'),
|
|
preview_aac_url: track.preview_public_url('aac')
|
|
}
|
|
end
|
|
}
|
|
|
|
child(:licensor => :licensor) {
|
|
attributes :id, :name
|
|
} |