23 lines
641 B
Ruby
23 lines
641 B
Ruby
class CastingCallInterview < ApplicationRecord
|
|
belongs_to :casting_call
|
|
has_many_attached :files
|
|
|
|
has_secure_token
|
|
|
|
validates :performer_name, presence: true
|
|
|
|
scope :completed, -> { where.not(interviewed_at: nil) }
|
|
|
|
def join_zoom_meeting_url
|
|
uri = URI.parse(self.zoom_meeting_url)
|
|
zoom_meeting_id = uri.path.gsub("/j/", "")
|
|
zoom_meeting_pwd = uri.query.gsub("pwd=", "")
|
|
|
|
"zoommtg://zoom.us/join?confno=#{zoom_meeting_id}&pwd=#{zoom_meeting_pwd}"
|
|
end
|
|
|
|
def zip_file_name
|
|
"#{self.casting_call.title.parameterize}_#{self.performer_name.parameterize}_#{Time.now.strftime('%Y-%m-%d_%H-%M-%S')}"
|
|
end
|
|
end
|