Skip to content

Commit dc450a2

Browse files
committed
Pass remix identifier through with lesson list
1 parent 6a222df commit dc450a2

2 files changed

Lines changed: 11 additions & 2 deletions

File tree

app/controllers/api/lessons_controller.rb

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,11 @@ def index
1010
archive_scope = params[:include_archived] == 'true' ? Lesson : Lesson.unarchived
1111
scope = params[:school_class_id] ? archive_scope.where(school_class_id: params[:school_class_id]) : archive_scope
1212
ordered_scope = scope.order(created_at: :asc)
13-
@lessons_with_users = ordered_scope.accessible_by(current_ability).with_users
13+
lessons_with_users = ordered_scope.accessible_by(current_ability).with_users
14+
remixes = ordered_scope.map do |lesson|
15+
lesson.project.remixes.where(user_id: current_user.id).accessible_by(current_ability).first
16+
end
17+
@lessons_with_users_and_remixes = lessons_with_users.zip(remixes)
1418
render :index, formats: [:json], status: :ok
1519
end
1620

app/views/api/lessons/index.json.jbuilder

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# frozen_string_literal: true
22

3-
json.array!(@lessons_with_users) do |lesson, user|
3+
json.array!(@lessons_with_users_and_remixes) do |lesson_with_user, remix|
4+
lesson, user = lesson_with_user # Destructure the pair
45
json.call(
56
lesson,
67
:id,
@@ -26,4 +27,8 @@ json.array!(@lessons_with_users) do |lesson, user|
2627
end
2728

2829
json.user_name(user&.name)
30+
31+
if remix.present?
32+
json.remix_identifier(remix.identifier)
33+
end
2934
end

0 commit comments

Comments
 (0)