fosdem-recorder.cr/src/controllers/info_controller.cr

32 lines
851 B
Crystal

require "./base_controller"
require "../utils/url_validator"
require "../event_page"
module FosdemRecorder
class InfoController < BaseController
def self.process(url)
UrlValidator.validate_event! url
meta = EventPage.get_meta(url)
puts meta.title.colorize.fore(:green)
start = meta.event_start
stop = meta.event_stop
puts "* event start = #{start}"
puts "* event stop = #{stop}"
if !start.nil? && !stop.nil?
duration = Duration.new(start: start, stop: stop)
duration_remaining = Duration.new(start: start, stop: stop).from_now
puts "* event length = #{duration.to_s} (from now: #{duration_remaining.to_s})"
else
puts "* event length = (none)"
end
puts "* stream url = #{meta.stream_url ? meta.stream_url : "(none)"}"
end
end
end