diff --git a/app/models/broadcast_recording.rb b/app/models/broadcast_recording.rb index a7add7d..679df7e 100644 --- a/app/models/broadcast_recording.rb +++ b/app/models/broadcast_recording.rb @@ -18,4 +18,8 @@ class BroadcastRecording < ApplicationRecord def download_file_name "#{broadcast_name}_Date_#{created_at.in_time_zone(broadcast.shoot_location_time_zone).strftime("%Y-%m-%d")}_Time_#{created_at.in_time_zone(broadcast.shoot_location_time_zone).strftime("%T")}".parameterize end + + def thumbnail_url(width = 300) + "https://image.mux.com/#{asset_playback_uid}/thumbnail.jpg?width=#{width}" + end end diff --git a/app/views/broadcasts/_broadcast_recordings.html.erb b/app/views/broadcasts/_broadcast_recordings.html.erb index 73f6f91..4041849 100644 --- a/app/views/broadcasts/_broadcast_recordings.html.erb +++ b/app/views/broadcasts/_broadcast_recordings.html.erb @@ -3,10 +3,11 @@ diff --git a/spec/features/user_managing_broadcasts_spec.rb b/spec/features/user_managing_broadcasts_spec.rb index 9c40b71..3146d66 100644 --- a/spec/features/user_managing_broadcasts_spec.rb +++ b/spec/features/user_managing_broadcasts_spec.rb @@ -223,6 +223,18 @@ feature 'User managing broadcasts' do expect(page).to have_content("Recording of the live stream will appear here") end + scenario 'Broadcast recording preview thumbnail is shown' do + broadcast = create(:broadcast, :with_stream, :with_files, project: project) + recording = create(:broadcast_recording, broadcast: broadcast, asset_uid: "another_asset_uid") + + visit project_broadcast_path(project, broadcast) + + click_on 'Previous Sessions' + + expect(page).to have_css('img.img-thumbnail') + expect(page.find('img.img-thumbnail')['src']).to match recording.asset_playback_uid + end + context 'When the user is associate' do let(:current_user) { create(:user, :associate) }