Files
old-holivud2/app/models/broadcast_recording.rb
2020-08-31 18:19:00 +02:00

39 lines
1015 B
Ruby

class BroadcastRecording < ApplicationRecord
belongs_to :broadcast
delegate :name, to: :broadcast, prefix: :broadcast
validates :asset_uid, uniqueness: true
scope :visible, -> { where(hidden: false) }
before_save :set_title_and_description
def download_url
"https://stream.mux.com/#{asset_playback_uid}/#{file_name}?download=#{name}"
end
def playback_url
"https://stream.mux.com/#{asset_playback_uid}/#{file_name}"
end
def download_file_name
"#{broadcast_name}_Date_#{Time.now.in_time_zone(broadcast.shoot_location_time_zone).strftime("%Y-%m-%d")}_Time_#{Time.now.in_time_zone(broadcast.shoot_location_time_zone).strftime("%T")}".parameterize
end
def toggle_star
toggle! :starred
end
def thumbnail_url(width = 300)
"https://image.mux.com/#{asset_playback_uid}/thumbnail.jpg?width=#{width}"
end
private
def set_title_and_description
self.name ||= download_file_name
self.description ||= "No description provided for this recording."
end
end