39 lines
1.4 KiB
Ruby
39 lines
1.4 KiB
Ruby
|
|
class VideoAnalysesController < ApplicationController
|
||
|
|
before_action :set_video, only: [:create, :show]
|
||
|
|
|
||
|
|
def create
|
||
|
|
AnalyzeVideoJob.perform_later(@video, reanalysis: true)
|
||
|
|
AnalyzeAudioJob.perform_later(@video)
|
||
|
|
|
||
|
|
redirect_to [@video, :video_analyses], notice: t(".notice")
|
||
|
|
end
|
||
|
|
|
||
|
|
def show
|
||
|
|
@video_release_confirmations = @video.video_release_confirmations.order_by_ranked_release_type
|
||
|
|
@talent_releases = @video.project.talent_releases
|
||
|
|
@appearance_releases = @video.project.appearance_releases
|
||
|
|
@location_releases = @video.project.location_releases
|
||
|
|
@acquired_media_releases = @video.project.acquired_media_releases
|
||
|
|
@music_releases = @video.project.music_releases
|
||
|
|
@material_releases = @video.project.material_releases
|
||
|
|
@bookmarks = @video.bookmarks
|
||
|
|
|
||
|
|
video_analysis = authorize(VideoAnalysis.new(@video, false))
|
||
|
|
audio_analysis = AudioAnalysis.new(@video)
|
||
|
|
@video_analysis_presenter = VideoAnalysisService.new.presenter(
|
||
|
|
@video,
|
||
|
|
video_analysis,
|
||
|
|
audio_analysis,
|
||
|
|
)
|
||
|
|
@graphics_elements_data = GraphicsElements::GraphicsElementsPresenter.new.present(@video.graphics_elements)
|
||
|
|
@unreleased_appearances_data = UnreleasedAppearancesPresenter.new.present(@video.unreleased_appearances)
|
||
|
|
@audio_confirmations = @video.audio_confirmations
|
||
|
|
end
|
||
|
|
|
||
|
|
private
|
||
|
|
|
||
|
|
def set_video
|
||
|
|
@video = authorize Video.find(params[:video_id]), policy_class: VideoAnalysisPolicy
|
||
|
|
end
|
||
|
|
end
|